[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v4 04/10] x86: Add support for STAC/CLAC instructions
>>> On 05.05.14 at 10:21, <feng.wu@xxxxxxxxx> wrote: > +#ifdef __ASSEMBLY__ > +#define ASM_AC(op) \ > + btl $X86_FEATURE_SMAP & 31, \ > + CPUINFO_FEATURE_OFFSET(X86_FEATURE_SMAP)+boot_cpu_data(%rip); \ > + jnc 881f; \ > + __ASM_##op; \ > +881: > +#else > +#define ASM_AC(op) \ > + "btl $" __stringify(X86_FEATURE_SMAP) "&31, " \ > + CPUINFO_FEATURE_OFFSET(X86_FEATURE_SMAP) \ > + "+ boot_cpu_data(%%rip)\n\t" \ > + "jnc 881f\n\t" \ > + __stringify(__ASM_##op) "\n\t" \ > +"881:" Please use something like .L##op##%= as the label name for the C version ... > +static inline void clac(void) > +{ > + asm volatile (ASM_CLAC : : : "memory"); > +} > + > +static inline void stac(void) > +{ > + asm volatile (ASM_STAC : : : "memory"); > +} ... provided it wouldn't be better anyway to do all this properly in C, with just the raw instructions emitted via asm(). That would also eliminate the need for the C variant of CPUINFO_FEATURE_OFFSET() in the first patch. Jan _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |