llvm-6502/lib
Chris Lattner c1526a9da1 Fix a major pessimization in the instcombiner. If an allocation instruction
is only used by a cast, and the casted type is the same size as the original
allocation, it would eliminate the cast by folding it into the allocation.

Unfortunately, it was placing the new allocation instruction right before
the cast, which could pull (for example) alloca instructions into the body
of a function.  This turns statically allocatable allocas into expensive
dynamically allocated allocas, which is bad bad bad.

This fixes the problem by placing the new allocation instruction at the same
place the old one was, duh. :)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13289 91177308-0d34-0410-b5e6-96231b3b80d8
2004-04-30 04:37:52 +00:00
..
Analysis Wrapped code and comments at 80 cols; doxygenified some comments. 2004-04-29 04:05:30 +00:00
Archive Use the true, decoded name of the archive member in getObjectType. 2004-03-31 19:51:00 +00:00
AsmParser Fix a memory leak. We leaked the vector holding the entries in switch tables. 2004-04-17 23:49:15 +00:00
Bytecode Squelch compile-time warning (profile build). 2004-04-28 15:32:09 +00:00
CodeGen Include SparcV9RegInfo.h instead of TargetRegInfo.h. This serves as a bit of 2004-04-23 18:15:46 +00:00
Debugger "fix" a nasty race condition 2004-01-14 21:18:03 +00:00
ExecutionEngine Go back to the interpreter main loop after performing intrinsic lowering, 2004-04-23 18:05:28 +00:00
Linker Don't use invalid HTML in a doxygen comment. 2004-04-15 15:23:45 +00:00
Support Bugpoint was not correctly capturing stderr! This caused it to "find" bugs 2004-04-16 05:35:58 +00:00
Target Make RequiresFPRegKill() take a MachineBasicBlock arg. 2004-04-28 04:45:55 +00:00
Transforms Fix a major pessimization in the instcombiner. If an allocation instruction 2004-04-30 04:37:52 +00:00
VMCore class AssemblyWriter: 2004-04-28 19:24:28 +00:00
Makefile CBackend is no longer here 2004-02-13 23:29:37 +00:00