ARM: Fix "bl" macro.

* lib/arm-mes/arm.M1: Fix "bl" macro.
This commit is contained in:
Danny Milosavljevic 2019-03-06 09:57:21 +01:00 committed by Jan Nieuwenhuizen
parent 89591a4c51
commit 7788b9f263
No known key found for this signature in database
GPG Key ID: F3C1A0D9C1D65273
1 changed files with 21 additions and 4 deletions

View File

@ -24,12 +24,29 @@
# reduced instruction set: r0, r1 (some r2 for shift, r3 for mul, div)
# FIXME: count instructions
DEFINE R0 0
DEFINE R1 1
DEFINE R2 2
DEFINE R3 3
DEFINE R7 7
DEFINE R14 E
DEFINE PC F
DEFINE IMMEDIATE32BOX 000000ea
# The E means "always".
#DEFINE add____$i32,(%r0) xx
#DEFINE add____$i32,(%r1) xx
#DEFINE add____$i32,0x32(%r0) xx
DEFINE add____$i8,%r0 0090e2 # adds r0, r0, #xx
DEFINE add____$i8,%r1 1091e2 # adds r1, r1, #xx
DEFINE add____$i8,%r13 d09de2 # adds r13, r13, #xx
# 020090e0 # adds r0, r0, r2; ADDS = '0' op3 op1 '09' op2 'e0'
# 030091e0 # adds r0, r1, r3
# 031091e0 # adds r1, r1, r3
# 030090e0 # adds r0, r0, r3
DEFINE add____$i8,%r0 0090e2 # adds r0, r0, #xx; ADDSI = immediate op1 '09' op2 'e2'
# 0091e2 # adds r0, r1, #xx; ADDSI = immediate op1 '09' op2 'e2'
# 1090e2 # adds r1, r0, #xx; ADDSI = immediate op1 '09' op2 'e2'
DEFINE add____$i8,%r1 1091e2 # adds r1, r1, #xx
DEFINE add____$i8,%r13 d09de2 # adds r13, r13, #xx
#DEFINE add____$i8,(%r0) xx
#DEFINE add____$i8,(%r1) xx
#DEFINE add____$i8,0x32 xx
@ -224,7 +241,7 @@ DEFINE ldr____%r0,(%sp,#$i8) 009de5 # ldr r0, [r13+xx]
DEFINE ldr____%r1,(%sp,#$i8) 109de5 # ldr r1, [r13+xx]
DEFINE add____%r2,%r0,%r1,lsl#4 012280e0
DEFINE add____%r2,$i8 2082e2
DEFINE bl ba
DEFINE bl eb
DEFINE b ea
DEFINE sxtb__%r0,%r0 7000afe6
DEFINE sxtb__%r1,%r1 7110afe6