diff --git a/examples/intrinsics/knc-i1x16.h b/examples/intrinsics/knc-i1x16.h index b09958fa..256907f9 100644 --- a/examples/intrinsics/knc-i1x16.h +++ b/examples/intrinsics/knc-i1x16.h @@ -39,6 +39,9 @@ #include #include +#include // for operator<<(m512[i]) +#include // for operator<<(m512[i]) + #ifdef _MSC_VER #define FORCEINLINE __forceinline #define PRE_ALIGN(x) /*__declspec(align(x))*/ @@ -101,7 +104,8 @@ struct __vec16_i1 ((v14 & 1) << 14) | ((v15 & 1) << 15)); } - + FORCEINLINE uint8_t operator[](const int i) const { return ((v >> i) & 1); } + FORCEINLINE uint8_t operator[](const int i) { return ((v >> i) & 1); } FORCEINLINE operator __mmask16() const { return v; } }; @@ -293,6 +297,75 @@ PRE_ALIGN(32) struct __vec16_i16 : public vec16 { static inline int32_t __extract_element(__vec16_i32, int); +/////////////////////////////////////////////////////////////////////////// +// debugging helpers +// +inline std::ostream &operator<<(std::ostream &out, const __m512i &v) +{ + out << "["; + for (int i=0;i<16;i++) + out << (i!=0?",":"") << std::dec << std::setw(8) << ((int*)&v)[i] << std::dec; + out << "]" << std::flush; + return out; +} + +inline std::ostream &operator<<(std::ostream &out, const __m512 &v) +{ + out << "["; + for (int i=0;i<16;i++) + out << (i!=0?",":"") << ((float*)&v)[i]; + out << "]" << std::flush; + return out; +} + +inline std::ostream &operator<<(std::ostream &out, const __vec16_i1 &v) +{ + out << "["; + for (int i=0;i<16;i++) + out << (i!=0?",":"") << std::dec << std::setw(8) << (int)v[i] << std::dec; + out << "]" << std::flush; + return out; +} + +inline std::ostream &operator<<(std::ostream &out, const __vec16_i8 &v) +{ + out << "["; + for (int i=0;i<16;i++) + out << (i!=0?",":"") << std::dec << std::setw(8) << (int)((unsigned char*)&v)[i] << std::dec; + out << "]" << std::flush; + return out; +} + +inline std::ostream &operator<<(std::ostream &out, const __vec16_i16 &v) +{ + out << "["; + for (int i=0;i<16;i++) + out << (i!=0?",":"") << std::dec << std::setw(8) << (int)((uint16_t*)&v)[i] << std::dec; + out << "]" << std::flush; + return out; +} + +inline std::ostream &operator<<(std::ostream &out, const __vec16_d &v) +{ + out << "["; + for (int i=0;i<16;i++) { + out << (i!=0?",":"") << (v[i]); + } + out << "]" << std::flush; + return out; +} + +inline std::ostream &operator<<(std::ostream &out, const __vec16_i64 &v) +{ + out << "["; + for (int i=0;i<16;i++) { + out << (i!=0?",":"") << (v[i]); + } + out << "]" << std::flush; + return out; +} + + /////////////////////////////////////////////////////////////////////////// // macros... @@ -813,9 +886,10 @@ static FORCEINLINE void __abs_i32i64(__m512i &_hi, __m512i &_lo) _hi = _mm512_sbb_epi32 (hi, borrow, mask, &borrow); } static FORCEINLINE __vec16_i64 __mul(__vec16_i64 _a, __vec16_i64 _b) -{ +{ __vec16_i64 a = _a.cvt2hilo(); __vec16_i64 b = _b.cvt2hilo(); + /* sign = (a^b) >> 32, if sign == 0 then a*b >= 0, otherwise a*b < 0 */ const __vec16_i1 sign = __not_equal_i32(__ashr(__xor(a.v_hi, b.v_hi), __ispc_thirty_two), __ispc_zero); __abs_i32i64(a.v_hi, a.v_lo); /* abs(a) */ @@ -830,6 +904,7 @@ static FORCEINLINE __vec16_i64 __mul(__vec16_i64 _a, __vec16_i64 _b) const __vec16_i32 lo = lo_m1; const __vec16_i64 ret_abs = __vec16_i64(hi,lo).cvt2zmm(); /* if sign != 0, means either a or b is negative, then negate the result */ + return __select(sign, __sub(__vec16_i64(__ispc_zero, __ispc_zero), ret_abs), ret_abs); } #endif /* __ICC >= 1400 */ diff --git a/examples/intrinsics/knc.h b/examples/intrinsics/knc.h index f745ab0a..aa9bda32 100644 --- a/examples/intrinsics/knc.h +++ b/examples/intrinsics/knc.h @@ -348,7 +348,7 @@ inline std::ostream &operator<<(std::ostream &out, const __vec16_i64 &v) uint32_t *ptr = (uint32_t*)&v; for (int i=0;i<16;i++) { uint64_t val = (uint64_t(ptr[i])<<32)+ptr[i+16]; - out << (i!=0?",":"") << std::dec << std::setw(8) << ((int64_t)val) << std::dec; + out << (i!=0?",":"") << std::dec << std::setw(8) << ((uint64_t)val) << std::dec; } out << "]" << std::flush; return out; @@ -509,7 +509,7 @@ static FORCEINLINE __vec16_i32 __add(__vec16_i32 a, __vec16_i32 b) { return _mm512_add_epi32(a, b); } -static FORCEINLINE __vec16_i32 __sub(__vec16_i32 a, __vec16_i32 b) { +static FORCEINLINE __vec16_i32 __sub(__vec16_i32 a, __vec16_i32 b) { return _mm512_sub_epi32(a, b); } @@ -682,6 +682,7 @@ template <> FORCEINLINE __vec16_i32 __smear_i32<__vec16_i32>(int32_t i) { } static const __vec16_i32 __ispc_one = __smear_i32<__vec16_i32>(1); +static const __vec16_i32 __ispc_zero = __smear_i32<__vec16_i32>(0); static const __vec16_i32 __ispc_thirty_two = __smear_i32<__vec16_i32>(32); static const __vec16_i32 __ispc_ffffffff = __smear_i32<__vec16_i32>(-1); static const __vec16_i32 __ispc_stride1(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15); @@ -788,6 +789,15 @@ template <> FORCEINLINE void __store<64>(__vec16_i32 *p, __vec16_i32 v) { /////////////////////////////////////////////////////////////////////////// // int64 /////////////////////////////////////////////////////////////////////////// + +static FORCEINLINE __vec16_i64 __select(__vec16_i1 mask, + __vec16_i64 a, __vec16_i64 b) { + __vec16_i64 ret; + ret.v_hi = _mm512_mask_mov_epi32(b.v_hi, mask, a.v_hi); + ret.v_lo = _mm512_mask_mov_epi32(b.v_lo, mask, a.v_lo); + return ret; +} + static FORCEINLINE void __masked_store_i64(void *p, const __vec16_i64 &v, __vec16_i1 mask) { @@ -853,16 +863,36 @@ static FORCEINLINE __vec16_i64 __mul(const __vec16_i32 &a, const __vec16_i64 &b) _mm512_mulhi_epi32(a.v, b.v_lo))); } -static FORCEINLINE __vec16_i64 __mul(const __vec16_i64 &a, const __vec16_i64 &b) +static FORCEINLINE void __abs_i32i64(__m512i &_hi, __m512i &_lo) { - __vec16_i32 lo = _mm512_mullo_epi32(a.v_lo,b.v_lo); - __vec16_i32 hi_m1 = _mm512_mulhi_epi32(a.v_lo, b.v_lo); + /* abs(x) : + * mask = x >> 64; // sign bits + * abs(x) = (x^mask) - mask + */ + const __vec16_i32 mask = __ashr(_hi, __ispc_thirty_two); + __vec16_i32 hi = __xor(_hi, mask); + __vec16_i32 lo = __xor(_lo, mask); + __mmask16 borrow = 0; + _lo = _mm512_subsetb_epi32(lo, mask, &borrow); + _hi = _mm512_sbb_epi32 (hi, borrow, mask, &borrow); +} + +static FORCEINLINE __vec16_i64 __mul(__vec16_i64 a, __vec16_i64 b) +{ + const __vec16_i1 sign = __not_equal_i32(__ashr(__xor(a.v_hi, b.v_hi), __ispc_thirty_two), __ispc_zero); + __abs_i32i64(a.v_hi, a.v_lo); /* abs(a) */ + __abs_i32i64(b.v_hi, b.v_lo); /* abs(b) */ + __vec16_i32 lo = _mm512_mullo_epi32(a.v_lo, b.v_lo); + __vec16_i32 hi_m1 = _mm512_mulhi_epu32(a.v_lo, b.v_lo); __vec16_i32 hi_m2 = _mm512_mullo_epi32(a.v_hi, b.v_lo); __vec16_i32 hi_m3 = _mm512_mullo_epi32(a.v_lo, b.v_hi); + __mmask16 carry = 0; - __vec16_i32 hi_p23 = _mm512_addsetc_epi32(hi_m2, hi_m1, &carry); - __vec16_i32 hi = _mm512_adc_epi32(hi_m3, carry, hi_p23, &carry); - return __vec16_i64(lo, hi); + __vec16_i32 hi_p23 = _mm512_addsetc_epi32(hi_m2, hi_m3, &carry); + __vec16_i32 hi = _mm512_adc_epi32(hi_p23, carry, hi_m1, &carry); + + __vec16_i64 ret_abs(lo, hi); + return __select(sign, __sub(__vec16_i64(__ispc_zero, __ispc_zero), ret_abs), ret_abs); } static FORCEINLINE __vec16_i64 __sdiv(const __vec16_i64 &a, const __vec16_i64 &b) @@ -902,9 +932,14 @@ static FORCEINLINE __vec16_i64 __xor(__vec16_i64 a, __vec16_i64 b) { } static FORCEINLINE __vec16_i64 __shl(__vec16_i64 a, __vec16_i64 b) { - __vec16_i32 xfer = _mm512_srlv_epi32(a.v_lo, _mm512_sub_epi32(__ispc_thirty_two, b.v_lo)); - __vec16_i32 hi = _mm512_or_epi32(_mm512_sllv_epi32(a.v_hi, b.v_lo), xfer); - __vec16_i32 lo = _mm512_sllv_epi32(a.v_lo, b.v_lo); + /* this is a safety gate in case b-shift >= 32 */ + const __vec16_i32 xfer = __select( + __signed_less_than_i32(b.v_lo, __ispc_thirty_two), + __lshr(a.v_lo, __sub(__ispc_thirty_two, b.v_lo)), + __shl (a.v_lo, __sub(b.v_lo, __ispc_thirty_two)) + ); + const __vec16_i32 hi = __or(__shl(a.v_hi, b.v_lo), xfer); + const __vec16_i32 lo = __shl(a.v_lo, b.v_lo); return __vec16_i64(lo, hi); } @@ -916,22 +951,38 @@ static FORCEINLINE __vec16_i64 __shl(__vec16_i64 a, unsigned long long b) { } static FORCEINLINE __vec16_i64 __lshr(__vec16_i64 a, __vec16_i64 b) { - __vec16_i32 shift = _mm512_sub_epi32(__ispc_thirty_two, b.v_lo); - __vec16_i32 xfer = _mm512_and_epi32(_mm512_sllv_epi32(__ispc_ffffffff, shift), _mm512_sllv_epi32(a.v_hi, shift)); - //__vec16_i32 xfer = _mm512_sllv_epi32(_mm512_and_epi32(a.v_hi, - // _mm512_sub_epi32(_mm512_sllv_epi32(__ispc_one, b.v_lo), __ispc_one)), - // _mm512_sub_epi32(__ispc_thirty_two, b.v_lo)); - __vec16_i32 hi = _mm512_srlv_epi32(a.v_hi, b.v_lo); - __vec16_i32 lo = _mm512_or_epi32(xfer, _mm512_srlv_epi32(a.v_lo, b.v_lo)); + /* this is a safety gate in case b-shift >= 32 */ + const __vec16_i32 xfer = __select( + __signed_less_than_i32(b.v_lo, __ispc_thirty_two), + __shl (a.v_hi, __sub(__ispc_thirty_two, b.v_lo)), + __lshr(a.v_hi, __sub(b.v_lo, __ispc_thirty_two)) + ); + const __vec16_i32 lo = __or(__lshr(a.v_lo, b.v_lo), xfer); + const __vec16_i32 hi = __lshr(a.v_hi, b.v_lo); + + return __vec16_i64(lo, hi); +} + +static FORCEINLINE __vec16_i64 __lshr(__vec16_i64 a, unsigned long long b) { + /* this is a safety gate in case b-shift >= 32 */ + __vec16_i32 xfer; + if (32 < b) xfer = __lshr(a.v_hi, b-32); + else xfer = _mm512_and_epi32(_mm512_slli_epi32(__ispc_ffffffff, 32-b), _mm512_slli_epi32(a.v_hi, 32-b)); + + __vec16_i32 hi = _mm512_srli_epi32(a.v_hi, b); + __vec16_i32 lo = _mm512_or_epi32(xfer, _mm512_srli_epi32(a.v_lo, b)); return __vec16_i64(lo, hi); } static FORCEINLINE __vec16_i64 __ashr(__vec16_i64 a, __vec16_i64 b) { - __vec16_i32 xfer = _mm512_sllv_epi32(_mm512_and_epi32(a.v_hi, - _mm512_sub_epi32(_mm512_sllv_epi32(__ispc_one, b.v_lo), __ispc_one)), - _mm512_sub_epi32(__ispc_thirty_two, b.v_lo)); - __vec16_i32 hi = _mm512_srav_epi32(a.v_hi, b.v_lo); - __vec16_i32 lo = _mm512_or_epi32(xfer, _mm512_srlv_epi32(a.v_lo, b.v_lo)); + /* this is a safety gate in case b-shift >= 32 */ + const __vec16_i32 xfer = __select( + __signed_less_than_i32(b.v_lo, __ispc_thirty_two), + __shl (a.v_hi, __sub(__ispc_thirty_two, b.v_lo)), + __ashr(a.v_hi, __sub(b.v_lo, __ispc_thirty_two)) + ); + const __vec16_i32 lo = __or(__lshr(a.v_lo, b.v_lo), xfer); + const __vec16_i32 hi = __ashr(a.v_hi, b.v_lo); return __vec16_i64(lo, hi); } @@ -966,13 +1017,7 @@ static FORCEINLINE __vec16_i1 __not_equal_i64_and_mask(const __vec16_i64 &a, con return __and(__not(__equal_i64(a,b)), mask); } -static FORCEINLINE __vec16_i64 __select(__vec16_i1 mask, - __vec16_i64 a, __vec16_i64 b) { - __vec16_i64 ret; - ret.v_hi = _mm512_mask_mov_epi32(b.v_hi, mask, a.v_hi); - ret.v_lo = _mm512_mask_mov_epi32(b.v_lo, mask, a.v_lo); - return ret; -} + template static RetVecType __smear_i64(const int64_t &l); template <> FORCEINLINE __vec16_i64 __smear_i64<__vec16_i64>(const int64_t &l) { @@ -1544,12 +1589,26 @@ template <> FORCEINLINE void __store<128>(__vec16_d *p, __vec16_d v) { /////////////////////////////////////////////////////////////////////////// // casts /////////////////////////////////////////////////////////////////////////// +static FORCEINLINE __vec16_i8 __cast_sext(const __vec16_i8 &, const __vec16_i1 &val) +{ + return __vec16_i8(-val[0], -val[1], -val[2], -val[3], -val[4], -val[5], -val[6], -val[7], + -val[8], -val[9], -val[10], -val[11], -val[12], -val[13], -val[14], -val[15]); +} + static FORCEINLINE __vec16_i16 __cast_sext(const __vec16_i16 &, const __vec16_i1 &val) { return __vec16_i16(-val[0], -val[1], -val[2], -val[3], -val[4], -val[5], -val[6], -val[7], -val[8], -val[9], -val[10], -val[11], -val[12], -val[13], -val[14], -val[15]); } +static FORCEINLINE __vec16_i16 __cast_sext(const __vec16_i16 &, const __vec16_i8 &val) +{ + return __vec16_i16((int8_t)val[0], (int8_t)val[1], (int8_t)val[2], (int8_t)val[3], + (int8_t)val[4], (int8_t)val[5], (int8_t)val[6], (int8_t)val[7], + (int8_t)val[8], (int8_t)val[9], (int8_t)val[10], (int8_t)val[11], + (int8_t)val[12], (int8_t)val[13], (int8_t)val[14], (int8_t)val[15]); +} + static FORCEINLINE __vec16_i32 __cast_sext(const __vec16_i32 &, const __vec16_i1 &val) { __vec16_i32 ret = _mm512_setzero_epi32(); @@ -1557,6 +1616,13 @@ static FORCEINLINE __vec16_i32 __cast_sext(const __vec16_i32 &, const __vec16_i1 return _mm512_mask_mov_epi32(ret, val, one); } +static FORCEINLINE __vec16_i32 __cast_sext(const __vec16_i32 &, const __vec16_i8 &val) +{ + //return _mm512_extload_epi32(&val, _MM_UPCONV_EPI32_SINT8, _MM_BROADCAST32_NONE, _MM_HINT_NONE); + __vec16_i32 a = _mm512_extload_epi32(&val, _MM_UPCONV_EPI32_SINT8, _MM_BROADCAST32_NONE, _MM_HINT_NONE); + return a; +} + static FORCEINLINE __vec16_i32 __cast_sext(const __vec16_i32 &, const __vec16_i16 &val) { return _mm512_extload_epi32(&val, _MM_UPCONV_EPI32_SINT16, _MM_BROADCAST32_NONE, _MM_HINT_NONE); @@ -1567,6 +1633,12 @@ static FORCEINLINE __vec16_i64 __cast_sext(const __vec16_i64 &, const __vec16_i3 return __vec16_i64(val.v, _mm512_srai_epi32(val.v, 31)); } +static FORCEINLINE __vec16_i8 __cast_zext(const __vec16_i8 &, const __vec16_i1 &val) +{ + return __vec16_i8(val[0], val[1], val[2], val[3], val[4], val[5], val[6], val[7], + val[8], val[9], val[10], val[11], val[12], val[13], val[14], val[15]); +} + static FORCEINLINE __vec16_i16 __cast_zext(const __vec16_i16 &, const __vec16_i1 &val) { return __vec16_i16(val[0], val[1], val[2], val[3], val[4], val[5], val[6], val[7], @@ -2021,6 +2093,14 @@ static FORCEINLINE TYPE __select(bool cond, TYPE a, TYPE b) { \ return cond ? a : b; \ } +#define REDUCE_ADD(TYPE, VTYPE, NAME) \ +static FORCEINLINE TYPE NAME(VTYPE v) { \ + TYPE ret = v[0]; \ + for (int i = 1; i < 16; ++i) \ + ret = ret + v[i]; \ + return ret; \ +} + /////////////////////////////////////////////////////////////////////////// // int8 /////////////////////////////////////////////////////////////////////////// @@ -2395,21 +2475,8 @@ static FORCEINLINE int64_t __count_trailing_zeros_i64(const __vec1_i64 mask) { // reductions /////////////////////////////////////////////////////////////////////////// -static FORCEINLINE int8_t __reduce_add_int8(__vec16_i8 v) { - // TODO: improve this! - int16_t ret = 0; - for (int i = 0; i < 16; ++i) - ret += v.v[i]; - return ret; -} - -static FORCEINLINE int16_t __reduce_add_int16(__vec16_i16 v) { - // TODO: improve this! - int32_t ret = 0; - for (int i = 0; i < 16; ++i) - ret += v.v[i]; - return ret; -} +REDUCE_ADD ( int16_t, __vec16_i8, __reduce_add_int8) +REDUCE_ADD ( int32_t, __vec16_i16, __reduce_add_int16) static FORCEINLINE int32_t __reduce_add_int32(__vec16_i32 v) { return _mm512_reduce_add_epi32(v); diff --git a/fail_db.txt b/fail_db.txt index fe875fd3..97649624 100644 --- a/fail_db.txt +++ b/fail_db.txt @@ -525,8 +525,6 @@ ./tests/aossoa-8.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O2 * ./tests/atomics-13.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O2 * ./tests/atomics-2.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O2 * -./tests/avg-down-int8.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O2 * -./tests/avg-up-int8.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O2 * ./tests/count-leading-trailing-zeros-2.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O2 * ./tests/count-leading-trailing-zeros-3.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O2 * ./tests/count-leading-trailing-zeros-4.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O2 * @@ -561,7 +559,6 @@ ./tests/half-2.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O2 * ./tests/half-3.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O2 * ./tests/half.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O2 * -./tests/idiv.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O2 * ./tests/int64-max-1.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O2 * ./tests/int64-max.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O2 * ./tests/int64-min-1.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O2 * @@ -570,20 +567,14 @@ ./tests/memmove-varying.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O2 * ./tests/memset-varying.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O2 * ./tests/padds_vi64.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O2 * -./tests/padds_vi8.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O2 * ./tests/paddus_vi64.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O2 * ./tests/pass-varying-lvalue-to-ref.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O2 * ./tests/pdivs_vi64.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O2 * -./tests/pdivs_vi8.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O2 * ./tests/pmuls_vi64.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O2 * -./tests/pmuls_vi8.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O2 * -./tests/pmulus_vi32.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O2 * ./tests/pmulus_vi64.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O2 * -./tests/pmulus_vi8.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O2 * ./tests/popcnt-4.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O2 * ./tests/prefetch.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O2 * ./tests/psubs_vi64.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O2 * -./tests/psubs_vi8.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O2 * ./tests/psubus_vi64.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O2 * ./tests/ptr-22.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O2 * ./tests/ptr-24.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O2 * @@ -627,9 +618,6 @@ ./tests/atomics-3.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * ./tests/atomics-4.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * ./tests/atomics-9.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * -./tests/avg-down-int8.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * -./tests/avg-up-int8.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * -./tests/broadcast-3.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * ./tests/count-leading-trailing-zeros-2.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * ./tests/count-leading-trailing-zeros-3.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * ./tests/count-leading-trailing-zeros-4.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * @@ -642,8 +630,6 @@ ./tests/exclusive-scan-and-1.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * ./tests/exclusive-scan-and-2.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * ./tests/exclusive-scan-or-1.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * -./tests/frexp-double-1.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * -./tests/frexp-double.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * ./tests/gather-double-5.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * ./tests/gather-double-6.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * ./tests/gather-double-7.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * @@ -661,10 +647,6 @@ ./tests/gather-int32-6.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * ./tests/gather-int32-7.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * ./tests/gather-int32-8.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * -./tests/gather-int8-1.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * -./tests/gather-int8-2.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * -./tests/gather-int8-3.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * -./tests/gather-int8-4.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * ./tests/gather-int8-5.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * ./tests/gather-int8-6.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * ./tests/gather-int8-7.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * @@ -673,7 +655,6 @@ ./tests/half-2.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * ./tests/half-3.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * ./tests/half.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * -./tests/idiv.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * ./tests/int64-max-1.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * ./tests/int64-max.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * ./tests/int64-min-1.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * @@ -682,22 +663,15 @@ ./tests/memmove-varying.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * ./tests/memset-varying.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * ./tests/padds_vi64.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * -./tests/padds_vi8.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * ./tests/paddus_vi64.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * ./tests/pass-varying-lvalue-to-ref.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * ./tests/pdivs_vi64.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * -./tests/pdivs_vi8.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * ./tests/pmuls_vi64.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * -./tests/pmuls_vi8.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * -./tests/pmulus_vi32.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * ./tests/pmulus_vi64.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * -./tests/pmulus_vi8.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * ./tests/popcnt-4.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * ./tests/prefetch.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * ./tests/psubs_vi64.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * -./tests/psubs_vi8.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * ./tests/psubus_vi64.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * -./tests/ptr-19.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * ./tests/ptr-24.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * ./tests/ptr-25.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * ./tests/ptr-assign-lhs-math-2.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * @@ -705,8 +679,6 @@ ./tests/ptr-cmp-1.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * ./tests/ptr-int-1.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * ./tests/ptr-varying-unif-index.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * -./tests/reduce-add-int8-1.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * -./tests/reduce-add-int8.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * ./tests/reduce-equal-1.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * ./tests/reduce-equal-10.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * ./tests/reduce-equal-12.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * @@ -722,12 +694,9 @@ ./tests/shift-1.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * ./tests/shift-2.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * ./tests/shift-3.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * -./tests/shuffle2-10.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * ./tests/shuffle2-3.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * ./tests/shuffle2-4.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * ./tests/shuffle2-5.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * -./tests/shuffle2-6.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * -./tests/shuffle2-8.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * ./tests/soa-18.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * ./tests/soa-19.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * ./tests/soa-22.ispc compfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * @@ -756,8 +725,6 @@ ./tests/atomics-6.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O2 * ./tests/atomics-uniform-8.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O2 * ./tests/atomics-uniform-9.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O2 * -./tests/avg-down-int8.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O2 * -./tests/avg-up-int8.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O2 * ./tests/count-leading-trailing-zeros-2.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O2 * ./tests/count-leading-trailing-zeros-3.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O2 * ./tests/count-leading-trailing-zeros-4.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O2 * @@ -792,7 +759,6 @@ ./tests/half-2.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O2 * ./tests/half-3.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O2 * ./tests/half.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O2 * -./tests/idiv.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O2 * ./tests/int64-max-1.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O2 * ./tests/int64-max.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O2 * ./tests/int64-min-1.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O2 * @@ -801,25 +767,19 @@ ./tests/memmove-varying.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O2 * ./tests/memset-varying.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O2 * ./tests/padds_vi64.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O2 * -./tests/padds_vi8.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O2 * ./tests/paddus_vi64.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O2 * ./tests/pass-varying-lvalue-to-ref.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O2 * ./tests/pdivs_vi64.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O2 * -./tests/pdivs_vi8.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O2 * ./tests/pmuls_i64.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O2 * ./tests/pmuls_vi64.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O2 * -./tests/pmuls_vi8.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O2 * ./tests/pmulus_i16.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O2 * ./tests/pmulus_i32.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O2 * ./tests/pmulus_i64.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O2 * ./tests/pmulus_i8.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O2 * -./tests/pmulus_vi32.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O2 * ./tests/pmulus_vi64.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O2 * -./tests/pmulus_vi8.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O2 * ./tests/popcnt-4.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O2 * ./tests/prefetch.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O2 * ./tests/psubs_vi64.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O2 * -./tests/psubs_vi8.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O2 * ./tests/psubus_vi64.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O2 * ./tests/ptr-22.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O2 * ./tests/ptr-24.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O2 * @@ -866,9 +826,6 @@ ./tests/atomics-9.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * ./tests/atomics-uniform-8.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * ./tests/atomics-uniform-9.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * -./tests/avg-down-int8.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * -./tests/avg-up-int8.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * -./tests/broadcast-3.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * ./tests/count-leading-trailing-zeros-2.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * ./tests/count-leading-trailing-zeros-3.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * ./tests/count-leading-trailing-zeros-4.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * @@ -881,8 +838,6 @@ ./tests/exclusive-scan-and-1.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * ./tests/exclusive-scan-and-2.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * ./tests/exclusive-scan-or-1.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * -./tests/frexp-double-1.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * -./tests/frexp-double.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * ./tests/gather-double-5.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * ./tests/gather-double-6.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * ./tests/gather-double-7.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * @@ -900,10 +855,6 @@ ./tests/gather-int32-6.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * ./tests/gather-int32-7.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * ./tests/gather-int32-8.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * -./tests/gather-int8-1.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * -./tests/gather-int8-2.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * -./tests/gather-int8-3.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * -./tests/gather-int8-4.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * ./tests/gather-int8-5.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * ./tests/gather-int8-6.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * ./tests/gather-int8-7.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * @@ -912,7 +863,6 @@ ./tests/half-2.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * ./tests/half-3.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * ./tests/half.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * -./tests/idiv.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * ./tests/int64-max-1.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * ./tests/int64-max.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * ./tests/int64-min-1.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * @@ -921,22 +871,15 @@ ./tests/memmove-varying.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * ./tests/memset-varying.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * ./tests/padds_vi64.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * -./tests/padds_vi8.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * ./tests/paddus_vi64.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * ./tests/pass-varying-lvalue-to-ref.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * ./tests/pdivs_vi64.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * -./tests/pdivs_vi8.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * ./tests/pmuls_vi64.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * -./tests/pmuls_vi8.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * -./tests/pmulus_vi32.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * ./tests/pmulus_vi64.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * -./tests/pmulus_vi8.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * ./tests/popcnt-4.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * ./tests/prefetch.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * ./tests/psubs_vi64.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * -./tests/psubs_vi8.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * ./tests/psubus_vi64.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * -./tests/ptr-19.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * ./tests/ptr-24.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * ./tests/ptr-25.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * ./tests/ptr-assign-lhs-math-2.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * @@ -944,8 +887,6 @@ ./tests/ptr-cmp-1.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * ./tests/ptr-int-1.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * ./tests/ptr-varying-unif-index.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * -./tests/reduce-add-int8-1.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * -./tests/reduce-add-int8.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * ./tests/reduce-equal-1.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * ./tests/reduce-equal-10.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * ./tests/reduce-equal-12.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * @@ -961,12 +902,9 @@ ./tests/shift-1.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * ./tests/shift-2.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * ./tests/shift-3.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * -./tests/shuffle2-10.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * ./tests/shuffle2-3.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * ./tests/shuffle2-4.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * ./tests/shuffle2-5.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * -./tests/shuffle2-6.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * -./tests/shuffle2-8.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * ./tests/soa-18.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * ./tests/soa-19.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * ./tests/soa-22.ispc compfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * @@ -995,8 +933,6 @@ ./tests/atomics-6.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O2 * ./tests/atomics-uniform-8.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O2 * ./tests/atomics-uniform-9.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O2 * -./tests/avg-down-int8.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O2 * -./tests/avg-up-int8.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O2 * ./tests/count-leading-trailing-zeros-2.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O2 * ./tests/count-leading-trailing-zeros-3.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O2 * ./tests/count-leading-trailing-zeros-4.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O2 * @@ -1031,7 +967,6 @@ ./tests/half-2.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O2 * ./tests/half-3.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O2 * ./tests/half.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O2 * -./tests/idiv.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O2 * ./tests/int64-max-1.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O2 * ./tests/int64-max.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O2 * ./tests/int64-min-1.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O2 * @@ -1040,25 +975,19 @@ ./tests/memmove-varying.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O2 * ./tests/memset-varying.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O2 * ./tests/padds_vi64.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O2 * -./tests/padds_vi8.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O2 * ./tests/paddus_vi64.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O2 * ./tests/pass-varying-lvalue-to-ref.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O2 * ./tests/pdivs_vi64.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O2 * -./tests/pdivs_vi8.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O2 * ./tests/pmuls_i64.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O2 * ./tests/pmuls_vi64.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O2 * -./tests/pmuls_vi8.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O2 * ./tests/pmulus_i16.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O2 * ./tests/pmulus_i32.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O2 * ./tests/pmulus_i64.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O2 * ./tests/pmulus_i8.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O2 * -./tests/pmulus_vi32.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O2 * ./tests/pmulus_vi64.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O2 * -./tests/pmulus_vi8.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O2 * ./tests/popcnt-4.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O2 * ./tests/prefetch.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O2 * ./tests/psubs_vi64.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O2 * -./tests/psubs_vi8.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O2 * ./tests/psubus_vi64.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O2 * ./tests/ptr-22.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O2 * ./tests/ptr-24.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O2 * @@ -1105,9 +1034,6 @@ ./tests/atomics-9.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * ./tests/atomics-uniform-8.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * ./tests/atomics-uniform-9.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * -./tests/avg-down-int8.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * -./tests/avg-up-int8.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * -./tests/broadcast-3.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * ./tests/count-leading-trailing-zeros-2.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * ./tests/count-leading-trailing-zeros-3.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * ./tests/count-leading-trailing-zeros-4.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * @@ -1120,8 +1046,6 @@ ./tests/exclusive-scan-and-1.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * ./tests/exclusive-scan-and-2.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * ./tests/exclusive-scan-or-1.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * -./tests/frexp-double-1.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * -./tests/frexp-double.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * ./tests/gather-double-5.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * ./tests/gather-double-6.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * ./tests/gather-double-7.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * @@ -1139,10 +1063,6 @@ ./tests/gather-int32-6.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * ./tests/gather-int32-7.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * ./tests/gather-int32-8.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * -./tests/gather-int8-1.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * -./tests/gather-int8-2.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * -./tests/gather-int8-3.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * -./tests/gather-int8-4.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * ./tests/gather-int8-5.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * ./tests/gather-int8-6.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * ./tests/gather-int8-7.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * @@ -1151,7 +1071,6 @@ ./tests/half-2.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * ./tests/half-3.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * ./tests/half.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * -./tests/idiv.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * ./tests/int64-max-1.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * ./tests/int64-max.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * ./tests/int64-min-1.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * @@ -1160,22 +1079,15 @@ ./tests/memmove-varying.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * ./tests/memset-varying.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * ./tests/padds_vi64.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * -./tests/padds_vi8.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * ./tests/paddus_vi64.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * ./tests/pass-varying-lvalue-to-ref.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * ./tests/pdivs_vi64.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * -./tests/pdivs_vi8.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * ./tests/pmuls_vi64.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * -./tests/pmuls_vi8.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * -./tests/pmulus_vi32.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * ./tests/pmulus_vi64.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * -./tests/pmulus_vi8.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * ./tests/popcnt-4.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * ./tests/prefetch.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * ./tests/psubs_vi64.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * -./tests/psubs_vi8.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * ./tests/psubus_vi64.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * -./tests/ptr-19.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * ./tests/ptr-24.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * ./tests/ptr-25.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * ./tests/ptr-assign-lhs-math-2.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * @@ -1183,8 +1095,6 @@ ./tests/ptr-cmp-1.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * ./tests/ptr-int-1.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * ./tests/ptr-varying-unif-index.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * -./tests/reduce-add-int8-1.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * -./tests/reduce-add-int8.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * ./tests/reduce-equal-1.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * ./tests/reduce-equal-10.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * ./tests/reduce-equal-12.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * @@ -1200,12 +1110,9 @@ ./tests/shift-1.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * ./tests/shift-2.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * ./tests/shift-3.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * -./tests/shuffle2-10.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * ./tests/shuffle2-3.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * ./tests/shuffle2-4.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * ./tests/shuffle2-5.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * -./tests/shuffle2-6.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * -./tests/shuffle2-8.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * ./tests/soa-18.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * ./tests/soa-19.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * ./tests/soa-22.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * @@ -1214,12 +1121,6 @@ ./tests/uint64-max.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * ./tests/uint64-min-1.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * ./tests/uint64-min.ispc compfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 * -./tests/reduce-add-int8.ispc runfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O2 * ./tests/reduce-equal-10.ispc runfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O2 * -./tests/count-leading-trailing-zeros-5.ispc runfail x86-64 knc Linux LLVM 3.4 icpc15.0 -O0 * -./tests/reduce-add-int8.ispc runfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O2 * ./tests/reduce-equal-10.ispc runfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O2 * -./tests/count-leading-trailing-zeros-5.ispc runfail x86-64 knc Linux LLVM 3.5 icpc15.0 -O0 * -./tests/reduce-add-int8.ispc runfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O2 * ./tests/reduce-equal-10.ispc runfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O2 * -./tests/count-leading-trailing-zeros-5.ispc runfail x86-64 knc Linux LLVM 3.6 icpc15.0 -O0 *