[LLVMbugs] [Bug 1095] NEW: Miscompilation of asm("{cntlz|cntlzw} %0, %1" ...) on PowerPC
bugzilla-daemon at cs.uiuc.edu
bugzilla-daemon at cs.uiuc.edu
Sun Jan 7 14:45:03 PST 2007
http://llvm.org/bugs/show_bug.cgi?id=1095
Summary: Miscompilation of asm("{cntlz|cntlzw} %0, %1" ...) on
PowerPC
Product: new-bugs
Version: unspecified
Platform: Macintosh
OS/Version: MacOS X
Status: NEW
Severity: normal
Priority: P2
Component: new bugs
AssignedTo: unassignedbugs at nondot.org
ReportedBy: isanbard at gmail.com
On my PowerBook G4, compiling this program:
#include <stdio.h>
int main()
{
unsigned long int ctz_x = 0x0000f000;
unsigned long int ctz_c;
__asm__("{cntlz|cntlzw} %0,%1"
: "=r" (ctz_c)
: "r" (ctz_x & -ctz_x));
printf("ctz_c == %d\n", ctz_c);
return 0;
}
results in the use of the mnemonic "cntlz" instead of "cntlzw". This produces an error when trying to
assemble the program:
cntlzw_miscompile.s:25:Invalid mnemonic 'cntlz'
GCC outputs "cntlzw" instead.
-bw
------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.
More information about the llvm-bugs
mailing list