[LLVMbugs] [Bug 1164] NEW: CBE can generate name conflicts
bugzilla-daemon at cs.uiuc.edu
bugzilla-daemon at cs.uiuc.edu
Sat Feb 3 15:33:39 PST 2007
http://llvm.org/bugs/show_bug.cgi?id=1164
Summary: CBE can generate name conflicts
Product: libraries
Version: trunk
Platform: All
OS/Version: All
Status: NEW
Severity: normal
Priority: P2
Component: Backend: C
AssignedTo: unassignedbugs at nondot.org
ReportedBy: sabre at nondot.org
Consider:
@G = global i32 123
@ltmp_0_1 = global i32 123
define i32 @test(i32 *%G) {
%A = load i32* %G
%B = load i32* @ltmp_0_1
%C = add i32 %A, %B
ret i32 %C
}
The CBE generated code is:
unsigned int test(unsigned int *ltmp_0_1) {
...
ltmp_1_2 = *ltmp_0_1; // local
ltmp_2_2 = *(<mp_0_1); // global
return (ltmp_1_2 + ltmp_2_2);
...
This is a serious bug.
A not-as-serious bug: the CBE ignores the local names of symbols, turning %A into ltmp_1_2?
-Chris
------- 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