* unsigned byte ldr/str allow also an offset of max. +/-4095

git-svn-id: trunk@22220 -
This commit is contained in:
florian 2012-08-23 21:03:52 +00:00
parent 9d20a73986
commit 73d540e7b5

View File

@ -987,13 +987,13 @@ Implementation
{ new offset must be valid: either in the range of 8 or 12 bit, depend on the
ldr postfix }
(((taicpu(p).opcode=A_ADD) and
(((taicpu(hp1).oppostfix=PF_None) and
(((taicpu(hp1).oppostfix in [PF_None,PF_B]) and
(abs(taicpu(hp1).oper[1]^.ref^.offset+taicpu(p).oper[2]^.val)<4096)) or
(abs(taicpu(hp1).oper[1]^.ref^.offset+taicpu(p).oper[2]^.val)<256)
)
) or
((taicpu(p).opcode=A_SUB) and
(((taicpu(hp1).oppostfix=PF_None) and
(((taicpu(hp1).oppostfix in [PF_None,PF_B]) and
(abs(taicpu(hp1).oper[1]^.ref^.offset-taicpu(p).oper[2]^.val)<4096)) or
(abs(taicpu(hp1).oper[1]^.ref^.offset-taicpu(p).oper[2]^.val)<256)
)