| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
| |
llvm-svn: 3056
|
| |
|
|
|
|
|
|
|
|
| |
basic block.
Mark setCCInstr used as dest. of conditional-move as both a def and a use.
BA instruction no longer has the unused CC argument.
llvm-svn: 2836
|
| |
|
|
| |
llvm-svn: 2762
|
| |
|
|
| |
llvm-svn: 2663
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
-- correct sign extensions for integer casts and for shift-by-constant
instructions generated for integer multiply
-- passing FP arguments to functions with more than 6 arguments
-- passing FP arguments to varargs functions
-- passing FP arguments to functions with no prototypes
-- incorrect stack frame size when padding a section
-- folding getelementptr operations with mixed array and struct indexes
-- use uint64_t instead of uint for constant offsets in mem operands
-- incorrect coloring for CC registers (both int and FP): interferences
were being completely ignored for int CC and were considered but no
spills were marked for fp CC!
Also some code improvements:
-- better interface to generating machine instr for common cases
(many places still need to be updated to use this interface)
-- annotations on MachineInstr to communicate information from
one codegen phase to another (now used to pass information about
CALL/JMPLCALL operands from selection to register allocation)
-- all sizes and offests in class TargetData are uint64_t instead of uint
llvm-svn: 2640
|
| |
|
|
| |
llvm-svn: 2486
|
| |
|
|
| |
llvm-svn: 2378
|
| |
|
|
| |
llvm-svn: 2331
|
| |
|
|
| |
llvm-svn: 2323
|
| |
|
|
|
|
|
|
| |
to copy the FP arg. to an integer. Necessary so that the
register allocator has two different live ranges for the FP value
and the int. argument.
llvm-svn: 2314
|
| |
|
|
|
|
|
|
|
| |
new PrologEpilogCodeInserter.cpp file, and include the bodies of the
GetInstructionsFor(Prolog|Epilog) functions from SparcInstrSelection.cpp
into the class. This eliminates the need for a static global vector of
instructions and a class of errors that is really unneccesary.
llvm-svn: 2194
|
| |
|
|
|
|
|
| |
class. The Method class is obsolete (renamed) and all references to it
are being converted over to Function.
llvm-svn: 2144
|
| |
|
|
| |
llvm-svn: 2115
|
| |
|
|
|
|
| |
to add separate label for bitwise NOT operator.
llvm-svn: 2091
|
| |
|
|
|
|
| |
2. Fix type used for TmpInstruction holding the return address.
llvm-svn: 2075
|
| |
|
|
| |
llvm-svn: 1990
|
| |
|
|
|
|
|
|
| |
Improve checking for constants in Multiply.
Simpler method to keep track of when a node is folded into its parent.
Several other bug fixes.
llvm-svn: 1964
|
| |
|
|
|
|
|
|
| |
Also, use distinct names for the three types of SetMachineOperand to
avoid painful overloading problems and errors.
Bug fix in converting-int-to-float. Other minor stuff.
llvm-svn: 1896
|
| |
|
|
|
|
| |
* Switch to new MachineCodeForInstruction model
llvm-svn: 1655
|
| |
|
|
| |
llvm-svn: 1514
|
| |
|
|
| |
llvm-svn: 1503
|
| |
|
|
| |
llvm-svn: 1485
|
| |
|
|
| |
llvm-svn: 1462
|
| |
|
|
|
|
|
| |
Renamed op_const_iterator -> const_op_iterator
Renamed PointerType::getValueType() -> PointerType::getElementType()
llvm-svn: 1408
|
| |
|
|
|
|
|
| |
Rename ConstPool* -> Constant*
Rename ConstPoolVals.h -> ConstantVals.h
llvm-svn: 1407
|
| |
|
|
|
|
|
|
| |
from "llvm/Support/..." that are not llvm dependant.
Move files and fix #includes
llvm-svn: 1400
|
| |
|
|
|
|
|
| |
is named getIndicesBROKEN() and shall be removed when the codebase is updated
to not call it
llvm-svn: 1338
|
| |
|
|
| |
llvm-svn: 1319
|
| |
|
|
| |
llvm-svn: 1298
|
| |
|
|
|
|
| |
for register allocation.
llvm-svn: 1270
|
| |
|
|
| |
llvm-svn: 1265
|
| |
|
|
| |
llvm-svn: 1260
|
| |
|
|
|
|
| |
a memory instruction!
llvm-svn: 1238
|
| |
|
|
|
|
| |
Also check IsPointerType() in addition to IsIntegral() in several places.
llvm-svn: 1227
|
| |
|
|
|
|
|
|
| |
The space for optional args in the stack frame is now being computed,
so finish the code generation for the variable `alloca'.
Finally, made a major overhaul of how stack frame is managed.
llvm-svn: 1194
|
| |
|
|
| |
llvm-svn: 1175
|
| |
|
|
| |
llvm-svn: 1124
|
| |
|
|
|
|
|
|
| |
Fixed selection to create a TmpInstruction for each integer CC register
(since it is an implicit side-effect, unlike FP CC registers which are
explicit operands).
llvm-svn: 1120
|
| |
|
|
| |
llvm-svn: 1119
|
| |
|
|
| |
llvm-svn: 1005
|
| |
|
|
|
|
| |
Use JMPLRET instead of RETURN for method returns so that
llvm-svn: 939
|
| |
|
|
| |
llvm-svn: 927
|
| |
|
|
|
|
|
|
| |
InstrSelectionSupport.cpp. It now happens in a bottom-up pass on
each BURG tree after the original top-down selection pass on the tree.
2. Handle global values as constants (viz., constant addresses).
llvm-svn: 868
|
| |
|
|
| |
llvm-svn: 808
|
| |
|
|
| |
llvm-svn: 795
|
| |
|
|
|
|
|
| |
* Fix #endif problems
* Change to getCalledValue instead of getCalledMethod
llvm-svn: 767
|
| |
|
|
|
|
| |
each VM instruction.
llvm-svn: 725
|
| |
|
|
|
|
| |
Also, note return value of a Call as an "implicitUse".
llvm-svn: 720
|
| |
|
|
| |
llvm-svn: 697
|
| |
|
|
|
|
| |
Eliminate old style casts from value.h
llvm-svn: 696
|