From c916c7c85670f73ac68bb1d75e359d3c17862cee Mon Sep 17 00:00:00 2001 From: Joe Groff Date: Wed, 25 Nov 2009 20:06:11 -0800 Subject: [PATCH] don't try to rewrite redundant test-vector-exprs --- .../cfg/value-numbering/rewrite/rewrite.factor | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/basis/compiler/cfg/value-numbering/rewrite/rewrite.factor b/basis/compiler/cfg/value-numbering/rewrite/rewrite.factor index 746fe0e5ea..0fa0314c3e 100755 --- a/basis/compiler/cfg/value-numbering/rewrite/rewrite.factor +++ b/basis/compiler/cfg/value-numbering/rewrite/rewrite.factor @@ -42,6 +42,14 @@ M: insn rewrite drop f ; ] [ drop f ] if ; inline : general-compare-expr? ( insn -- ? ) + { + [ compare-expr? ] + [ compare-imm-expr? ] + [ compare-float-unordered-expr? ] + [ compare-float-ordered-expr? ] + } 1|| ; + +: general-or-vector-compare-expr? ( insn -- ? ) { [ compare-expr? ] [ compare-imm-expr? ] @@ -52,7 +60,7 @@ M: insn rewrite drop f ; : rewrite-boolean-comparison? ( insn -- ? ) dup ##branch-t? [ - src1>> vreg>expr general-compare-expr? + src1>> vreg>expr general-or-vector-compare-expr? ] [ drop f ] if ; inline : >compare-expr< ( expr -- in1 in2 cc )