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 */ 200: .asciz "GNU" /* vendor name */ 211: 22 .p2align ALIGN 232: .long GNU_PROPERTY_STACK_SIZE /* pr_type. */ 24 .long 4f - 3f /* pr_datasz. */ 253: 26 .dc.a 0x111100 /* Stack size. */ 274: 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 445: 45