[PATCH] tcg/optimize: Add an extra cast to fold_extract2

Richard Henderson posted 1 patch 2 years, 6 months ago
Test checkpatch passed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20211110120156.188537-1-richard.henderson@linaro.org
Maintainers: Richard Henderson <richard.henderson@linaro.org>
tcg/optimize.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
[PATCH] tcg/optimize: Add an extra cast to fold_extract2
Posted by Richard Henderson 2 years, 6 months ago
There is no bug, but silence a warning about computation
in int32_t being assigned to a uint64_t.

Reported-by: Coverity CID 1465220
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
---
 tcg/optimize.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tcg/optimize.c b/tcg/optimize.c
index dbb2d46e88..2397f2cf93 100644
--- a/tcg/optimize.c
+++ b/tcg/optimize.c
@@ -1365,7 +1365,7 @@ static bool fold_extract2(OptContext *ctx, TCGOp *op)
             v2 <<= 64 - shr;
         } else {
             v1 = (uint32_t)v1 >> shr;
-            v2 = (int32_t)v2 << (32 - shr);
+            v2 = (uint64_t)((int32_t)v2 << (32 - shr));
         }
         return tcg_opt_gen_movi(ctx, op, op->args[0], v1 | v2);
     }
-- 
2.25.1


Re: [PATCH] tcg/optimize: Add an extra cast to fold_extract2
Posted by Philippe Mathieu-Daudé 2 years, 6 months ago
On 11/10/21 13:01, Richard Henderson wrote:
> There is no bug, but silence a warning about computation
> in int32_t being assigned to a uint64_t.
> 
> Reported-by: Coverity CID 1465220
> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
> ---
>  tcg/optimize.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)

Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>