]> git.ipfire.org Git - thirdparty/gcc.git/commit
RISC-V: Refine signed SAT_TRUNC testcase dump check to tree optimized
authorPan Li <pan2.li@intel.com>
Sun, 8 Dec 2024 01:32:30 +0000 (09:32 +0800)
committerPan Li <pan2.li@intel.com>
Mon, 9 Dec 2024 10:33:54 +0000 (18:33 +0800)
commitdbd6e147aaed246251351a4d48586fa965b6ee71
treeaf45ad35e5f0a438d72636f4c81b87de0cf2f03a
parentda448408682aeb0f02c39ce36b1312eee6a2ca5d
RISC-V: Refine signed SAT_TRUNC testcase dump check to tree optimized

The sat alu related testcase check the rtl dump for the standard name
like .SAT_TRUNC exist or not.  But the rtl pass expand is somehow
impressionable by the middle-end change or debug information.  Like
below new appearance recently.

Replacing Expressions
_5 replace with --> _5 = .SAT_TRUNC (x_3(D), y_4(D)); [tail call]

After that we need to adjust the dump check time and again.  This
patch would like to switch to tree optimized pass for the standard
name check, which is more stable up to a point.

The below test suites are passed for this patch.
* The rv64gcv fully regression test.

It is test only patch and obvious up to a point, will commit it
directly if no comments in next 48H.

gcc/testsuite/ChangeLog:

* gcc.target/riscv/sat/sat_s_trunc-1-i16-to-i8.c: Take tree-optimized
pass for standard name check, and adjust the times.
* gcc.target/riscv/sat/sat_s_trunc-1-i32-to-i16.c: Ditto.
* gcc.target/riscv/sat/sat_s_trunc-1-i32-to-i8.c: Ditto.
* gcc.target/riscv/sat/sat_s_trunc-1-i64-to-i16.c: Ditto.
* gcc.target/riscv/sat/sat_s_trunc-1-i64-to-i32.c: Ditto.
* gcc.target/riscv/sat/sat_s_trunc-1-i64-to-i8.c: Ditto.
* gcc.target/riscv/sat/sat_s_trunc-2-i16-to-i8.c: Ditto.
* gcc.target/riscv/sat/sat_s_trunc-2-i32-to-i16.c: Ditto.
* gcc.target/riscv/sat/sat_s_trunc-2-i32-to-i8.c: Ditto.
* gcc.target/riscv/sat/sat_s_trunc-2-i64-to-i16.c: Ditto.
* gcc.target/riscv/sat/sat_s_trunc-2-i64-to-i32.c: Ditto.
* gcc.target/riscv/sat/sat_s_trunc-2-i64-to-i8.c: Ditto.
* gcc.target/riscv/sat/sat_s_trunc-3-i16-to-i8.c: Ditto.
* gcc.target/riscv/sat/sat_s_trunc-3-i32-to-i16.c: Ditto.
* gcc.target/riscv/sat/sat_s_trunc-3-i32-to-i8.c: Ditto.
* gcc.target/riscv/sat/sat_s_trunc-3-i64-to-i16.c: Ditto.
* gcc.target/riscv/sat/sat_s_trunc-3-i64-to-i32.c: Ditto.
* gcc.target/riscv/sat/sat_s_trunc-3-i64-to-i8.c: Ditto.
* gcc.target/riscv/sat/sat_s_trunc-4-i16-to-i8.c: Ditto.
* gcc.target/riscv/sat/sat_s_trunc-4-i32-to-i16.c: Ditto.
* gcc.target/riscv/sat/sat_s_trunc-4-i32-to-i8.c: Ditto.
* gcc.target/riscv/sat/sat_s_trunc-4-i64-to-i16.c: Ditto.
* gcc.target/riscv/sat/sat_s_trunc-4-i64-to-i32.c: Ditto.
* gcc.target/riscv/sat/sat_s_trunc-4-i64-to-i8.c: Ditto.
* gcc.target/riscv/sat/sat_s_trunc-5-i16-to-i8.c: Ditto.
* gcc.target/riscv/sat/sat_s_trunc-5-i32-to-i16.c: Ditto.
* gcc.target/riscv/sat/sat_s_trunc-5-i32-to-i8.c: Ditto.
* gcc.target/riscv/sat/sat_s_trunc-5-i64-to-i16.c: Ditto.
* gcc.target/riscv/sat/sat_s_trunc-5-i64-to-i32.c: Ditto.
* gcc.target/riscv/sat/sat_s_trunc-5-i64-to-i8.c: Ditto.
* gcc.target/riscv/sat/sat_s_trunc-6-i16-to-i8.c: Ditto.
* gcc.target/riscv/sat/sat_s_trunc-6-i32-to-i16.c: Ditto.
* gcc.target/riscv/sat/sat_s_trunc-6-i32-to-i8.c: Ditto.
* gcc.target/riscv/sat/sat_s_trunc-6-i64-to-i16.c: Ditto.
* gcc.target/riscv/sat/sat_s_trunc-6-i64-to-i32.c: Ditto.
* gcc.target/riscv/sat/sat_s_trunc-6-i64-to-i8.c: Ditto.
* gcc.target/riscv/sat/sat_s_trunc-7-i16-to-i8.c: Ditto.
* gcc.target/riscv/sat/sat_s_trunc-7-i32-to-i16.c: Ditto.
* gcc.target/riscv/sat/sat_s_trunc-7-i32-to-i8.c: Ditto.
* gcc.target/riscv/sat/sat_s_trunc-7-i64-to-i16.c: Ditto.
* gcc.target/riscv/sat/sat_s_trunc-7-i64-to-i32.c: Ditto.
* gcc.target/riscv/sat/sat_s_trunc-7-i64-to-i8.c: Ditto.
* gcc.target/riscv/sat/sat_s_trunc-8-i16-to-i8.c: Ditto.
* gcc.target/riscv/sat/sat_s_trunc-8-i32-to-i16.c: Ditto.
* gcc.target/riscv/sat/sat_s_trunc-8-i32-to-i8.c: Ditto.
* gcc.target/riscv/sat/sat_s_trunc-8-i64-to-i16.c: Ditto.
* gcc.target/riscv/sat/sat_s_trunc-8-i64-to-i32.c: Ditto.
* gcc.target/riscv/sat/sat_s_trunc-8-i64-to-i8.c: Ditto.

Signed-off-by: Pan Li <pan2.li@intel.com>
48 files changed:
gcc/testsuite/gcc.target/riscv/sat/sat_s_trunc-1-i16-to-i8.c
gcc/testsuite/gcc.target/riscv/sat/sat_s_trunc-1-i32-to-i16.c
gcc/testsuite/gcc.target/riscv/sat/sat_s_trunc-1-i32-to-i8.c
gcc/testsuite/gcc.target/riscv/sat/sat_s_trunc-1-i64-to-i16.c
gcc/testsuite/gcc.target/riscv/sat/sat_s_trunc-1-i64-to-i32.c
gcc/testsuite/gcc.target/riscv/sat/sat_s_trunc-1-i64-to-i8.c
gcc/testsuite/gcc.target/riscv/sat/sat_s_trunc-2-i16-to-i8.c
gcc/testsuite/gcc.target/riscv/sat/sat_s_trunc-2-i32-to-i16.c
gcc/testsuite/gcc.target/riscv/sat/sat_s_trunc-2-i32-to-i8.c
gcc/testsuite/gcc.target/riscv/sat/sat_s_trunc-2-i64-to-i16.c
gcc/testsuite/gcc.target/riscv/sat/sat_s_trunc-2-i64-to-i32.c
gcc/testsuite/gcc.target/riscv/sat/sat_s_trunc-2-i64-to-i8.c
gcc/testsuite/gcc.target/riscv/sat/sat_s_trunc-3-i16-to-i8.c
gcc/testsuite/gcc.target/riscv/sat/sat_s_trunc-3-i32-to-i16.c
gcc/testsuite/gcc.target/riscv/sat/sat_s_trunc-3-i32-to-i8.c
gcc/testsuite/gcc.target/riscv/sat/sat_s_trunc-3-i64-to-i16.c
gcc/testsuite/gcc.target/riscv/sat/sat_s_trunc-3-i64-to-i32.c
gcc/testsuite/gcc.target/riscv/sat/sat_s_trunc-3-i64-to-i8.c
gcc/testsuite/gcc.target/riscv/sat/sat_s_trunc-4-i16-to-i8.c
gcc/testsuite/gcc.target/riscv/sat/sat_s_trunc-4-i32-to-i16.c
gcc/testsuite/gcc.target/riscv/sat/sat_s_trunc-4-i32-to-i8.c
gcc/testsuite/gcc.target/riscv/sat/sat_s_trunc-4-i64-to-i16.c
gcc/testsuite/gcc.target/riscv/sat/sat_s_trunc-4-i64-to-i32.c
gcc/testsuite/gcc.target/riscv/sat/sat_s_trunc-4-i64-to-i8.c
gcc/testsuite/gcc.target/riscv/sat/sat_s_trunc-5-i16-to-i8.c
gcc/testsuite/gcc.target/riscv/sat/sat_s_trunc-5-i32-to-i16.c
gcc/testsuite/gcc.target/riscv/sat/sat_s_trunc-5-i32-to-i8.c
gcc/testsuite/gcc.target/riscv/sat/sat_s_trunc-5-i64-to-i16.c
gcc/testsuite/gcc.target/riscv/sat/sat_s_trunc-5-i64-to-i32.c
gcc/testsuite/gcc.target/riscv/sat/sat_s_trunc-5-i64-to-i8.c
gcc/testsuite/gcc.target/riscv/sat/sat_s_trunc-6-i16-to-i8.c
gcc/testsuite/gcc.target/riscv/sat/sat_s_trunc-6-i32-to-i16.c
gcc/testsuite/gcc.target/riscv/sat/sat_s_trunc-6-i32-to-i8.c
gcc/testsuite/gcc.target/riscv/sat/sat_s_trunc-6-i64-to-i16.c
gcc/testsuite/gcc.target/riscv/sat/sat_s_trunc-6-i64-to-i32.c
gcc/testsuite/gcc.target/riscv/sat/sat_s_trunc-6-i64-to-i8.c
gcc/testsuite/gcc.target/riscv/sat/sat_s_trunc-7-i16-to-i8.c
gcc/testsuite/gcc.target/riscv/sat/sat_s_trunc-7-i32-to-i16.c
gcc/testsuite/gcc.target/riscv/sat/sat_s_trunc-7-i32-to-i8.c
gcc/testsuite/gcc.target/riscv/sat/sat_s_trunc-7-i64-to-i16.c
gcc/testsuite/gcc.target/riscv/sat/sat_s_trunc-7-i64-to-i32.c
gcc/testsuite/gcc.target/riscv/sat/sat_s_trunc-7-i64-to-i8.c
gcc/testsuite/gcc.target/riscv/sat/sat_s_trunc-8-i16-to-i8.c
gcc/testsuite/gcc.target/riscv/sat/sat_s_trunc-8-i32-to-i16.c
gcc/testsuite/gcc.target/riscv/sat/sat_s_trunc-8-i32-to-i8.c
gcc/testsuite/gcc.target/riscv/sat/sat_s_trunc-8-i64-to-i16.c
gcc/testsuite/gcc.target/riscv/sat/sat_s_trunc-8-i64-to-i32.c
gcc/testsuite/gcc.target/riscv/sat/sat_s_trunc-8-i64-to-i8.c