| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
| |
llvm-svn: 94601
|
| |
|
|
|
|
|
|
|
|
|
|
| |
assignments.
.set x, a-b
is the same as:
x = a-b
llvm-svn: 94596
|
| |
|
|
|
|
|
|
| |
llvm-as: t.ll:1:25: error: invalid cast opcode for cast from '[4 x i8]' to '[1 x i32]'
@x = constant [1 x i32] bitcast ([4 x i8] c"abcd" to [1 x i32])
^
llvm-svn: 94595
|
| |
|
|
| |
llvm-svn: 94593
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
bonus.
A GEP with all constant indices is already considered free by
analyzeBasicBlock(), so don't give it an extra bonus in
CountCodeReductionForAlloca().
This patch should remove a small positive bias toward inlining functions with
variable-index GEPs, and remove a smaller negative bias from functions with
all-constant index GEPs.
llvm-svn: 94591
|
| |
|
|
|
|
|
|
|
|
| |
Functions containing indirectbr are marked NeverInline by analyzeBasicBlock(),
so there is no point in giving indirectbr special treatment in
CountCodeReductionForConstant. It is never called.
No functional change intended.
llvm-svn: 94590
|
| |
|
|
|
|
|
|
| |
Save a few bytes by allocating the correct size vector.
No functional change intended.
llvm-svn: 94589
|
| |
|
|
| |
llvm-svn: 94587
|
| |
|
|
|
|
| |
c++ class that holds current class's vtable.
llvm-svn: 94586
|
| |
|
|
|
|
|
|
|
|
|
| |
Default HasSetDirective to true, since most targets have it.
The targets that claim to not have it probably do, or it is
spelled differently. These include Blackfin, Mips, Alpha, and
PIC16. All of these except pic16 are normal ELF targets, so
they almost certainly have it.
llvm-svn: 94585
|
| |
|
|
| |
llvm-svn: 94583
|
| |
|
|
|
|
| |
Original patch by Sandeep Patel and updated by me.
llvm-svn: 94582
|
| |
|
|
|
|
| |
that has it.
llvm-svn: 94581
|
| |
|
|
| |
llvm-svn: 94580
|
| |
|
|
|
|
| |
and clean up some loose ends.
llvm-svn: 94572
|
| |
|
|
| |
llvm-svn: 94570
|
| |
|
|
| |
llvm-svn: 94567
|
| |
|
|
| |
llvm-svn: 94562
|
| |
|
|
| |
llvm-svn: 94560
|
| |
|
|
| |
llvm-svn: 94558
|
| |
|
|
|
|
| |
than an iteration count.
llvm-svn: 94549
|
| |
|
|
|
|
| |
in the case of empty and full ranges.
llvm-svn: 94548
|
| |
|
|
|
|
| |
wrapping that Duncan pointed out.
llvm-svn: 94547
|
| |
|
|
| |
llvm-svn: 94544
|
| |
|
|
|
|
|
| |
subsumed by TargetLowering::getJumpTableEncoding(). Change uses of
it to be more specific.
llvm-svn: 94529
|
| |
|
|
|
|
|
| |
inline it into its only caller, allowing us to simplify it
and hoist bits out of the loop.
llvm-svn: 94528
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
which is more convenient, and change getPICJumpTableRelocBaseExpr
to take a MachineFunction to match.
Next, move the X86 code that create a PICBase symbol to
X86TargetLowering::getPICBaseSymbol from
X86MCInstLower::GetPICBaseSymbol, which was an asmprinter specific
library. This eliminates a 'gross hack', and allows us to
implement X86ISelLowering::getPICJumpTableRelocBaseExpr which now
calls it.
This in turn allows us to eliminate the
X86AsmPrinter::printPICJumpTableSetLabel method, which was the
only overload of printPICJumpTableSetLabel.
llvm-svn: 94526
|
| |
|
|
|
|
| |
use it to implement the default TargetLowering::getPICJumpTableRelocBaseExpr
llvm-svn: 94523
|
| |
|
|
|
|
| |
implement it.
llvm-svn: 94521
|
| |
|
|
|
|
|
| |
EK_LabelDifference32 kind and the target has .set support. Simplify
X86AsmPrinter::printPICJumpTableSetLabel to make use of recent helpers.
llvm-svn: 94518
|
| |
|
|
|
|
|
| |
make it private and non-virtual. It handles the non-pic
case too, so just use it, simplifying EmitJumpTableInfo.
llvm-svn: 94517
|
| |
|
|
|
|
|
|
|
|
|
| |
jump table entry kind, instead of overloading
AsmPrinter::printPICJumpTableEntry.
This has a pretty horrible and inefficient FIXME around how @GOTOFF
is currently smashed into the mcsymbol name, but otherwise this is
much cleaner.
llvm-svn: 94516
|
| |
|
|
|
|
| |
the AsmPrinter::GetMBBSymbol.
llvm-svn: 94515
|
| |
|
|
|
|
|
|
|
| |
* Fixed a reduction bug which occasionally led to infinite-cost (invalid)
register allocation solutions despite the existence finite-cost solutions.
* Significantly reduced memory usage (>50% reduction).
* Simplified a lot of the solver code.
llvm-svn: 94514
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
have trouble with an intermediate add overflowing. Also, be more conservative
about the case where the induction variable in an SLT loop exit can step past
the RHS of the SLT and overflow in a single step.
Make getSignedRange more aggressive, to recover for some common cases which
the above fixes pessimized.
This addresses rdar://7561161.
llvm-svn: 94512
|
| |
|
|
|
|
|
| |
AsmPrinter::SetupMachineFunction sets it. Note that systemz
and msp430 didn't. Yay for reduced inconsistency! :)
llvm-svn: 94510
|
| |
|
|
|
|
|
|
| |
MachineFunctionAnalysis dole them out, instead of having
AsmPrinter do both. Have the AsmPrinter::SetupMachineFunction
method set the 'AsmPrinter::MF' variable.
llvm-svn: 94509
|
| |
|
|
| |
llvm-svn: 94507
|
| |
|
|
| |
llvm-svn: 94506
|
| |
|
|
|
|
| |
jump table entries.
llvm-svn: 94505
|
| |
|
|
| |
llvm-svn: 94502
|
| |
|
|
|
|
|
|
|
| |
variables.
JITInfo::getPICJumpTableEntry can probably be removed now, but I don't plan to do
this.
llvm-svn: 94501
|
| |
|
|
|
|
| |
instead of magic variables.
llvm-svn: 94500
|
| |
|
|
|
|
| |
associated llvm.dbg.declare instrinsic, insert an llvm.dbg.var intrinsic before each store.
llvm-svn: 94493
|
| |
|
|
|
|
| |
by metadata (since metadata does not appear in a value's use list)
llvm-svn: 94492
|
| |
|
|
| |
llvm-svn: 94491
|
| |
|
|
| |
llvm-svn: 94490
|
| |
|
|
| |
llvm-svn: 94489
|
| |
|
|
|
|
| |
TargetAsmLexer.
llvm-svn: 94482
|
| |
|
|
|
|
|
| |
dbg.declare's we currently generate go through both
register allocators without perturbing the results.
llvm-svn: 94480
|