https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115673

--- Comment #1 from Sam James <sjames at gcc dot gnu.org> ---
$ diff -u <(gcc-14
/home/sam/git/gcc/gcc/testsuite/gcc.target/i386/force-indirect-call-2.c   
-fdiagnostics-plain-output  -O2 -mforce-indirect-call -fPIC -ffat-lto-objects
-fno-ident -S -o -) <(/tmp/build/gcc/xgcc -B/tmp/build/gcc/ 
/home/sam/git/gcc/gcc/testsuite/gcc.target/i386/force-indirect-call-2.c   
-fdiagnostics-plain-output  -O2 -mforce-indirect-call -fPIC -ffat-lto-objects
-fno-ident -S -o -)
--- /dev/fd/63  2024-06-27 05:49:53.355792646 +0100
+++ /dev/fd/62  2024-06-27 05:49:53.357792668 +0100
@@ -29,17 +29,14 @@
 f2:
 .LFB2:
        .cfi_startproc
-       pushq   %rbx
+       subq    $8, %rsp
        .cfi_def_cfa_offset 16
-       .cfi_offset 3, -16
-       movq    f1@GOTPCREL(%rip), %rbx
-       call    *%rbx
+       call    *f1@GOTPCREL(%rip)
        leaq    f3(%rip), %rax
        call    *%rax
-       movq    %rbx, %rax
-       popq    %rbx
+       addq    $8, %rsp
        .cfi_def_cfa_offset 8
-       jmp     *%rax
+       jmp     *f1@GOTPCREL(%rip)
        .cfi_endproc
 .LFE2:
        .size   f2, .-f2

Reply via email to