X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=plugins%2Fgpu_neon%2Fpsx_gpu%2Fvector_ops.h;h=6bc76433e66b7381821edf9e2490159df4501a51;hb=5fe1a2b17ff2f336a63e36ac791c99096775d5cf;hp=189eb79d0d3cee92bd86f684c9e354f8d5ce49d4;hpb=a402136100279cd528661ca9eae70d12bedb8862;p=pcsx_rearmed.git diff --git a/plugins/gpu_neon/psx_gpu/vector_ops.h b/plugins/gpu_neon/psx_gpu/vector_ops.h index 189eb79d..6bc76433 100644 --- a/plugins/gpu_neon/psx_gpu/vector_ops.h +++ b/plugins/gpu_neon/psx_gpu/vector_ops.h @@ -103,7 +103,7 @@ foreach_element(2, (dest).e[_i] = (u32)(source).e[_i] >> (shift)) \ #define shr_4x16b(dest, source, shift) \ - foreach_element(4, (dest).e[_i] = (source).e[_i] >> (shift)) \ + foreach_element(4, (dest).e[_i] = (u16)(source).e[_i] >> (shift)) \ #define shl_4x16b(dest, source, shift) \ foreach_element(4, (dest).e[_i] = (u32)(source).e[_i] << (shift)) \ @@ -525,6 +525,15 @@ (dest).e[_i] = result; \ }) \ +#define min_4x16b(dest, source_a, source_b) \ + foreach_element(4, \ + { \ + s32 result = (source_a).e[_i]; \ + if((source_b).e[_i] < result) \ + result = (source_b).e[_i]; \ + (dest).e[_i] = result; \ + }) \ + #define min_8x16b(dest, source_a, source_b) \ foreach_element(8, \ { \