On Sat, Dec 31, 2016 at 3:09 AM, Borislav Petkov <b...@alien8.de> wrote: > On Fri, Dec 30, 2016 at 06:13:24PM -0800, Andy Lutomirski wrote: >> Now you call it and ignore the return value and the compiler optimizes >> it out :) > > Does it, really? > > It is an inlined asm volatile. I checked all call sites and the CPUID > call is there. gcc 6 simply issues the CPUID and then later code > overwrites rAX. I.e., it looks ok to me. > > Or what example scenario do you have in mind?
That's why I didn't type "volatile". :) > >> Also, someone reading the code might scratch their head and >> wonder why you picked eax and not ebx, ecx, or edx. > > We have comments for her/him :-) Okay. Anyway, this particular nit is minor and I'll shut up. > > -- > Regards/Gruss, > Boris. > > ECO tip #101: Trim your mails when you reply. > -- -- Andy Lutomirski AMA Capital Management, LLC