Added some patterns

This commit is contained in:
ceriel 1989-03-03 11:10:13 +00:00
parent 26e5032b9c
commit 0e3f85e837

View file

@ -39,6 +39,7 @@ add.l #4,sp : tst.l D {no_part("sp",D)} -> move.l D,(sp)+ ;
add.l #2,sp : move.w X,-(sp) -> move.w X,(sp) ;
add.l #4,sp : move.l X,-(sp) -> move.l X,(sp) ;
add.l #4,sp : pea (NUM) -> move.l #NUM,(sp) ;
add.l #4,sp : pea (AREG) -> move.l AREG,(sp) ;
add.l #NUM,sp : unlk AREG -> unlk AREG ;
add.l #NUM,sp : movem.l X,Y : unlk AREG
{no_part("sp",X) && no_part("sp",Y)} -> movem.l X,Y : unlk AREG ;
@ -69,6 +70,11 @@ move.l DREG,A : ANY A,X
{reg_subs_allowed(ANY) &&
!is_dreg(A) } -> move.l DREG,A : ANY DREG,X ;
move.w DREG,DREG2 : ANY A,DREG2 : move.w DREG2,DREG
{no_part(DREG2,A)} -> ANY A,DREG : move.w DREG,DREG2 ;
move.l DREG,DREG2 : ANY A,DREG2 : move.l DREG2,DREG
{no_part(DREG2,A)} -> ANY A,DREG : move.l DREG,DREG2 ;
/* change some compares to tests */
cmp.w #0,D : beq LAB -> tst.w D : beq LAB ;
cmp.w #0,D : bne LAB -> tst.w D : bne LAB ;