fixed some patterns: operand could have side effects
This commit is contained in:
parent
a1e2a583b5
commit
b04388a326
1 changed files with 32 additions and 32 deletions
|
@ -38,46 +38,46 @@ cvtwl ZERO,X -> clrl X;
|
||||||
|
|
||||||
/* change 3-operand instructions to 2-operand instructions */
|
/* change 3-operand instructions to 2-operand instructions */
|
||||||
|
|
||||||
addw3 X,Y,Y -> addw2 X,Y;
|
addw3 X,A,A -> addw2 X,A;
|
||||||
addl3 X,Y,Y -> addl2 X,Y;
|
addl3 X,A,A -> addl2 X,A;
|
||||||
addf3 X,Y,Y -> addf2 X,Y;
|
addf3 X,A,A -> addf2 X,A;
|
||||||
addd3 X,Y,Y -> addd2 X,Y;
|
addd3 X,A,A -> addd2 X,A;
|
||||||
|
|
||||||
addw3 X,Y,X -> addw2 Y,X;
|
addw3 A,Y,A -> addw2 Y,A;
|
||||||
addl3 X,Y,X -> addl2 Y,X;
|
addl3 A,Y,A -> addl2 Y,A;
|
||||||
addf3 X,Y,X -> addf2 Y,X;
|
addf3 A,Y,A -> addf2 Y,A;
|
||||||
addd3 X,Y,X -> addd2 Y,X;
|
addd3 A,Y,A -> addd2 Y,A;
|
||||||
|
|
||||||
subw3 X,Y,Y -> subw2 X,Y;
|
subw3 X,A,A -> subw2 X,A;
|
||||||
subl3 X,Y,Y -> subl2 X,Y;
|
subl3 X,A,A -> subl2 X,A;
|
||||||
subf3 X,Y,Y -> subf2 X,Y;
|
subf3 X,A,A -> subf2 X,A;
|
||||||
subd3 X,Y,Y -> subd2 X,Y;
|
subd3 X,A,A -> subd2 X,A;
|
||||||
|
|
||||||
mulw3 X,Y,Y -> mulw2 X,Y;
|
mulw3 X,A,A -> mulw2 X,A;
|
||||||
mull3 X,Y,Y -> mull2 X,Y;
|
mull3 X,A,A -> mull2 X,A;
|
||||||
mulf3 X,Y,Y -> mulf2 X,Y;
|
mulf3 X,A,A -> mulf2 X,A;
|
||||||
muld3 X,Y,Y -> muld2 X,Y;
|
muld3 X,A,A -> muld2 X,A;
|
||||||
|
|
||||||
mulw3 X,Y,X -> mulw2 Y,X;
|
mulw3 A,Y,A -> mulw2 Y,A;
|
||||||
mull3 X,Y,X -> mull2 Y,X;
|
mull3 A,Y,A -> mull2 Y,A;
|
||||||
mulf3 X,Y,X -> mulf2 Y,X;
|
mulf3 A,Y,A -> mulf2 Y,A;
|
||||||
muld3 X,Y,X -> muld2 Y,X;
|
muld3 A,Y,A -> muld2 Y,A;
|
||||||
|
|
||||||
divw3 X,Y,Y -> divw2 X,Y;
|
divw3 X,A,A -> divw2 X,A;
|
||||||
divl3 X,Y,Y -> divl2 X,Y;
|
divl3 X,A,A -> divl2 X,A;
|
||||||
divf3 X,Y,Y -> divf2 X,Y;
|
divf3 X,A,A -> divf2 X,A;
|
||||||
divd3 X,Y,Y -> divd2 X,Y;
|
divd3 X,A,A -> divd2 X,A;
|
||||||
|
|
||||||
xorw3 X,Y,Y -> xorw2 X,Y;
|
xorw3 X,A,A -> xorw2 X,A;
|
||||||
xorl3 X,Y,Y -> xorl2 X,Y;
|
xorl3 X,A,A -> xorl2 X,A;
|
||||||
|
|
||||||
bisw3 X,Y,Y -> bisw2 X,Y;
|
bisw3 X,A,A -> bisw2 X,A;
|
||||||
bisl3 X,Y,Y -> bisl2 X,Y;
|
bisl3 X,A,A -> bisl2 X,A;
|
||||||
bisw3 X,Y,X -> bisw2 Y,X;
|
bisw3 A,Y,A -> bisw2 Y,A;
|
||||||
bisl3 X,Y,X -> bisl2 Y,X;
|
bisl3 A,Y,A -> bisl2 Y,A;
|
||||||
|
|
||||||
bicw3 X,Y,Y -> bicw2 X,Y;
|
bicw3 X,A,A -> bicw2 X,A;
|
||||||
bicl3 X,Y,Y -> bicl2 X,Y;
|
bicl3 X,A,A -> bicl2 X,A;
|
||||||
|
|
||||||
/* eliminate negative constants */
|
/* eliminate negative constants */
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue