]> gcc.gnu.org Git - gcc.git/commit
RISC-V/testsuite: Add branchless cases for integer cond-move operations
authorMaciej W. Rozycki <macro@embecosm.com>
Wed, 22 Nov 2023 01:18:25 +0000 (01:18 +0000)
committerMaciej W. Rozycki <macro@embecosm.com>
Wed, 22 Nov 2023 01:18:25 +0000 (01:18 +0000)
commit28d6d6bfbde2b08ce5fde5a2f3129908881b1a29
tree482f68be9c68eb3bd25dc9ad75f65afb8ff2e6ab
parentdcf4395fc67a6fc83e50329d92bea82b2fdf4254
RISC-V/testsuite: Add branchless cases for integer cond-move operations

Verify, for T-Head, Ventana and Zicond targets and the integer
conditional-move operations that already work as expected, if-conversion
to trigger via `noce_try_cmove' at the respective sufficiently high
`-mbranch-cost=' settings that make branchless code sequences produced
by if-conversion cheaper than their original branched equivalents, and
that extraneous instructions such as SNEZ, etc. are not present in
output.  Cover all integer relational operations to make sure no corner
case escapes.

gcc/testsuite/
* gcc.target/riscv/movdieq-thead.c: New test.
* gcc.target/riscv/movdige-ventana.c: New test.
* gcc.target/riscv/movdige-zicond.c: New test.
* gcc.target/riscv/movdigeu-ventana.c: New test.
* gcc.target/riscv/movdigeu-zicond.c: New test.
* gcc.target/riscv/movdigt-ventana.c: New test.
* gcc.target/riscv/movdigt-zicond.c: New test.
* gcc.target/riscv/movdile-ventana.c: New test.
* gcc.target/riscv/movdile-zicond.c: New test.
* gcc.target/riscv/movdileu-ventana.c: New test.
* gcc.target/riscv/movdileu-zicond.c: New test.
* gcc.target/riscv/movdilt-ventana.c: New test.
* gcc.target/riscv/movdilt-zicond.c: New test.
* gcc.target/riscv/movdine-thead.c: New test.
* gcc.target/riscv/movsieq-thead.c: New test.
* gcc.target/riscv/movsige-ventana.c: New test.
* gcc.target/riscv/movsige-zicond.c: New test.
* gcc.target/riscv/movsigeu-ventana.c: New test.
* gcc.target/riscv/movsigeu-zicond.c: New test.
* gcc.target/riscv/movsigt-ventana.c: New test.
* gcc.target/riscv/movsigt-zicond.c: New test.
* gcc.target/riscv/movsile-ventana.c: New test.
* gcc.target/riscv/movsile-zicond.c: New test.
* gcc.target/riscv/movsileu-ventana.c: New test.
* gcc.target/riscv/movsileu-zicond.c: New test.
* gcc.target/riscv/movsilt-ventana.c: New test.
* gcc.target/riscv/movsilt-zicond.c: New test.
* gcc.target/riscv/movsine-thead.c: New test.
28 files changed:
gcc/testsuite/gcc.target/riscv/movdieq-thead.c [new file with mode: 0644]
gcc/testsuite/gcc.target/riscv/movdige-ventana.c [new file with mode: 0644]
gcc/testsuite/gcc.target/riscv/movdige-zicond.c [new file with mode: 0644]
gcc/testsuite/gcc.target/riscv/movdigeu-ventana.c [new file with mode: 0644]
gcc/testsuite/gcc.target/riscv/movdigeu-zicond.c [new file with mode: 0644]
gcc/testsuite/gcc.target/riscv/movdigt-ventana.c [new file with mode: 0644]
gcc/testsuite/gcc.target/riscv/movdigt-zicond.c [new file with mode: 0644]
gcc/testsuite/gcc.target/riscv/movdile-ventana.c [new file with mode: 0644]
gcc/testsuite/gcc.target/riscv/movdile-zicond.c [new file with mode: 0644]
gcc/testsuite/gcc.target/riscv/movdileu-ventana.c [new file with mode: 0644]
gcc/testsuite/gcc.target/riscv/movdileu-zicond.c [new file with mode: 0644]
gcc/testsuite/gcc.target/riscv/movdilt-ventana.c [new file with mode: 0644]
gcc/testsuite/gcc.target/riscv/movdilt-zicond.c [new file with mode: 0644]
gcc/testsuite/gcc.target/riscv/movdine-thead.c [new file with mode: 0644]
gcc/testsuite/gcc.target/riscv/movsieq-thead.c [new file with mode: 0644]
gcc/testsuite/gcc.target/riscv/movsige-ventana.c [new file with mode: 0644]
gcc/testsuite/gcc.target/riscv/movsige-zicond.c [new file with mode: 0644]
gcc/testsuite/gcc.target/riscv/movsigeu-ventana.c [new file with mode: 0644]
gcc/testsuite/gcc.target/riscv/movsigeu-zicond.c [new file with mode: 0644]
gcc/testsuite/gcc.target/riscv/movsigt-ventana.c [new file with mode: 0644]
gcc/testsuite/gcc.target/riscv/movsigt-zicond.c [new file with mode: 0644]
gcc/testsuite/gcc.target/riscv/movsile-ventana.c [new file with mode: 0644]
gcc/testsuite/gcc.target/riscv/movsile-zicond.c [new file with mode: 0644]
gcc/testsuite/gcc.target/riscv/movsileu-ventana.c [new file with mode: 0644]
gcc/testsuite/gcc.target/riscv/movsileu-zicond.c [new file with mode: 0644]
gcc/testsuite/gcc.target/riscv/movsilt-ventana.c [new file with mode: 0644]
gcc/testsuite/gcc.target/riscv/movsilt-zicond.c [new file with mode: 0644]
gcc/testsuite/gcc.target/riscv/movsine-thead.c [new file with mode: 0644]
This page took 0.119152 seconds and 5 git commands to generate.