CMI was translated wrongly; corrected
This commit is contained in:
@@ -1804,15 +1804,16 @@ lar !defined($1) | | remove(all)
|
||||
* group 12 : Compare instructions *
|
||||
****************************************/
|
||||
|
||||
cmi $1==2 | source2 SCR_REG |
|
||||
"sub %[1],%[2]"
|
||||
setcc(%[2])
|
||||
erase(%[2]) | %[2] | |
|
||||
... | SCR_REG source2 |
|
||||
"sub %[2],%[1]"
|
||||
"neg %[1]"
|
||||
setcc(%[1])
|
||||
erase(%[1]) | %[1] | |
|
||||
cmi $1==2 | source2 source2 |
|
||||
allocate(REG = {CONST2,0})
|
||||
"cmp %[1],%[2]"
|
||||
"beq 2f"
|
||||
"bgt 1f"
|
||||
"inc %[a]"
|
||||
"br 2f"
|
||||
"1:\tdec %[a]\n2:"
|
||||
setcc(%[a])
|
||||
erase(%[a]) | %[a] | |
|
||||
ldc cmi zlt highw(1)==0 && loww(1)==0 && $2==4 | source2 source2 |
|
||||
| %[1] | zlt $3 |
|
||||
ldc cmi zge highw(1)==0 && loww(1)==0 && $2==4 | source2 source2 |
|
||||
|
||||
@@ -1632,11 +1632,16 @@ gen jsr pc,{label, "ilar~"}
|
||||
****************************************/
|
||||
|
||||
pat cmi $1==2
|
||||
with src2 REG
|
||||
gen sub %1,%2 yields %2
|
||||
with REG src2
|
||||
gen sub %2,%1
|
||||
neg %1 yields %1
|
||||
with src2 src2
|
||||
uses REG = {const2,0}
|
||||
gen cmp %1,%2
|
||||
beq {label,2f}
|
||||
bgt {label,1f}
|
||||
inc %a
|
||||
br {label,2f}
|
||||
1:
|
||||
dec %a
|
||||
2: yields %a
|
||||
|
||||
pat cmi $1==4
|
||||
kills ALL
|
||||
|
||||
Reference in New Issue
Block a user