[clang] Propagate -ftime-report to offload lto (#122143)
[llvm-project.git] / llvm / test / tools / llvm-readobj / ELF / aarch64-symbols-stother.test
blobf84d773aecbbcae94c63f5799a7436395a88866d
1 ## Check that we are able to dump AArch64 STO_* flags correctly when dumping symbols.
3 # RUN: yaml2obj %s -o %t.o
4 # RUN: llvm-readobj --symbols %t.o | FileCheck %s --check-prefix=LLVM
5 # RUN: llvm-readobj --symbols %t.o --elf-output-style=JSON --pretty-print | FileCheck %s --check-prefix=JSON
6 # RUN: llvm-readelf --symbols %t.o | FileCheck %s --check-prefix=GNU
7 # RUN: llvm-readelf --symbols --extra-sym-info %t.o | FileCheck %s --match-full-lines --strict-whitespace --check-prefix=GNUX
9 # LLVM:      Name: foo1
10 # LLVM:      Other [ (0x80)
11 # LLVM-NEXT:   STO_AARCH64_VARIANT_PCS (0x80)
12 # LLVM-NEXT: ]
13 # LLVM:      Name: foo2
14 # LLVM:      Other [ (0xC0)
15 # LLVM-NEXT:   STO_AARCH64_VARIANT_PCS (0x80)
16 # LLVM-NEXT: ]
17 # LLVM:      Name: foo3
18 # LLVM:      Other [ (0x83)
19 # LLVM-NEXT:   STO_AARCH64_VARIANT_PCS (0x80)
20 # LLVM-NEXT:   STV_PROTECTED (0x3)
21 # LLVM-NEXT: ]
22 # LLVM:      Name: foo4
23 # LLVM:      Other [ (0x3)
24 # LLVM-NEXT:   STV_PROTECTED (0x3)
25 # LLVM-NEXT: ]
27 # GNU:      Symbol table '.symtab' contains 5 entries:
28 # GNU:      1: 0000000000000000 0 NOTYPE LOCAL DEFAULT   [VARIANT_PCS]      UND foo1
29 # GNU-NEXT: 2: 0000000000000000 0 NOTYPE LOCAL DEFAULT   [VARIANT_PCS | 40] UND foo2
30 # GNU-NEXT: 3: 0000000000000000 0 NOTYPE LOCAL PROTECTED [VARIANT_PCS]      UND foo3
31 # GNU-NEXT: 4: 0000000000000000 0 NOTYPE LOCAL PROTECTED                    UND foo4
33 #      GNUX:Symbol table '.symtab' contains 5 entries:
34 # GNUX-NEXT:   Num:    Value          Size Type    Bind   Vis+Other              Ndx(SecName) Name [+ Version Info]
35 # GNUX-NEXT:     0: 0000000000000000     0 NOTYPE  LOCAL  DEFAULT                UND 
36 # GNUX-NEXT:     1: 0000000000000000     0 NOTYPE  LOCAL  DEFAULT [VARIANT_PCS]  UND foo1
37 # GNUX-NEXT:     2: 0000000000000000     0 NOTYPE  LOCAL  DEFAULT [VARIANT_PCS | 40] UND foo2
38 # GNUX-NEXT:     3: 0000000000000000     0 NOTYPE  LOCAL  PROTECTED [VARIANT_PCS] UND foo3
39 # GNUX-NEXT:     4: 0000000000000000     0 NOTYPE  LOCAL  PROTECTED              UND foo4
41 # JSON:     "Name": "foo1",
42 # JSON:     "Other": {
43 # JSON-NEXT:  "Value": 128,
44 # JSON-NEXT:  "Flags": [
45 # JSON-NEXT:    {
46 # JSON-NEXT:      "Name": "STO_AARCH64_VARIANT_PCS",
47 # JSON-NEXT:      "Value": 128
48 # JSON-NEXT:    }
49 # JSON-NEXT:  ]
50 # JSON-NEXT:},
52 # JSON:     "Name": "foo2",
53 # JSON:     "Other": {
54 # JSON-NEXT:  "Value": 192,
55 # JSON-NEXT:  "Flags": [
56 # JSON-NEXT:    {
57 # JSON-NEXT:      "Name": "STO_AARCH64_VARIANT_PCS",
58 # JSON-NEXT:      "Value": 128
59 # JSON-NEXT:    }
60 # JSON-NEXT:  ]
61 # JSON-NEXT:},
63 # JSON:     "Name": "foo3",
64 # JSON:     "Other": {
65 # JSON-NEXT:  "Value": 131,
66 # JSON-NEXT:  "Flags": [
67 # JSON-NEXT:    {
68 # JSON-NEXT:      "Name": "STO_AARCH64_VARIANT_PCS",
69 # JSON-NEXT:      "Value": 128
70 # JSON-NEXT:    },
71 # JSON-NEXT:    {
72 # JSON-NEXT:      "Name": "STV_PROTECTED",
73 # JSON-NEXT:      "Value": 3
74 # JSON-NEXT:    }
75 # JSON-NEXT:  ]
76 # JSON-NEXT:},
78 # JSON:     "Name": "foo4",
79 # JSON:     "Other": {
80 # JSON-NEXT:  "Value": 3,
81 # JSON-NEXT:  "Flags": [
82 # JSON-NEXT:    {
83 # JSON-NEXT:      "Name": "STV_PROTECTED",
84 # JSON-NEXT:      "Value": 3
85 # JSON-NEXT:    }
86 # JSON-NEXT:  ]
87 # JSON-NEXT:},
89 --- !ELF
90 FileHeader:
91   Class:   ELFCLASS64
92   Data:    ELFDATA2LSB
93   Type:    ET_REL
94   Machine: EM_AARCH64
95 Symbols:
96   - Name: foo1
97     Other: [ STO_AARCH64_VARIANT_PCS ]
98   - Name: foo2
99     Other: [ STO_AARCH64_VARIANT_PCS, 0x40 ]
100   - Name: foo3
101     Other: [ STO_AARCH64_VARIANT_PCS, STV_PROTECTED ]
102   - Name: foo4
103     Other: [ STV_PROTECTED ]