From: ceriel Date: Wed, 17 Feb 1988 15:41:27 +0000 (+0000) Subject: a minor improvement X-Git-Tag: release-5-5~3610 X-Git-Url: https://git.ndcode.org/public/gitweb.cgi?a=commitdiff_plain;h=83d7633503572e1830e8549c9124a95440f72d4e;p=ack.git a minor improvement --- diff --git a/mach/m68020/ncg/table b/mach/m68020/ncg/table index 344eb00bd..76bda869f 100644 --- a/mach/m68020/ncg/table +++ b/mach/m68020/ncg/table @@ -737,6 +737,14 @@ pat lil inreg($1)==reg_any yields {indirect4, %a} pat stl inreg($1)==reg_any +with exact memory1-const + kills regvar($1, reg_any), use_index %xreg==regvar($1, reg_any) + gen clr_l {LOCAL, $1} + move_b %1, {dreg1, regvar($1,reg_any)} +with exact memory2-const + kills regvar($1, reg_any), use_index %xreg==regvar($1, reg_any) + gen clr_l {LOCAL, $1} + move_w %1, {dreg2, regvar($1,reg_any)} with any4 kills regvar($1, reg_any), use_index %xreg==regvar($1, reg_any) gen move %1, {LOCAL, $1} diff --git a/mach/m68k2/ncg/table b/mach/m68k2/ncg/table index 344eb00bd..76bda869f 100644 --- a/mach/m68k2/ncg/table +++ b/mach/m68k2/ncg/table @@ -737,6 +737,14 @@ pat lil inreg($1)==reg_any yields {indirect4, %a} pat stl inreg($1)==reg_any +with exact memory1-const + kills regvar($1, reg_any), use_index %xreg==regvar($1, reg_any) + gen clr_l {LOCAL, $1} + move_b %1, {dreg1, regvar($1,reg_any)} +with exact memory2-const + kills regvar($1, reg_any), use_index %xreg==regvar($1, reg_any) + gen clr_l {LOCAL, $1} + move_w %1, {dreg2, regvar($1,reg_any)} with any4 kills regvar($1, reg_any), use_index %xreg==regvar($1, reg_any) gen move %1, {LOCAL, $1} diff --git a/mach/m68k4/ncg/table b/mach/m68k4/ncg/table index 344eb00bd..76bda869f 100644 --- a/mach/m68k4/ncg/table +++ b/mach/m68k4/ncg/table @@ -737,6 +737,14 @@ pat lil inreg($1)==reg_any yields {indirect4, %a} pat stl inreg($1)==reg_any +with exact memory1-const + kills regvar($1, reg_any), use_index %xreg==regvar($1, reg_any) + gen clr_l {LOCAL, $1} + move_b %1, {dreg1, regvar($1,reg_any)} +with exact memory2-const + kills regvar($1, reg_any), use_index %xreg==regvar($1, reg_any) + gen clr_l {LOCAL, $1} + move_w %1, {dreg2, regvar($1,reg_any)} with any4 kills regvar($1, reg_any), use_index %xreg==regvar($1, reg_any) gen move %1, {LOCAL, $1} diff --git a/mach/moon3/ncg/table b/mach/moon3/ncg/table index 344eb00bd..76bda869f 100644 --- a/mach/moon3/ncg/table +++ b/mach/moon3/ncg/table @@ -737,6 +737,14 @@ pat lil inreg($1)==reg_any yields {indirect4, %a} pat stl inreg($1)==reg_any +with exact memory1-const + kills regvar($1, reg_any), use_index %xreg==regvar($1, reg_any) + gen clr_l {LOCAL, $1} + move_b %1, {dreg1, regvar($1,reg_any)} +with exact memory2-const + kills regvar($1, reg_any), use_index %xreg==regvar($1, reg_any) + gen clr_l {LOCAL, $1} + move_w %1, {dreg2, regvar($1,reg_any)} with any4 kills regvar($1, reg_any), use_index %xreg==regvar($1, reg_any) gen move %1, {LOCAL, $1}