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

seurer at gcc dot gnu.org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Target|powerpc64-linux-gnu         |powerpc64*-linux-gnu
             Status|RESOLVED                    |REOPENED
                 CC|                            |segher at gcc dot gnu.org
               Host|powerpc64-linux-gnu         |powerpc64*-linux-gnu
         Resolution|DUPLICATE                   |---
              Build|powerpc64-linux-gnu         |powerpc64*-linux-gnu

--- Comment #4 from seurer at gcc dot gnu.org ---
The fix for pr92529 does not fix these.

What changed is some of the instructions generated.  For example, in
gcc.target/powerpc/ppc-round.c

round_double_uint:
.LFB2:
        .cfi_startproc
        fctiwuz 1,1
        addi 9,1,-16
        stfiwx 1,0,9
        ori 2,2,0
        lfiwzx 1,0,9
        fcfid 1,1
        blr

became

round_double_uint:
.LFB5:
        .cfi_startproc
        fctiwz 1,1
        addi 9,1,-16
        stfiwx 1,0,9
        ori 2,2,0
        lfiwax 1,0,9
        fcfid 1,1
        blr

They both apparently work (albeit aren't close to optimal).  So I think the
solution here is to update the expected instruction counts and maybe make a
TODO somewhere to see if the generated code could be made better.

Reply via email to