added patterns to prevent stacking in *p++ cases
This commit is contained in:
parent
d1b3479a55
commit
ce098c78cb
1 changed files with 9 additions and 0 deletions
|
@ -1105,6 +1105,9 @@ lol adp stl $1==$3 && inreg($1)==2 | |
|
||||||
remove(regvar($1))
|
remove(regvar($1))
|
||||||
"add $$$2,%(regvar($1)%)"
|
"add $$$2,%(regvar($1)%)"
|
||||||
erase(regvar($1)) | | |
|
erase(regvar($1)) | | |
|
||||||
|
lil lil adp sil $2==$4 && inreg($1)==2 | |
|
||||||
|
allocate(REG={regdef2, regvar($1)})
|
||||||
|
| %[a] | lil $2 adp $3 sil $2 |
|
||||||
lil adp sil $1==$3 && $2==1 && inreg($1)==2 | |
|
lil adp sil $1==$3 && $2==1 && inreg($1)==2 | |
|
||||||
INDSTORE
|
INDSTORE
|
||||||
"inc *%(regvar($1)%)" | | |
|
"inc *%(regvar($1)%)" | | |
|
||||||
|
@ -1173,6 +1176,9 @@ lol adp stl $1==$3 | |
|
||||||
remove(locals, %[ind] <= $1 && %[ind]+%[size] > $1)
|
remove(locals, %[ind] <= $1 && %[ind]+%[size] > $1)
|
||||||
"add $$$2,$1(r5)"
|
"add $$$2,$1(r5)"
|
||||||
setcc({LOCAL2,$1,2}) | | |
|
setcc({LOCAL2,$1,2}) | | |
|
||||||
|
lil lil adp sil $2==$4 | |
|
||||||
|
allocate(REG={reginddef2, lb, tostring($1)})
|
||||||
|
| %[a] | lil $2 adp $3 sil $2 |
|
||||||
lil adp sil $1==$3 && $2==1 | |
|
lil adp sil $1==$3 && $2==1 | |
|
||||||
INDSTORE
|
INDSTORE
|
||||||
"inc *$1(r5)"
|
"inc *$1(r5)"
|
||||||
|
@ -1201,6 +1207,9 @@ loe adp ste $1==$3 | |
|
||||||
remove(posextern)
|
remove(posextern)
|
||||||
"add $$$2,$1"
|
"add $$$2,$1"
|
||||||
setcc({relative2,$1}) | | |
|
setcc({relative2,$1}) | | |
|
||||||
|
loe loi loe loi adp loe sti $3==$6 && $2==2 && $4==2 && $7==2 | |
|
||||||
|
allocate(REG={reldef2, $1})
|
||||||
|
| %[a] | loe $3 loi $4 adp $5 loe $6 sti $7 |
|
||||||
loe loi adp loe sti $1==$4 && $2==2 && $5==2 && $3==1 | |
|
loe loi adp loe sti $1==$4 && $2==2 && $5==2 && $3==1 | |
|
||||||
INDSTORE
|
INDSTORE
|
||||||
"inc *$1"
|
"inc *$1"
|
||||||
|
|
Loading…
Add table
Reference in a new issue