ради простоты я просто вставлю пример вместо всего моего кода, который немного огромен. при переносе моего кода в VC ++ вместо использования GCC мне нужно переписать несколько встроенных функций сборки, которые получают указатели и сохраняют значения в этих указателях.
представьте себе cpuid, например:
void cpuid( int* peax, int* pebx, int* pecx, int* pedx, int what ){
__asm__ __volatile__( "cpuid" : "=a" (*peax), "=b" (*pebx), "=c" (*pecx), "=d" (*pedx) : "a" (what) );
}
, который будет просто работать, он сохранит значения в регистрах, "возвращенных" cpuid, в указатели, которые я передал функции.
можно ли сделать то же самое с помощью встроенного ассемблера для VC?
до сих пор точно такая же сигнатура функции, но с:
mov eax, what;
cpuid;
mov dword ptr [peax], eax;
etc
не будет работать, peax будет иметь то же значение, что и до вызова функции.
заранее спасибо.