diff options
author | Jussi Pakkanen <jpakkane@gmail.com> | 2017-02-19 21:32:51 +0200 |
---|---|---|
committer | Jussi Pakkanen <jpakkane@gmail.com> | 2017-07-17 19:20:00 +0300 |
commit | f6f5644212ecfd54238e817dc6771c7d57b38ba8 (patch) | |
tree | 7b53ff23eef6ea66d684e78c22d12ebc1d8655bf | |
parent | 2181d8f2abc977fa12ed72d9bd8369db9370dae8 (diff) | |
download | meson-f6f5644212ecfd54238e817dc6771c7d57b38ba8.zip meson-f6f5644212ecfd54238e817dc6771c7d57b38ba8.tar.gz meson-f6f5644212ecfd54238e817dc6771c7d57b38ba8.tar.bz2 |
Fix MMX on 32 bit x86.
-rw-r--r-- | test cases/common/139 simd/simd_mmx.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/test cases/common/139 simd/simd_mmx.c b/test cases/common/139 simd/simd_mmx.c index 6a959db..17f42dd 100644 --- a/test cases/common/139 simd/simd_mmx.c +++ b/test cases/common/139 simd/simd_mmx.c @@ -44,7 +44,11 @@ void increment_mmx(float arr[4]) { __m64 packed = _mm_set_pi16(arr[3], arr[2], arr[1], arr[0]); __m64 incr = _mm_set1_pi16(1); __m64 result = _mm_add_pi16(packed, incr); - int64_t unpacker = _m_to_int64(result); + /* Should be + * int64_t unpacker = _m_to_int64(result); + * but it does not exist on 32 bit platforms for some reason. + */ + int64_t unpacker = (int64_t)(result); _mm_empty(); for(i=0; i<4; i++) { arr[i] = (float)(unpacker & ((1<<16)-1)); |