Zebediah Figura z.figura12@gmail.com writes:
+__ASM_GLOBAL_FUNC( do_x86cpuid,
"pushl %esi\n\t""pushl %ebx\n\t""movl 4(%esp),%eax\n\t""movl 8(%esp),%esi\n\t""cpuid\n\t""movl %eax,(%esi)\n\t""movl %ebx,4(%esi)\n\t""movl %ecx,8(%esi)\n\t""movl %edx,12(%esi)\n\t""popl %ebx\n\t""popl %esi\n\t""ret" );
This cannot possibly work, the stack offsets are wrong.