| Index: source/libvpx/vp9/encoder/x86/vp9_dct32x32_avx2.c
|
| ===================================================================
|
| --- source/libvpx/vp9/encoder/x86/vp9_dct32x32_avx2.c (revision 293081)
|
| +++ source/libvpx/vp9/encoder/x86/vp9_dct32x32_avx2.c (working copy)
|
| @@ -13,14 +13,15 @@
|
| #include "vpx_ports/mem.h"
|
|
|
| #define pair256_set_epi16(a, b) \
|
| - _mm256_set_epi16(b, a, b, a, b, a, b, a, b, a, b, a, b, a, b, a)
|
| + _mm256_set_epi16((int16_t)(b), (int16_t)(a), (int16_t)(b), (int16_t)(a), \
|
| + (int16_t)(b), (int16_t)(a), (int16_t)(b), (int16_t)(a), \
|
| + (int16_t)(b), (int16_t)(a), (int16_t)(b), (int16_t)(a), \
|
| + (int16_t)(b), (int16_t)(a), (int16_t)(b), (int16_t)(a))
|
|
|
| #define pair256_set_epi32(a, b) \
|
| - _mm256_set_epi32(b, a, b, a, b, a, b, a)
|
| + _mm256_set_epi32((int)(b), (int)(a), (int)(b), (int)(a), \
|
| + (int)(b), (int)(a), (int)(b), (int)(a))
|
|
|
| -
|
| -
|
| -
|
| #if FDCT32x32_HIGH_PRECISION
|
| static INLINE __m256i k_madd_epi32_avx2(__m256i a, __m256i b) {
|
| __m256i buf0, buf1;
|
| @@ -50,7 +51,7 @@
|
| // When we use them, in one case, they are all the same. In all others
|
| // it's a pair of them that we need to repeat four times. This is done
|
| // by constructing the 32 bit constant corresponding to that pair.
|
| - const __m256i k__cospi_p16_p16 = _mm256_set1_epi16(+cospi_16_64);
|
| + const __m256i k__cospi_p16_p16 = _mm256_set1_epi16((int16_t)cospi_16_64);
|
| const __m256i k__cospi_p16_m16 = pair256_set_epi16(+cospi_16_64, -cospi_16_64);
|
| const __m256i k__cospi_m08_p24 = pair256_set_epi16(-cospi_8_64, cospi_24_64);
|
| const __m256i k__cospi_m24_m08 = pair256_set_epi16(-cospi_24_64, -cospi_8_64);
|
|
|