[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH 3/8] target/arm: Pass env pointer through to gvec_bfdot helpe
From: |
Peter Maydell |
Subject: |
Re: [PATCH 3/8] target/arm: Pass env pointer through to gvec_bfdot helper |
Date: |
Wed, 31 Jul 2024 13:31:50 +0100 |
On Wed, 31 Jul 2024 at 02:36, Richard Henderson
<richard.henderson@linaro.org> wrote:
>
> On 7/31/24 02:03, Peter Maydell wrote:
> > Pass the env pointer through to the gvec_bfdot helper,
> > so we can use it to add support for FEAT_EBF16.
> >
> > Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
> > ---
> > target/arm/helper.h | 4 ++--
> > target/arm/tcg/translate-a64.c | 27 ++++++++++++++++++++++++-
> > target/arm/tcg/translate-neon.c | 35 +++++++++++++++++++++++++++++++--
> > target/arm/tcg/translate-sve.c | 15 +++++++++++++-
> > target/arm/tcg/vec_helper.c | 3 ++-
> > 5 files changed, 77 insertions(+), 7 deletions(-)
> >
> > diff --git a/target/arm/helper.h b/target/arm/helper.h
> > index 970d059dec5..aece9fd4aa7 100644
> > --- a/target/arm/helper.h
> > +++ b/target/arm/helper.h
> > @@ -1027,8 +1027,8 @@ DEF_HELPER_FLAGS_5(gvec_ummla_b, TCG_CALL_NO_RWG,
> > DEF_HELPER_FLAGS_5(gvec_usmmla_b, TCG_CALL_NO_RWG,
> > void, ptr, ptr, ptr, ptr, i32)
> >
> > -DEF_HELPER_FLAGS_5(gvec_bfdot, TCG_CALL_NO_RWG,
> > - void, ptr, ptr, ptr, ptr, i32)
> > +DEF_HELPER_FLAGS_6(gvec_bfdot, TCG_CALL_NO_RWG,
> > + void, ptr, ptr, ptr, ptr, ptr, i32)
>
> Because env expands to TCGv_ptr in the translation context, I suspect that
> you can use
> that here. Worth a try, anyway, so that
>
> > -void HELPER(gvec_bfdot)(void *vd, void *vn, void *vm, void *va, uint32_t
> > desc)
> > +void HELPER(gvec_bfdot)(void *vd, void *vn, void *vm, void *va,
> > + void *envp, uint32_t desc)
>
> this doesn't have to use void *.
I thought I'd tried that, but obviously I didn't hit on the
right combination of types in the prototype/definition.
This does work, so I've changed the patchset to use it.
thanks
-- PMM
- [PATCH 0/8] target/arm: Implement FEAT_EBF16, Peter Maydell, 2024/07/30
- [PATCH 1/8] target/arm: Allow setting the FPCR.EBF bit for FEAT_EBF16, Peter Maydell, 2024/07/30
- [PATCH 3/8] target/arm: Pass env pointer through to gvec_bfdot helper, Peter Maydell, 2024/07/30
- [PATCH 2/8] target/arm: Pass env pointer through to sme_bfmopa helper, Peter Maydell, 2024/07/30
- [PATCH 4/8] target/arm: Pass env pointer through to gvec_bfdot_idx helper, Peter Maydell, 2024/07/30
- [PATCH 5/8] target/arm: Pass env pointer through to gvec_bfmmla helper, Peter Maydell, 2024/07/30
- [PATCH 7/8] target/arm: Implement FPCR.EBF=1 semantics for bfdotadd(), Peter Maydell, 2024/07/30
- [PATCH 6/8] target/arm: Prepare bfdotadd() callers for FEAT_EBF support, Peter Maydell, 2024/07/30