diff options
Diffstat (limited to 'ld/testsuite/ld-i386/no-plt-extern1a.S')
-rw-r--r-- | ld/testsuite/ld-i386/no-plt-extern1a.S | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/ld/testsuite/ld-i386/no-plt-extern1a.S b/ld/testsuite/ld-i386/no-plt-extern1a.S new file mode 100644 index 0000000..38d4dd0 --- /dev/null +++ b/ld/testsuite/ld-i386/no-plt-extern1a.S @@ -0,0 +1,26 @@ + .text + .p2align 4,,15 + .globl get_func + .type get_func, @function +get_func: + call __x86.get_pc_thunk.ax + addl $_GLOBAL_OFFSET_TABLE_, %eax + movl func@GOT(%eax), %eax + ret + .size get_func, .-get_func + .p2align 4,,15 + .globl call_func + .type call_func, @function +call_func: + call __x86.get_pc_thunk.ax + addl $_GLOBAL_OFFSET_TABLE_, %eax + jmp *func@GOT(%eax) + .size call_func, .-call_func + .section .text.__x86.get_pc_thunk.ax,"axG",@progbits,__x86.get_pc_thunk.ax,comdat + .globl __x86.get_pc_thunk.ax + .hidden __x86.get_pc_thunk.ax + .type __x86.get_pc_thunk.ax, @function +__x86.get_pc_thunk.ax: + movl (%esp), %eax + ret + .section .note.GNU-stack,"",@progbits |