Inspired by Richard Henderson comment:
http://lists.nongnu.org/archive/html/qemu-devel/2017-05/msg02277.html
Patch applied mechanically with this coccinelle semantic patch:
@@
expression lo, hi,arg;
@@
-tcg_gen_extrl_i64_i32(lo, arg);
-tcg_gen_extrh_i64_i32(hi, arg);
+tcg_gen_extr_i64_i32(lo, hi, arg);
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
tcg/tcg-op.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/tcg/tcg-op.c b/tcg/tcg-op.c
index 6b1f41500c..f3d556c21a 100644
--- a/tcg/tcg-op.c
+++ b/tcg/tcg-op.c
@@ -2562,8 +2562,7 @@ void tcg_gen_extr_i64_i32(TCGv_i32 lo, TCGv_i32 hi, TCGv_i64 arg)
tcg_gen_mov_i32(lo, TCGV_LOW(arg));
tcg_gen_mov_i32(hi, TCGV_HIGH(arg));
} else {
- tcg_gen_extrl_i64_i32(lo, arg);
- tcg_gen_extrh_i64_i32(hi, arg);
+ tcg_gen_extr_i64_i32(lo, hi, arg);
}
}
--
2.11.0
On 05/12/2017 05:29 PM, Philippe Mathieu-Daudé wrote: > Inspired by Richard Henderson comment: > > http://lists.nongnu.org/archive/html/qemu-devel/2017-05/msg02277.html > > Patch applied mechanically with this coccinelle semantic patch: > > @@ > expression lo, hi,arg; > @@ > -tcg_gen_extrl_i64_i32(lo, arg); > -tcg_gen_extrh_i64_i32(hi, arg); > +tcg_gen_extr_i64_i32(lo, hi, arg); > > Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> > --- > tcg/tcg-op.c | 3 +-- > 1 file changed, 1 insertion(+), 2 deletions(-) > > diff --git a/tcg/tcg-op.c b/tcg/tcg-op.c > index 6b1f41500c..f3d556c21a 100644 > --- a/tcg/tcg-op.c > +++ b/tcg/tcg-op.c > @@ -2562,8 +2562,7 @@ void tcg_gen_extr_i64_i32(TCGv_i32 lo, TCGv_i32 hi, TCGv_i64 arg) > tcg_gen_mov_i32(lo, TCGV_LOW(arg)); > tcg_gen_mov_i32(hi, TCGV_HIGH(arg)); > } else { > - tcg_gen_extrl_i64_i32(lo, arg); > - tcg_gen_extrh_i64_i32(hi, arg); > + tcg_gen_extr_i64_i32(lo, hi, arg); You've just created an instance of infinite self-recursion. r~
On 05/12/2017 11:13 PM, Richard Henderson wrote: > On 05/12/2017 05:29 PM, Philippe Mathieu-Daudé wrote: >> Inspired by Richard Henderson comment: >> >> >> http://lists.nongnu.org/archive/html/qemu-devel/2017-05/msg02277.html >> >> Patch applied mechanically with this coccinelle semantic patch: >> >> @@ >> expression lo, hi,arg; >> @@ >> -tcg_gen_extrl_i64_i32(lo, arg); >> -tcg_gen_extrh_i64_i32(hi, arg); >> +tcg_gen_extr_i64_i32(lo, hi, arg); >> >> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> >> --- >> tcg/tcg-op.c | 3 +-- >> 1 file changed, 1 insertion(+), 2 deletions(-) >> >> diff --git a/tcg/tcg-op.c b/tcg/tcg-op.c >> index 6b1f41500c..f3d556c21a 100644 >> --- a/tcg/tcg-op.c >> +++ b/tcg/tcg-op.c >> @@ -2562,8 +2562,7 @@ void tcg_gen_extr_i64_i32(TCGv_i32 lo, TCGv_i32 >> hi, TCGv_i64 arg) >> tcg_gen_mov_i32(lo, TCGV_LOW(arg)); >> tcg_gen_mov_i32(hi, TCGV_HIGH(arg)); >> } else { >> - tcg_gen_extrl_i64_i32(lo, arg); >> - tcg_gen_extrh_i64_i32(hi, arg); >> + tcg_gen_extr_i64_i32(lo, hi, arg); > > You've just created an instance of infinite self-recursion. Now I understand why Eric writes "applied mechanically" then "verified manually" in his commits, it avoid to ask for non-sens review...
© 2016 - 2024 Red Hat, Inc.