|
From: | Richard Henderson |
Subject: | Re: [PATCH 06/39] target/riscv: Add vrol.[vv, vx] and vror.[vv, vx, vi] decoding, translation and execution support |
Date: | Thu, 2 Feb 2023 07:35:45 -1000 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.4.2 |
On 2/2/23 04:30, Philipp Tomsich wrote:
On the second pass over these patches, here's how we can use gvec support for both vror and vrol: /* Synthesize a rotate-right from a negate(shift-amount) + rotate-left */ static void tcg_gen_gvec_rotrs(unsigned vece, uint32_t dofs, uint32_t aofs, TCGv_i32 shift, uint32_t oprsz, uint32_t maxsz) { TCGv_i32 tmp = tcg_temp_new_i32(); tcg_gen_neg_i32(tmp, shift); tcg_gen_gvec_rotls(vece, dofs, aofs, tmp, oprsz, maxsz);
We can add rotls generically. I hadn't done this so far because there were no users. r~
[Prev in Thread] | Current Thread | [Next in Thread] |