Gast
#56052
hey,
will follgenden code mit dem gcc kompilieren.
int main () {
unsigned int cyc;
__asm (
"CPUID;"
"RDTSC;"
"movl %eax, cyc;"
);
return 1;
}
Der gcc benutzt doch AT&T-Syntax oder?
Trotzdem bekomme ich beim kompilieren follgenden fehler:
/tmp/ccK8Qt3I.o(.text+0x15): In function `main':
: undefined reference to `cyc'
collect2: ld returned 1 exit status
Auch wenn ich die dritte zeile folgendermaßen ändere:
"movl %eax, $5;"
kommt beim kompilieren diese für mich unverständliche fehlermeldung:
/tmp/ccYE7xDK.s: Assembler messages:
/tmp/ccYE7xDK.s:13: Error: suffix or operands invalid for `mov'
warum sagt er "mov" wenn ich die AT&T-Syntax benutze und bei mir
"movl" steht.
Glaube mit der Intel Syntax klappt das kompilieren auch nicht.
bitte helft mir, bin voll am verzweifeln.
danke
kinek