1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 19:23:23 +01:00
llvm-mirror/lib/CodeGen
Chris Lattner 7b1362fa52 Start eliminating temporary vectors used to create DAG nodes. Instead, pass
in the start of an array and a count of operands where applicable.  In many
cases, the number of operands is known, so this static array can be allocated
on the stack, avoiding the heap.  In many other cases, a SmallVector can be
used, which has the same benefit in the common cases.

I updated a lot of code calling getNode that takes a vector, but ran out of
time.  The rest of the code should be updated, and these methods should be
removed.

We should also do the same thing to eliminate the methods that take a
vector of MVT::ValueTypes.

It would be extra nice to convert the dagiselemitter to avoid creating vectors
for operands when calling getTargetNode.

llvm-svn: 29566
2006-08-08 02:23:42 +00:00
..
SelectionDAG Start eliminating temporary vectors used to create DAG nodes. Instead, pass 2006-08-08 02:23:42 +00:00
AsmPrinter.cpp Instead of blindly looking past constantexpr casts, actually constant 2006-07-29 01:57:19 +00:00
BranchFolding.cpp
DwarfWriter.cpp Fixed a bug handling void function types. 2006-07-13 15:27:42 +00:00
ELFWriter.cpp Refactor a bunch of includes so that TargetMachine.h doesn't have to include 2006-05-12 06:33:49 +00:00
IntrinsicLowering.cpp
LiveInterval.cpp
LiveIntervalAnalysis.cpp Eliminate data relocations by using NULL instead of global empty list. 2006-07-21 21:15:20 +00:00
LiveVariables.cpp Eliminate data relocations by using NULL instead of global empty list. 2006-07-21 21:15:20 +00:00
MachineBasicBlock.cpp Refactor a bunch of includes so that TargetMachine.h doesn't have to include 2006-05-12 06:33:49 +00:00
MachineDebugInfo.cpp Fixed a bug handling void function types. 2006-07-13 15:27:42 +00:00
MachineFunction.cpp Add an out-of-line virtual function to home class. 2006-07-14 23:08:47 +00:00
MachineInstr.cpp Instructions with variable operands (variable_ops) can have a number required 2006-06-15 07:22:16 +00:00
MachinePassRegistry.cpp Final polish on machine pass registries. 2006-08-02 12:30:23 +00:00
Makefile Fix linking on Alpha 2006-07-20 17:27:58 +00:00
Passes.cpp Work around a bug in gcc 3.3.5, reported by a user 2006-08-03 00:16:56 +00:00
PHIElimination.cpp Reduce number of exported symbols 2006-07-20 17:28:38 +00:00
PhysRegTracker.h
PrologEpilogInserter.cpp Shave another 27K off libllvmgcc.dylib with visibility hidden 2006-06-28 22:17:39 +00:00
RegAllocLinearScan.cpp Final polish on machine pass registries. 2006-08-02 12:30:23 +00:00
RegAllocLocal.cpp Final polish on machine pass registries. 2006-08-02 12:30:23 +00:00
RegAllocSimple.cpp Final polish on machine pass registries. 2006-08-02 12:30:23 +00:00
TwoAddressInstructionPass.cpp Reduce number of exported symbols 2006-07-20 17:28:38 +00:00
UnreachableBlockElim.cpp Use hidden visibility to make symbols in an anonymous namespace get 2006-06-28 23:17:24 +00:00
VirtRegMap.cpp Eliminate data relocations by using NULL instead of global empty list. 2006-07-21 21:15:20 +00:00
VirtRegMap.h Fix a latent bug that my spiller patch last week exposed: we were leaving 2006-05-01 22:03:24 +00:00