notaz.gp2x.de
/
gpsp.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
mask off arguments for write hadlers
[gpsp.git]
/
arm
/
arm_stub.S
diff --git
a/arm/arm_stub.S
b/arm/arm_stub.S
index
cc38dd2
..
6a9fb6d
100644
(file)
--- a/
arm/arm_stub.S
+++ b/
arm/arm_stub.S
@@
-104,6
+104,15
@@
#define MODE_SUPERVISOR 3
#define MODE_SUPERVISOR 3
+#ifdef __ARM_ARCH_7A__
+ #define extract_u16(rd, rs) \
+ uxth rd, rs
+#else
+ #define extract_u16(rd, rs) \
+ bic rd, rs, #0xff000000 ;\
+ bic rd, rd, #0x00ff0000
+#endif
+
@ Will load the register set from memory into the appropriate cached registers.
@ See arm_emit.h for listing explanation.
@ Will load the register set from memory into the appropriate cached registers.
@ See arm_emit.h for listing explanation.
@@
-535,9
+544,11
@@
execute_arm_translate:
#define store_align_8() ;\
#define store_align_8() ;\
+ and r1, r1, #0xff ;\
#define store_align_16() ;\
bic r0, r0, #0x01 ;\
#define store_align_16() ;\
bic r0, r0, #0x01 ;\
+ extract_u16(r1, r1) ;\
#define store_align_32() ;\
bic r0, r0, #0x03 ;\
#define store_align_32() ;\
bic r0, r0, #0x03 ;\