summary refs log tree commit diff stats
path: root/tcg/optimize.c
diff options
context:
space:
mode:
authorRichard Henderson <richard.henderson@linaro.org>2025-01-08 16:12:46 -0800
committerRichard Henderson <richard.henderson@linaro.org>2025-04-28 13:40:16 -0700
commit5a5bb0a5a0b879c8f110c6a9bde9146181ef840c (patch)
treec834b06b5ceb0d73f7128febcc717f6b4420259c /tcg/optimize.c
parent8b915879b0fdd05afab41f0ca156113811ebac38 (diff)
downloadfocaccia-qemu-5a5bb0a5a0b879c8f110c6a9bde9146181ef840c.tar.gz
focaccia-qemu-5a5bb0a5a0b879c8f110c6a9bde9146181ef840c.zip
tcg: Merge INDEX_op_clz_{i32,i64}
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Diffstat (limited to 'tcg/optimize.c')
-rw-r--r--tcg/optimize.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/tcg/optimize.c b/tcg/optimize.c
index 97a566a617..d8d0e728aa 100644
--- a/tcg/optimize.c
+++ b/tcg/optimize.c
@@ -503,10 +503,10 @@ static uint64_t do_constant_folding_2(TCGOpcode op, TCGType type,
     case INDEX_op_nor_vec:
         return ~(x | y);
 
-    case INDEX_op_clz_i32:
-        return (uint32_t)x ? clz32(x) : y;
-
-    case INDEX_op_clz_i64:
+    case INDEX_op_clz:
+        if (type == TCG_TYPE_I32) {
+            return (uint32_t)x ? clz32(x) : y;
+        }
         return x ? clz64(x) : y;
 
     case INDEX_op_ctz_i32:
@@ -2898,7 +2898,7 @@ void tcg_optimize(TCGContext *s)
         case INDEX_op_bswap64_i64:
             done = fold_bswap(&ctx, op);
             break;
-        CASE_OP_32_64(clz):
+        case INDEX_op_clz:
         CASE_OP_32_64(ctz):
             done = fold_count_zeros(&ctx, op);
             break;