[LLVMbugs] [Bug 3760] New: simple loop pessimized by -std-compile-opts
bugzilla-daemon at cs.uiuc.edu
bugzilla-daemon at cs.uiuc.edu
Sun Mar 8 21:49:27 PDT 2009
http://llvm.org/bugs/show_bug.cgi?id=3760
Summary: simple loop pessimized by -std-compile-opts
Product: libraries
Version: trunk
Platform: PC
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P2
Component: Loop Optimizer
AssignedTo: unassignedbugs at nondot.org
ReportedBy: nicholas at mxc.ca
CC: gohman at apple.com, llvmbugs at cs.uiuc.edu
This simple program:
define void @test(i32 %x, i32** %y) {
entry:
br label %loop
loop: ; preds = %loop, %entry
%tmp = phi i32 [ 0, %entry ], [ %tmp1, %loop ] ; <i32>
[#uses=1]
%tmp1 = add i32 %tmp, 1 ; <i32> [#uses=2]
%my = malloc i32 ; <i32*> [#uses=1]
%z = getelementptr i32** %y, i32 %tmp
store i32* %my, i32** %z
%done = icmp eq i32 %tmp1, %x ; <i1> [#uses=1]
br i1 %done, label %out, label %loop
out: ; preds = %loop
ret void
}
is rewritten to use i64 induction variable and then zext/sext/trunc is added
all over to fix it up. On x86 the resulting .s is much worse.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
More information about the llvm-bugs
mailing list