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

--- Comment #7 from Bernd Edlinger <bernd.edlinger at hotmail dot de> ---
I can reproduce this defect with gcc-9 (!)

$ ../gcc-9-branch/configure --prefix=/home/ed/gnu/arm-linux-gnueabihf-linux64-1
--target=arm-linux-gnueabihf --enable-languages=c,c++ --with-arch=armv7-a
--with-tune=cortex-a9 --with-fpu=vfpv3-d16 --with-float=hard

$ TMP=. arm-linux-gnueabihf-gcc -O2 -flto -save-temps -fdump-rtl-all-all
20040709-1.c

$ grep same *.reload
         Assigning the same 6155 to r11
$ vi *.ltrans0.s
look for the last umull (it is always the last one):

        str     r5, [fp]
        umull   fp, r3, r7, r8
        [...]
        str     r6, [fp]

But the same does not happen for gcc-8:

$ grep same *.reload

the assembler listing looks okay.
But the update_scratch_ops looks exactly identical,
Therefore the issue is likely just a hidden one there.

Reply via email to