1*1424dfb3Schristos#define NT_GNU_PROPERTY_TYPE_0 5 2*1424dfb3Schristos 3*1424dfb3Schristos#define GNU_PROPERTY_STACK_SIZE 1 4*1424dfb3Schristos#define GNU_PROPERTY_NO_COPY_ON_PROTECTED 2 5*1424dfb3Schristos#define GNU_PROPERTY_X86_ISA_1_USED 0xc0000000 6*1424dfb3Schristos#define GNU_PROPERTY_X86_ISA_1_NEEDED 0xc0000001 7*1424dfb3Schristos#define GNU_PROPERTY_X86_FEATURE_1_AND 0xc0000002 8*1424dfb3Schristos 9*1424dfb3Schristos#if __SIZEOF_PTRDIFF_T__ == 8 10*1424dfb3Schristos# define ALIGN 3 11*1424dfb3Schristos#elif __SIZEOF_PTRDIFF_T__ == 4 12*1424dfb3Schristos# define ALIGN 2 13*1424dfb3Schristos#endif 14*1424dfb3Schristos 15*1424dfb3Schristos .section ".note.gnu.property", "a" 16*1424dfb3Schristos .p2align ALIGN 17*1424dfb3Schristos .long 1f - 0f /* name length */ 18*1424dfb3Schristos .long 3f - 2f /* data length */ 19*1424dfb3Schristos .long NT_GNU_PROPERTY_TYPE_0 /* note type */ 20*1424dfb3Schristos0: .asciz "GNU" /* vendor name */ 21*1424dfb3Schristos1: 22*1424dfb3Schristos .p2align ALIGN 23*1424dfb3Schristos2: .long GNU_PROPERTY_NO_COPY_ON_PROTECTED /* pr_type. */ 24*1424dfb3Schristos .long 0 /* pr_datasz. */ 25*1424dfb3Schristos .p2align ALIGN 26*1424dfb3Schristos .long GNU_PROPERTY_X86_ISA_1_USED 27*1424dfb3Schristos .long 4 28*1424dfb3Schristos .byte 0x01,0x11,0x00,0x00 29*1424dfb3Schristos .p2align ALIGN 30*1424dfb3Schristos .long GNU_PROPERTY_X86_ISA_1_NEEDED 31*1424dfb3Schristos .long 4 32*1424dfb3Schristos .byte 0x01,0x11,0x00,0x00 33*1424dfb3Schristos .p2align ALIGN 34*1424dfb3Schristos .long GNU_PROPERTY_X86_FEATURE_1_AND 35*1424dfb3Schristos .long 4 36*1424dfb3Schristos .byte 0x03,0x00,0x00,0x00 37*1424dfb3Schristos .p2align ALIGN 38*1424dfb3Schristos3: 39