| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
| |
llvm-svn: 57339
|
| |
|
|
|
|
|
| |
and APFloat::convertToInteger. Restore return value to
IEEE754. Adjust all users accordingly.
llvm-svn: 57329
|
| |
|
|
|
|
|
| |
make it clearer what the function does. No functional
change.
llvm-svn: 57325
|
| |
|
|
|
|
| |
thus aligning the label.
llvm-svn: 57310
|
| |
|
|
|
|
| |
registers that alias its inputs.
llvm-svn: 57286
|
| |
|
|
|
|
|
|
|
|
| |
instead.
So now: -fast-isel or -fast-isel=true enable fast-isel, and
-fast-isel=false disables it. Fast-isel is also on by default
with -fast, and off by default otherwise.
llvm-svn: 57270
|
| |
|
|
|
|
|
| |
for things like null pointers, which at this level aren't
different from regular integer constants.
llvm-svn: 57265
|
| |
|
|
| |
llvm-svn: 57259
|
| |
|
|
| |
llvm-svn: 57255
|
| |
|
|
| |
llvm-svn: 57249
|
| |
|
|
| |
llvm-svn: 57248
|
| |
|
|
|
|
| |
test/Codegen/Generic/i128-addsub.ll on x86
llvm-svn: 57247
|
| |
|
|
| |
llvm-svn: 57243
|
| |
|
|
|
|
| |
2006-01-23-UnionInit on x86-64 when inlining is not enabled.
llvm-svn: 57223
|
| |
|
|
|
|
| |
ENABLE_EXPENSIVE_CHECKS for finding this.
llvm-svn: 57181
|
| |
|
|
| |
llvm-svn: 57179
|
| |
|
|
| |
llvm-svn: 57148
|
| |
|
|
| |
llvm-svn: 57147
|
| |
|
|
|
|
| |
patch by Mikael Lepisto!
llvm-svn: 57077
|
| |
|
|
|
|
| |
for llvmc2 incomplete.
llvm-svn: 57076
|
| |
|
|
| |
llvm-svn: 57046
|
| |
|
|
|
|
|
|
| |
expand to multiple basic blocks, in which case fast-isel
needs to informed of which block to use as it resumes
inserting instructions.
llvm-svn: 57040
|
| |
|
|
|
|
|
|
| |
was setting kill flags on tied uses in two-address instructions.
The kill flags were causing the allocator to think it could
allocate the use and its tied def in different registers.
llvm-svn: 57039
|
| |
|
|
|
|
|
| |
incidentally making the case where the memop is a
pointer deref work. Fix cmp-and-swap regression.
llvm-svn: 57027
|
| |
|
|
| |
llvm-svn: 57021
|
| |
|
|
| |
llvm-svn: 57018
|
| |
|
|
|
|
| |
isReg, etc., from isRegister, etc.
llvm-svn: 57006
|
| |
|
|
|
|
|
|
|
| |
than the type an i1 is promoted to (eg: i8). Account
for this. Noticed by Tilmann Scheller on CellSPU; he
will hopefully take care of fixing this in LegalizeDAG
and adding a testcase!
llvm-svn: 56997
|
| |
|
|
|
|
|
| |
It turns out that this is a fairly common operation,
and it's easy enough to handle.
llvm-svn: 56990
|
| |
|
|
|
|
|
|
|
|
|
| |
sequences like this:
sete %al
testb %al, %al
jne LBB11_1
with this:
je LBB11_1
llvm-svn: 56969
|
| |
|
|
|
|
|
| |
can be used when deciding if a block can transfer control to another
via a fall-through instead of a branch.
llvm-svn: 56968
|
| |
|
|
| |
llvm-svn: 56965
|
| |
|
|
|
|
|
|
|
|
| |
so we don't lose copies when two of them have
the same source. I don't know what I was thinking when I wrote this originally.
Note: There's probably a more efficient way to do this, but I need to think about it some more, and about what determinism
guarantees need to be present.
llvm-svn: 56964
|
| |
|
|
| |
llvm-svn: 56963
|
| |
|
|
|
|
| |
Contributed by Lang Hames.
llvm-svn: 56959
|
| |
|
|
|
|
| |
volatile memory references are safe to move.
llvm-svn: 56948
|
| |
|
|
| |
llvm-svn: 56937
|
| |
|
|
| |
llvm-svn: 56930
|
| |
|
|
| |
llvm-svn: 56927
|
| |
|
|
|
|
| |
immediately.
llvm-svn: 56921
|
| |
|
|
| |
llvm-svn: 56919
|
| |
|
|
| |
llvm-svn: 56900
|
| |
|
|
| |
llvm-svn: 56893
|
| |
|
|
|
|
| |
amount of time to track down.
llvm-svn: 56889
|
| |
|
|
|
|
| |
- Testcase for r56885.
llvm-svn: 56886
|
| |
|
|
|
|
|
|
|
| |
`-fno-builtin' flag. Currently, it's used to replace "memset" with "_bzero"
instead of "__bzero" on Darwin10+. This arguably violates the meaning of this
flag, but is currently sufficient. The meaning of this flag should become more
specific over time.
llvm-svn: 56885
|
| |
|
|
|
|
| |
they'll be a little more visible. Also, update and reword them a bit.
llvm-svn: 56877
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Completely eliminate the TopOrder std::vector. Instead, sort
the AllNodes list in place. This also eliminates the need to
call AllNodes.size(), a linear-time operation, before
performing the sort.
Also, eliminate the Sources temporary std::vector, since it
essentially duplicates the sorted result as it is being
built.
This also changes the direction of the topological sort
from bottom-up to top-down. The AllNodes list starts out in
roughly top-down order, so this reduces the amount of
reordering needed. Top-down is also more convenient for
Legalize, and ISel needed only minor adjustments.
llvm-svn: 56867
|
| |
|
|
| |
llvm-svn: 56848
|
| |
|
|
|
|
|
|
|
|
| |
"If a re-materializable instruction has a register
operand, the spiller will change the register operand's
spill weight to HUGE_VAL to avoid it being spilled.
However, if the operand is already in the queue ready
to be spilled, avoid re-materializing it".
llvm-svn: 56837
|