[LLVMbugs] [Bug 4844] New: instcombine form still confuses basicaa
bugzilla-daemon at cs.uiuc.edu
bugzilla-daemon at cs.uiuc.edu
Mon Aug 31 16:40:27 PDT 2009
http://llvm.org/bugs/show_bug.cgi?id=4844
Summary: instcombine form still confuses basicaa
Product: libraries
Version: trunk
Platform: PC
OS/Version: All
Status: NEW
Severity: normal
Priority: P2
Component: Core LLVM classes
AssignedTo: unassignedbugs at nondot.org
ReportedBy: evan at fallingsnow.net
CC: llvmbugs at cs.uiuc.edu
Instcombine continues to put code in forms that confuse basicaa.
Attached are 3 files
primary.ll is quite big, but easily shows instcombine creating the bad form:
llvm-as < primary.ll | opt -instcombine | llvm-dis > primary-bad.ll
diff -u primary.ll primary-bad.ll
It's easy to see instcombine flipping BC(GEP)'s to strange GEP(BC)'s. It's
these GEP(BC) forms that confuse basicaa. Which brings me to the other two
files.
gep_bc.ll shows a reduced form of the code in primary.ll, using the GEP(BC)
forms that instcombine creates. Running this through opt will result in no
change to the output.
bc_gep.ll is the same as gep_bc.ll, but the GEP(BC) forms are undone back to
BC(GEP) forms, the same as before instcombine changed them.
Running bc_gep.ll through opt -std-compile-opts, you'll see significant
optimization.
--
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