diff mbox

[4/4] target-lm32: rewrite gen_compare()

Message ID 1476311708-14792-4-git-send-email-michael@walle.cc
State New
Headers show

Commit Message

Michael Walle Oct. 12, 2016, 10:35 p.m. UTC
Drop the rX, rY and rZ stuff and use dc->r{0,1,2} directly. This should
also fix the false positive in coverity CID 1005720.

Signed-off-by: Michael Walle <michael@walle.cc>
---
 target-lm32/translate.c | 7 ++-----
 1 file changed, 2 insertions(+), 5 deletions(-)

Comments

Peter Maydell Oct. 13, 2016, 10:37 a.m. UTC | #1
On 12 October 2016 at 23:35, Michael Walle <michael@walle.cc> wrote:
> Drop the rX, rY and rZ stuff and use dc->r{0,1,2} directly. This should
> also fix the false positive in coverity CID 1005720.
>
> Signed-off-by: Michael Walle <michael@walle.cc>
> ---
>  target-lm32/translate.c | 7 ++-----
>  1 file changed, 2 insertions(+), 5 deletions(-)
>
> diff --git a/target-lm32/translate.c b/target-lm32/translate.c
> index 792637f..842af63 100644
> --- a/target-lm32/translate.c
> +++ b/target-lm32/translate.c
> @@ -344,9 +344,6 @@ static void dec_calli(DisasContext *dc)
>
>  static inline void gen_compare(DisasContext *dc, int cond)
>  {
> -    int rX = (dc->format == OP_FMT_RR) ? dc->r2 : dc->r1;
> -    int rY = dc->r0;
> -    int rZ = (dc->format == OP_FMT_RR) ? dc->r1 : -1;
>      int i;
>
>      if (dc->format == OP_FMT_RI) {
> @@ -360,9 +357,9 @@ static inline void gen_compare(DisasContext *dc, int cond)
>              break;
>          }
>
> -        tcg_gen_setcondi_tl(cond, cpu_R[rX], cpu_R[rY], i);
> +        tcg_gen_setcondi_tl(cond, cpu_R[dc->r1], cpu_R[dc->r0], i);
>      } else {
> -        tcg_gen_setcond_tl(cond, cpu_R[rX], cpu_R[rY], cpu_R[rZ]);
> +        tcg_gen_setcond_tl(cond, cpu_R[dc->r2], cpu_R[dc->r0], cpu_R[dc->r1]);
>      }
>  }
>

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>

thanks
-- PMM
diff mbox

Patch

diff --git a/target-lm32/translate.c b/target-lm32/translate.c
index 792637f..842af63 100644
--- a/target-lm32/translate.c
+++ b/target-lm32/translate.c
@@ -344,9 +344,6 @@  static void dec_calli(DisasContext *dc)
 
 static inline void gen_compare(DisasContext *dc, int cond)
 {
-    int rX = (dc->format == OP_FMT_RR) ? dc->r2 : dc->r1;
-    int rY = dc->r0;
-    int rZ = (dc->format == OP_FMT_RR) ? dc->r1 : -1;
     int i;
 
     if (dc->format == OP_FMT_RI) {
@@ -360,9 +357,9 @@  static inline void gen_compare(DisasContext *dc, int cond)
             break;
         }
 
-        tcg_gen_setcondi_tl(cond, cpu_R[rX], cpu_R[rY], i);
+        tcg_gen_setcondi_tl(cond, cpu_R[dc->r1], cpu_R[dc->r0], i);
     } else {
-        tcg_gen_setcond_tl(cond, cpu_R[rX], cpu_R[rY], cpu_R[rZ]);
+        tcg_gen_setcond_tl(cond, cpu_R[dc->r2], cpu_R[dc->r0], cpu_R[dc->r1]);
     }
 }