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

--- Comment #16 from Bill Schmidt <wschmidt at gcc dot gnu.org> ---
Looks like the back end must be inserting the frame pointer adjustments, as
they aren't there at expand time.  From the 218.vregs dump:

(call_insn 141 140 3128 2 (parallel [
            (set (reg:TI 3 3)
                (call (mem:SI (symbol_ref:DI
("system__secondary_stack__ss_mark\
") [flags 0x41]  <function_decl 0x1000008a9200
system__secondary_stack__ss_mark\
>) [0 system__secondary_stack__ss_mark S4 A8])
                    (const_int 0 [0])))
            (clobber (reg:DI 65 lr))
        ]) /home/wschmidt/gcc/gcc-mainline-base/gcc/ada/make.adb:6327 661
{*cal\
l_value_nonlocal_aixdi}
     (expr_list:REG_CALL_DECL (symbol_ref:DI
("system__secondary_stack__ss_mark\
") [flags 0x41]  <function_decl 0x1000008a9200
system__secondary_stack__ss_mark\
>)
        (nil))
    (expr_list (use (reg:DI 2 2))
        (nil)))
(insn 3128 141 142 2 (set (reg:DI 1674)
        (const_int 1208 [0x4b8]))
/home/wschmidt/gcc/gcc-mainline-base/gcc/ada/\
make.adb:6327 -1
     (nil))
(insn 142 3128 143 2 (set (mem/j/c:TI (plus:DI (reg/f:DI 113 sfp)
                (reg:DI 1674)) [1137 FRAME.2381.M1944b+0 S16 A64])
        (reg:TI 3 3))
/home/wschmidt/gcc/gcc-mainline-base/gcc/ada/make.adb:632\
7 975 {*vsx_movti_64bit}
     (nil))

I'll continue to dig.

Reply via email to