https://sourceware.org/bugzilla/show_bug.cgi?id=22061
Bug ID: 22061 Summary: Missing unwind info for IBT PLT Product: binutils Version: 2.29 Status: NEW Severity: normal Priority: P2 Component: ld Assignee: unassigned at sourceware dot org Reporter: hjl.tools at gmail dot com Target Milestone: --- Target: i386 [hjl@gnu-6 ld]$ cat /export/gnu/import/git/sources/binutils-gdb/ld/testsuite/ld-i386/ibt-plt-1.s .text .p2align 4,,15 .globl foo .type foo, @function foo: .LFB0: .cfi_startproc pushl %ebx .cfi_def_cfa_offset 8 .cfi_offset 3, -8 call __x86.get_pc_thunk.bx addl $_GLOBAL_OFFSET_TABLE_, %ebx subl $8, %esp .cfi_def_cfa_offset 16 call bar2@PLT call bar1@PLT addl $8, %esp .cfi_def_cfa_offset 8 popl %ebx .cfi_restore 3 .cfi_def_cfa_offset 4 ret .cfi_endproc .LFE0: .size foo, .-foo .section .note.GNU-stack,"",@progbits .section .text.__x86.get_pc_thunk.bx,"axG",@progbits,__x86.get_pc_thunk.bx,comdat .globl __x86.get_pc_thunk.bx .hidden __x86.get_pc_thunk.bx .type __x86.get_pc_thunk.bx, @function __x86.get_pc_thunk.bx: .LFB1: .cfi_startproc movl (%esp), %ebx ret .cfi_endproc .LFE1: .section ".note.gnu.property", "a" .p2align 2 .long 1f - 0f /* name length */ .long 5f - 2f /* data length */ .long 5 /* note type */ 0: .asciz "GNU" /* vendor name */ 1: .p2align 2 2: .long 0xc0000002 /* pr_type. */ .long 4f - 3f /* pr_datasz. */ 3: .long 0x1 4: .p2align 2 5: /export/build/gnu/binutils/build-x86_64-linux/ld/../gas/as-new --32 -o tmpdir/ibt-plt-1.o /export/gnu/import/git/sources/binutils-gdb/ld/testsuite/ld-i386/ibt-plt-1.s ld -z norelro -L/export/gnu/import/git/sources/binutils-gdb/ld/testsuite/ld-i386 -shared -m elf_i386 --hash-style=sysv -o tmpdir/dump tmpdir/ibt-plt-1.o objdump -dw tmpdir/dump readelf -wf tmpdir/dump tmpdir/dump: file format elf32-i386 Disassembly of section .plt: 000001b0 <.plt>: 1b0: ff b3 04 00 00 00 pushl 0x4(%ebx) 1b6: ff a3 08 00 00 00 jmp *0x8(%ebx) 1bc: 0f 1f 40 00 nopl 0x0(%eax) 1c0: f3 0f 1e fb endbr32 1c4: 68 00 00 00 00 push $0x0 1c9: e9 e2 ff ff ff jmp 1b0 <.plt> 1ce: 66 90 xchg %ax,%ax 1d0: f3 0f 1e fb endbr32 1d4: 68 08 00 00 00 push $0x8 1d9: e9 d2 ff ff ff jmp 1b0 <.plt> 1de: 66 90 xchg %ax,%ax Disassembly of section .plt.sec: 000001e0 <bar1@plt>: 1e0: f3 0f 1e fb endbr32 1e4: ff a3 0c 00 00 00 jmp *0xc(%ebx) 1ea: 66 0f 1f 44 00 00 nopw 0x0(%eax,%eax,1) 000001f0 <bar2@plt>: 1f0: f3 0f 1e fb endbr32 1f4: ff a3 10 00 00 00 jmp *0x10(%ebx) 1fa: 66 0f 1f 44 00 00 nopw 0x0(%eax,%eax,1) Disassembly of section .text: 00000200 <foo>: 200: 53 push %ebx 201: e8 18 00 00 00 call 21e <__x86.get_pc_thunk.bx> 206: 81 c3 22 11 00 00 add $0x1122,%ebx 20c: 83 ec 08 sub $0x8,%esp 20f: e8 dc ff ff ff call 1f0 <bar2@plt> 214: e8 c7 ff ff ff call 1e0 <bar1@plt> 219: 83 c4 08 add $0x8,%esp 21c: 5b pop %ebx 21d: c3 ret 0000021e <__x86.get_pc_thunk.bx>: 21e: 8b 1c 24 mov (%esp),%ebx 221: c3 ret Contents of the .eh_frame section: 00000000 00000014 00000000 CIE Version: 1 Augmentation: "zR" Code alignment factor: 1 Data alignment factor: -4 Return address column: 8 Augmentation data: 1b DW_CFA_def_cfa: r4 (esp) ofs 4 DW_CFA_offset: r8 (eip) at cfa-4 DW_CFA_nop DW_CFA_nop 00000018 0000001c 0000001c FDE cie=00000000 pc=00000200..0000021e DW_CFA_advance_loc: 1 to 00000201 DW_CFA_def_cfa_offset: 8 DW_CFA_offset: r3 (ebx) at cfa-8 DW_CFA_advance_loc: 14 to 0000020f DW_CFA_def_cfa_offset: 16 DW_CFA_advance_loc: 13 to 0000021c DW_CFA_def_cfa_offset: 8 DW_CFA_advance_loc: 1 to 0000021d DW_CFA_restore: r3 (ebx) DW_CFA_def_cfa_offset: 4 00000038 00000010 0000003c FDE cie=00000000 pc=0000021e..00000222 DW_CFA_nop DW_CFA_nop DW_CFA_nop 0000004c 00000020 00000050 FDE cie=00000000 pc=000001b0..000001e0 DW_CFA_def_cfa_offset: 8 DW_CFA_advance_loc: 6 to 000001b6 DW_CFA_def_cfa_offset: 12 DW_CFA_advance_loc: 10 to 000001c0 DW_CFA_def_cfa_expression (DW_OP_breg4 (esp): 4; DW_OP_breg8 (eip): 0; DW_OP_lit15; DW_OP_and; DW_OP_lit9; DW_OP_ge; DW_OP_lit2; DW_OP_shl; DW_OP_plus) [hjl@gnu-6 ld]$ Unwind info is missing for section .plt.sec. -- You are receiving this mail because: You are on the CC list for the bug. _______________________________________________ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils