diff options
| author | Richard Henderson <richard.henderson@linaro.org> | 2025-01-07 14:27:19 -0800 |
|---|---|---|
| committer | Richard Henderson <richard.henderson@linaro.org> | 2025-04-28 13:40:16 -0700 |
| commit | 961b80aecd1a503eedb885c309a1d5267d89c98c (patch) | |
| tree | bad561d90593b82fac833dd0db3a8d83e4e9afa5 /tcg/optimize.c | |
| parent | 6d1a2365eaee0603347fd2fabd89a8dc935c8ac7 (diff) | |
| download | focaccia-qemu-961b80aecd1a503eedb885c309a1d5267d89c98c.tar.gz focaccia-qemu-961b80aecd1a503eedb885c309a1d5267d89c98c.zip | |
tcg: Merge INDEX_op_divu_{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.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/tcg/optimize.c b/tcg/optimize.c index af9054be37..c11cce782a 100644 --- a/tcg/optimize.c +++ b/tcg/optimize.c @@ -563,9 +563,10 @@ static uint64_t do_constant_folding_2(TCGOpcode op, TCGType type, } return (int64_t)x / ((int64_t)y ? : 1); - case INDEX_op_divu_i32: - return (uint32_t)x / ((uint32_t)y ? : 1); - case INDEX_op_divu_i64: + case INDEX_op_divu: + if (type == TCG_TYPE_I32) { + return (uint32_t)x / ((uint32_t)y ? : 1); + } return (uint64_t)x / ((uint64_t)y ? : 1); case INDEX_op_rem_i32: @@ -2908,7 +2909,7 @@ void tcg_optimize(TCGContext *s) done = fold_deposit(&ctx, op); break; case INDEX_op_divs: - CASE_OP_32_64(divu): + case INDEX_op_divu: done = fold_divide(&ctx, op); break; case INDEX_op_dup_vec: |