Re: [kvm-devel] [PATCH] KVM: Avoid using vmx instruction directly

Avi Kivity
2006-11-09T16:51:50Z

Arnd Bergmann wrote:
> On Thursday 09 November 2006 15:52, Avi Kivity wrote:
>
>> Wouldn't that make inline assembly useless? Suppose the contents is
>> itself a pointer. What about the pointed-to contents?
>>
>> e.g.
>>
>> int x = 3;
>> int *y = &x;
>> int z;
>>
>> asm ("mov %1, %%rax; movl (%%rax), %0" : "=r"(z) : "g"(y) : "rax");
>> assert(z == 3);
>>
>
> Same here, you need to tell gcc what is really accessed, like
>
> asm ("mov %1, %%rax; movl (%%rax), %0" : "=r"(z) : "g"(y), "m"(*y) : "rax");
>
> I know that the s390 kernel developers have hit that problem
> frequently with inline assemblies. It may be that it's harder
> to hit on x86, because there are fewer registers available and
> data therefore tends to spill to the stack.
>

I'll update my tree to reflect this. Thanks.

--
error compiling committee.c: too many arguments to function