mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-12-21 04:42:53 +08:00
e9c11d58b9
Since MPX support has been removed from x86-64 psABI, remove BND from 64-bit IBT PLT by using x32 IBT PLT. bfd/ PR ld/29851 * elf64-x86-64.c (elf_x86_64_get_synthetic_symtab): Also check x32 IBT PLT for 64-bit. (elf_x86_64_link_setup_gnu_properties): Always use x32 IBT PLT. ld/ PR ld/29851 * testsuite/ld-x86-64/ibt-plt-1.d: Updated. * testsuite/ld-x86-64/ibt-plt-2a.d: Likewise. * testsuite/ld-x86-64/ibt-plt-2b.d: Likewise. * testsuite/ld-x86-64/ibt-plt-2c.d: Likewise. * testsuite/ld-x86-64/ibt-plt-2d.d: Likewise. * testsuite/ld-x86-64/ibt-plt-3a.d: Likewise. * testsuite/ld-x86-64/ibt-plt-3b.d: Likewise. * testsuite/ld-x86-64/ibt-plt-3c.d: Likewise. * testsuite/ld-x86-64/ibt-plt-3d.d: Likewise. * testsuite/ld-x86-64/plt-main-ibt-x32.dd: Moved to ... * testsuite/ld-x86-64/plt-main-ibt.dd: This. * testsuite/ld-x86-64/x86-64.exp: Don't use plt-main-ibt-x32.dd.
50 lines
1.4 KiB
Makefile
50 lines
1.4 KiB
Makefile
#source: ibt-plt-2.s
|
|
#as: --64 -defsym __64_bit__=1
|
|
#ld: -shared -m elf_x86_64 -z ibt --hash-style=sysv -z max-page-size=0x200000 -z noseparate-code
|
|
#readelf: -wf -n
|
|
|
|
Contents of the .eh_frame section:
|
|
|
|
0+ 0000000000000014 00000000 CIE
|
|
Version: 1
|
|
Augmentation: "zR"
|
|
Code alignment factor: 1
|
|
Data alignment factor: -8
|
|
Return address column: 16
|
|
Augmentation data: 1b
|
|
|
|
DW_CFA_def_cfa: r7 \(rsp\) ofs 8
|
|
DW_CFA_offset: r16 \(rip\) at cfa-8
|
|
DW_CFA_nop
|
|
DW_CFA_nop
|
|
|
|
0+18 0000000000000014 0000001c FDE cie=00000000 pc=[a-f0-9]+\.\.[a-f0-9]+
|
|
DW_CFA_advance_loc: 4 to [a-f0-9]+
|
|
DW_CFA_def_cfa_offset: 16
|
|
DW_CFA_advance_loc: 9 to [a-f0-9]+
|
|
DW_CFA_def_cfa_offset: 8
|
|
DW_CFA_nop
|
|
|
|
0+30 0000000000000024 00000034 FDE cie=00000000 pc=[a-f0-9]+\.\.[a-f0-9]+
|
|
DW_CFA_def_cfa_offset: 16
|
|
DW_CFA_advance_loc: 6 to [a-f0-9]+
|
|
DW_CFA_def_cfa_offset: 24
|
|
DW_CFA_advance_loc: 10 to [a-f0-9]+
|
|
DW_CFA_def_cfa_expression \(DW_OP_breg7 \(rsp\): 8; DW_OP_breg16 \(rip\): 0; DW_OP_lit15; DW_OP_and; DW_OP_lit9; DW_OP_ge; DW_OP_lit3; DW_OP_shl; DW_OP_plus\)
|
|
DW_CFA_nop
|
|
DW_CFA_nop
|
|
DW_CFA_nop
|
|
DW_CFA_nop
|
|
|
|
0+58 0000000000000010 0000005c FDE cie=00000000 pc=[a-f0-9]+\.\.[a-f0-9]+
|
|
DW_CFA_nop
|
|
DW_CFA_nop
|
|
DW_CFA_nop
|
|
|
|
|
|
Displaying notes found in: .note.gnu.property
|
|
[ ]+Owner[ ]+Data size[ ]+Description
|
|
GNU 0x00000010 NT_GNU_PROPERTY_TYPE_0
|
|
Properties: x86 feature: IBT
|
|
#pass
|