aboutsummaryrefslogtreecommitdiff
path: root/libpcsxcore/new_dynarec/linkage_arm.s
diff options
context:
space:
mode:
authornotaz2010-12-05 17:00:51 +0200
committernotaz2010-12-05 17:00:51 +0200
commit67ba0fb4fa3f120c4156ca7d6155c51b7623e84f (patch)
tree3ccfcd83b6c04f61cac173a3cfc0057c5e5c33ff /libpcsxcore/new_dynarec/linkage_arm.s
parentb9b61529b6c9bf30a3146178e2dda31b15ff3614 (diff)
downloadpcsx_rearmed-67ba0fb4fa3f120c4156ca7d6155c51b7623e84f.tar.gz
pcsx_rearmed-67ba0fb4fa3f120c4156ca7d6155c51b7623e84f.tar.bz2
pcsx_rearmed-67ba0fb4fa3f120c4156ca7d6155c51b7623e84f.zip
drc: use direct hle calls
Diffstat (limited to 'libpcsxcore/new_dynarec/linkage_arm.s')
-rw-r--r--libpcsxcore/new_dynarec/linkage_arm.s14
1 files changed, 4 insertions, 10 deletions
diff --git a/libpcsxcore/new_dynarec/linkage_arm.s b/libpcsxcore/new_dynarec/linkage_arm.s
index aeb8baa..5451110 100644
--- a/libpcsxcore/new_dynarec/linkage_arm.s
+++ b/libpcsxcore/new_dynarec/linkage_arm.s
@@ -60,7 +60,6 @@ rdram = 0x80000000
.global memory_map
/* psx */
.global psxRegs
- .global psxHLEt_addr
.bss
.align 4
@@ -151,13 +150,10 @@ intCycle = interrupt + 4
.size intCycle, 128
psxRegs_end = intCycle + 128
-psxHLEt_addr = psxRegs_end
- .type psxHLEt_addr, %object
- .size psxHLEt_addr, 4
-align0 = psxHLEt_addr + 4 /* just for alignment */
+align0 = psxRegs_end /* just for alignment */
.type align0, %object
- .size align0, 4
-branch_target = align0 + 4
+ .size align0, 8
+branch_target = align0 + 8
.type branch_target, %object
.size branch_target, 4
mini_ht = branch_target + 4
@@ -676,12 +672,10 @@ pcsx_return:
jump_hlecall:
ldr r2, [fp, #last_count-dynarec_local]
str r0, [fp, #pcaddr-dynarec_local]
- and r1, r1, #7
add r2, r2, r10
- ldr r3, [fp, #psxHLEt_addr-dynarec_local] /* psxHLEt */
str r2, [fp, #cycle-dynarec_local] /* PCSX cycle counter */
adr lr, pcsx_return
- ldr pc, [r3, r1, lsl #2] @ FIXME
+ bx r1
.size jump_hlecall, .-jump_hlecall
new_dyna_leave: