> -----Original Message----- > From: David Marchand <[email protected]> > Sent: Sunday, November 1, 2020 12:01 PM > To: McDaniel, Timothy <[email protected]> > Cc: dev <[email protected]>; Carrillo, Erik G <[email protected]>; Eads, > Gage <[email protected]>; Van Haaren, Harry > <[email protected]>; Jerin Jacob Kollanukkaran > <[email protected]>; Thomas Monjalon <[email protected]> > Subject: Re: [dpdk-dev] [PATCH v14 05/23] event/dlb: add inline functions > > > > > + > > > > +static inline void > > > > +dlb_movdir64b(void *dest, void *src) > > > > +{ > > > > + asm volatile(".byte 0x66, 0x0f, 0x38, 0xf8, 0x02" > > > > + : > > > > + : "a" (dest), "d" (src)); > > > > +} > > > > > > NO! > > > We introduced stuff in EAL for this, please double check. > > I also do not see a replacement for the new MOVDIR64B instruction in dpdk- > next-eventdev or dpdk main. > > Ok, what got introduced in EAL is for MOVDIRI. > > > So here we go with a MOVDIR64B... > Google tells me: > Availability of the MOVDIR64B instruction is indicated by the presence > of the CPUID feature flag MOVDIR64B (bit 28 of the ECX register in > leaf 07H, see “CPUID—CPU Identification” in the Intel® 64 and IA-32 > Architectures Software Developer’s Manual, Volume 2A). > > I understand that calling this code must be under a check for > RTE_CPUFLAG_MOVDIR64B. > Which I can't find in this patchset. > What did I miss this time? > > > -- > David Marchand
Fair enough question. We currently do not check for availability of MOVDIR64B since every Intel part that includes DLB or DLB2 is guaranteed to have the MOVDIR64B instruction.

