X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=frontend%2Fcspace_neon.S;h=651ab84243f63df94da8996b743a5d39a5d3bb51;hb=d639fa7fe4be413006e13209587fa710b98820f5;hp=56ab3044a0f7387b21333bc7fc991d1c925188d9;hpb=b085fc5ae83c7e0f91cb3a8dc00bd14d2b8f9c1c;p=pcsx_rearmed.git diff --git a/frontend/cspace_neon.S b/frontend/cspace_neon.S index 56ab3044..651ab842 100644 --- a/frontend/cspace_neon.S +++ b/frontend/cspace_neon.S @@ -23,6 +23,16 @@ FUNCTION(bgr555_to_rgb565): @ dst, src, bytes pld [r1] mov r3, #0x07c0 vdup.16 q15, r3 + tst r0, #8 + beq 0f + @ align the dst + vld1.16 {d0}, [r1]! + vshl.u16 d0, d0, #1 + vshl.u16 d1, d0, #10 + vsri.u16 d1, d0, #11 + vbit d1, d0, d30 + vst1.16 {d1}, [r0]! +0: subs r2, r2, #64 blt btr16_end64 0: @@ -183,8 +193,8 @@ FUNCTION(bgr888_to_rgb888): @ dst, src, bytes umull r12,r2, r3, r2 0: pld [r1, #48*3] - vld3.8 {d0-d2}, [r1, :64]! - vld3.8 {d3-d5}, [r1, :64]! + vld3.8 {d0-d2}, [r1]! + vld3.8 {d3-d5}, [r1]! vswp d0, d2 vswp d3, d5 vst3.8 {d0-d2}, [r0, :64]! @@ -207,8 +217,8 @@ FUNCTION(bgr888_to_rgb565): @ dst, src, bytes vdup.16 q15, r3 0: pld [r1, #48*3] - vld3.8 {d1-d3}, [r1, :64]! - vld3.8 {d5-d7}, [r1, :64]! + vld3.8 {d1-d3}, [r1]! + vld3.8 {d5-d7}, [r1]! vshll.u8 q8, d2, #3 @ g vshll.u8 q9, d6, #3