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

            Bug ID: 93738
           Summary: [8/9 regression] test case
                    gcc.target/powerpc/20050603-3.c fails
           Product: gcc
           Version: 10.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: seurer at gcc dot gnu.org
  Target Milestone: ---

git g:8d2d39587d941a40f25ea0144cceb677df115040, r9-3594

ok, this is an old issue that slipped past unnoticed somehow.  It was
introduced in gcc 8 or maybe 9 but also then effects 10.  I am not sure which
order the changes were done back in 8/9.  There is an extra instruction,
rldicl, generated after the change in this test case.


Executing on host: /home/seurer/gcc/git/build/gcc-9-test-2/gcc/xgcc
-B/home/seurer/gcc/git/build/gcc-9-test-2/gcc/
/home/seurer/gcc/git/gcc-9-test-2/gcc/testsuite/gcc.target/powerpc/20050603-3.c
   -fno-diagnostics-show-caret -fno-diagnostics-show-line-numbers
-fdiagnostics-color=never  -O2 -ffat-lto-objects -fno-ident -S -o 20050603-3.s 
  (timeout = 300)
spawn -ignore SIGHUP /home/seurer/gcc/git/build/gcc-9-test-2/gcc/xgcc
-B/home/seurer/gcc/git/build/gcc-9-test-2/gcc/
/home/seurer/gcc/git/gcc-9-test-2/gcc/testsuite/gcc.target/powerpc/20050603-3.c
-fno-diagnostics-show-caret -fno-diagnostics-show-line-numbers
-fdiagnostics-color=never -O2 -ffat-lto-objects -fno-ident -S -o 20050603-3.s
PASS: gcc.target/powerpc/20050603-3.c (test for excess errors)
PASS: gcc.target/powerpc/20050603-3.c scan-assembler-not \\mrlwinm
FAIL: gcc.target/powerpc/20050603-3.c scan-assembler-not \\mrldic
PASS: gcc.target/powerpc/20050603-3.c scan-assembler-not \\mrot[lr]
PASS: gcc.target/powerpc/20050603-3.c scan-assembler-not \\ms[lr][wd]
PASS: gcc.target/powerpc/20050603-3.c scan-assembler-times \\mrl[wd]imi 1
Executing on host: /home/seurer/gcc/git/build/gcc-9-test-2/gcc/xgcc
-B/home/seurer/gcc/git/build/gcc-9-test-2/gcc/ vmx_hw_available76502.c   
-fno-diagnostics-show-caret -fno-diagnostics-show-line-numbers
-fdiagnostics-color=never  -mno-vsx  -lm  -o vmx_hw_available76502.exe   
(timeout = 300)
spawn -ignore SIGHUP /home/seurer/gcc/git/build/gcc-9-test-2/gcc/xgcc
-B/home/seurer/gcc/git/build/gcc-9-test-2/gcc/ vmx_hw_available76502.c
-fno-diagnostics-show-caret -fno-diagnostics-show-line-numbers
-fdiagnostics-color=never -mno-vsx -lm -o vmx_hw_available76502.exe
Setting LD_LIBRARY_PATH to
:/home/seurer/gcc/git/build/gcc-9-test-2/gcc::/home/seurer/gcc/git/build/gcc-9-test-2/gcc:/home/seurer/gcc/git/build/gcc-9-test-2/./gmp/.libs:/home/seurer/gcc/git/build/gcc-9-test-2/./prev-gmp/.libs:/home/seurer/gcc/git/build/gcc-9-test-2/./mpfr/src/.libs:/home/seurer/gcc/git/build/gcc-9-test-2/./prev-mpfr/src/.libs:/home/seurer/gcc/git/build/gcc-9-test-2/./mpc/src/.libs:/home/seurer/gcc/git/build/gcc-9-test-2/./prev-mpc/src/.libs:/home/seurer/gcc/git/build/gcc-9-test-2/./isl/.libs:/home/seurer/gcc/git/build/gcc-9-test-2/./prev-isl/.libs:/home/seurer/gcc/install/gcc-7.4.0/lib64
Execution timeout is: 300
spawn [open ...]
testcase
/home/seurer/gcc/git/gcc-9-test-2/gcc/testsuite/gcc.target/powerpc/powerpc.exp
completed in 1 seconds

                === gcc Summary ===

# of expected passes            5
# of unexpected failures        1


/* This should generate a single rl[wd]imi. */
void rotins (unsigned int x)
{
  b.y = (x<<12) | (x>>20);
}



Before the change:

        addis 10,2,.LC0@toc@ha
        ld 10,.LC0@toc@l(10)
        lwz 9,0(10)
        rlwimi 9,3,20,20,23
        stw 9,0(10)
        blr


After the change:

        addis 10,2,.LC0@toc@ha
        ld 10,.LC0@toc@l(10)
***     rldicl 9,3,52,32
        lwz 3,0(10)
        rlwimi 3,9,0,3840
        stw 3,0(10)
        blr

Reply via email to