-
- Downloads
An error occurred while retrieving diff files
amdgcn: Add instruction patterns for conditional min/max operations
gcc/ChangeLog: * config/gcn/gcn-valu.md (<expander><mode>3_exec): Add patterns for {s|u}{max|min} in QI, HI and DI modes. (<expander><mode>3): Add pattern for {s|u}{max|min} in DI mode. (cond_<fexpander><mode>): Add pattern for cond_f{max|min}. (cond_<expander><mode>): Add pattern for cond_{s|u}{max|min}. * config/gcn/gcn.cc (gcn_spill_class): Allow the exec register to be saved in SGPRs. gcc/testsuite/ChangeLog: * gcc.target/gcn/cond_fmaxnm_1.c: New test. * gcc.target/gcn/cond_fmaxnm_1_run.c: New test. * gcc.target/gcn/cond_fmaxnm_2.c: New test. * gcc.target/gcn/cond_fmaxnm_2_run.c: New test. * gcc.target/gcn/cond_fmaxnm_3.c: New test. * gcc.target/gcn/cond_fmaxnm_3_run.c: New test. * gcc.target/gcn/cond_fmaxnm_4.c: New test. * gcc.target/gcn/cond_fmaxnm_4_run.c: New test. * gcc.target/gcn/cond_fmaxnm_5.c: New test. * gcc.target/gcn/cond_fmaxnm_5_run.c: New test. * gcc.target/gcn/cond_fmaxnm_6.c: New test. * gcc.target/gcn/cond_fmaxnm_6_run.c: New test. * gcc.target/gcn/cond_fmaxnm_7.c: New test. * gcc.target/gcn/cond_fmaxnm_7_run.c: New test. * gcc.target/gcn/cond_fmaxnm_8.c: New test. * gcc.target/gcn/cond_fmaxnm_8_run.c: New test. * gcc.target/gcn/cond_fminnm_1.c: New test. * gcc.target/gcn/cond_fminnm_1_run.c: New test. * gcc.target/gcn/cond_fminnm_2.c: New test. * gcc.target/gcn/cond_fminnm_2_run.c: New test. * gcc.target/gcn/cond_fminnm_3.c: New test. * gcc.target/gcn/cond_fminnm_3_run.c: New test. * gcc.target/gcn/cond_fminnm_4.c: New test. * gcc.target/gcn/cond_fminnm_4_run.c: New test. * gcc.target/gcn/cond_fminnm_5.c: New test. * gcc.target/gcn/cond_fminnm_5_run.c: New test. * gcc.target/gcn/cond_fminnm_6.c: New test. * gcc.target/gcn/cond_fminnm_6_run.c: New test. * gcc.target/gcn/cond_fminnm_7.c: New test. * gcc.target/gcn/cond_fminnm_7_run.c: New test. * gcc.target/gcn/cond_fminnm_8.c: New test. * gcc.target/gcn/cond_fminnm_8_run.c: New test. * gcc.target/gcn/cond_smax_1.c: New test. * gcc.target/gcn/cond_smax_1_run.c: New test. * gcc.target/gcn/cond_smin_1.c: New test. * gcc.target/gcn/cond_smin_1_run.c: New test. * gcc.target/gcn/cond_umax_1.c: New test. * gcc.target/gcn/cond_umax_1_run.c: New test. * gcc.target/gcn/cond_umin_1.c: New test. * gcc.target/gcn/cond_umin_1_run.c: New test. * gcc.target/gcn/smax_1.c: New test. * gcc.target/gcn/smax_1_run.c: New test. * gcc.target/gcn/smin_1.c: New test. * gcc.target/gcn/smin_1_run.c: New test. * gcc.target/gcn/umax_1.c: New test. * gcc.target/gcn/umax_1_run.c: New test. * gcc.target/gcn/umin_1.c: New test. * gcc.target/gcn/umin_1_run.c: New test.
Showing
- gcc/config/gcn/gcn-valu.md 136 additions, 1 deletiongcc/config/gcn/gcn-valu.md
- gcc/config/gcn/gcn.cc 1 addition, 1 deletiongcc/config/gcn/gcn.cc
- gcc/testsuite/gcc.target/gcn/cond_fmaxnm_1.c 33 additions, 0 deletionsgcc/testsuite/gcc.target/gcn/cond_fmaxnm_1.c
- gcc/testsuite/gcc.target/gcn/cond_fmaxnm_1_run.c 32 additions, 0 deletionsgcc/testsuite/gcc.target/gcn/cond_fmaxnm_1_run.c
- gcc/testsuite/gcc.target/gcn/cond_fmaxnm_2.c 33 additions, 0 deletionsgcc/testsuite/gcc.target/gcn/cond_fmaxnm_2.c
- gcc/testsuite/gcc.target/gcn/cond_fmaxnm_2_run.c 31 additions, 0 deletionsgcc/testsuite/gcc.target/gcn/cond_fmaxnm_2_run.c
- gcc/testsuite/gcc.target/gcn/cond_fmaxnm_3.c 35 additions, 0 deletionsgcc/testsuite/gcc.target/gcn/cond_fmaxnm_3.c
- gcc/testsuite/gcc.target/gcn/cond_fmaxnm_3_run.c 32 additions, 0 deletionsgcc/testsuite/gcc.target/gcn/cond_fmaxnm_3_run.c
- gcc/testsuite/gcc.target/gcn/cond_fmaxnm_4.c 35 additions, 0 deletionsgcc/testsuite/gcc.target/gcn/cond_fmaxnm_4.c
- gcc/testsuite/gcc.target/gcn/cond_fmaxnm_4_run.c 32 additions, 0 deletionsgcc/testsuite/gcc.target/gcn/cond_fmaxnm_4_run.c
- gcc/testsuite/gcc.target/gcn/cond_fmaxnm_5.c 9 additions, 0 deletionsgcc/testsuite/gcc.target/gcn/cond_fmaxnm_5.c
- gcc/testsuite/gcc.target/gcn/cond_fmaxnm_5_run.c 4 additions, 0 deletionsgcc/testsuite/gcc.target/gcn/cond_fmaxnm_5_run.c
- gcc/testsuite/gcc.target/gcn/cond_fmaxnm_6.c 9 additions, 0 deletionsgcc/testsuite/gcc.target/gcn/cond_fmaxnm_6.c
- gcc/testsuite/gcc.target/gcn/cond_fmaxnm_6_run.c 4 additions, 0 deletionsgcc/testsuite/gcc.target/gcn/cond_fmaxnm_6_run.c
- gcc/testsuite/gcc.target/gcn/cond_fmaxnm_7.c 9 additions, 0 deletionsgcc/testsuite/gcc.target/gcn/cond_fmaxnm_7.c
- gcc/testsuite/gcc.target/gcn/cond_fmaxnm_7_run.c 4 additions, 0 deletionsgcc/testsuite/gcc.target/gcn/cond_fmaxnm_7_run.c
- gcc/testsuite/gcc.target/gcn/cond_fmaxnm_8.c 9 additions, 0 deletionsgcc/testsuite/gcc.target/gcn/cond_fmaxnm_8.c
- gcc/testsuite/gcc.target/gcn/cond_fmaxnm_8_run.c 4 additions, 0 deletionsgcc/testsuite/gcc.target/gcn/cond_fmaxnm_8_run.c
- gcc/testsuite/gcc.target/gcn/cond_fminnm_1.c 10 additions, 0 deletionsgcc/testsuite/gcc.target/gcn/cond_fminnm_1.c
- gcc/testsuite/gcc.target/gcn/cond_fminnm_1_run.c 5 additions, 0 deletionsgcc/testsuite/gcc.target/gcn/cond_fminnm_1_run.c
Loading
Please register or sign in to comment