Run DCE after a LoopFlatten test to reduce spurious output [nfc]
[llvm-project.git] / llvm / test / MC / AArch64 / directive-variant_pcs.s
blob26ed7aef90cce3787a0738b4e20fadd59728364f
1 // RUN: llvm-mc -triple aarch64-elf -filetype asm %s | FileCheck %s --check-prefix=ASM
2 // RUN: llvm-mc -triple aarch64-elf -filetype obj %s \
3 // RUN: | llvm-readelf -s - | FileCheck %s --check-prefix=OBJ
5 // ASM: .variant_pcs local
6 // ASM-NEXT: local:
7 .text
8 .variant_pcs local
9 local:
11 /// Binding directive before .variant_pcs.
12 // ASM: .globl def1
13 // ASM-NEXT: .variant_pcs def1
14 // ASM-NEXT: def1:
15 .global def1
16 .variant_pcs def1
17 def1:
19 /// .variant_pcs before binding directive.
20 // ASM: .variant_pcs def2
21 // ASM-NEXT: .weak def2
22 // ASM-NEXT: def2:
23 .variant_pcs def2
24 .weak def2
25 def2:
27 .globl alias_def1
28 .set alias_def1, def1
30 // ASM: .variant_pcs undef
31 .variant_pcs undef
33 // OBJ: NOTYPE LOCAL DEFAULT [VARIANT_PCS] [[#]] local
34 // OBJ-NEXT: NOTYPE GLOBAL DEFAULT [VARIANT_PCS] [[#]] def1
35 // OBJ-NEXT: NOTYPE WEAK DEFAULT [VARIANT_PCS] [[#]] def2
36 // OBJ-NEXT: NOTYPE GLOBAL DEFAULT [[#]] alias_def1
37 // OBJ-NEXT: NOTYPE GLOBAL DEFAULT [VARIANT_PCS] UND undef