Message ID | 20170510200535.13268-6-f4bug@amsat.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Le 10/05/2017 à 22:05, Philippe Mathieu-Daudé a écrit : > Applied using Coccinelle script. > > Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> > --- > target/m68k/translate.c | 3 +-- > 1 file changed, 1 insertion(+), 2 deletions(-) > > diff --git a/target/m68k/translate.c b/target/m68k/translate.c > index 9f60fbc0db..babb9e2c5b 100644 > --- a/target/m68k/translate.c > +++ b/target/m68k/translate.c > @@ -1463,8 +1463,7 @@ static void bcd_flags(TCGv val) > tcg_gen_andi_i32(QREG_CC_C, val, 0x0ff); > tcg_gen_or_i32(QREG_CC_Z, QREG_CC_Z, QREG_CC_C); > > - tcg_gen_shri_i32(QREG_CC_C, val, 8); > - tcg_gen_andi_i32(QREG_CC_C, QREG_CC_C, 1); > + tcg_gen_extract_i32(QREG_CC_C, val, 8, 1); > > tcg_gen_mov_i32(QREG_CC_X, QREG_CC_C); > } > Acked-by: Laurent Vivier <laurent@vivier.eu>
This patch is correct: $ docker run -it -v `pwd`:`pwd` -w `pwd` petersenna/coccinelle --sp-file scripts/coccinelle/tcg_gen_extract.cocci --macro-file scripts/cocci-macro-file.h --dir target/m68k init_defs_builtins: /usr/lib64/coccinelle/standard.h init_defs: scripts/cocci-macro-file.h HANDLING: target/m68k/helper.c HANDLING: target/m68k/gdbstub.c HANDLING: target/m68k/translate.c candidate at target/m68k/translate.c:1466 op_size: i32/i32 (same) low_bits: 1 (value: 0x1) len: 0x1 len_bits == low_bits candidate IS optimizable On 05/11/2017 05:41 AM, Laurent Vivier wrote: > Le 10/05/2017 à 22:05, Philippe Mathieu-Daudé a écrit : >> Applied using Coccinelle script. >> >> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> >> --- >> target/m68k/translate.c | 3 +-- >> 1 file changed, 1 insertion(+), 2 deletions(-) >> >> diff --git a/target/m68k/translate.c b/target/m68k/translate.c >> index 9f60fbc0db..babb9e2c5b 100644 >> --- a/target/m68k/translate.c >> +++ b/target/m68k/translate.c >> @@ -1463,8 +1463,7 @@ static void bcd_flags(TCGv val) >> tcg_gen_andi_i32(QREG_CC_C, val, 0x0ff); >> tcg_gen_or_i32(QREG_CC_Z, QREG_CC_Z, QREG_CC_C); >> >> - tcg_gen_shri_i32(QREG_CC_C, val, 8); >> - tcg_gen_andi_i32(QREG_CC_C, QREG_CC_C, 1); >> + tcg_gen_extract_i32(QREG_CC_C, val, 8, 1); >> >> tcg_gen_mov_i32(QREG_CC_X, QREG_CC_C); >> } >> > > Acked-by: Laurent Vivier <laurent@vivier.eu> Thanks!
diff --git a/target/m68k/translate.c b/target/m68k/translate.c index 9f60fbc0db..babb9e2c5b 100644 --- a/target/m68k/translate.c +++ b/target/m68k/translate.c @@ -1463,8 +1463,7 @@ static void bcd_flags(TCGv val) tcg_gen_andi_i32(QREG_CC_C, val, 0x0ff); tcg_gen_or_i32(QREG_CC_Z, QREG_CC_Z, QREG_CC_C); - tcg_gen_shri_i32(QREG_CC_C, val, 8); - tcg_gen_andi_i32(QREG_CC_C, QREG_CC_C, 1); + tcg_gen_extract_i32(QREG_CC_C, val, 8, 1); tcg_gen_mov_i32(QREG_CC_X, QREG_CC_C); }
Applied using Coccinelle script. Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> --- target/m68k/translate.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-)