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