Message ID | 20230227054233.390271-18-richard.henderson@linaro.org |
---|---|
State | Superseded |
Headers | show |
Series | tcg: Remove tcg_const_* | expand |
> -----Original Message----- > From: Richard Henderson <richard.henderson@linaro.org> > Sent: Sunday, February 26, 2023 10:42 PM > To: qemu-devel@nongnu.org > Cc: qemu-arm@nongnu.org; qemu-ppc@nongnu.org; qemu- > riscv@nongnu.org; qemu-s390x@nongnu.org; jcmvbkbc@gmail.com; > kbastian@mail.uni-paderborn.de; ysato@users.sourceforge.jp; > gaosong@loongson.cn; jiaxun.yang@flygoat.com; Taylor Simpson > <tsimpson@quicinc.com>; ale@rev.ng; mrolnik@gmail.com; > edgar.iglesias@gmail.com > Subject: [PATCH 17/70] target/hexagon/idef-parser: Use gen_tmp for > gen_pred_assign > > The allocation is immediately followed by tcg_gen_mov_i32, so the initial > assignment of zero is discarded. > > Signed-off-by: Richard Henderson <richard.henderson@linaro.org> > --- > target/hexagon/idef-parser/parser-helpers.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/target/hexagon/idef-parser/parser-helpers.c > b/target/hexagon/idef-parser/parser-helpers.c > index be979dac86..760e499149 100644 > --- a/target/hexagon/idef-parser/parser-helpers.c > +++ b/target/hexagon/idef-parser/parser-helpers.c > @@ -1743,7 +1743,7 @@ void gen_pred_assign(Context *c, YYLTYPE *locp, > HexValue *left_pred, > "Predicate assign not allowed in ternary!"); > /* Extract predicate TCGv */ > if (is_direct) { > - *left_pred = gen_tmp_value(c, locp, "0", 32, UNSIGNED); > + *left_pred = gen_tmp(c, locp, 32, UNSIGNED); > } > /* Extract first 8 bits, and store new predicate value */ > OUT(c, locp, "tcg_gen_mov_i32(", left_pred, ", ", &r, ");\n"); Let's combine this OUT statement with the next one - OUT(c, locp, "tcg_gen_mov_i32(", left_pred, ", ", &r, ");\n"); - OUT(c, locp, "tcg_gen_andi_i32(", left_pred, ", ", left_pred, + OUT(c, locp, "tcg_gen_andi_i32(", left_pred, ", ", &r, ", 0xff);\n"); Otherwise, Reviewed-by: Taylor Simpson <tsimpson@quicinc.com>
diff --git a/target/hexagon/idef-parser/parser-helpers.c b/target/hexagon/idef-parser/parser-helpers.c index be979dac86..760e499149 100644 --- a/target/hexagon/idef-parser/parser-helpers.c +++ b/target/hexagon/idef-parser/parser-helpers.c @@ -1743,7 +1743,7 @@ void gen_pred_assign(Context *c, YYLTYPE *locp, HexValue *left_pred, "Predicate assign not allowed in ternary!"); /* Extract predicate TCGv */ if (is_direct) { - *left_pred = gen_tmp_value(c, locp, "0", 32, UNSIGNED); + *left_pred = gen_tmp(c, locp, 32, UNSIGNED); } /* Extract first 8 bits, and store new predicate value */ OUT(c, locp, "tcg_gen_mov_i32(", left_pred, ", ", &r, ");\n");
The allocation is immediately followed by tcg_gen_mov_i32, so the initial assignment of zero is discarded. Signed-off-by: Richard Henderson <richard.henderson@linaro.org> --- target/hexagon/idef-parser/parser-helpers.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)