https://sourceware.org/bugzilla/show_bug.cgi?id=21481
Bug ID: 21481 Summary: -z bndplt doesn't work with IFUNC Product: binutils Version: 2.29 (HEAD) Status: NEW Severity: normal Priority: P2 Component: ld Assignee: unassigned at sourceware dot org Reporter: hjl.tools at gmail dot com Target Milestone: --- Target: x86-64 [hjl@gnu-6 xxx]$ cat x.c extern void check (void); int main () { check (); return 0; } [hjl@gnu-6 xxx]$ cat func1.S .section .rodata.str1.1,"aMS",@progbits,1 .LC0: .string "PASS" .text .globl check .type check, @function check: subq $8, %rsp call *get_func1@GOTPCREL(%rip) cmpl $func1, %eax jne .L3 movq func1_p@GOTPCREL(%rip), %rdx cmpq %rax, (%rdx) jne .L3 call *func1@GOTPCREL(%rip) cmpl $1, %eax jne .L3 call *call_func1@GOTPCREL(%rip) cmpl $1, %eax jne .L3 leaq .LC0(%rip), %rdi addq $8, %rsp jmp *puts@GOTPCREL(%rip) .L3: call *abort@GOTPCREL(%rip) .size check, .-check .globl get_func1 .type get_func1, @function get_func1: movq func1@GOTPCREL(%rip), %rax ret .size get_func1, .-get_func1 .globl call_func1 .type call_func1, @function call_func1: jmp *func1@GOTPCREL(%rip) .size call_func1, .-call_func1 .globl func1_p .section .rodata,"a",@progbits .align 8 .size func1_p, 8 .type func1_p, @object func1_p: .dc.a func1 implementation1: movl $1, %eax ret .size implementation1, .-implementation1 .globl func1 .type func1, @gnu_indirect_function func1: leaq implementation1(%rip), %rax ret .size func1, .-func1 .section .note.GNU-stack,"",@progbits [hjl@gnu-6 xxx]$ make gcc -B./ -g -c -o x.o x.c gcc -B./ -c -g func1.S -o func1.o gcc -B./ -Wl,-z,bndplt -o x x.o func1.o ./x Makefile:13: recipe for target 'all' failed make: *** [all] Aborted [hjl@gnu-6 xxx]$ -- 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