| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
http://llvm.cs.uiuc.edu/PR403 .
llvm-svn: 15331
|
|
|
|
| |
llvm-svn: 14845
|
|
|
|
| |
llvm-svn: 14622
|
|
|
|
| |
llvm-svn: 13957
|
|
|
|
|
|
|
| |
documentation that this module needs to be made independent of the
register file description of the current target.
llvm-svn: 13125
|
|
|
|
| |
llvm-svn: 11578
|
|
|
|
| |
llvm-svn: 11393
|
|
|
|
|
|
|
|
|
| |
ilist of MachineInstr objects. This allows constant time removal and
insertion of MachineInstr instances from anywhere in each
MachineBasicBlock. It also allows for constant time splicing of
MachineInstrs into or out of MachineBasicBlocks.
llvm-svn: 11340
|
|
|
|
| |
llvm-svn: 11339
|
|
|
|
|
|
|
|
|
| |
instead of randomly groping about inside its outEdges array.
Make SchedGraph::addDummyEdges() use getNumOutEdges() instead of
outEdges.size().
Get rid of ifdefed-out code in SchedGraph::buildGraph().
llvm-svn: 11238
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
a) remove opIsUse(), opIsDefOnly(), opIsDefAndUse()
b) add isUse(), isDef()
c) rename opHiBits32() to isHiBits32(),
opLoBits32() to isLoBits32(),
opHiBits64() to isHiBits64(),
opLoBits64() to isLoBits64().
This results to much more readable code, for example compare
"op.opIsDef() || op.opIsDefAndUse()" to "op.isDef()" a pattern used
very often in the code.
llvm-svn: 10461
|
|
|
|
| |
llvm-svn: 9903
|
|
|
|
| |
llvm-svn: 9750
|
|
|
|
|
|
| |
Header files will be on the way.
llvm-svn: 9298
|
|
|
|
| |
llvm-svn: 8191
|
|
|
|
|
|
| |
ModuloSchedGraph.
llvm-svn: 8174
|
|
|
|
| |
llvm-svn: 8153
|
|
|
|
| |
llvm-svn: 8148
|
|
|
|
|
|
|
|
| |
not just an Instruction*, at least in one unfortunate case:
the first operand to the va_arg instruction.
Modify ValueToDefVecMap to map from Value*, not Instruction*.
llvm-svn: 7052
|
|
|
|
|
|
|
|
|
|
| |
preallocated. While reg-to-reg dependences were already handled, this
change required new code for adding edges to/from call instructions.
This was part of the extensive changes to the way code generation occurs
for function call arguments and return values.
See log for CodeGen/PhyRegAlloc.cpp.
llvm-svn: 6467
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fixed spilling of %fcc[0-3] which are part of %fsr.
(2) Moved some machine-independent reg-class code to class TargetRegInfo
from SparcReg{Class,}Info.
(3) Renamed MachienOperand::opIsDef to MachineOperand::opIsDefOnly()
and related functions and flags. Fixed several bugs where only
"isDef" was being checked, not "isDefAndUse".
llvm-svn: 6341
|
|
|
|
| |
llvm-svn: 6304
|
|
|
|
| |
llvm-svn: 6301
|
|
|
|
| |
llvm-svn: 5272
|
|
|
|
| |
llvm-svn: 5204
|
|
|
|
| |
llvm-svn: 4341
|
|
|
|
|
|
| |
MachineOperand::getType()
llvm-svn: 4331
|
|
|
|
|
|
| |
llvm/Target/MachineInstrInfo.h
llvm-svn: 4327
|
|
|
|
| |
llvm-svn: 4318
|
|
|
|
| |
llvm-svn: 4137
|
|
|
|
| |
llvm-svn: 3271
|
|
|
|
| |
llvm-svn: 3075
|
|
|
|
| |
llvm-svn: 3056
|
|
|
|
|
|
|
|
|
| |
so additional dep. edges have to be added.
This was needed to correctly handle conditional move instructions!
MachineCodeForBasicBlock is now an annotation on BasicBlock.
Renamed "earliestForNode" to "earliestReadyTimeForNode".
llvm-svn: 2826
|
|
|
|
|
|
| |
For details, See: docs/2002-06-25-MegaPatchInfo.txt
llvm-svn: 2779
|
|
|
|
| |
llvm-svn: 2397
|
|
|
|
|
|
|
| |
frequently. This still leaks edges quite a bit, but it leaks no nodes
(I think).
llvm-svn: 2190
|
|
|
|
|
|
|
| |
class. The Method class is obsolete (renamed) and all references to it
are being converted over to Function.
llvm-svn: 2144
|
|
|
|
| |
llvm-svn: 1971
|
|
|
|
|
|
| |
* Switch from MachineCodeForVMInstr to MachineCodeForInstruction model
llvm-svn: 1644
|
|
|
|
| |
llvm-svn: 1503
|
|
|
|
|
|
|
|
| |
from "llvm/Support/..." that are not llvm dependant.
Move files and fix #includes
llvm-svn: 1400
|
|
|
|
| |
llvm-svn: 1375
|
|
|
|
|
|
|
|
| |
since some m. instr. may be generated by LLVM instrs. in other blocks.
Handle non-SSA (anti and output) edges and true edges uniformly by
working with machine instructions alone.
llvm-svn: 1269
|
|
|
|
|
|
| |
LLVM instruction is no longer recorded in each node, but BB is.
llvm-svn: 1262
|
|
|
|
|
|
|
| |
This wasn't a problem until we started putting copies for Phi values
that produced cycles in the SchedGraph!
llvm-svn: 1254
|
|
|
|
|
|
|
|
| |
are now found as part of the initial walk of the machine code).
Also memory load/store instructions can be generated for non-memory
LLVM instructions, which wasn't handled before. It is now.
llvm-svn: 1199
|
|
|
|
|
|
|
| |
Avoids having to handle some special cases that cause complex interactions
with instr. selection.
llvm-svn: 1138
|
|
|
|
|
|
|
| |
(b) any instructions that use or set CC registers. Whether or not the
latter are needed really should be machine-dependent.
llvm-svn: 1008
|
|
|
|
| |
llvm-svn: 857
|