From f3a7c72ddb09d10b1c97a506c6341a1146fd478a Mon Sep 17 00:00:00 2001 From: ceriel Date: Wed, 4 Oct 1989 14:35:50 +0000 Subject: [PATCH] Added some XOR patterns --- util/opt/patterns | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/util/opt/patterns b/util/opt/patterns index d2fb51bb9..720781dda 100644 --- a/util/opt/patterns +++ b/util/opt/patterns @@ -534,11 +534,11 @@ loc loc bgt $1>$2 : bra $3 loc loc bgt : loc loc blt $1<$2 : bra $3 loc loc blt : -lae loi lal sti $2==$4 && $2>4*w : lae $1 lal $3 blm $2 -lal loi lae sti $2==$4 && $2>4*w : lal $1 lae $3 blm $2 -lal loi lal sti $2==$4 && $2>4*w && ( $3<=$1-$2 || $3>=$1+$2 ) : +lae loi lal sti $2==$4 && $2>8 : lae $1 lal $3 blm $2 +lal loi lae sti $2==$4 && $2>8 : lal $1 lae $3 blm $2 +lal loi lal sti $2==$4 && $2>8 && ( $3<=$1-$2 || $3>=$1+$2 ) : lal $1 lal $3 blm $2 -lae loi lae sti $2==$4 && $2>4*w && ( !defined($1==$3) || $3<=$1-$2 || $3>=$1+$2 ) : +lae loi lae sti $2==$4 && $2>8 && ( !defined($1==$3) || $3<=$1-$2 || $3>=$1+$2 ) : lae $1 lae $3 blm $2 loc loc loc cif $1==0 && $2==w : zrf $3 loc loc loc ciu $1>=0 && $2==w && $3==2*w : ldc $1 @@ -620,6 +620,12 @@ lol lol and stl $3==w && $1==$4 && $1!=$2 : lol $2 lol $1 and w stl $4 loe loc and ste $3==w && $1==$4 : loc $2 loe $1 and w ste $4 loe loe and ste $3==w && $1==$4 && $1!=$2 : loe $2 loe $1 and w ste $4 loe lol and ste $3==w && $1==$4 : lol $2 loe $1 and w ste $4 +lol loc xor stl $3==w && $1==$4 : loc $2 lol $1 xor w stl $4 +lol loe xor stl $3==w && $1==$4 : loe $2 lol $1 xor w stl $4 +lol lol xor stl $3==w && $1==$4 && $1!=$2 : lol $2 lol $1 xor w stl $4 +loe loc xor ste $3==w && $1==$4 : loc $2 loe $1 xor w ste $4 +loe loe xor ste $3==w && $1==$4 && $1!=$2 : loe $2 loe $1 xor w ste $4 +loe lol xor ste $3==w && $1==$4 : lol $2 loe $1 xor w ste $4 loi asp $1==$2 : asp p lal loi loc loc loc loc ior $2==4*w && $7==4*w && ($3==0)+($4==0)+($5==0)+($6==0)>2 : lol $1+3*w loc $3 ior w lol $1+2*w loc $4 ior w lol $1+w loc $5 ior w lol $1 loc $6 ior w -- 2.34.1