1// RUN: llvm-mc -triple riscv64 -filetype obj -o - %s | llvm-readobj --symbols - | FileCheck %s 2// RUN: llvm-mc -triple riscv64 -filetype obj -defsym=OBJ=1 -o - %s | llvm-readelf -s - | FileCheck %s --check-prefix=OBJ 3// RUN: not llvm-mc -triple riscv64 -filetype asm -defsym=ERR=1 -o - %s 2>&1 | FileCheck %s --check-prefix=ERR 4 5.text 6.variant_cc local 7local: 8 9// CHECK: Name: local 10// CHECK: Other [ (0x80) 11 12.ifdef OBJ 13/// Binding directive before .variant_cc. 14.global def1 15.variant_cc def1 16def1: 17 18/// Binding directive after .variant_cc. 19.variant_cc def2 20.weak def2 21def2: 22 23.globl alias_def1 24.set alias_def1, def1 25 26.variant_cc undef 27 28// OBJ: NOTYPE LOCAL DEFAULT [VARIANT_CC] [[#]] local 29// OBJ-NEXT: NOTYPE GLOBAL DEFAULT [VARIANT_CC] [[#]] def1 30// OBJ-NEXT: NOTYPE WEAK DEFAULT [VARIANT_CC] [[#]] def2 31// OBJ-NEXT: NOTYPE GLOBAL DEFAULT [[#]] alias_def1 32// OBJ-NEXT: NOTYPE GLOBAL DEFAULT [VARIANT_CC] UND undef 33.endif 34 35.ifdef ERR 36.variant_cc 37// ERR: [[#@LINE-1]]:12: error: expected symbol name 38 39.global fox 40.variant_cc fox bar 41// ERR: [[#@LINE-1]]:17: error: expected newline 42.endif 43