Messages in this thread | | | Date | Fri, 10 Nov 2006 11:38:32 -0800 | From | Jeremy Fitzhardinge <> | Subject | Re: [kvm-devel] [PATCH] KVM: Avoid using vmx instruction directly |
| |
Martin Schwidefsky wrote: > On 11/10/06, Jeremy Fitzhardinge <jeremy@goop.org> wrote: >> >> Or gcc >> >> might move the assignment of phys_addr to after the inline assembly. >> >> >> > "asm volatile" prevents that (and I'm not 100% sure it's necessary). >> >> No, it won't necessarily. "asm volatile" simply forces gcc to emit the >> assembler, even if it thinks its output doesn't get used. It makes no >> ordering guarantees with respect to other code (or even other "asm >> volatiles"). The "memory" clobbers should fix the ordering of the asms >> though. > > The "memory" clobber just tells the compiler that any memory object > might get access by the inline.
I just meant that two asms with a "memory" clobber will be generated with a fixed ordering, which "asm volatile" does not necessarily do.
J - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |