Fix bugs in declarations of __any, __all, and __none in examples/intrinsics.
They return bool, not vector of bool.
This commit is contained in:
@@ -343,15 +343,15 @@ static FORCEINLINE uint64_t __movmsk(__vec16_i1 mask) {
|
||||
return (uint64_t)mask.v;
|
||||
}
|
||||
|
||||
static FORCEINLINE __vec16_i1 __any(__vec16_i1 mask) {
|
||||
static FORCEINLINE bool __any(__vec16_i1 mask) {
|
||||
return (mask.v!=0);
|
||||
}
|
||||
|
||||
static FORCEINLINE __vec16_i1 __all(__vec16_i1 mask) {
|
||||
static FORCEINLINE bool __all(__vec16_i1 mask) {
|
||||
return (mask.v==0xFFFF);
|
||||
}
|
||||
|
||||
static FORCEINLINE __vec16_i1 __none(__vec16_i1 mask) {
|
||||
static FORCEINLINE bool __none(__vec16_i1 mask) {
|
||||
return (mask.v==0);
|
||||
}
|
||||
|
||||
|
||||
@@ -473,15 +473,15 @@ static FORCEINLINE __vec16_i1 __movmsk(__vec16_i1 mask) {
|
||||
return _mm512_kmov(mask);
|
||||
}
|
||||
|
||||
static FORCEINLINE __vec16_i1 __any(__vec16_i1 mask) {
|
||||
static FORCEINLINE bool __any(__vec16_i1 mask) {
|
||||
return !_mm512_kortestz(mask, mask);
|
||||
}
|
||||
|
||||
static FORCEINLINE __vec16_i1 __all(__vec16_i1 mask) {
|
||||
static FORCEINLINE bool __all(__vec16_i1 mask) {
|
||||
return (mask=0xFFFF);
|
||||
}
|
||||
|
||||
static FORCEINLINE __vec16_i1 __none(__vec16_i1 mask) {
|
||||
static FORCEINLINE bool __none(__vec16_i1 mask) {
|
||||
return !__any(mask);
|
||||
}
|
||||
|
||||
|
||||
@@ -296,15 +296,15 @@ static FORCEINLINE uint32_t __movmsk(__vec32_i1 mask) {
|
||||
return ((m1<<16)|m2);
|
||||
}
|
||||
|
||||
static FORCEINLINE uint32_t __any(__vec32_i1 mask) {
|
||||
static FORCEINLINE bool __any(__vec32_i1 mask) {
|
||||
return !_mm512_kortestz(mask.m16.m1, mask.m16.m2);
|
||||
}
|
||||
|
||||
static FORCEINLINE uint32_t __all(__vec32_i1 mask) {
|
||||
static FORCEINLINE bool __all(__vec32_i1 mask) {
|
||||
return (mask.m==0xFFFFFFFF);
|
||||
}
|
||||
|
||||
static FORCEINLINE uint32_t __none(__vec32_i1 mask) {
|
||||
static FORCEINLINE bool __none(__vec32_i1 mask) {
|
||||
return !__any(mask);
|
||||
}
|
||||
|
||||
|
||||
@@ -269,15 +269,15 @@ static FORCEINLINE uint64_t __movmsk(__vec4_i1 mask) {
|
||||
return (uint64_t)_mm_movemask_ps(mask.v);
|
||||
}
|
||||
|
||||
static FORCEINLINE __vec4_i1 __any(__vec4_i1 mask) {
|
||||
static FORCEINLINE bool __any(__vec4_i1 mask) {
|
||||
return (_mm_movemask_ps(mask.v)!=0);
|
||||
}
|
||||
|
||||
static FORCEINLINE __vec4_i1 __all(__vec4_i1 mask) {
|
||||
static FORCEINLINE bool __all(__vec4_i1 mask) {
|
||||
return (_mm_movemask_ps(mask.v)=0xF);
|
||||
}
|
||||
|
||||
static FORCEINLINE __vec4_i1 __none(__vec4_i1 mask) {
|
||||
static FORCEINLINE bool __none(__vec4_i1 mask) {
|
||||
return (_mm_movemask_ps(mask.v)==0);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user