On 04/26/2013 12:03 PM, Kees Cook wrote: > + > +static inline void cpuid(u32 id, u32 *a, u32 *b, u32 *c, u32 *d) > +{ > + /* Handle x86_32 PIC using ebx. */ > + asm volatile("movl %%ebx, %%edi \n\t" > + "cpuid \n\t" > + "xchgl %%edi, %%ebx\n\t" > + : "=a" (*a), > + "=D" (*b), > + "=c" (*c), > + "=d" (*d) > + : "a" (id) > + ); > +}
Please don't constrain registers unnecessarily. You can use "=r" there and let gcc assign whatever free register it pleases. You can also limit that to only: #if defined(__i386__) && defined(__PIC__) -hpa -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/