re PR target/18230 (SPARC VIS instructions are not generated by GCC)
authorJames A. Morrison <phython@gcc.gnu.org>
Sat, 13 Nov 2004 13:25:09 +0000 (13:25 +0000)
committerEric Botcazou <ebotcazou@gcc.gnu.org>
Sat, 13 Nov 2004 13:25:09 +0000 (13:25 +0000)
commit893e18a5a15df54908d68d401dd79720e34b9969
treea8a16dc9bcef08e8adcbcecd5caf0f41f0e7d0dd
parent9d65c5cb5765b9b45447850e37dcfa6d67d079f6
re PR target/18230 (SPARC VIS instructions are not generated by GCC)

PR target/18230
* config/sparc/sparc.c (sparc_rtx_costs): Handle the NAND vector
patterns.
* config/sparc/sparc.md (V64I): New macro for 64-bit modes.
(V32I): New macro for 32-bit modes.
(anddi3, anddi_sp32, anddi_sp64, and_not_di_sp32, and_not_di_sp64,
iordi3, iordi3_sp32, iordi_sp64, or_not_di_sp32, or_not_di_sp64,
xordi3, xordi3_sp32, xordi3_sp64, {AND, IOR, XOR} DI splitter,
xor_not_di_sp32, xordi_not_di_sp64, one_cmpldi2, one_cmpldi_sp32,
one_cmpldi_sp64): Use V64I instead of DI.
(andsi3, andsi_sp32, andsi_sp64, and_not_si, iorsi3, or_not_si,
xorsi3, xor_not_si, one_cmplsi2): Use V32I instead of SI.
(addv2si3, addv4hi3, addv2hi3): Remove % modifier.
(nandv64i_vis, nandv32i_vis): New patterns.

Co-Authored-By: Eric Botcazou <ebotcazou@libertysurf.fr>
From-SVN: r90578
21 files changed:
gcc/ChangeLog
gcc/config/sparc/sparc.c
gcc/config/sparc/sparc.md
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/sparc/combined-1.c [new file with mode: 0644]
gcc/testsuite/gcc.target/sparc/fand.c [new file with mode: 0644]
gcc/testsuite/gcc.target/sparc/fandnot.c [new file with mode: 0644]
gcc/testsuite/gcc.target/sparc/fandnots.c [new file with mode: 0644]
gcc/testsuite/gcc.target/sparc/fands.c [new file with mode: 0644]
gcc/testsuite/gcc.target/sparc/fnand.c [new file with mode: 0644]
gcc/testsuite/gcc.target/sparc/fnands.c [new file with mode: 0644]
gcc/testsuite/gcc.target/sparc/fnot.c [new file with mode: 0644]
gcc/testsuite/gcc.target/sparc/fnots.c [new file with mode: 0644]
gcc/testsuite/gcc.target/sparc/for.c [new file with mode: 0644]
gcc/testsuite/gcc.target/sparc/fornot.c [new file with mode: 0644]
gcc/testsuite/gcc.target/sparc/fornots.c [new file with mode: 0644]
gcc/testsuite/gcc.target/sparc/fors.c [new file with mode: 0644]
gcc/testsuite/gcc.target/sparc/fxnor.c [new file with mode: 0644]
gcc/testsuite/gcc.target/sparc/fxnors.c [new file with mode: 0644]
gcc/testsuite/gcc.target/sparc/fxor.c [new file with mode: 0644]
gcc/testsuite/gcc.target/sparc/fxors.c [new file with mode: 0644]