| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
| |
llvm-svn: 86794
|
| |
|
|
|
|
| |
function it's generated for.
llvm-svn: 86779
|
| |
|
|
| |
llvm-svn: 86771
|
| |
|
|
| |
llvm-svn: 86763
|
| |
|
|
| |
llvm-svn: 86753
|
| |
|
|
|
|
|
|
|
| |
constant whose component type is not a legal type for the target.
(If the target ConstantPool cannot handle this type either, it has
an opportunity to merge elements. In practice any target with
8-bit bytes must support i8 *as data*). 7320806 (partial).
llvm-svn: 86751
|
| |
|
|
| |
llvm-svn: 86748
|
| |
|
|
|
|
|
|
| |
Critical edges leading to a PHI node are split when the PHI source variable is
live out from the predecessor block. This help the coalescer eliminate more
PHI joins.
llvm-svn: 86725
|
| |
|
|
|
|
|
| |
Clean up some whitespace.
No functional changes.
llvm-svn: 86724
|
| |
|
|
|
|
| |
just throw them away.
llvm-svn: 86678
|
| |
|
|
| |
llvm-svn: 86642
|
| |
|
|
| |
llvm-svn: 86641
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch forbids implicit conversion of DenseMap::const_iterator to
DenseMap::iterator which was possible because DenseMapIterator inherited
(publicly) from DenseMapConstIterator. Conversion the other way around is now
allowed as one may expect.
The template DenseMapConstIterator is removed and the template parameter
IsConst which specifies whether the iterator is constant is added to
DenseMapIterator.
Actually IsConst parameter is not necessary since the constness can be
determined from KeyT but this is not relevant to the fix and can be addressed
later.
Patch by Victor Zverovich!
llvm-svn: 86636
|
| |
|
|
| |
llvm-svn: 86634
|
| |
|
|
|
|
| |
be renamed to break anti-dependencies.
llvm-svn: 86628
|
| |
|
|
| |
llvm-svn: 86601
|
| |
|
|
| |
llvm-svn: 86600
|
| |
|
|
|
|
|
|
|
|
|
|
| |
instructions. This makes CodeGen dumps significantly less noisy.
Example before:
BL <ga:@bar>, %R0<imp-def>, %R1<imp-def,dead>, %R2<imp-def,dead>, %R3<imp-def,dead>, %R12<imp-def,dead>, %LR<imp-def,dead>, %D0<imp-def,dead>, %D1<imp-def,dead>, %D2<imp-def,dead>, %D3<imp-def,dead>, %D4<imp-def,dead>, %D5<imp-def,dead>, %D6<imp-def,dead>, %D7<imp-def,dead>, %D16<imp-def,dead>, %D17<imp-def,dead>, %D18<imp-def,dead>, %D19<imp-def,dead>, %D20<imp-def,dead>, %D21<imp-def,dead>, %D22<imp-def,dead>, %D23<imp-def,dead>, %D24<imp-def,dead>, %D25<imp-def,dead>, %D26<imp-def,dead>, %D27<imp-def,dead>, %D28<imp-def,dead>, %D29<imp-def,dead>, %D30<imp-def,dead>, %D31<imp-def,dead>, %CPSR<imp-def,dead>, %FPSCR<imp-def,dead>
Same example after:
BL <ga:@bar>, %R0<imp-def>, %R1<imp-def,dead>, %LR<imp-def,dead>, %CPSR<imp-def,dead>, ...
llvm-svn: 86583
|
| |
|
|
|
|
| |
dependencies were overly conservative for memory access that are known not to alias.
llvm-svn: 86580
|
| |
|
|
| |
llvm-svn: 86564
|
| |
|
|
| |
llvm-svn: 86522
|
| |
|
|
| |
llvm-svn: 86521
|
| |
|
|
| |
llvm-svn: 86446
|
| |
|
|
| |
llvm-svn: 86384
|
| |
|
|
| |
llvm-svn: 86354
|
| |
|
|
| |
llvm-svn: 86342
|
| |
|
|
| |
llvm-svn: 86340
|
| |
|
|
|
|
|
|
|
|
| |
except it doesn't care if the definitions' virtual registers differ. This is
used by machine LICM and other MI passes to perform CSE.
- Teach Thumb2InstrInfo::isIdentical() to check two t2LDRpci_pic are identical.
Since pc relative constantpool entries are always different, this requires it
it check if the values can actually the same.
llvm-svn: 86328
|
| |
|
|
|
|
| |
values can be lowered to registers. Coming soon, code to perform sret-demotion if return values cannot be lowered to registers
llvm-svn: 86324
|
| |
|
|
|
|
|
|
|
|
| |
A non-identity copy cannot be coalesced when the phi join destination register
is live at the copy site.
Also verify the condition that the PHI join source register is only used in
the PHI join. Otherwise the coalescing is invalid.
llvm-svn: 86322
|
| |
|
|
| |
llvm-svn: 86295
|
| |
|
|
|
|
| |
prints them with the leading '@'.
llvm-svn: 86261
|
| |
|
|
| |
llvm-svn: 86259
|
| |
|
|
| |
llvm-svn: 86212
|
| |
|
|
| |
llvm-svn: 86199
|
| |
|
|
|
|
| |
problems with name collisions.
llvm-svn: 86189
|
| |
|
|
|
|
| |
junk from the initial numbering code in runOnMachineFunction.
llvm-svn: 86184
|
| |
|
|
|
|
| |
for regions that do not have antidep candidates.
llvm-svn: 86172
|
| |
|
|
| |
llvm-svn: 86151
|
| |
|
|
| |
llvm-svn: 86102
|
| |
|
|
|
|
| |
avoid introducing new anti-dependencies.
llvm-svn: 86098
|
| |
|
|
|
|
| |
before pre-emit passes.
llvm-svn: 86092
|
| |
|
|
| |
llvm-svn: 86085
|
| |
|
|
|
|
| |
instructions.
llvm-svn: 86080
|
| |
|
|
|
|
|
|
| |
variants encoded as DIDerivedType appropriately.
This improves bitfield support.
llvm-svn: 86073
|
| |
|
|
|
|
| |
annonymous field that covers respective field.
llvm-svn: 86054
|
| |
|
|
|
|
| |
sanity when constructing index list entries.
llvm-svn: 86049
|
| |
|
|
| |
llvm-svn: 86044
|
| |
|
|
| |
llvm-svn: 86043
|
| |
|
|
|
|
|
|
| |
The KILL pseudo-instruction may survive to the asm printer pass, just like the IMPLICIT_DEF. Print the KILL as a comment instead of just leaving a blank line in the output.
With -asm-verbose=0, a blank line is printed, like IMPLICIT?DEF.
llvm-svn: 86041
|