Open Quuxplusone opened 11 years ago
Attached t-CDxuHx.cpp
(205110 bytes, text/plain): first attachment: preprocessed source
Attached t-CDxuHx.sh
(480 bytes, application/octet-stream): second attachment: command line
Note that the code in question doesn't actually compile with g++ either:
void callcpuid( cpuidOut * p, long a )
{
// memset( p, 0xFF, sizeof(*p) ) ;
p->a = a ;
__asm__ ( "cpuid"
: "+a"(p->a), "=b"(p->b), "=c"(p->c), "=d"(p->d) // output
: // no (only) inputs
: "%rax", "%rbx", "%rcx", "%rdx" // clobbered registers
) ;
// : "a", "b", "c", "d" // clobbered
registers
}
... but gcc produces a diagnostic message instead of trapping.
t-CDxuHx.cpp
(205110 bytes, text/plain)t-CDxuHx.sh
(480 bytes, application/octet-stream)