[Bug inline-asm/26408] New: incorrect handling of x86 "H" registers in inline asm
sabre at nondot dot org
gcc-bugzilla@gcc.gnu.org
Wed Feb 22 00:16:00 GMT 2006
Consider:
short test(int X, int Y) {
register char Yr asm("ch") = Y;
__asm__("foo %0 %1 %2" : "=r"(X): "r"(X), "r"(Yr));
return X;
}
This compiles to:
test:
movl 4(%esp), %edx
movb 8(%esp), %cl
#APP
foo %eax %edx %cl
#NO_APP
cwtl
ret
I would expect CH, not CL, to be used.
-Chris
--
Summary: incorrect handling of x86 "H" registers in inline asm
Product: gcc
Version: unknown
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: inline-asm
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: sabre at nondot dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26408
More information about the Gcc-bugs
mailing list