2010-02-13 Sebastian Pop <sebastian.pop@amd.com> * config/i386/i386-builtin-types.def (V2DF_FTYPE_V2DF_V2DF_V2DI_INT): Declared. (V4DF_FTYPE_V4DF_V4DF_V4DI_INT): Declared. (V4SF_FTYPE_V4SF_V4SF_V4SI_INT): Declared. (V8SF_FTYPE_V8SF_V8SF_V8SI_INT): Declared. * config/i386/i386.c (enum ix86_builtins): Add IX86_BUILTIN_VPERMIL2PD, IX86_BUILTIN_VPERMIL2PS, IX86_BUILTIN_VPERMIL2PD256, and IX86_BUILTIN_VPERMIL2PS256. (MULTI_ARG_4_DF2_DI_I): Defined. (MULTI_ARG_4_DF2_DI_I1): Defined. (MULTI_ARG_4_SF2_SI_I): Defined. (MULTI_ARG_4_SF2_SI_I1): Defined. (bdesc_multi_arg): Add __builtin_ia32_vpermil2pd, __builtin_ia32_vpermil2ps, __builtin_ia32_vpermil2pd256, and __builtin_ia32_vpermil2ps256. (ix86_expand_multi_arg_builtin): Handle MULTI_ARG_4_DF2_DI_I, MULTI_ARG_4_DF2_DI_I1, MULTI_ARG_4_SF2_SI_I, and MULTI_ARG_4_SF2_SI_I1. Handle builtins with 4 arguments. (ix86_expand_args_builtin): Handle MULTI_ARG_4_DF2_DI_I, MULTI_ARG_4_DF2_DI_I1, MULTI_ARG_4_SF2_SI_I, and MULTI_ARG_4_SF2_SI_I1. Handle CODE_FOR_xop_vpermil2v2df3, CODE_FOR_xop_vpermil2v4sf3, CODE_FOR_xop_vpermil2v4df3, and CODE_FOR_xop_vpermil2v8sf3. * config/i386/i386.md (UNSPEC_VPERMIL2): Declared. * config/i386/sse.md (xop_vpermil2<mode>3): New insn pattern. * config/i386/xopintrin.h (_mm_permute2_pd): New. (_mm256_permute2_pd): New. (_mm_permute2_ps): New. (_mm256_permute2_ps): New. * gcc.target/i386/sse-14.c: Add tests for _mm_permute2_pd, _mm256_permute2_pd, _mm_permute2_ps, and _mm256_permute2_ps. * gcc.target/i386/xop-vpermil2pd-1.c: New. * gcc.target/i386/xop-vpermil2pd-256-1.c: New. * gcc.target/i386/xop-vpermil2ps-1.c: New. * gcc.target/i386/xop-vpermil2ps-256-1.c: New. From-SVN: r156778
Name |
Last commit
|
Last update |
---|---|---|
.. | ||
ada/acats | Loading commit data... | |
c-c++-common | Loading commit data... | |
config | Loading commit data... | |
g++.dg | Loading commit data... | |
g++.old-deja | Loading commit data... | |
gcc.c-torture | Loading commit data... | |
gcc.dg | Loading commit data... | |
gcc.misc-tests | Loading commit data... | |
gcc.target | Loading commit data... | |
gcc.test-framework | Loading commit data... | |
gfortran.dg | Loading commit data... | |
gfortran.fortran-torture | Loading commit data... | |
gnat.dg | Loading commit data... | |
lib | Loading commit data... | |
obj-c++.dg | Loading commit data... | |
objc | Loading commit data... | |
objc.dg | Loading commit data... | |
ChangeLog | Loading commit data... | |
ChangeLog-1993-2007 | Loading commit data... | |
ChangeLog-2008 | Loading commit data... | |
ChangeLog-2009 | Loading commit data... | |
ChangeLog.ptr | Loading commit data... | |
ChangeLog.tree-ssa | Loading commit data... | |
README | Loading commit data... | |
README.QMTEST | Loading commit data... | |
README.compat | Loading commit data... | |
README.gcc | Loading commit data... |