r269612 - [AVX512] Move unary negations to the left side of typecasts to specific vector type. The __m128/__m256/__m512 types should be treated more opaquely and not have any operations performed on them.
Craig Topper via cfe-commits
cfe-commits at lists.llvm.org
Sun May 15 13:10:03 PDT 2016
Author: ctopper
Date: Sun May 15 15:10:03 2016
New Revision: 269612
URL: http://llvm.org/viewvc/llvm-project?rev=269612&view=rev
Log:
[AVX512] Move unary negations to the left side of typecasts to specific vector type. The __m128/__m256/__m512 types should be treated more opaquely and not have any operations performed on them.
Modified:
cfe/trunk/lib/Headers/avx512fintrin.h
Modified: cfe/trunk/lib/Headers/avx512fintrin.h
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Headers/avx512fintrin.h?rev=269612&r1=269611&r2=269612&view=diff
==============================================================================
--- cfe/trunk/lib/Headers/avx512fintrin.h (original)
+++ cfe/trunk/lib/Headers/avx512fintrin.h Sun May 15 15:10:03 2016
@@ -7823,7 +7823,7 @@ static __inline__ __m128 __DEFAULT_FN_AT
_mm_mask_fmsub_ss (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
{
return (__m128) __builtin_ia32_vfmaddss3_mask ((__v4sf) __A,
- (__v4sf) -(__B),
+ -(__v4sf) __B,
(__v4sf) __W,
(__mmask8) __U,
_MM_FROUND_CUR_DIRECTION);
@@ -7831,7 +7831,7 @@ _mm_mask_fmsub_ss (__m128 __W, __mmask8
#define _mm_mask_fmsub_round_ss( __W, __U, __A, __B, __R) __extension__ ({\
__builtin_ia32_vfmaddss3_mask ((__v4sf) __A,\
- (__v4sf) -(__B),\
+ -(__v4sf) (__B),\
(__v4sf) __W,\
(__mmask8) __U,\
__R);\
@@ -7842,7 +7842,7 @@ _mm_maskz_fmsub_ss (__mmask8 __U, __m128
{
return (__m128) __builtin_ia32_vfmaddss3_maskz ((__v4sf) __A,
(__v4sf) __B,
- (__v4sf) -(__C),
+ -(__v4sf) __C,
(__mmask8) __U,
_MM_FROUND_CUR_DIRECTION);
}
@@ -7850,7 +7850,7 @@ _mm_maskz_fmsub_ss (__mmask8 __U, __m128
#define _mm_maskz_fmsub_round_ss( __U, __A, __B, __C, __R) __extension__ ({\
__builtin_ia32_vfmaddss3_maskz ((__v4sf) __A,\
(__v4sf) __B,\
- (__v4sf) -(__C),\
+ -(__v4sf) (__C),\
(__mmask8) __U,\
__R);\
})
@@ -7860,7 +7860,7 @@ _mm_mask3_fmsub_ss (__m128 __W, __m128 _
{
return (__m128) __builtin_ia32_vfmaddss3_mask3 ((__v4sf) __W,
(__v4sf) __X,
- (__v4sf) -(__Y),
+ -(__v4sf) __Y,
(__mmask8) __U,
_MM_FROUND_CUR_DIRECTION);
}
@@ -7868,7 +7868,7 @@ _mm_mask3_fmsub_ss (__m128 __W, __m128 _
#define _mm_mask3_fmsub_round_ss( __W, __X, __Y, __U, __R) __extension__ ({\
__builtin_ia32_vfmaddss3_mask3 ((__v4sf) __W,\
(__v4sf) __X,\
- (__v4sf) -(__Y),\
+ -(__v4sf) (__Y),\
(__mmask8) __U,\
__R);\
})
@@ -7876,7 +7876,7 @@ __builtin_ia32_vfmaddss3_mask3 ((__v4sf)
static __inline__ __m128 __DEFAULT_FN_ATTRS
_mm_mask_fnmadd_ss (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
{
- return (__m128) __builtin_ia32_vfmaddss3_mask ((__v4sf) -(__A),
+ return (__m128) __builtin_ia32_vfmaddss3_mask (-(__v4sf) __A,
(__v4sf) __B,
(__v4sf) __W,
(__mmask8) __U,
@@ -7884,7 +7884,7 @@ _mm_mask_fnmadd_ss (__m128 __W, __mmask8
}
#define _mm_mask_fnmadd_round_ss( __W, __U, __A, __B, __R) __extension__ ({\
-__builtin_ia32_vfmaddss3_mask ((__v4sf) -(__A),\
+__builtin_ia32_vfmaddss3_mask (-(__v4sf) (__A),\
(__v4sf) __B,\
(__v4sf) __W,\
(__mmask8) __U,\
@@ -7894,7 +7894,7 @@ __builtin_ia32_vfmaddss3_mask ((__v4sf)
static __inline__ __m128 __DEFAULT_FN_ATTRS
_mm_maskz_fnmadd_ss (__mmask8 __U, __m128 __A, __m128 __B, __m128 __C)
{
- return (__m128) __builtin_ia32_vfmaddss3_maskz ((__v4sf) -(__A),
+ return (__m128) __builtin_ia32_vfmaddss3_maskz (-(__v4sf) __A,
(__v4sf) __B,
(__v4sf) __C,
(__mmask8) __U,
@@ -7902,7 +7902,7 @@ _mm_maskz_fnmadd_ss (__mmask8 __U, __m12
}
#define _mm_maskz_fnmadd_round_ss( __U, __A, __B, __C, __R) __extension__ ({\
-__builtin_ia32_vfmaddss3_maskz ((__v4sf) -(__A),\
+__builtin_ia32_vfmaddss3_maskz (-(__v4sf) (__A),\
(__v4sf) __B,\
(__v4sf) __C,\
(__mmask8) __U,\
@@ -7912,7 +7912,7 @@ __builtin_ia32_vfmaddss3_maskz ((__v4sf)
static __inline__ __m128 __DEFAULT_FN_ATTRS
_mm_mask3_fnmadd_ss (__m128 __W, __m128 __X, __m128 __Y, __mmask8 __U)
{
- return (__m128) __builtin_ia32_vfmaddss3_mask3 ((__v4sf) -(__W),
+ return (__m128) __builtin_ia32_vfmaddss3_mask3 (-(__v4sf) __W,
(__v4sf) __X,
(__v4sf) __Y,
(__mmask8) __U,
@@ -7920,7 +7920,7 @@ _mm_mask3_fnmadd_ss (__m128 __W, __m128
}
#define _mm_mask3_fnmadd_round_ss( __W, __X, __Y, __U, __R) __extension__({\
-__builtin_ia32_vfmaddss3_mask3 ((__v4sf) -(__W),\
+__builtin_ia32_vfmaddss3_mask3 (-(__v4sf) (__W),\
(__v4sf) __X,\
(__v4sf) __Y,\
(__mmask8) __U,\
@@ -7930,16 +7930,16 @@ __builtin_ia32_vfmaddss3_mask3 ((__v4sf)
static __inline__ __m128 __DEFAULT_FN_ATTRS
_mm_mask_fnmsub_ss (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
{
- return (__m128) __builtin_ia32_vfmaddss3_mask ((__v4sf) -(__A),
- (__v4sf) -(__B),
+ return (__m128) __builtin_ia32_vfmaddss3_mask (-(__v4sf) __A,
+ -(__v4sf) __B,
(__v4sf) __W,
(__mmask8) __U,
_MM_FROUND_CUR_DIRECTION);
}
#define _mm_mask_fnmsub_round_ss( __W, __U, __A, __B, __R) __extension__ ({\
-__builtin_ia32_vfmaddss3_mask ((__v4sf) -(__A),\
- (__v4sf) -(__B),\
+__builtin_ia32_vfmaddss3_mask (-(__v4sf) (__A),\
+ -(__v4sf) (__B),\
(__v4sf) __W,\
(__mmask8) __U,\
__R);\
@@ -7948,17 +7948,17 @@ __builtin_ia32_vfmaddss3_mask ((__v4sf)
static __inline__ __m128 __DEFAULT_FN_ATTRS
_mm_maskz_fnmsub_ss (__mmask8 __U, __m128 __A, __m128 __B, __m128 __C)
{
- return (__m128) __builtin_ia32_vfmaddss3_maskz ((__v4sf) -(__A),
+ return (__m128) __builtin_ia32_vfmaddss3_maskz (-(__v4sf) __A,
(__v4sf) __B,
- (__v4sf) -(__C),
+ -(__v4sf) __C,
(__mmask8) __U,
_MM_FROUND_CUR_DIRECTION);
}
#define _mm_maskz_fnmsub_round_ss( __U, __A, __B, __C, __R) __extension__ ({\
-__builtin_ia32_vfmaddss3_maskz((__v4sf) -(__A),\
+__builtin_ia32_vfmaddss3_maskz(-(__v4sf) (__A),\
(__v4sf) __B,\
- (__v4sf) -(__C),\
+ -(__v4sf) (__C),\
(__mmask8) __U,\
_MM_FROUND_CUR_DIRECTION);\
})
@@ -7966,17 +7966,17 @@ __builtin_ia32_vfmaddss3_maskz((__v4sf)
static __inline__ __m128 __DEFAULT_FN_ATTRS
_mm_mask3_fnmsub_ss (__m128 __W, __m128 __X, __m128 __Y, __mmask8 __U)
{
- return (__m128) __builtin_ia32_vfmaddss3_mask3 ((__v4sf) -(__W),
+ return (__m128) __builtin_ia32_vfmaddss3_mask3 (-(__v4sf) __W,
(__v4sf) __X,
- (__v4sf) -(__Y),
+ -(__v4sf) __Y,
(__mmask8) __U,
_MM_FROUND_CUR_DIRECTION);
}
#define _mm_mask3_fnmsub_round_ss( __W, __X, __Y, __U, __R) __extension__({\
-__builtin_ia32_vfmaddss3_mask3 ((__v4sf) -(__W),\
+__builtin_ia32_vfmaddss3_mask3 (-(__v4sf) (__W),\
(__v4sf) __X,\
- (__v4sf) -(__Y),\
+ -(__v4sf) (__Y),\
(__mmask8) __U,\
__R);\
})
@@ -8039,7 +8039,7 @@ static __inline__ __m128 __DEFAULT_FN_AT
_mm_mask_fmsub_sd (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
{
return (__m128) __builtin_ia32_vfmaddsd3_mask ( (__v2df) __A,
- (__v2df) -(__B),
+ -(__v2df) __B,
(__v2df) __W,
(__mmask8) __U,
_MM_FROUND_CUR_DIRECTION);
@@ -8047,7 +8047,7 @@ _mm_mask_fmsub_sd (__m128 __W, __mmask8
#define _mm_mask_fmsub_round_sd( __W, __U, __A, __B, __R) __extension__ ({\
__builtin_ia32_vfmaddsd3_mask ( (__v2df) __A,\
- (__v2df) -(__B),\
+ -(__v2df) (__B),\
(__v2df) __W,\
(__mmask8) __U,\
__R);\
@@ -8058,7 +8058,7 @@ _mm_maskz_fmsub_sd (__mmask8 __U, __m128
{
return (__m128) __builtin_ia32_vfmaddsd3_maskz ( (__v2df) __A,
(__v2df) __B,
- (__v2df) -(__C),
+ -(__v2df) __C,
(__mmask8) __U,
_MM_FROUND_CUR_DIRECTION);
}
@@ -8066,7 +8066,7 @@ _mm_maskz_fmsub_sd (__mmask8 __U, __m128
#define _mm_maskz_fmsub_round_sd( __U, __A, __B, __C, __R) __extension__ ({\
__builtin_ia32_vfmaddsd3_maskz ( (__v2df) __A,\
(__v2df) __B,\
- (__v2df) -(__C),\
+ -(__v2df) (__C),\
(__mmask8) __U,\
__R);\
})
@@ -8076,7 +8076,7 @@ _mm_mask3_fmsub_sd (__m128 __W, __m128 _
{
return (__m128) __builtin_ia32_vfmaddsd3_mask3 ((__v2df) __W,
(__v2df) __X,
- (__v2df) -(__Y),
+ -(__v2df) __Y,
(__mmask8) __U,
_MM_FROUND_CUR_DIRECTION);
}
@@ -8084,14 +8084,14 @@ _mm_mask3_fmsub_sd (__m128 __W, __m128 _
#define _mm_mask3_fmsub_round_sd( __W, __X, __Y, __U, __R) __extension__ ({\
__builtin_ia32_vfmaddsd3_mask3 ((__v2df) __W,\
(__v2df) __X,\
- (__v2df) -(__Y),\
+ -(__v2df) (__Y),\
(__mmask8) __U, __R);\
})
static __inline__ __m128 __DEFAULT_FN_ATTRS
_mm_mask_fnmadd_sd (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
{
- return (__m128) __builtin_ia32_vfmaddsd3_mask ( (__v2df) -(__A),
+ return (__m128) __builtin_ia32_vfmaddsd3_mask ( -(__v2df) __A,
(__v2df) __B,
(__v2df) __W,
(__mmask8) __U,
@@ -8099,7 +8099,7 @@ _mm_mask_fnmadd_sd (__m128 __W, __mmask8
}
#define _mm_mask_fnmadd_round_sd( __W, __U, __A, __B, __R) __extension__ ({\
-__builtin_ia32_vfmaddsd3_mask ( (__v2df) -(__A),\
+__builtin_ia32_vfmaddsd3_mask ( -(__v2df) (__A),\
(__v2df) __B,\
(__v2df) __W,\
(__mmask8) __U,\
@@ -8109,7 +8109,7 @@ __builtin_ia32_vfmaddsd3_mask ( (__v2df)
static __inline__ __m128 __DEFAULT_FN_ATTRS
_mm_maskz_fnmadd_sd (__mmask8 __U, __m128 __A, __m128 __B, __m128 __C)
{
- return (__m128) __builtin_ia32_vfmaddsd3_maskz ( (__v2df) -(__A),
+ return (__m128) __builtin_ia32_vfmaddsd3_maskz ( -(__v2df) __A,
(__v2df) __B,
(__v2df) __C,
(__mmask8) __U,
@@ -8117,7 +8117,7 @@ _mm_maskz_fnmadd_sd (__mmask8 __U, __m12
}
#define _mm_maskz_fnmadd_round_sd( __U, __A, __B, __C, __R) __extension__ ({\
-__builtin_ia32_vfmaddsd3_maskz ( (__v2df) -(__A),\
+__builtin_ia32_vfmaddsd3_maskz ( -(__v2df) (__A),\
(__v2df) __B,\
(__v2df) __C,\
(__mmask8) __U,\
@@ -8127,7 +8127,7 @@ __builtin_ia32_vfmaddsd3_maskz ( (__v2df
static __inline__ __m128 __DEFAULT_FN_ATTRS
_mm_mask3_fnmadd_sd (__m128 __W, __m128 __X, __m128 __Y, __mmask8 __U)
{
- return (__m128) __builtin_ia32_vfmaddsd3_mask3 ((__v2df) -(__W),
+ return (__m128) __builtin_ia32_vfmaddsd3_mask3 (-(__v2df) __W,
(__v2df) __X,
(__v2df) __Y,
(__mmask8) __U,
@@ -8135,7 +8135,7 @@ _mm_mask3_fnmadd_sd (__m128 __W, __m128
}
#define _mm_mask3_fnmadd_round_sd( __W, __X, __Y, __U, __R) __extension__({\
-__builtin_ia32_vfmaddsd3_mask3 ((__v2df) -(__W),\
+__builtin_ia32_vfmaddsd3_mask3 (-(__v2df) (__W),\
(__v2df) __X,\
(__v2df) __Y,\
(__mmask8) __U,\
@@ -8145,16 +8145,16 @@ __builtin_ia32_vfmaddsd3_mask3 ((__v2df)
static __inline__ __m128 __DEFAULT_FN_ATTRS
_mm_mask_fnmsub_sd (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
{
- return (__m128) __builtin_ia32_vfmaddsd3_mask ( (__v2df) -(__A),
- (__v2df) -(__B),
+ return (__m128) __builtin_ia32_vfmaddsd3_mask ( -(__v2df) __A,
+ -(__v2df) __B,
(__v2df) __W,
(__mmask8) __U,
_MM_FROUND_CUR_DIRECTION);
}
#define _mm_mask_fnmsub_round_sd( __W, __U, __A, __B, __R) __extension__ ({\
-__builtin_ia32_vfmaddsd3_mask ( (__v2df) -(__A),\
- (__v2df) -(__B),\
+__builtin_ia32_vfmaddsd3_mask ( -(__v2df) (__A),\
+ -(__v2df) (__B),\
(__v2df) __W,\
(__mmask8) __U,\
__R);\
@@ -8163,17 +8163,17 @@ __builtin_ia32_vfmaddsd3_mask ( (__v2df)
static __inline__ __m128 __DEFAULT_FN_ATTRS
_mm_maskz_fnmsub_sd (__mmask8 __U, __m128 __A, __m128 __B, __m128 __C)
{
- return (__m128) __builtin_ia32_vfmaddsd3_maskz ( (__v2df) -(__A),
+ return (__m128) __builtin_ia32_vfmaddsd3_maskz ( -(__v2df) __A,
(__v2df) __B,
- (__v2df) -(__C),
+ -(__v2df) __C,
(__mmask8) __U,
_MM_FROUND_CUR_DIRECTION);
}
#define _mm_maskz_fnmsub_round_sd( __U, __A, __B, __C, __R) __extension__ ({\
-__builtin_ia32_vfmaddsd3_maskz( (__v2df) -(__A),\
+__builtin_ia32_vfmaddsd3_maskz( -(__v2df) (__A),\
(__v2df) __B,\
- (__v2df) -(__C),\
+ -(__v2df) (__C),\
(__mmask8) __U,\
_MM_FROUND_CUR_DIRECTION);\
})
@@ -8181,17 +8181,17 @@ __builtin_ia32_vfmaddsd3_maskz( (__v2df)
static __inline__ __m128 __DEFAULT_FN_ATTRS
_mm_mask3_fnmsub_sd (__m128 __W, __m128 __X, __m128 __Y, __mmask8 __U)
{
- return (__m128) __builtin_ia32_vfmaddsd3_mask3 ((__v2df) -(__W),
+ return (__m128) __builtin_ia32_vfmaddsd3_mask3 (-(__v2df) (__W),
(__v2df) __X,
- (__v2df) -(__Y),
+ -(__v2df) (__Y),
(__mmask8) __U,
_MM_FROUND_CUR_DIRECTION);
}
#define _mm_mask3_fnmsub_round_sd( __W, __X, __Y, __U, __R) __extension__({\
-__builtin_ia32_vfmaddsd3_mask3 ((__v2df) -(__W),\
+__builtin_ia32_vfmaddsd3_mask3 (-(__v2df) (__W),\
(__v2df) __X,\
- (__v2df) -(__Y),\
+ -(__v2df) (__Y),\
(__mmask8) __U,\
__R);\
})
More information about the cfe-commits
mailing list