2004-11-22 James A. Morrison <phython@gcc.gnu.org
* config/sparc/sparc.c: Include insn-codes.h and langhooks.h.
(sparc_init_builtins): New function.
(sparc_init_vis_builtins): Create builtin functions for VIS
instructions.
(sparc_expand_builtin): Expand builtin functions for VIS instructions.
(TARGET_INIT_BUILTINS): Define to sparc_init_builtins.
(TARGET_EXPAND_BUILTIN): Define to sparc_expand_builtin.
(def_builtin): New macro for creating builtin functions.
(P): New mode macro for pointer types.
(UNSPEC_FPACK16, UNSPEC_FPACK32, UNSPEC_FPACKFIX, UNSPEC_FEXPAND,
UNSPEC_FPMERGE, UNSPEC_MUL16AL, UNSPEC_MUL8UL, UNSPEC_MULDUL,
UNSPEC_ALIGNDATA, UNSPEC_ALIGNADDR, UNSPEC_PDIST): New constants.
(fpack16_vis, fpackfix_vis, fpack32_vis, fexpand_vis, fpmerge_vis,
fmul8x16_vis, fmul8x16au_vis, fmul8x16al_vis, fmul8sux16_vis,
fmul8ulx16_vis, fmuld8sux16_vis, fmuld8ulx16_vis, pdist_vis,
faligndata<V64:mode>_vis, alignaddr<P:mode>_vis): New patterns.
testsuite:
* gcc.target/sparc/align.c, gcc.target/sparc/combined-2.c,
gcc.target/sparc/fpack16.c, gcc.target/sparc/fpack32.c,
gcc.target/sparc/fpackfix.c, gcc.target/fexpand.c,
gcc.target/sparc/fpmerge.c, gcc.target/sparc/fpmul.c,
gcc.target/sparc/pdist.c: New tests.
From-SVN: r91057
13 files changed: