256 to 32 doesn't work, made them by hand

This commit is contained in:
Reima Hyvönen 2018-08-10 16:01:20 +03:00
parent 408dedbcc8
commit fa5b227ece

View file

@ -751,7 +751,7 @@ static void inter_recon_bipred_no_mov_avx2(
case 4:
_mm_stream_si32((int*)&(lcu->rec.y[(y_in_lcu)* LCU_WIDTH + x_in_lcu]), _mm256_cvtsi256_si32(temp_y_epi8));
_mm_stream_si32((int*)&(lcu->rec.y[(y_in_lcu)* LCU_WIDTH + x_in_lcu]), _mm_cvtsi128_si32(_mm256_castsi256_si128(temp_y_epi8)));
break;
@ -809,8 +809,8 @@ static void inter_recon_bipred_no_mov_avx2(
break;
case 8:
_mm_stream_si32((int*)&(lcu->rec.u[(y_in_lcu)* LCU_WIDTH_C + x_in_lcu]), _mm256_cvtsi256_si32(temp_u_epi8));
_mm_stream_si32((int*)&(lcu->rec.v[(y_in_lcu)* LCU_WIDTH_C + x_in_lcu]), _mm256_cvtsi256_si32(temp_v_epi8));
_mm_stream_si32((int*)&(lcu->rec.u[(y_in_lcu)* LCU_WIDTH_C + x_in_lcu]), _mm_cvtsi128_si32(_mm256_castsi256_si128(temp_u_epi8)));
_mm_stream_si32((int*)&(lcu->rec.v[(y_in_lcu)* LCU_WIDTH_C + x_in_lcu]), _mm_cvtsi128_si32(_mm256_castsi256_si128(temp_v_epi8)));
break;
@ -917,7 +917,7 @@ static void inter_recon_bipred_avx2(const int hi_prec_luma_rec0,
case 4:
temp_epi8 = _mm256_packus_epi16(temp_y_epi16, temp_y_epi16);
_mm_stream_si32((int*)&(lcu->rec.y[(y_in_lcu)* LCU_WIDTH + x_in_lcu]), _mm256_cvtsi256_si32(temp_epi8));
_mm_stream_si32((int*)&(lcu->rec.y[(y_in_lcu)* LCU_WIDTH + x_in_lcu]), _mm_cvtsi128_si32(_mm256_castsi256_si128(temp_epi8)));
break;
case 8:
@ -1003,10 +1003,10 @@ static void inter_recon_bipred_avx2(const int hi_prec_luma_rec0,
case 8:
temp_epi8 = _mm256_packus_epi16(temp_u_epi16, temp_u_epi16);
_mm_stream_si32((int*)&(lcu->rec.u[(y_in_lcu)* LCU_WIDTH_C + x_in_lcu]), _mm256_cvtsi256_si32(temp_epi8));
_mm_stream_si32((int*)&(lcu->rec.u[(y_in_lcu)* LCU_WIDTH_C + x_in_lcu]), _mm_cvtsi128_si32(_mm256_castsi256_si128(temp_epi8)));
temp_epi8 = _mm256_packus_epi16(temp_v_epi16, temp_v_epi16);
_mm_stream_si32((int*)&(lcu->rec.v[(y_in_lcu)* LCU_WIDTH_C + x_in_lcu]), _mm256_cvtsi256_si32(temp_epi8));
_mm_stream_si32((int*)&(lcu->rec.v[(y_in_lcu)* LCU_WIDTH_C + x_in_lcu]), _mm_cvtsi128_si32(_mm256_castsi256_si128(temp_epi8)));
break;