aboutsummaryrefslogtreecommitdiff
path: root/libpcsxcore/gte_neon.S
diff options
context:
space:
mode:
authornotaz2013-03-31 19:17:34 +0300
committernotaz2013-04-01 01:20:16 +0300
commitc6d5790c709c4efcc01718fbe99572af550d3dff (patch)
tree3d403cc502bcc490c6f1e277ce76c8bb1c47bcb2 /libpcsxcore/gte_neon.S
parentb1f89e6f247c9b11c745cc1a7201cce5fb4fe08f (diff)
downloadpcsx_rearmed-c6d5790c709c4efcc01718fbe99572af550d3dff.tar.gz
pcsx_rearmed-c6d5790c709c4efcc01718fbe99572af550d3dff.tar.bz2
pcsx_rearmed-c6d5790c709c4efcc01718fbe99572af550d3dff.zip
gte_neon: access scratch_buf through drc context
Diffstat (limited to 'libpcsxcore/gte_neon.S')
-rw-r--r--libpcsxcore/gte_neon.S23
1 files changed, 3 insertions, 20 deletions
diff --git a/libpcsxcore/gte_neon.S b/libpcsxcore/gte_neon.S
index 3c71f55..fe153e2 100644
--- a/libpcsxcore/gte_neon.S
+++ b/libpcsxcore/gte_neon.S
@@ -6,29 +6,12 @@
*/
#include "arm_features.h"
+#include "new_dynarec/linkage_offsets.h"
.syntax unified
-
-.bss
-.align 6 @ cacheline
-
-scratch:
-.rept 8*8*2/4
- .word 0
-.endr
-
.text
.align 2
-.macro ldr_scratch rd
-#ifndef __PIC__
- movw \rd, #:lower16:scratch
- movt \rd, #:upper16:scratch
-#else
- ldr \rd, =scratch
-#endif
-.endm
-
@ XXX: gteMAC calc shouldn't be saturating, but it is here
@ approximate gteMAC|123 flags
@@ -150,7 +133,7 @@ FUNCTION(gteRTPS_neon): @ r0=CP2 (d,c),
push {r4-r6,lr}
@ fmrx r4, fpscr @ vmrs? at least 40 cycle hit
- ldr_scratch r1
+ ldr r1, [r0, #LO_cop2_to_scratch_buf]
mov r12, #0
vldmia r0, {d8} @ VXYZ(0)
@@ -302,7 +285,7 @@ FUNCTION(gteRTPS_neon): @ r0=CP2 (d,c),
FUNCTION(gteRTPT_neon): @ r0=CP2 (d,c),
push {r4-r11,lr}
- ldr_scratch r1
+ ldr r1, [r0, #LO_cop2_to_scratch_buf]
mov r12, #0
rtpx_preload