89
89
# RUN: llvm-readobj --notes gnu-1-0.o | \
90
90
# RUN: FileCheck --check-prefix=OBJ -DPLATFORM="0x1 (baremetal)" -DVERSION=0x0 %s
91
91
92
- #--- gnu-0x10000002-85 .s
92
+ #--- gnu-0x10000002-0 .s
93
93
.section ".note.gnu.property" , "a"
94
94
.long 4 // Name length is always 4 ("GNU")
95
95
.long end - begin // Data length
@@ -101,19 +101,91 @@ begin:
101
101
.long 0xc0000001 // Type: GNU_PROPERTY_AARCH64_FEATURE_PAUTH
102
102
.long 16 // Data size
103
103
.quad 0x10000002 // PAuth ABI platform
104
- .quad 85 // PAuth ABI version
104
+ .quad 0 // PAuth ABI version
105
+ .p2align 3 // Align to 8 byte for 64 bit
106
+ end:
107
+
108
+ # RUN: llvm-mc -filetype=obj -triple aarch64-linux-gnu gnu-0x10000002-0.s -o gnu-0x10000002-0.o
109
+ # RUN: llvm-readelf --notes gnu-0x10000002-0.o | \
110
+ # RUN: FileCheck --check-prefix=ELF -DPLATFORM="0x10000002 (llvm_linux)" \
111
+ # RUN: -DVERSION="0x0 (!PointerAuthIntrinsics, !PointerAuthCalls, !PointerAuthReturns, !PointerAuthAuthTraps, !PointerAuthVTPtrAddressDiscrimination, !PointerAuthVTPtrTypeDiscrimination, !PointerAuthInitFini, !PointerAuthInitFiniAddressDiscrimination, !PointerAuthELFGOT)" %s
112
+ # RUN: llvm-readobj --notes gnu-0x10000002-0.o | \
113
+ # RUN: FileCheck --check-prefix=OBJ -DPLATFORM="0x10000002 (llvm_linux)" \
114
+ # RUN: -DVERSION="0x0 (!PointerAuthIntrinsics, !PointerAuthCalls, !PointerAuthReturns, !PointerAuthAuthTraps, !PointerAuthVTPtrAddressDiscrimination, !PointerAuthVTPtrTypeDiscrimination, !PointerAuthInitFini, !PointerAuthInitFiniAddressDiscrimination, !PointerAuthELFGOT)" %s
115
+
116
+ #--- gnu-0x10000002-341.s
117
+ .section ".note.gnu.property" , "a"
118
+ .long 4 // Name length is always 4 ("GNU")
119
+ .long end - begin // Data length
120
+ .long 5 // Type: NT_GNU_PROPERTY_TYPE_0
121
+ .asciz "GNU" // Name
122
+ .p2align 3
123
+ begin:
124
+ # PAuth ABI property note
125
+ .long 0xc0000001 // Type: GNU_PROPERTY_AARCH64_FEATURE_PAUTH
126
+ .long 16 // Data size
127
+ .quad 0x10000002 // PAuth ABI platform
128
+ .quad 341 // PAuth ABI version
129
+ .p2align 3 // Align to 8 byte for 64 bit
130
+ end:
131
+
132
+ # RUN: llvm-mc -filetype=obj -triple aarch64-linux-gnu gnu-0x10000002-341.s -o gnu-0x10000002-341.o
133
+ # RUN: llvm-readelf --notes gnu-0x10000002-341.o | \
134
+ # RUN: FileCheck --check-prefix=ELF -DPLATFORM="0x10000002 (llvm_linux)" \
135
+ # RUN: -DVERSION="0x155 (PointerAuthIntrinsics, !PointerAuthCalls, PointerAuthReturns, !PointerAuthAuthTraps, PointerAuthVTPtrAddressDiscrimination, !PointerAuthVTPtrTypeDiscrimination, PointerAuthInitFini, !PointerAuthInitFiniAddressDiscrimination, PointerAuthELFGOT)" %s
136
+ # RUN: llvm-readobj --notes gnu-0x10000002-341.o | \
137
+ # RUN: FileCheck --check-prefix=OBJ -DPLATFORM="0x10000002 (llvm_linux)" \
138
+ # RUN: -DVERSION="0x155 (PointerAuthIntrinsics, !PointerAuthCalls, PointerAuthReturns, !PointerAuthAuthTraps, PointerAuthVTPtrAddressDiscrimination, !PointerAuthVTPtrTypeDiscrimination, PointerAuthInitFini, !PointerAuthInitFiniAddressDiscrimination, PointerAuthELFGOT)" %s
139
+
140
+ #--- gnu-0x10000002-170.s
141
+ .section ".note.gnu.property" , "a"
142
+ .long 4 // Name length is always 4 ("GNU")
143
+ .long end - begin // Data length
144
+ .long 5 // Type: NT_GNU_PROPERTY_TYPE_0
145
+ .asciz "GNU" // Name
146
+ .p2align 3
147
+ begin:
148
+ # PAuth ABI property note
149
+ .long 0xc0000001 // Type: GNU_PROPERTY_AARCH64_FEATURE_PAUTH
150
+ .long 16 // Data size
151
+ .quad 0x10000002 // PAuth ABI platform
152
+ .quad 170 // PAuth ABI version
153
+ .p2align 3 // Align to 8 byte for 64 bit
154
+ end:
155
+
156
+ # RUN: llvm-mc -filetype=obj -triple aarch64-linux-gnu gnu-0x10000002-170.s -o gnu-0x10000002-170.o
157
+ # RUN: llvm-readelf --notes gnu-0x10000002-170.o | \
158
+ # RUN: FileCheck --check-prefix=ELF -DPLATFORM="0x10000002 (llvm_linux)" \
159
+ # RUN: -DVERSION="0xaa (!PointerAuthIntrinsics, PointerAuthCalls, !PointerAuthReturns, PointerAuthAuthTraps, !PointerAuthVTPtrAddressDiscrimination, PointerAuthVTPtrTypeDiscrimination, !PointerAuthInitFini, PointerAuthInitFiniAddressDiscrimination, !PointerAuthELFGOT)" %s
160
+ # RUN: llvm-readobj --notes gnu-0x10000002-170.o | \
161
+ # RUN: FileCheck --check-prefix=OBJ -DPLATFORM="0x10000002 (llvm_linux)" \
162
+ # RUN: -DVERSION="0xaa (!PointerAuthIntrinsics, PointerAuthCalls, !PointerAuthReturns, PointerAuthAuthTraps, !PointerAuthVTPtrAddressDiscrimination, PointerAuthVTPtrTypeDiscrimination, !PointerAuthInitFini, PointerAuthInitFiniAddressDiscrimination, !PointerAuthELFGOT)" %s
163
+
164
+ #--- gnu-0x10000002-511.s
165
+ .section ".note.gnu.property" , "a"
166
+ .long 4 // Name length is always 4 ("GNU")
167
+ .long end - begin // Data length
168
+ .long 5 // Type: NT_GNU_PROPERTY_TYPE_0
169
+ .asciz "GNU" // Name
170
+ .p2align 3
171
+ begin:
172
+ # PAuth ABI property note
173
+ .long 0xc0000001 // Type: GNU_PROPERTY_AARCH64_FEATURE_PAUTH
174
+ .long 16 // Data size
175
+ .quad 0x10000002 // PAuth ABI platform
176
+ .quad 511 // PAuth ABI version
105
177
.p2align 3 // Align to 8 byte for 64 bit
106
178
end:
107
179
108
- # RUN: llvm-mc -filetype=obj -triple aarch64-linux-gnu gnu-0x10000002-85 .s -o gnu-0x10000002-85 .o
109
- # RUN: llvm-readelf --notes gnu-0x10000002-85 .o | \
180
+ # RUN: llvm-mc -filetype=obj -triple aarch64-linux-gnu gnu-0x10000002-511 .s -o gnu-0x10000002-511 .o
181
+ # RUN: llvm-readelf --notes gnu-0x10000002-511 .o | \
110
182
# RUN: FileCheck --check-prefix=ELF -DPLATFORM="0x10000002 (llvm_linux)" \
111
- # RUN: -DVERSION="0x55 (PointerAuthIntrinsics, ! PointerAuthCalls, PointerAuthReturns, ! PointerAuthAuthTraps, PointerAuthVTPtrAddressDiscrimination, ! PointerAuthVTPtrTypeDiscrimination, PointerAuthInitFini, ! PointerAuthInitFiniAddressDiscrimination)" %s
112
- # RUN: llvm-readobj --notes gnu-0x10000002-85 .o | \
183
+ # RUN: -DVERSION="0x1ff (PointerAuthIntrinsics, PointerAuthCalls, PointerAuthReturns, PointerAuthAuthTraps, PointerAuthVTPtrAddressDiscrimination, PointerAuthVTPtrTypeDiscrimination, PointerAuthInitFini, PointerAuthInitFiniAddressDiscrimination, PointerAuthELFGOT )" %s
184
+ # RUN: llvm-readobj --notes gnu-0x10000002-511 .o | \
113
185
# RUN: FileCheck --check-prefix=OBJ -DPLATFORM="0x10000002 (llvm_linux)" \
114
- # RUN: -DVERSION="0x55 (PointerAuthIntrinsics, ! PointerAuthCalls, PointerAuthReturns, ! PointerAuthAuthTraps, PointerAuthVTPtrAddressDiscrimination, ! PointerAuthVTPtrTypeDiscrimination, PointerAuthInitFini, ! PointerAuthInitFiniAddressDiscrimination)" %s
186
+ # RUN: -DVERSION="0x1ff (PointerAuthIntrinsics, PointerAuthCalls, PointerAuthReturns, PointerAuthAuthTraps, PointerAuthVTPtrAddressDiscrimination, PointerAuthVTPtrTypeDiscrimination, PointerAuthInitFini, PointerAuthInitFiniAddressDiscrimination, PointerAuthELFGOT )" %s
115
187
116
- #--- gnu-0x10000002-256 .s
188
+ #--- gnu-0x10000002-512 .s
117
189
.section ".note.gnu.property" , "a"
118
190
.long 4 // Name length is always 4 ("GNU")
119
191
.long end - begin // Data length
@@ -125,15 +197,15 @@ begin:
125
197
.long 0xc0000001 // Type: GNU_PROPERTY_AARCH64_FEATURE_PAUTH
126
198
.long 16 // Data size
127
199
.quad 0x10000002 // PAuth ABI platform
128
- .quad 256 // PAuth ABI version
200
+ .quad 512 // PAuth ABI version
129
201
.p2align 3 // Align to 8 byte for 64 bit
130
202
end:
131
203
132
- # RUN: llvm-mc -filetype=obj -triple aarch64-linux-gnu gnu-0x10000002-256 .s -o gnu-0x10000002-256 .o
133
- # RUN: llvm-readelf --notes gnu-0x10000002-256 .o | \
134
- # RUN: FileCheck --check-prefix=ELF -DPLATFORM="0x10000002 (llvm_linux)" -DVERSION="0x100 (unknown)" %s
135
- # RUN: llvm-readobj --notes gnu-0x10000002-256 .o | \
136
- # RUN: FileCheck --check-prefix=OBJ -DPLATFORM="0x10000002 (llvm_linux)" -DVERSION="0x100 (unknown)" %s
204
+ # RUN: llvm-mc -filetype=obj -triple aarch64-linux-gnu gnu-0x10000002-512 .s -o gnu-0x10000002-512 .o
205
+ # RUN: llvm-readelf --notes gnu-0x10000002-512 .o | \
206
+ # RUN: FileCheck --check-prefix=ELF -DPLATFORM="0x10000002 (llvm_linux)" -DVERSION="0x200 (unknown)" %s
207
+ # RUN: llvm-readobj --notes gnu-0x10000002-512 .o | \
208
+ # RUN: FileCheck --check-prefix=OBJ -DPLATFORM="0x10000002 (llvm_linux)" -DVERSION="0x200 (unknown)" %s
137
209
138
210
#--- gnu-short.s
139
211
.section ".note.gnu.property" , "a"
0 commit comments