Имеется такой код:
bool Processor::is_set_N_bit_in_EDX(int bit)
{
register volatile unsigned int func = 1, _eax, _edx, _ecx;
asm volatile ( "cpuid\n\t" : "=eax" (_eax), "=edx" (_edx), "=ecx" (_ecx) : "eax" (func));
return ((_edx & (1 << bit)) >> bit);
}
Выдает следующие сообщение об ошибке:
In static member function 'static bool Processor::is_set_N_bit_in_EDX(int)':
error: impossible constraint in 'asm'
Что я не так написал и почему оно ругается ?
«З.Ы. g++ (Gentoo 4.5.2 p1.0, pie-0.4.5) 4.5.2»