| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
| |
llvm-svn: 2756
|
| |
|
|
|
|
| |
a vector. This makes asserting on array bounds easier.
llvm-svn: 2731
|
| |
|
|
| |
llvm-svn: 2688
|
| |
|
|
| |
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: 2397
|
| |
|
|
|
|
| |
to make debugging output a lot nicer.
llvm-svn: 2395
|
| |
|
|
|
|
| |
indicate whether or not they invalidate the CFGA
llvm-svn: 2386
|
| |
|
|
| |
llvm-svn: 2381
|
| |
|
|
| |
llvm-svn: 2378
|
| |
|
|
|
|
| |
Remove unneccesary getID variant for module's
llvm-svn: 2353
|
| |
|
|
| |
llvm-svn: 2336
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Rename runOnMethod to runOnFunction
* Transform getAnalysisUsageInfo into getAnalysisUsage
- Method is now const
- It now takes one AnalysisUsage object to fill in instead of 3 vectors
to fill in
- Pass's now specify which other passes they _preserve_ not which ones
they modify (be conservative!)
- A pass can specify that it preserves all analyses (because it never
modifies the underlying program)
* s/Method/Function/g in other random places as well
llvm-svn: 2333
|
| |
|
|
| |
llvm-svn: 2331
|
| |
|
|
| |
llvm-svn: 2323
|
| |
|
|
| |
llvm-svn: 2322
|
| |
|
|
|
|
|
| |
Freeze auto vars and spill areas when their sizes are used
for computing other offsets.
llvm-svn: 2317
|
| |
|
|
|
|
|
| |
function calls were simply wrong; other functions were just not
using all available registers.
llvm-svn: 2316
|
| |
|
|
|
|
| |
for a particular argument in a list of arguments.
llvm-svn: 2315
|
| |
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
| |
assert it.
* Use WriteAsOperand instead of getStringValue for constants
llvm-svn: 2296
|
| |
|
|
| |
llvm-svn: 2254
|
| |
|
|
|
|
| |
enough. This fixes compilation of the health benchmark.
llvm-svn: 2228
|
| |
|
|
| |
llvm-svn: 2215
|
| |
|
|
|
|
| |
in iOther.h
llvm-svn: 2209
|
| |
|
|
| |
llvm-svn: 2202
|
| |
|
|
| |
llvm-svn: 2199
|
| |
|
|
|
|
|
|
| |
* Move InsertPrologEpilogCode class to PrologEpilogCodeInserter.cpp
-> Among other things, this eliminates the need for the minstrVec static
global array.
llvm-svn: 2195
|
| |
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
| |
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: 2193
|
| |
|
|
| |
llvm-svn: 2192
|
| |
|
|
| |
llvm-svn: 2191
|
| |
|
|
|
|
| |
pointer so that they do not all get leaked!
llvm-svn: 2188
|
| |
|
|
| |
llvm-svn: 2180
|
| |
|
|
|
|
|
| |
because the slot calculator is already part of the VMCore library.
* Rename incorporateMethod and purgeMethod to *Function
llvm-svn: 2154
|
| |
|
|
|
|
|
| |
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
|
| |
|
|
|
|
| |
for that value.
llvm-svn: 2074
|
| |
|
|
|
|
|
| |
fix related to putting a read-write variable in a read-only section,
but I'm not sure now.
llvm-svn: 2073
|
| |
|
|
| |
llvm-svn: 2059
|
| |
|
|
| |
llvm-svn: 2035
|
| |
|
|
| |
llvm-svn: 1990
|
| |
|
|
|
|
| |
Also re-enable instr. scheduling pass.
llvm-svn: 1966
|
| |
|
|
| |
llvm-svn: 1965
|
| |
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
| |
wrong register class for saving CC registers.
Also, use distinct names for the three types of SetMachineOperand.
llvm-svn: 1895
|