i386-2.C: Update comments on header files tested.
2007-05-22 H.J. Lu <hongjiu.lu@intel.com> * g++.dg/other/i386-2.C: Update comments on header files tested. Use -msse4.1 instead of -mssse3. Include <smmintrin.h> instead of <tmmintrin.h>. * gcc.target/i386/sse-12.c: Likewise. * gcc.target/i386/sse-13.c: Likewise. * gcc.target/i386/sse-14.c: Likewise. * gcc.target/i386/sse-13.c (__builtin_ia32_pblendw128): New. Redefined to test with immediate operand. (__builtin_ia32_blendps): Likewise. (__builtin_ia32_blendpd): Likewise. (__builtin_ia32_dpps): Likewise. (__builtin_ia32_dpps): Likewise. (__builtin_ia32_insertps128): Likewise. (__builtin_ia32_vec_ext_v4sf): Likewise. (__builtin_ia32_vec_set_v16qi): Likewise. (__builtin_ia32_vec_set_v4si): Likewise. (__builtin_ia32_vec_set_v2di): Likewise. (__builtin_ia32_vec_ext_v16qi): Likewise. (__builtin_ia32_vec_ext_v4si): Likewise. (__builtin_ia32_vec_ext_v2di): Likewise. (__builtin_ia32_roundpd): Likewise. (__builtin_ia32_roundsd): Likewise. (__builtin_ia32_roundps): Likewise. (__builtin_ia32_roundss): Likewise. (__builtin_ia32_mpsadbw128): Likewise. From-SVN: r124959
This commit is contained in:
parent
ce3fcf8c5f
commit
3f457a0db8
5 changed files with 65 additions and 17 deletions
|
@ -1,3 +1,32 @@
|
|||
2007-05-22 H.J. Lu <hongjiu.lu@intel.com>
|
||||
|
||||
* g++.dg/other/i386-2.C: Update comments on header files tested.
|
||||
Use -msse4.1 instead of -mssse3. Include <smmintrin.h> instead
|
||||
of <tmmintrin.h>.
|
||||
* gcc.target/i386/sse-12.c: Likewise.
|
||||
* gcc.target/i386/sse-13.c: Likewise.
|
||||
* gcc.target/i386/sse-14.c: Likewise.
|
||||
|
||||
* gcc.target/i386/sse-13.c (__builtin_ia32_pblendw128): New.
|
||||
Redefined to test with immediate operand.
|
||||
(__builtin_ia32_blendps): Likewise.
|
||||
(__builtin_ia32_blendpd): Likewise.
|
||||
(__builtin_ia32_dpps): Likewise.
|
||||
(__builtin_ia32_dpps): Likewise.
|
||||
(__builtin_ia32_insertps128): Likewise.
|
||||
(__builtin_ia32_vec_ext_v4sf): Likewise.
|
||||
(__builtin_ia32_vec_set_v16qi): Likewise.
|
||||
(__builtin_ia32_vec_set_v4si): Likewise.
|
||||
(__builtin_ia32_vec_set_v2di): Likewise.
|
||||
(__builtin_ia32_vec_ext_v16qi): Likewise.
|
||||
(__builtin_ia32_vec_ext_v4si): Likewise.
|
||||
(__builtin_ia32_vec_ext_v2di): Likewise.
|
||||
(__builtin_ia32_roundpd): Likewise.
|
||||
(__builtin_ia32_roundsd): Likewise.
|
||||
(__builtin_ia32_roundps): Likewise.
|
||||
(__builtin_ia32_roundss): Likewise.
|
||||
(__builtin_ia32_mpsadbw128): Likewise.
|
||||
|
||||
2007-05-22 H.J. Lu <hongjiu.lu@intel.com>
|
||||
|
||||
* gcc.target/i386/sse4_1-check.h: Don't include ../auto-host.h.
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
/* Test that {,x,e,p,t,a}mmintrin.h, mm3dnow.h and mm_malloc.h are
|
||||
/* Test that {,x,e,p,t,s,a}mmintrin.h, mm3dnow.h and mm_malloc.h are
|
||||
usable with -O -pedantic-errors. */
|
||||
/* { dg-do compile { target i?86-*-* x86_64-*-* } } */
|
||||
/* { dg-options "-O -pedantic-errors -march=k8 -m3dnow -mssse3 -msse4a" } */
|
||||
/* { dg-options "-O -pedantic-errors -march=k8 -m3dnow -msse4.1 -msse4a" } */
|
||||
|
||||
#include <ammintrin.h>
|
||||
#include <tmmintrin.h>
|
||||
#include <smmintrin.h>
|
||||
#include <mm3dnow.h>
|
||||
|
||||
int dummy;
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
/* Test that {,x,e,p,t,a}mmintrin.h, mm3dnow.h and mm_malloc.h are
|
||||
/* Test that {,x,e,p,t,s,a}mmintrin.h, mm3dnow.h and mm_malloc.h are
|
||||
usable with -O -std=c89 -pedantic-errors. */
|
||||
/* { dg-do compile { target i?86-*-* x86_64-*-* } } */
|
||||
/* { dg-options "-O -std=c89 -pedantic-errors -march=k8 -m3dnow -mssse3 -msse4a" } */
|
||||
/* { dg-options "-O -std=c89 -pedantic-errors -march=k8 -m3dnow -msse4.1 -msse4a" } */
|
||||
|
||||
#include <ammintrin.h>
|
||||
#include <tmmintrin.h>
|
||||
#include <smmintrin.h>
|
||||
#include <mm3dnow.h>
|
||||
|
||||
int dummy;
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
/* { dg-do compile { target i?86-*-* x86_64-*-* } } */
|
||||
/* { dg-options "-O2 -mssse3 -msse4a" } */
|
||||
/* { dg-options "-O2 -msse4.1 -msse4a" } */
|
||||
|
||||
/* Test that the intrinsics compile with optimization. All of them are
|
||||
defined as inline functions in mmintrin.h that reference the proper
|
||||
builtin functions. Defining away "static" and "__inline" results in
|
||||
all of them being compiled as proper functions. */
|
||||
defined as inline functions in {,x,e,p,t,s,a}mmintrin.h that reference
|
||||
the proper builtin functions. Defining away "static" and "__inline"
|
||||
results in all of them being compiled as proper functions. */
|
||||
|
||||
#define static
|
||||
#define __inline
|
||||
|
@ -15,6 +15,26 @@
|
|||
#define __builtin_ia32_extrqi(X, I, L) __builtin_ia32_extrqi(X, 1, 1)
|
||||
#define __builtin_ia32_insertqi(X, Y, I, L) __builtin_ia32_insertqi(X, Y, 1, 1)
|
||||
|
||||
/* smmintrin.h */
|
||||
#define __builtin_ia32_pblendw128(X, Y, M) __builtin_ia32_pblendw128 (X, Y, 1)
|
||||
#define __builtin_ia32_blendps(X, Y, M) __builtin_ia32_blendps(X, Y, 1)
|
||||
#define __builtin_ia32_blendpd(X, Y, M) __builtin_ia32_blendpd(X, Y, 1)
|
||||
#define __builtin_ia32_dpps(X, Y, M) __builtin_ia32_dpps(X, Y, 1)
|
||||
#define __builtin_ia32_dppd(X, Y, M) __builtin_ia32_dppd(X, Y, 1)
|
||||
#define __builtin_ia32_insertps128(D, S, N) __builtin_ia32_insertps128(D, S, 1)
|
||||
#define __builtin_ia32_vec_ext_v4sf(X, N) __builtin_ia32_vec_ext_v4sf(X, 1)
|
||||
#define __builtin_ia32_vec_set_v16qi(D, S, N) __builtin_ia32_vec_set_v16qi(D, S, 1)
|
||||
#define __builtin_ia32_vec_set_v4si(D, S, N) __builtin_ia32_vec_set_v4si(D, S, 1)
|
||||
#define __builtin_ia32_vec_set_v2di(D, S, N) __builtin_ia32_vec_set_v2di(D, S, 1)
|
||||
#define __builtin_ia32_vec_ext_v16qi(X, N) __builtin_ia32_vec_ext_v16qi(X, 1)
|
||||
#define __builtin_ia32_vec_ext_v4si(X, N) __builtin_ia32_vec_ext_v4si(X, 1)
|
||||
#define __builtin_ia32_vec_ext_v2di(X, N) __builtin_ia32_vec_ext_v2di(X, 1)
|
||||
#define __builtin_ia32_roundpd(V, M) __builtin_ia32_roundpd(V, 1)
|
||||
#define __builtin_ia32_roundsd(D, V, M) __builtin_ia32_roundsd(D, V, 1)
|
||||
#define __builtin_ia32_roundps(V, M) __builtin_ia32_roundps(V, 1)
|
||||
#define __builtin_ia32_roundss(D, V, M) __builtin_ia32_roundss(D, V, 1)
|
||||
#define __builtin_ia32_mpsadbw128(X, Y, M) __builtin_ia32_mpsadbw128(X, Y, 1)
|
||||
|
||||
/* tmmintrin.h */
|
||||
#define __builtin_ia32_palignr128(X, Y, N) __builtin_ia32_palignr128(X, Y, 8)
|
||||
#define __builtin_ia32_palignr(X, Y, N) __builtin_ia32_palignr(X, Y, 8)
|
||||
|
@ -47,4 +67,4 @@
|
|||
#define __builtin_ia32_shufps(A, B, N) __builtin_ia32_shufps(A, B, 0)
|
||||
|
||||
#include <ammintrin.h>
|
||||
#include <tmmintrin.h>
|
||||
#include <smmintrin.h>
|
||||
|
|
|
@ -1,14 +1,13 @@
|
|||
/* { dg-do compile { target i?86-*-* x86_64-*-* } } */
|
||||
/* { dg-options "-O0 -mssse3 -msse4a" } */
|
||||
/* { dg-options "-O0 -msse4.1 -msse4a" } */
|
||||
|
||||
/* Test that the intrinsics compile without optimization. All of them are
|
||||
defined as inline functions in mmintrin.h that reference the proper
|
||||
builtin functions. Defining away "static" and "__inline" results in
|
||||
all of them being compiled as proper functions. */
|
||||
defined as inline functions in {,x,e,p,t,s,a}mmintrin.h that reference
|
||||
the proper builtin functions. Defining away "static" and "__inline"
|
||||
results in all of them being compiled as proper functions. */
|
||||
|
||||
#define static
|
||||
#define __inline
|
||||
|
||||
#include <ammintrin.h>
|
||||
#include <tmmintrin.h>
|
||||
|
||||
#include <smmintrin.h>
|
||||
|
|
Loading…
Add table
Reference in a new issue