This is the mail archive of the
gcc-cvs@gcc.gnu.org
mailing list for the GCC project.
r170953 - in /trunk/gcc: ChangeLog config/i386/...
- From: uros at gcc dot gnu dot org
- To: gcc-cvs at gcc dot gnu dot org
- Date: Mon, 14 Mar 2011 18:57:11 -0000
- Subject: r170953 - in /trunk/gcc: ChangeLog config/i386/...
Author: uros
Date: Mon Mar 14 18:57:11 2011
New Revision: 170953
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=170953
Log:
* config/i386/i386.md (ROUND_FLOOR): New constant.
(ROUND_CEIL): Ditto.
(ROUND_TRUNC): Ditto.
(ROUND_MXCSR): Ditto.
(ROUND_NO_EXC): Ditto.
(rint<mode>2): Use new defines instead of numerical constants.
(floor<mode>2): Ditto.
(ceil<mode>2): Ditto.
(btrunc<mode>2): Ditto.
* config/i386/i386-builtin-types.def: Define ROUND function type
aliases.
* config/i386/i386.c (enum ix86_builtins): Add
IX86_BUILTIN_{FLOOR,CEIL,TRUNC,RINT}{PS,PD}{,256} defines.
(struct builtin_description): Add
__builtin_ia32_{floor,ceil,trunc,rint}{pd,ps}{,256} descriptions.
(ix86_expand_sse_round): New static function.
(ix86_expand_args_builtin): Call ix86_expand_sse_round for ROUND
function types.
(ix86_builtin_vectorized_function): Handle
BUILT_IN_{FLOOR,CEIL,TRUNC,RINT}{,F} builtins.
testsuite/ChangeLog:
* gcc.target/i386/sse4_1-floor-vec.c: New test.
* gcc.target/i386/sse4_1-ceil-vec.c: Ditto.
* gcc.target/i386/sse4_1-trunc-vec.c: Ditto.
* gcc-target/i386/sse4_1-rint-vec.c: Ditto.
* gcc.target/i386/sse4_1-floorf-vec.c: Ditto.
* gcc.target/i386/sse4_1-ceilf-vec.c: Ditto.
* gcc.target/i386/sse4_1-truncf-vec.c: Ditto.
* gcc.target/i386/sse4_1-rintf-vec.c: Ditto.
* gcc.target/i386/avx-floor-vec.c: Ditto.
* gcc.target/i386/avx-ceil-vec.c: Ditto.
* gcc.target/i386/avx-trunc-vec.c: Ditto.
* gcc.target/i386/avx-rint-vec.c: Ditto.
* gcc.target/i386/avx-floorf-vec.c: Ditto.
* gcc.target/i386/avx-ceilf-vec.c: Ditto.
* gcc.target/i386/avx-truncf-vec.c: Ditto.
* gcc.target/i386/avx-rintf-vec.c: Ditto.
Added:
trunk/gcc/testsuite/gcc.target/i386/avx-ceil-vec.c
trunk/gcc/testsuite/gcc.target/i386/avx-ceilf-vec.c
trunk/gcc/testsuite/gcc.target/i386/avx-floor-vec.c
trunk/gcc/testsuite/gcc.target/i386/avx-floorf-vec.c
trunk/gcc/testsuite/gcc.target/i386/avx-rint-vec.c
trunk/gcc/testsuite/gcc.target/i386/avx-rintf-vec.c
trunk/gcc/testsuite/gcc.target/i386/avx-trunc-vec.c
trunk/gcc/testsuite/gcc.target/i386/avx-truncf-vec.c
trunk/gcc/testsuite/gcc.target/i386/sse4_1-ceil-vec.c
trunk/gcc/testsuite/gcc.target/i386/sse4_1-ceilf-vec.c
trunk/gcc/testsuite/gcc.target/i386/sse4_1-floor-vec.c
trunk/gcc/testsuite/gcc.target/i386/sse4_1-floorf-vec.c
trunk/gcc/testsuite/gcc.target/i386/sse4_1-rint-vec.c
trunk/gcc/testsuite/gcc.target/i386/sse4_1-rintf-vec.c
trunk/gcc/testsuite/gcc.target/i386/sse4_1-trunc-vec.c
trunk/gcc/testsuite/gcc.target/i386/sse4_1-truncf-vec.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/i386/i386-builtin-types.def
trunk/gcc/config/i386/i386.c
trunk/gcc/config/i386/i386.md
trunk/gcc/testsuite/ChangeLog