Scalar mask and round RTL templates

Programming / Compilers / GCC - kyukhin [138bc75d-0d04-0410-961f-82ee72b054a4] - 5 July 2017 12:44 EDT

gcc/
- config/i386/subst.md (mask_scalar, round_scalar, round_saeonly_scalar): New meta-templates. (mask_scalar_name, mask_scalar_operand3, round_scalar_name, round_scalar_mask_operand3, round_scalar_mask_op3, round_scalar_constraint, round_scalar_prefix, round_saeonly_scalar_name, round_saeonly_scalar_mask_operand3, round_saeonly_scalar_mask_op3, round_saeonly_scalar_constraint, round_saeonly_scalar_prefix): New subst attribute.
- config/i386/sse.md (_vm3): Renamed to ... _vm3 ... this. (_vm3): Renamed to ... _vm3 ... this. (_vm3): Renamed to ... _vm3 ... this. (v \t{%2, %1, %0| %0, %1, %2}): Changed to ...
v \t{%2, %1, %0| %0, %1, %2} ... this. (v \t{%2, %1, %0| %0, %1, %2}): Changed to ...
v \t{%2, %1, %0| %0, %1, %2} ... this. (v \t{%2, %1, %0| %0, %1, %2}): Changed to ...
v \t{%2, %1, %0| %0, %1, %2 } ... this.

gcc/testsuite/
- gcc.target/i386/avx512f-vaddsd-3.c: New test for mask 0 verification.
- gcc.target/i386/avx512f-vaddss-3.c: Ditto.
- gcc.target/i386/avx512f-vdivsd-3.c: Ditto.
- gcc.target/i386/avx512f-vdivss-3.c: Ditto.
- gcc.target/i386/avx512f-vmaxsd-3.c: Ditto.
- gcc.target/i386/avx512f-vmaxss-3.c: Ditto.
- gcc.target/i386/avx512f-vminsd-3.c: Ditto.
- gcc.target/i386/avx512f-vminss-3.c: Ditto.
- gcc.target/i386/avx512f-vmulsd-3.c: Ditto.
- gcc.target/i386/avx512f-vmulss-3.c: Ditto.
- gcc.target/i386/avx512f-vsubsd-3.c: Ditto.
- gcc.target/i386/avx512f-vsubss-3.c: Ditto.

9b5ab78 Scalar mask and round RTL templates
gcc/ChangeLog | 40 ++++++++++++++
gcc/config/i386/sse.md | 24 ++++-----
gcc/config/i386/subst.md | 63 ++++++++++++++++++++++
gcc/testsuite/ChangeLog | 15 ++++++
gcc/testsuite/gcc.target/i386/avx512f-vaddsd-3.c | 62 ++++++++++++++++++++++
gcc/testsuite/gcc.target/i386/avx512f-vaddss-3.c | 65 +++++++++++++++++++++++
gcc/testsuite/gcc.target/i386/avx512f-vdivsd-3.c | 62 ++++++++++++++++++++++
gcc/testsuite/gcc.target/i386/avx512f-vdivss-3.c | 64 +++++++++++++++++++++++
gcc/testsuite/gcc.target/i386/avx512f-vmaxsd-3.c | 62 ++++++++++++++++++++++
gcc/testsuite/gcc.target/i386/avx512f-vmaxss-3.c | 66 ++++++++++++++++++++++++
gcc/testsuite/gcc.target/i386/avx512f-vminsd-3.c | 62 ++++++++++++++++++++++
gcc/testsuite/gcc.target/i386/avx512f-vminss-3.c | 66 ++++++++++++++++++++++++
gcc/testsuite/gcc.target/i386/avx512f-vmulsd-3.c | 62 ++++++++++++++++++++++
gcc/testsuite/gcc.target/i386/avx512f-vmulss-3.c | 64 +++++++++++++++++++++++
gcc/testsuite/gcc.target/i386/avx512f-vsubsd-3.c | 62 ++++++++++++++++++++++
gcc/testsuite/gcc.target/i386/avx512f-vsubss-3.c | 64 +++++++++++++++++++++++
16 files changed, 891 insertions(+), 12 deletions(-)

Upstream: gcc.gnu.org


  • Share