|
| From: | Richard Henderson |
| Subject: | Re: [PATCH 5/8] target/ppc: Move multiply fixed-point insns (64-bit operands) to decodetree. |
| Date: | Sat, 20 Apr 2024 08:51:00 -0700 |
| User-agent: | Mozilla Thunderbird |
On 4/19/24 02:25, Chinmay Rath wrote:
Hi Richard, On 4/17/24 00:06, Richard Henderson wrote:Looks like tcg_gen_add2_i64 internally modifies the passed arguments, hence constant is not expected.On 4/15/24 23:39, Chinmay Rath wrote:+static bool trans_MADDHDU(DisasContext *ctx, arg_MADDHDU *a)...+ tcg_gen_movi_i64(t1, 0);Drop the movi.+ tcg_gen_add2_i64(t1, cpu_gpr[a->vrt], lo, hi, cpu_gpr[a->rc], t1);Use tcg_constant_i64(0).However, I tried using tcg_constant_i64(0) as suggested but this leads to an assert failure :qemu-system-ppc64: ../tcg/tcg.c:5071: tcg_reg_alloc_op: Assertion `!temp_readonly(ts)' failed.
You misunderstood my suggestion. TCGv_i64 t1 = tcg_temp_new_i64(); tcg_gen_add2_i64(t1, cpu_gpr[vrt], lo, hi, cpu_gpr[a->rc], tcg_constantant_i64(0)); r~
| [Prev in Thread] | Current Thread | [Next in Thread] |