https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91821
Bug ID: 91821
Summary: [10 regression] r275928 breaks
gcc.target/powerpc/sad-vectorize-2.c
Product: gcc
Version: 10.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: testsuite
Assignee: unassigned at gcc dot gnu.org
Reporter: seurer at gcc dot gnu.org
Target Milestone: ---
This test case just looks for instruction counts so it may just need to be
updated.
make -k check-gcc RUNTESTFLAGS=powerpc.exp=gcc.target/powerpc/sad-vectorize-2.c
spawn -ignore SIGHUP /home/seurer/gcc/build/gcc-test2/gcc/xgcc
-B/home/seurer/gcc/build/gcc-test2/gcc/
/home/seurer/gcc/gcc-test2/gcc/testsuite/gcc.target/powerpc/sad-vectorize-2.c
-fno-diagnostics-show-caret -fno-diagnostics-show-line-numbers
-fdiagnostics-color=never -O3 -mdejagnu-cpu=power9 -ffat-lto-objects -fno-ident
-S -o sad-vectorize-2.s
PASS: gcc.target/powerpc/sad-vectorize-2.c (test for excess errors)
gcc.target/powerpc/sad-vectorize-2.c: vabsduh found 0 times
FAIL: gcc.target/powerpc/sad-vectorize-2.c scan-assembler-times vabsduh 16
gcc.target/powerpc/sad-vectorize-2.c: vsum4shs found 0 times
FAIL: gcc.target/powerpc/sad-vectorize-2.c scan-assembler-times vsum4shs 16
gcc.target/powerpc/sad-vectorize-2.c: vadduwm found 0 times
FAIL: gcc.target/powerpc/sad-vectorize-2.c scan-assembler-times vadduwm 17
Executing on host: /home/seurer/gcc/build/gcc-test2/gcc/xgcc
-B/home/seurer/gcc/build/gcc-test2/gcc/ vmx_hw_available127190.c
-fno-diagnostics-show-caret -fno-diagnostics-show-line-numbers
-fdiagnostics-color=never -mno-vsx -lm -o vmx_hw_available127190.exe
(timeout = 300)
spawn -ignore SIGHUP /home/seurer/gcc/build/gcc-test2/gcc/xgcc
-B/home/seurer/gcc/build/gcc-test2/gcc/ vmx_hw_available127190.c
-fno-diagnostics-show-caret -fno-diagnostics-show-line-numbers
-fdiagnostics-color=never -mno-vsx -lm -o vmx_hw_available127190.exe
Setting LD_LIBRARY_PATH to
:/home/seurer/gcc/build/gcc-test2/gcc::/home/seurer/gcc/build/gcc-test2/gcc:/home/seurer/gcc/build/gcc-test2/./gmp/.libs:/home/seurer/gcc/build/gcc-test2/./prev-gmp/.libs:/home/seurer/gcc/build/gcc-test2/./mpfr/src/.libs:/home/seurer/gcc/build/gcc-test2/./prev-mpfr/src/.libs:/home/seurer/gcc/build/gcc-test2/./mpc/src/.libs:/home/seurer/gcc/build/gcc-test2/./prev-mpc/src/.libs:/home/seurer/gcc/build/gcc-test2/./isl/.libs:/home/seurer/gcc/build/gcc-test2/./prev-isl/.libs:/home/seurer/gcc/install/gcc-7.2.0/lib64
Execution timeout is: 300
spawn [open ...]
testcase
/home/seurer/gcc/gcc-test2/gcc/testsuite/gcc.target/powerpc/powerpc.exp
completed in 0 seconds
=== gcc Summary ===
# of expected passes 1
# of unexpected failures 3
The generated assembler is quite different:
seurer@makalu-lp1:~/gcc/build/gcc-test$ diff sad-vectorize-2.s.r275927
../gcc-test2/sad-vectorize-2.s.r275928
16,116c16,123
< lxv 33,0(3)
< xxspltib 32,0
< lxv 49,0(4)
< sldi 10,5,1
< lxv 36,80(3)
< lxv 37,96(3)
< lxvx 50,4,10
< lxv 38,112(3)
< add 9,4,10
< lxv 39,128(3)
< lxv 40,144(3)
< lxvx 51,9,10
< lxv 41,160(3)
< add 9,9,10
< vabsduh 17,1,17
< lxv 33,16(3)
< lxv 42,176(3)
< lxvx 34,9,10
< lxv 43,192(3)
< add 9,9,10
< lxv 44,208(3)
< lxv 45,224(3)
< vsum4shs 17,17,0
< lxvx 35,9,10
< add 9,9,10
< vabsduh 18,1,18
< lxv 33,32(3)
< lxvx 48,9,10
< add 9,9,10
< lxvx 47,9,10
< add 9,9,10
< vsum4shs 18,18,0
< vabsduh 19,1,19
< lxv 33,48(3)
< vabsduh 4,4,16
< lxvx 48,9,10
< add 9,9,10
< vabsduh 5,5,15
< vsum4shs 19,19,0
< vabsduh 2,1,2
< lxv 33,64(3)
< vadduwm 18,18,17
< lxvx 49,9,10
< add 9,9,10
< vabsduh 6,6,16
< vsum4shs 2,2,0
< vabsduh 3,1,3
< lxv 33,240(3)
< vadduwm 19,19,18
< lxvx 50,9,10
< add 9,9,10
< vabsduh 7,7,17
< vsum4shs 3,3,0
< vsum4shs 4,4,0
< vsum4shs 5,5,0
< vsum4shs 6,6,0
< vadduwm 2,2,19
< lxvx 51,9,10
< add 9,9,10
< vsum4shs 7,7,0
< vabsduh 8,8,18
< vsum4shs 8,8,0
< vadduwm 3,3,2
< lxvx 34,9,10
< add 9,9,10
< vabsduh 9,9,19
< vadduwm 4,4,3
< lxvx 35,9,10
< add 9,9,10
< vsum4shs 9,9,0
< vabsduh 10,10,2
< vadduwm 5,5,4
< lxvx 36,9,10
< add 9,9,10
< vsum4shs 10,10,0
< vabsduh 11,11,3
< vadduwm 6,6,5
< lxvx 37,9,10
< add 9,9,10
< vsum4shs 11,11,0
< vabsduh 12,12,4
< vadduwm 7,7,6
< lxvx 38,9,10
< vsum4shs 12,12,0
< vabsduh 13,13,5
< vadduwm 8,8,7
< vsum4shs 13,13,0
< vabsduh 1,1,6
< vadduwm 9,9,8
< vsum4shs 1,1,0
< vadduwm 10,10,9
< vadduwm 11,11,10
< vadduwm 12,12,11
< vadduwm 13,13,12
< vadduwm 1,1,13
< xxsldwi 45,33,32,2
< vadduwm 1,13,1
< xxsldwi 32,33,32,1
< vadduwm 0,0,1
< xxextractuw 0,32,0
< stfiwx 0,0,6
---
> li 9,16
> std 22,-80(1)
> std 28,-32(1)
> std 29,-24(1)
> .cfi_offset 22, -80
> .cfi_offset 28, -32
> .cfi_offset 29, -24
> li 22,0
> sldi 29,5,1
> mr 28,6
> std 23,-72(1)
> mtctr 9
> std 24,-64(1)
> std 25,-56(1)
> std 26,-48(1)
> std 27,-40(1)
> std 30,-16(1)
> std 31,-8(1)
> .cfi_offset 23, -72
> .cfi_offset 24, -64
> .cfi_offset 25, -56
> .cfi_offset 26, -48
> .cfi_offset 27, -40
> .cfi_offset 30, -16
> .cfi_offset 31, -8
> .p2align 4,,15
> .L2:
> lhz 12,0(3)
> lhz 23,0(4)
> lhz 0,2(3)
> lhz 24,2(4)
> addi 3,3,16
> lhz 11,-12(3)
> lhz 25,4(4)
> lhz 5,-10(3)
> lhz 26,6(4)
> lhz 7,-8(3)
> lhz 27,8(4)
> lhz 8,-6(3)
> lhz 30,10(4)
> lhz 10,-4(3)
> lhz 31,12(4)
> lhz 9,-2(3)
> lhz 6,14(4)
> add 4,4,29
> subf 23,23,12
> subf 24,24,0
> subf 25,25,11
> subf 26,26,5
> srawi 12,23,31
> srawi 0,24,31
> subf 27,27,7
> subf 30,30,8
> srawi 11,25,31
> srawi 5,26,31
> subf 31,31,10
> subf 6,6,9
> xor 23,12,23
> xor 24,0,24
> srawi 7,27,31
> srawi 8,30,31
> xor 25,11,25
> xor 26,5,26
> srawi 10,31,31
> srawi 9,6,31
> subf 12,12,23
> subf 0,0,24
> xor 27,7,27
> xor 30,8,30
> subf 11,11,25
> subf 5,5,26
> xor 31,10,31
> xor 6,9,6
> add 12,12,22
> subf 7,7,27
> subf 8,8,30
> subf 10,10,31
> subf 9,9,6
> add 12,0,12
> add 11,11,12
> add 5,5,11
> add 7,7,5
> add 8,8,7
> add 10,10,8
> add 9,9,10
> extsw 22,9
> bdnz .L2
> stw 22,0(28)
> ld 23,-72(1)
> ld 22,-80(1)
> ld 24,-64(1)
> ld 25,-56(1)
> ld 26,-48(1)
> ld 27,-40(1)
> ld 28,-32(1)
> ld 29,-24(1)
> ld 30,-16(1)
> ld 31,-8(1)
> .cfi_restore 31
> .cfi_restore 30
> .cfi_restore 29
> .cfi_restore 28
> .cfi_restore 27
> .cfi_restore 26
> .cfi_restore 25
> .cfi_restore 24
> .cfi_restore 23
> .cfi_restore 22