https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94123
Bug ID: 94123
Summary: [10 regression] r10-7093 causes
gcc.target/powerpc/pr87507.c to fail
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: ---
Executing on host: /home3/seurer/gcc/git/build/gcc-test2/gcc/xgcc
-B/home3/seurer/gcc/git/build/gcc-test2/gcc/
/home/seurer/gcc/git/gcc-test2/gcc/testsuite/gcc.target/powerpc/pr87507.c
-fno-diagnostics-show-caret -fno-diagnostics-show-line-numbers
-fdiagnostics-color=never -fdiagnostics-urls=never -O2 -mdejagnu-cpu=power8
-ffat-lto-objects -fno-ident -S -o pr87507.s (timeout = 300)
spawn -ignore SIGHUP /home3/seurer/gcc/git/build/gcc-test2/gcc/xgcc
-B/home3/seurer/gcc/git/build/gcc-test2/gcc/
/home/seurer/gcc/git/gcc-test2/gcc/testsuite/gcc.target/powerpc/pr87507.c
-fno-diagnostics-show-caret -fno-diagnostics-show-line-numbers
-fdiagnostics-color=never -fdiagnostics-urls=never -O2 -mdejagnu-cpu=power8
-ffat-lto-objects -fno-ident -S -o pr87507.s
PASS: gcc.target/powerpc/pr87507.c (test for excess errors)
gcc.target/powerpc/pr87507.c: \\mstd\\M found 6 times
FAIL: gcc.target/powerpc/pr87507.c scan-assembler-times \\mstd\\M 4
FAIL: gcc.target/powerpc/pr87507.c scan-assembler-not \\mld\\M
Executing on host: /home3/seurer/gcc/git/build/gcc-test2/gcc/xgcc
-B/home3/seurer/gcc/git/build/gcc-test2/gcc/ vmx_hw_available12365.c
-fno-diagnostics-show-caret -fno-diagnostics-show-line-numbers
-fdiagnostics-color=never -fdiagnostics-urls=never -mno-vsx -lm -o
vmx_hw_available12365.exe (timeout = 300)
spawn -ignore SIGHUP /home3/seurer/gcc/git/build/gcc-test2/gcc/xgcc
-B/home3/seurer/gcc/git/build/gcc-test2/gcc/ vmx_hw_available12365.c
-fno-diagnostics-show-caret -fno-diagnostics-show-line-numbers
-fdiagnostics-color=never -fdiagnostics-urls=never -mno-vsx -lm -o
vmx_hw_available12365.exe
Setting LD_LIBRARY_PATH to
:/home3/seurer/gcc/git/build/gcc-test2/gcc::/home3/seurer/gcc/git/build/gcc-test2/gcc:/home/seurer/gcc/git/build/gcc-test2/./gmp/.libs:/home/seurer/gcc/git/build/gcc-test2/./prev-gmp/.libs:/home/seurer/gcc/git/build/gcc-test2/./mpfr/src/.libs:/home/seurer/gcc/git/build/gcc-test2/./prev-mpfr/src/.libs:/home/seurer/gcc/git/build/gcc-test2/./mpc/src/.libs:/home/seurer/gcc/git/build/gcc-test2/./prev-mpc/src/.libs:/home/seurer/gcc/git/build/gcc-test2/./isl/.libs:/home/seurer/gcc/git/build/gcc-test2/./prev-isl/.libs
Execution timeout is: 300
spawn [open ...]
testcase
/home/seurer/gcc/git/gcc-test2/gcc/testsuite/gcc.target/powerpc/powerpc.exp
completed in 1 seconds
=== gcc Summary ===
# of expected passes 1
# of unexpected failures 2
The test now generates a bunch more loads and stores. Looks like it is
spilling some registers.
Old code (r10-7092):
.LFB0:
.cfi_startproc
cmpdi 0,3,0
beqlr 0
mr 10,6
mr 11,5
addi 3,4,16
mr 8,10
mr 9,11
std 11,0(4)
std 10,8(4)
std 9,0(3)
std 8,8(3)
blr
New code (r10-7093):
.LFB0:
.cfi_startproc
cmpdi 0,3,0
beqlr 0
std 30,-16(1)
std 31,-8(1)
.cfi_offset 30, -16
.cfi_offset 31, -8
mr 30,6
mr 31,5
addi 9,4,16
mr 10,30
mr 11,31
std 31,0(4)
std 30,8(4)
std 11,0(9)
std 10,8(9)
ld 30,-16(1)
ld 31,-8(1)
.cfi_restore 31
.cfi_restore 30
blr