Fix bugs in declarations of __any, __all, and __none in examples/intrinsics.

They return bool, not vector of bool.
This commit is contained in:
Matt Pharr
2012-10-17 10:55:50 -07:00
parent 09dc217f8c
commit 406fbab40e
4 changed files with 12 additions and 12 deletions

View File

@@ -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);
}

View File

@@ -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);
}

View File

@@ -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);
}

View File

@@ -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);
}