X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=plugins%2Fgpu_neon%2Fpsx_gpu%2Fpsx_gpu_simd.c;h=bbeccb71923139b97495d6439cd8ce0c9d77ed52;hb=aafce833d9d30a8709b6e07891b8ec2145242fd8;hp=5c05b14a8fe282544a4d015a2dbb638caa4360a0;hpb=38e03f0aee6c94ff6c35a9597f45f88be5cae300;p=pcsx_rearmed.git diff --git a/plugins/gpu_neon/psx_gpu/psx_gpu_simd.c b/plugins/gpu_neon/psx_gpu/psx_gpu_simd.c index 5c05b14a..bbeccb71 100644 --- a/plugins/gpu_neon/psx_gpu/psx_gpu_simd.c +++ b/plugins/gpu_neon/psx_gpu/psx_gpu_simd.c @@ -313,7 +313,7 @@ typedef union #include #include #include -static int ccount; +static int ccount, dump_enabled; void cmpp(const char *name, const void *a_, const void *b_, size_t len) { const uint32_t *a = a_, *b = b_, masks[] = { 0, 0xff, 0xffff, 0xffffff }; @@ -336,8 +336,9 @@ void cmpp(const char *name, const void *a_, const void *b_, size_t len) void dump_r_(const char *name, void *dump, int is_q) { unsigned long long *u = dump; + if (!dump_enabled) return; //if (ccount > 1) return; - printf("%10s %016llx ", name, u[0]); + printf("%20s %016llx ", name, u[0]); if (is_q) printf("%016llx", u[1]); puts(""); @@ -497,7 +498,7 @@ void compute_all_gradients(psx_gpu_struct * __restrict__ psx_gpu, gvreg uvrg_base; gvshll_n_u16(uvrg_base, gvlo(uvrg_xxxx0), 16); // uvrg_base = uvrg0 << 16 - gvdupq_n_u32(r_shift, shift); // r_shift = { shift, shift, shift, shift } + gvdupq_n_s64(r_shift, shift); // r_shift = { shift, shift } gvaddq_u32(uvrg_base, uvrg_base, uvrgb_phase); gvabsq_s32(ga_uvrg_x, ga_uvrg_x); // ga_uvrg_x = abs(ga_uvrg_x) @@ -600,7 +601,7 @@ void compute_all_gradients(psx_gpu_struct * __restrict__ psx_gpu, vec_2x64s alternate_x; \ vec_2x64s alternate_dx_dy; \ vec_4x32s alternate_x_32; \ - vec_2x32s alternate_x_16; \ + vec_4x16u alternate_x_16; \ \ vec_4x16u alternate_select; \ vec_4x16s y_mid_point; \