I am trying to understand this inline assembly code which comes from _hypercall0
here.
asm volatile ("call hypercall_page+%c[offset]" \
: "=r" (__res) \
: [offset] "i" (__HYPERVISOR_##name * sizeof(hypercall_page[0])) \
: "memory", "edi", "esi", "edx", "ecx", "ebx", "eax")
I am having trouble finding information on what %c
in the first line means. I did not find any information in the most obvious section of the GCC manual, which explains %[name]
, but not %c[name]
. Is there any other place I should look at?