On Mon, 17 Aug 2026 at 23:34, Richard Henderson
<[email protected]> wrote:
>
> On 8/17/26 09:37, Peter Maydell wrote:
> >> +    tcg_gen_addi_i64(diff, diff, -1);
> >> +    tcg_gen_umin_i64(diff, diff, tcg_constant_i64((vsz >> a->esz) - 1));
> >> +
> >> +    /*
> >> +     * Since we're bounded, pass as a 32-bit type.
> >> +     * Sink the diff += 1 from above into the 32-bit type.
> >
> > Is it worth doing that? Hosts are all 64-bits now, and surely there's
> > not going to be a perf or codesize difference between "add 1"
> > on a 32-bit type vs a 64-bit type ?
> Technically one byte difference on x86_64.
> But we could drop the whole truncation thing it you like.

I think mostly my feeling was that since the rearrangement of the
umin() expressions above was already quite complicated, moving
the last part of that down into the truncate-to-32-bits was
adding extra complexity on top. Just doing the subtract-one in
64 bits and keeping the truncate would be fine, as then the
two steps aren't interleaved with each other.

-- PMM

Reply via email to