| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
| |
To support this, move IsCalleePop from X86ISelLowering to X86Subtarget.
llvm-svn: 104866
|
|
|
|
|
|
| |
Use the tablegen-produced enums.
llvm-svn: 104493
|
|
|
|
|
|
|
|
|
|
| |
that are aliases of the specified register.
- Rename modifiesRegister to definesRegister since it's looking a def of the
specific register or one of its super-registers. It's not looking for def of a
sub-register or alias that could change the specified register.
- Added modifiesRegister to look for defs of aliases.
llvm-svn: 104377
|
|
|
|
|
|
| |
Patch by Charles Davis and Steven Watanabe!
llvm-svn: 103902
|
|
|
|
| |
llvm-svn: 103529
|
|
|
|
|
|
| |
doesn't have to guess.
llvm-svn: 103194
|
|
|
|
|
|
| |
and into SelectionDAGBuilder and FastISel.
llvm-svn: 102123
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
const_casts, and it reinforces the design of the Target classes being
immutable.
SelectionDAGISel::IsLegalToFold is now a static member function, because
PIC16 uses it in an unconventional way. There is more room for API
cleanup here.
And PIC16's AsmPrinter no longer uses TargetLowering.
llvm-svn: 101635
|
|
|
|
|
|
|
| |
Probably the best way to know that all getOperand() calls have been handled
is to replace that API instead of updating.
llvm-svn: 101579
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
with a fix for self-hosting
rotate CallInst operands, i.e. move callee to the back
of the operand array
the motivation for this patch are laid out in my mail to llvm-commits:
more efficient access to operands and callee, faster callgraph-construction,
smaller compiler binary
llvm-svn: 101465
|
|
|
|
| |
llvm-svn: 101434
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
with a fix
rotate CallInst operands, i.e. move callee to the back
of the operand array
the motivation for this patch are laid out in my mail to llvm-commits:
more efficient access to operands and callee, faster callgraph-construction,
smaller compiler binary
llvm-svn: 101397
|
|
|
|
| |
llvm-svn: 101368
|
|
|
|
|
|
|
|
|
|
| |
of the operand array
the motivation for this patch are laid out in my mail to llvm-commits:
more efficient access to operands and callee, faster callgraph-construction,
smaller compiler binary
llvm-svn: 101364
|
|
|
|
| |
llvm-svn: 101334
|
|
|
|
|
|
| |
a bunch of stuff to support it.
llvm-svn: 101273
|
|
|
|
|
|
|
| |
solution. The only reason these don't fire with gcc-4.2 is that gcc turns off
part of -Wsign-compare in C++ on accident.
llvm-svn: 100581
|
|
|
|
| |
llvm-svn: 100416
|
|
|
|
| |
llvm-svn: 100381
|
|
|
|
|
|
|
| |
makes calls a little bit more consistent and allows easy removal of the
specializations in the future. Convert all callers to the templated functions.
llvm-svn: 99838
|
|
|
|
| |
llvm-svn: 98881
|
|
|
|
| |
llvm-svn: 98862
|
|
|
|
|
|
| |
different codegen.
llvm-svn: 98244
|
|
|
|
|
|
| |
convention. Patch by David Terei!
llvm-svn: 98212
|
|
|
|
| |
llvm-svn: 97740
|
|
|
|
|
|
|
| |
register if it isn't possible to match the indexes *and* the base.
This fixes some fast isel rejects of load instructions on oggenc.
llvm-svn: 97739
|
|
|
|
|
|
| |
as X86 is currently the only FastISel target. Per review.
llvm-svn: 97255
|
|
|
|
|
|
| |
comes out as comments but will eventually generate DWARF.
llvm-svn: 96601
|
|
|
|
|
|
| |
isInteger, we now have isFloatTy and isIntegerTy. Requested by Chris!
llvm-svn: 96223
|
|
|
|
|
|
|
| |
use a multipattern that generates both the 1-byte and 4-byte
versions from the same defm
llvm-svn: 95901
|
|
|
|
|
|
|
|
|
| |
into TargetOpcodes.h. #include the new TargetOpcodes.h
into MachineInstr. Add new inline accessors (like isPHI())
to MachineInstr, and start using them throughout the
codebase.
llvm-svn: 95687
|
|
|
|
|
|
| |
its current purpose.
llvm-svn: 95564
|
|
|
|
| |
llvm-svn: 94843
|
|
|
|
| |
llvm-svn: 94625
|
|
|
|
| |
llvm-svn: 94617
|
|
|
|
| |
llvm-svn: 94570
|
|
|
|
|
|
|
| |
dbg.declare's we currently generate go through both
register allocators without perturbing the results.
llvm-svn: 94480
|
|
|
|
| |
llvm-svn: 93818
|
|
|
|
|
|
|
|
|
| |
comments (fast isel, X86). This doesn't seem
to break any functionality, but will introduce
cases where -g affects the generated code. I'll
be fixing that.
llvm-svn: 93811
|
|
|
|
| |
llvm-svn: 93781
|
|
|
|
|
|
|
| |
on x86-64 linux with messages like this:
Error: Incorrect register `%r14' used with `l' suffix
llvm-svn: 93242
|
|
|
|
|
|
| |
autogen them after 93152 and 93191.
llvm-svn: 93204
|
|
|
|
| |
llvm-svn: 93154
|
|
|
|
|
|
|
|
|
|
|
| |
putting relocations into the constant pool - this isn't needed
for correctness and in the rare occasion it happens would pull
us out of fast isel for the block.
If fast-isel application startup time ever becomes an issue we
can add better support for these addresses instead of bailing.
llvm-svn: 92995
|
|
|
|
| |
llvm-svn: 92972
|
|
|
|
|
|
|
| |
add it to the constant pool for fast-isel. We already
don't add it for the normal case.
llvm-svn: 92934
|
|
|
|
| |
llvm-svn: 92760
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
slots. The AsmPrinter will use this information to determine whether to
print a spill/reload comment.
Remove default argument values. It's too easy to pass a wrong argument
value when multiple arguments have default values. Make everything
explicit to trap bugs early.
Update all targets to adhere to the new interfaces..
llvm-svn: 87022
|
|
|
|
|
|
|
|
| |
the new predicates I added) instead of going through a context and doing a
pointer comparison. Besides being cheaper, this allows a smart compiler
to turn the if sequence into a switch.
llvm-svn: 83297
|
|
|
|
| |
llvm-svn: 80773
|