do unaligned load

This commit is contained in:
mid 2025-10-12 11:50:58 +03:00
parent 3993163d6d
commit 9ad84c447b

View File

@ -558,7 +558,7 @@ static int image_perform(CHiPubNode *node) {
for(size_t y = 0; y < img->height; y++) { for(size_t y = 0; y < img->height; y++) {
for(size_t x = 0; x < img->width; x++) { for(size_t x = 0; x < img->width; x++) {
__m128 pixels = _mm_load_ps((__m128*) &data[w * y + x]); __m128 pixels = _mm_loadu_ps((__m128*) &data[w * y + x]);
pixels = apply_gamma_ps(pixels, _mm_set_ps(1.0f, 2.2f, 2.2f, 2.2f)); pixels = apply_gamma_ps(pixels, _mm_set_ps(1.0f, 2.2f, 2.2f, 2.2f));
__m128i pixelsi = _mm_cvtps_epi32(_mm_mul_ps(_mm_min_ps(_mm_max_ps(pixels, _mm_set1_ps(0.0f)), _mm_set1_ps(1.0f)), _mm_set1_ps(65535.0f))); __m128i pixelsi = _mm_cvtps_epi32(_mm_mul_ps(_mm_min_ps(_mm_max_ps(pixels, _mm_set1_ps(0.0f)), _mm_set1_ps(1.0f)), _mm_set1_ps(65535.0f)));
pixelsi = _mm_shuffle_epi8(pixelsi, _mm_set_epi8(0, 1, 4, 5, 8, 9, 12, 13, -128, -128, -128, -128, -128, -128, -128, -128)); pixelsi = _mm_shuffle_epi8(pixelsi, _mm_set_epi8(0, 1, 4, 5, 8, 9, 12, 13, -128, -128, -128, -128, -128, -128, -128, -128));