[Utils] Identity map module-level debug info on first use in CloneFunction* (#118627)
[llvm-project.git] / llvm / test / tools / llvm-readobj / ELF / AArch64 / aarch64-note-gnu-property.s
blob37dda7aaf31fa7798a773f8e11b87a21be7fab8f
1 // See tests for GNU_PROPERTY_AARCH64_FEATURE_PAUTH in aarch64-feature-pauth.s
3 // RUN: llvm-mc -filetype=obj -triple aarch64-linux-gnu %s -o %t
4 // RUN: llvm-readelf --notes %t | FileCheck %s --check-prefix=GNU
5 // RUN: llvm-readobj --notes %t | FileCheck %s --check-prefix=LLVM
7 // GNU: Displaying notes found in: .note.gnu.property
8 // GNU-NEXT: Owner Data size Description
9 // GNU-NEXT: GNU 0x00000010 NT_GNU_PROPERTY_TYPE_0 (property note)
10 // GNU-NEXT: Properties: aarch64 feature: BTI, PAC, GCS
12 // LLVM: NoteSections [
13 // LLVM-NEXT: NoteSection {
14 // LLVM-NEXT: Name: .note.gnu.property
15 // LLVM-NEXT: Offset: 0x40
16 // LLVM-NEXT: Size: 0x20
17 // LLVM-NEXT: Notes [
18 // LLVM-NEXT: {
19 // LLVM-NEXT: Owner: GNU
20 // LLVM-NEXT: Data size: 0x10
21 // LLVM-NEXT: Type: NT_GNU_PROPERTY_TYPE_0 (property note)
22 // LLVM-NEXT: Property [
23 // LLVM-NEXT: aarch64 feature: BTI, PAC, GCS
24 // LLVM-NEXT: ]
25 // LLVM-NEXT: }
26 // LLVM-NEXT: ]
27 // LLVM-NEXT: }
28 // LLVM-NEXT: ]
30 .section ".note.gnu.property", "a"
31 .long 4 /* Name length is always 4 ("GNU") */
32 .long end - begin /* Data length */
33 .long 5 /* Type: NT_GNU_PROPERTY_TYPE_0 */
34 .asciz "GNU" /* Name */
35 .p2align 3
36 begin:
37 /* BTI, PAC, and GCS property note */
38 .long 0xc0000000 /* Type: GNU_PROPERTY_AARCH64_FEATURE_1_AND */
39 .long 4 /* Data size */
40 .long 7 /* BTI, PAC, GCS */
41 .p2align 3 /* Align to 8 byte for 64 bit */
42 end: