| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
|
|
|
|
| |
Don't check in the LibDeps.txt and FinalLibDeps.txt files to CVS because
the content differs from platform to platform. Instead, adjust the makefile
so that a dummy llvm-config is built if Perl is not available.
llvm-svn: 28084
|
| |
|
|
| |
llvm-svn: 28083
|
| |
|
|
|
|
|
| |
simplifies the MachineCodeEmitter interface just a little bit and makes
BasicBlocks work like constant pools and jump tables.
llvm-svn: 28082
|
| |
|
|
| |
llvm-svn: 28081
|
| |
|
|
|
|
| |
instruction.
llvm-svn: 28080
|
| |
|
|
|
|
|
| |
not be 100% dense. Increase the minimum threshold for the number of cases
in a switch statement from 4 to 6 in order to create a jump table.
llvm-svn: 28079
|
| |
|
|
| |
llvm-svn: 28077
|
| |
|
|
|
|
|
| |
the heuristic to further reduce spills for several test cases. (Note, it may
not necessarily translate to runtime win!)
llvm-svn: 28076
|
| |
|
|
| |
llvm-svn: 28075
|
| |
|
|
|
|
|
|
| |
target-specific subclasses. This has one caller-visible change: getTargetData() now returns a pointer instead of a reference.
This fixes PR 759.
llvm-svn: 28074
|
| |
|
|
| |
llvm-svn: 28073
|
| |
|
|
| |
llvm-svn: 28072
|
| |
|
|
| |
llvm-svn: 28071
|
| |
|
|
|
|
| |
the prototype of the called function.
llvm-svn: 28070
|
| |
|
|
| |
llvm-svn: 28069
|
| |
|
|
| |
llvm-svn: 28068
|
| |
|
|
| |
llvm-svn: 28067
|
| |
|
|
| |
llvm-svn: 28066
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
1. Change several methods in the MachineCodeEmitter class to be pure virtual.
2. Suck emitConstantPool/initJumpTableInfo into startFunction, removing them
from the MachineCodeEmitter interface, and reducing the amount of target-
specific code.
3. Change the JITEmitter so that it allocates constantpools and jump tables
*right* next to the functions that they belong to, instead of in a separate
pool of memory. This makes all memory for a function be contiguous, and
means the JITEmitter only tracks one block of memory now.
llvm-svn: 28065
|
| |
|
|
| |
llvm-svn: 28064
|
| |
|
|
| |
llvm-svn: 28063
|
| |
|
|
|
|
| |
just have the JIT malloc them.
llvm-svn: 28062
|
| |
|
|
| |
llvm-svn: 28061
|
| |
|
|
|
|
|
|
| |
byte format. This doesn't work when using the code emitter in a cross target
environment. Since the code emitter is only really used by the JIT, this
isn't a current problem, but if we ever start emitting .o files, it would be.
llvm-svn: 28060
|
| |
|
|
|
|
|
|
|
|
| |
code emission location into the base class, instead of being in the derived classes.
This change means that low-level methods like emitByte/emitWord now are no longer
virtual (yaay for speed), and we now have a framework to support growable code
segments. This implements feature request #1 of PR469.
llvm-svn: 28059
|
| |
|
|
|
|
| |
don't step on R11 in the middle of a function when saving and restoring CRs
llvm-svn: 28058
|
| |
|
|
| |
llvm-svn: 28057
|
| |
|
|
| |
llvm-svn: 28056
|
| |
|
|
| |
llvm-svn: 28055
|
| |
|
|
| |
llvm-svn: 28054
|
| |
|
|
| |
llvm-svn: 28053
|
| |
|
|
|
|
| |
moreuseful for debugging.
llvm-svn: 28052
|
| |
|
|
|
|
| |
useful for debugging.
llvm-svn: 28051
|
| |
|
|
|
|
|
| |
basic block labels, consolidating the code to do so in one place for each
target.
llvm-svn: 28050
|
| |
|
|
|
|
|
| |
prologs and epilogs, keep all the asm in one place, and remove use of
compiler builtin functions.
llvm-svn: 28049
|
| |
|
|
|
|
| |
Domagoj Babic!
llvm-svn: 28048
|
| |
|
|
| |
llvm-svn: 28047
|
| |
|
|
| |
llvm-svn: 28046
|
| |
|
|
| |
llvm-svn: 28045
|
| |
|
|
|
|
| |
more work).
llvm-svn: 28044
|
| |
|
|
| |
llvm-svn: 28043
|
| |
|
|
| |
llvm-svn: 28042
|
| |
|
|
|
|
|
|
|
| |
instructions in the virtregfolded map that were deleted. Because they
were deleted, newly allocated instructions could end up at the same address,
magically finding themselves in the map. The solution is to remove entries
from the map when we delete the instructions.
llvm-svn: 28041
|
| |
|
|
|
|
|
| |
instruction folded with spill code, make sure the remove the load from
the virt reg folded map.
llvm-svn: 28040
|
| |
|
|
| |
llvm-svn: 28039
|
| |
|
|
|
|
| |
one for each instruction.
llvm-svn: 28038
|
| |
|
|
| |
llvm-svn: 28037
|
| |
|
|
| |
llvm-svn: 28036
|
| |
|
|
| |
llvm-svn: 28035
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
up the schedule. This helps code that looks like this:
loads ...
computations (first set) ...
stores (first set) ...
loads
computations (seccond set) ...
stores (seccond set) ...
Without this change, the stores and computations are more likely to
interleave:
loads ...
loads ...
computations (first set) ...
computations (second set) ...
computations (first set) ...
stores (first set) ...
computations (second set) ...
stores (stores set) ...
This can increase the number of spills if we are unlucky.
llvm-svn: 28033
|