From: eck Date: Thu, 19 Jul 1990 17:22:56 +0000 (+0000) Subject: added patterns for stackheight mechanism X-Git-Tag: release-5-5~1640 X-Git-Url: https://git.ndcode.org/public/gitweb.cgi?a=commitdiff_plain;h=b23125354b13b1c106a7c6cd996095676e1b3187;p=ack.git added patterns for stackheight mechanism --- diff --git a/mach/i86/ncg/table b/mach/i86/ncg/table index 4cc0d99ca..2b8df3339 100644 --- a/mach/i86/ncg/table +++ b/mach/i86/ncg/table @@ -2719,7 +2719,24 @@ pat loc cmu zne $1<256 && $1>=0 && $2==2 call loccmuzxx("jne") * Group 13 : Branch Instructions * *******************************************************************/ -pat bra +pat lab stackheight($1)==2 && !fallthrough($1) + with STACK + gen labeldef $1 yields ax + +pat lab stackheight($1)==2 && fallthrough($1) + with ACC STACK + gen labeldef $1 yields ax + +pat lab stackheight($1)!=2 + with STACK + kills ALL + gen labeldef $1 + +pat bra stackheight($1)==2 + with ACC STACK + gen jmp {label,$1} + +pat bra stackheight($1)!=2 with STACK gen jmp {label,$1}