Commit | Line | Data |
---|---|---|
6c04fd9b CC |
1 | #define NT_GNU_PROPERTY_TYPE_0 5 |
2 | ||
3 | #define GNU_PROPERTY_STACK_SIZE 1 | |
4 | #define GNU_PROPERTY_NO_COPY_ON_PROTECTED 2 | |
5 | #define GNU_PROPERTY_X86_ISA_1_USED 0xc0000000 | |
6 | #define GNU_PROPERTY_X86_ISA_1_NEEDED 0xc0000001 | |
7 | #define GNU_PROPERTY_X86_FEATURE_1_AND 0xc0000002 | |
8 | ||
9 | #if __SIZEOF_PTRDIFF_T__ == 8 | |
10 | # define ALIGN 3 | |
11 | #elif __SIZEOF_PTRDIFF_T__ == 4 | |
12 | # define ALIGN 2 | |
13 | #endif | |
14 | ||
15 | .section ".note.gnu.property", "a" | |
16 | .p2align ALIGN | |
17 | .long 1f - 0f /* name length */ | |
18 | .long 5f - 2f /* data length */ | |
19 | .long NT_GNU_PROPERTY_TYPE_0 /* note type */ | |
20 | 0: .asciz "GNU" /* vendor name */ | |
21 | 1: | |
22 | .p2align ALIGN | |
23 | 2: .long GNU_PROPERTY_STACK_SIZE /* pr_type. */ | |
24 | .long 4f - 3f /* pr_datasz. */ | |
25 | 3: | |
26 | .dc.a 0x111100 /* Stack size. */ | |
27 | 4: | |
28 | .p2align ALIGN | |
29 | .long GNU_PROPERTY_NO_COPY_ON_PROTECTED /* pr_type. */ | |
30 | .long 0 /* pr_datasz. */ | |
31 | .p2align ALIGN | |
32 | .long GNU_PROPERTY_X86_ISA_1_USED | |
33 | .long 4 | |
34 | .byte 0x11,0x10,0x00,0x00 | |
35 | .p2align ALIGN | |
36 | .long GNU_PROPERTY_X86_ISA_1_NEEDED | |
37 | .long 4 | |
38 | .byte 0x11,0x10,0x00,0x00 | |
39 | .p2align ALIGN | |
40 | .long GNU_PROPERTY_X86_FEATURE_1_AND | |
41 | .long 4 | |
42 | .byte 0x01,0x00,0x00,0x00 | |
43 | .p2align ALIGN | |
44 | 5: |