aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/gcc-interface/utils.cc
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2025-01-31 18:28:23 +0800
committerH.J. Lu <hjl.tools@gmail.com>2025-01-31 19:10:34 +0800
commit5f34558100e8466aa70373e2f930bf1013192ba8 (patch)
treeeebefacb50e8711d6b188bd60744a97de5c78cfd /gcc/ada/gcc-interface/utils.cc
parent319f1d042179b381becf4bf1d0f6b9dab6e84884 (diff)
downloadgcc-5f34558100e8466aa70373e2f930bf1013192ba8.zip
gcc-5f34558100e8466aa70373e2f930bf1013192ba8.tar.gz
gcc-5f34558100e8466aa70373e2f930bf1013192ba8.tar.bz2
force-indirect-call-2.c: Allow indirect branch via GOT
r15-1619-g3b9b8d6cfdf593 changed the codegen from f2: .cfi_startproc pushq %rbx .cfi_def_cfa_offset 16 .cfi_offset 3, -16 movq f1@GOTPCREL(%rip), %rbx call *%rbx leaq f3(%rip), %rax call *%rax movq %rbx, %rax popq %rbx .cfi_def_cfa_offset 8 jmp *%rax .cfi_endproc to f2: .cfi_startproc subq $8, %rsp .cfi_def_cfa_offset 16 call *f1@GOTPCREL(%rip) leaq f3(%rip), %rax call *%rax addq $8, %rsp .cfi_def_cfa_offset 8 jmp *f1@GOTPCREL(%rip) .cfi_endproc Since it is OK to indirect call via memory for -mforce-indirect-call, allow indirect branch via GOT. PR target/115673 * gcc.target/i386/force-indirect-call-2.c: Allow indirect branch via GOT. Signed-off-by: H.J. Lu <hjl.tools@gmail.com>
Diffstat (limited to 'gcc/ada/gcc-interface/utils.cc')
0 files changed, 0 insertions, 0 deletions