| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
nodes to indicate when ha16/lo16 modifiers should be used. This lets
us pass PowerPC/indirectbr.ll.
The one annoying thing about this patch is that the MCSymbolExpr isn't
expressive enough to represent ha16(label1-label2) which we need on
PowerPC. I have a terrible hack in the meantime, but this will have
to be revisited at some point.
Last major conversion item left is global variable references.
llvm-svn: 119105
|
|
|
|
| |
llvm-svn: 119104
|
|
|
|
| |
llvm-svn: 119098
|
|
|
|
|
|
| |
out of TargetRegisterInfo to TargetFrameInfo, which is definitely much better suitable place
llvm-svn: 119097
|
|
|
|
| |
llvm-svn: 119096
|
|
|
|
|
|
|
|
| |
and have isel apply to to call operands as required. This allows
us to get $stub suffixes on label references on ppc/tiger with the
new instprinter, fixing two tests. Only 2 to go.
llvm-svn: 119093
|
|
|
|
|
|
| |
lowering support for MovePCtoLR[8]. Down to 4 failures again.
llvm-svn: 119090
|
|
|
|
|
|
|
| |
since it is trivial and will be shared between ppc and x86.
This substantially simplifies the X86 backend also.
llvm-svn: 119089
|
|
|
|
|
|
|
|
| |
on the operand, required for .o file writing and fixing
the PowerPC/mult-alt-generic-powerpc64.ll failure with the new
instprinter.
llvm-svn: 119087
|
|
|
|
|
|
| |
the aborting printSpecial() method. This gets us to 8 failures.
llvm-svn: 119084
|
|
|
|
|
|
| |
printing nothing. This gets us back up to 24 failures.
llvm-svn: 119083
|
|
|
|
|
|
| |
about handling $stub, lo/hi etc.
llvm-svn: 119082
|
|
|
|
| |
llvm-svn: 119081
|
|
|
|
|
|
|
| |
ops the asmprinter supported, fixing PowerPC/rlwimi2.ll
among others. Down to 20 failures.
llvm-svn: 119080
|
|
|
|
|
|
| |
us further along. Only 28 failures now.
llvm-svn: 119079
|
|
|
|
|
|
| |
and printing support for call operands. Down to 77 failures.
llvm-svn: 119078
|
|
|
|
| |
llvm-svn: 119074
|
|
|
|
| |
llvm-svn: 119072
|
|
|
|
|
|
| |
this fixes 3 more ppc tests.
llvm-svn: 119065
|
|
|
|
|
|
| |
failures in CodeGen/PowerPC from 120 -> 117
llvm-svn: 119063
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
add support for darwin vs aix syntax. We now can print instructions
like this:
add r3, r3, r4
blr
and (in aix mode):
add 3, 3, 4
blr
llvm-svn: 119062
|
|
|
|
|
|
| |
instprinter when -enable-ppc-inst-printer is passed to llc.
llvm-svn: 119061
|
|
|
|
| |
llvm-svn: 119059
|
|
|
|
| |
llvm-svn: 119054
|
|
|
|
|
|
|
| |
and as such can be represented by an MVT - the more complicated
EVT is not needed. Use MVT for ValVT everywhere.
llvm-svn: 118245
|
|
|
|
|
|
|
|
|
|
| |
value type, so there is no point in passing it around using
an EVT. Use the simpler MVT everywhere. Rather than trying
to propagate this information maximally in all the code that
using the calling convention stuff, I chose to do a mainly
low impact change instead.
llvm-svn: 118167
|
|
|
|
|
|
| |
basic logic, added initial platform support.
llvm-svn: 117667
|
|
|
|
|
|
| |
(gcc-4.6 warns about these).
llvm-svn: 117021
|
|
|
|
|
|
|
|
|
| |
virtual registers for those stores since RegAllocFast requires that each live
physreg only be used once.
This fixes PR8357.
llvm-svn: 116222
|
|
|
|
|
|
|
|
|
| |
alignment for PPC32/64, avoiding some masking operations.
llvm-gcc expands vaarg inline instead of using the instruction
so it has never hit this.
llvm-svn: 116168
|
|
|
|
| |
llvm-svn: 116018
|
|
|
|
| |
llvm-svn: 115005
|
|
|
|
| |
llvm-svn: 114999
|
|
|
|
|
|
|
|
|
|
|
| |
passed the root of the match, even though only a few patterns
actually needed this (one in X86, several in ARM [which should
be refactored anyway], and some in CellSPU that I don't feel
like detangling). Instead of requiring all ComplexPatterns to
take the dead root, have targets opt into getting the root by
putting SDNPWantRoot on the ComplexPattern.
llvm-svn: 114471
|
|
|
|
| |
llvm-svn: 114461
|
|
|
|
|
|
| |
MachinePointerInfo around more.
llvm-svn: 114452
|
|
|
|
|
|
| |
SelectionDAG::getExtLoad overload, and eliminate it.
llvm-svn: 114446
|
|
|
|
| |
llvm-svn: 114410
|
|
|
|
|
|
|
| |
instead of srcvalue/offset pairs. This corrects SV info for mem
operations whose size is > 32-bits.
llvm-svn: 114401
|
|
|
|
| |
llvm-svn: 114391
|
|
|
|
| |
llvm-svn: 114303
|
|
|
|
|
|
|
|
|
|
|
| |
take multiple cycles to decode.
For the current if-converter clients (actually only ARM), the instructions that
are predicated on false are not nops. They would still take machine cycles to
decode. Micro-coded instructions such as LDM / STM can potentially take multiple
cycles to decode. If-converter should take treat them as non-micro-coded
simple instructions.
llvm-svn: 113570
|
|
|
|
| |
llvm-svn: 113073
|
|
|
|
|
|
| |
to try to re-use scavenged frame index reference registers. rdar://8277890
llvm-svn: 112241
|
|
|
|
| |
llvm-svn: 111835
|
|
|
|
| |
llvm-svn: 111241
|
|
|
|
| |
llvm-svn: 110460
|
|
|
|
| |
llvm-svn: 110410
|
|
|
|
|
|
|
|
| |
address of the static
ID member as the sole unique type identifier. Clean up APIs related to this change.
llvm-svn: 110396
|
|
|
|
| |
llvm-svn: 110256
|