summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target
Commit message (Collapse)AuthorAgeFilesLines
...
* Add a beta-test for placing the LSDA into the TEXT section on X86.Bill Wendling2010-03-122-2/+57
| | | | llvm-svn: 98370
* Fix llc crash on invalid input.Devang Patel2010-03-121-0/+7
| | | | llvm-svn: 98369
* Remove some dead code. This method only gets called on Chris Lattner2010-03-121-5/+0
| | | | | | definitions. llvm-svn: 98368
* use Mang->getSymbol instead of duplicating the logic, reduce indentation.Chris Lattner2010-03-121-19/+13
| | | | llvm-svn: 98367
* finally give Mangler a getSymbol method, which returns an MCSymbolChris Lattner2010-03-122-10/+14
| | | | | | for a global instead of messing around with string buffers. llvm-svn: 98366
* simplify code to use OutContext.GetOrCreateTemporarySymbol withChris Lattner2010-03-121-5/+2
| | | | | | | no arguments instead of having to come up with a unique name. This also makes the code less fragile. llvm-svn: 98364
* make the mangler take an MCContext instead of an MAI.Chris Lattner2010-03-122-5/+10
| | | | | | No functionality change. llvm-svn: 98363
* Use StringRef::substr instead of std::string::substr to avoid using a free'dBenjamin Kramer2010-03-121-1/+2
| | | | | | string temporary. This should fix PR6590. llvm-svn: 98349
* The same situation that effected ARM effects PPC with regards to placing theBill Wendling2010-03-125-4/+81
| | | | | | | | | LSDA into the TEXT section. We need to generate non-lazy pointers to it on Mach-O. However, the object the NLP points to may be local to the translation unit. If so, then the NLP needs to have the value of that object specified instead of "0", which the linker interprets as "external". llvm-svn: 98325
* make TargetLoweringObjectFile::getExprForDwarfReferenceChris Lattner2010-03-121-5/+1
| | | | | | | just make unnamed temp symbols instead of having to come up with its own names. llvm-svn: 98324
* MC-ize PPC's asm printing of stubs.Bill Wendling2010-03-111-9/+20
| | | | llvm-svn: 98300
* fix a fixme in TargetLoweringObjectFile::getExprForDwarfReferenceChris Lattner2010-03-111-12/+18
| | | | | | | | | where we used ot create an MCSymbol for ".". Now emit an assembler temporary label and reference it instead of "." textually. rdar://7739457 llvm-svn: 98292
* Remove getWidenVectorType, which is no longer used.Dan Gohman2010-03-112-45/+0
| | | | llvm-svn: 98289
* Set the (Format)F filed of t2Int_MemBarrierV7 & t2Int_SyncBarrierV7 to ThumbFrm,Johnny Chen2010-03-111-2/+2
| | | | | | instead of Pseudo, which helps Thumb decoder to recognize them as Thumb instr. llvm-svn: 98285
* revert r98270.Bill Wendling2010-03-111-2/+2
| | | | llvm-svn: 98281
* rename getSymbolForDwarf* to getExprForDwarf* since it returnsChris Lattner2010-03-113-12/+14
| | | | | | | | | an MCExpr and not an MCSymbol. Change it to take an MCStreamer, which is currently unused. No functionality change. llvm-svn: 98278
* Bad bad bug. x86 force indirect tail call address into eax when it's meant ↵Evan Cheng2010-03-111-2/+2
| | | | | | to force it into a call preserved register instead. Change it to ecx for now. llvm-svn: 98270
* Remove dead code. (S|U)MUL_LO is now lowered to LMUL or MACC(S|U)Richard Osborne2010-03-111-23/+0
| | | | llvm-svn: 98269
* Add dag combine to simplify lmul(x, 0, a, b)Richard Osborne2010-03-111-0/+27
| | | | llvm-svn: 98258
* Switch XCore over to using inline jump table entries.Richard Osborne2010-03-112-0/+6
| | | | llvm-svn: 98256
* Have fast-isel understand llvm.objectsize. Update testcase for slightlyEric Christopher2010-03-111-0/+24
| | | | | | different codegen. llvm-svn: 98244
* MC: Sketch initial MCAsmLayout class, which encapsulates the current layout ↵Daniel Dunbar2010-03-112-3/+4
| | | | | | of an assembly file. The MCAsmLayout is also available for use by MCExpr::EvaluateAs{Absolute,Relocatable}, to allow target specific hooks and "absolutizing" of symbols. llvm-svn: 98227
* MC: Sketch some TargetAsmBackend hooks we are going to need.Daniel Dunbar2010-03-111-2/+22
| | | | llvm-svn: 98221
* MC: Provide the target triple to AsmBackend constructors.Daniel Dunbar2010-03-112-8/+7
| | | | llvm-svn: 98220
* When outputing a non-lazy pointer for a stub, we may need to fill in the valueBill Wendling2010-03-111-4/+5
| | | | | | | | | | | | | | | | | | | | | | | | for the NLP because the object it's pointing to may be internal to the file. This seems counter-intuitive, but bear with me. When we place the LSDA into the TEXT section, the type info pointers need to be indirect and pc-rel. We accomplish this by using NLPs. However, sometimes the types are local to the file. GCC gets around this by not using a NLP in this case, but a "regular" indirection like this: GCC_except_tbl: .long Lfoo-. __ZTIA: @ This is local ... Lfoo: .long __ZTIA LLVM prefers NLPs on Darwin. In fact, it's more optimal for load performance to use them. llvm-svn: 98218
* Added Thumb2 LDRD/STRD pre/post variants for disassembly only.Johnny Chen2010-03-113-2/+25
| | | | | | Plus fixed the encoding of t2LDRDpci such that P = 1 and W = 0 (offset mode). llvm-svn: 98217
* Fix ARM buildbot breakage.Bob Wilson2010-03-111-2/+2
| | | | llvm-svn: 98215
* add support, testcases, and dox for the new GHC callingChris Lattner2010-03-114-13/+60
| | | | | | convention. Patch by David Terei! llvm-svn: 98212
* Lower small memcpys to load/stores on Thumb2.Bob Wilson2010-03-111-3/+3
| | | | | | Radar 7686922. llvm-svn: 98210
* Work around a bug in the openbsd assembler on i386,Chris Lattner2010-03-111-1/+6
| | | | | | | | | which doesn't support .quad correctly because it is "really really old". PR6528. Yet another reason the mc assembler should take over ;-) llvm-svn: 98205
* Fix an obvious typo in an assert.Bob Wilson2010-03-101-1/+1
| | | | | | Patch by Sean Callanan. llvm-svn: 98200
* Add a bit along with the MCSymbols stored in the MachineModuleInfo maps thatBill Wendling2010-03-104-59/+92
| | | | | | | | indicates that an MCSymbol is external or not. (It's true if it's external.) This will be used to specify the correct information to add to non-lazy pointers. That will be explained further when this bit is used. llvm-svn: 98199
* Progress towards shepherding debug info through SelectionDAG.Dale Johannesen2010-03-101-0/+15
| | | | | | | No functional effect yet. This is still evolving and should not be viewed as final. llvm-svn: 98195
* move PR6576 here.Chris Lattner2010-03-101-0/+24
| | | | llvm-svn: 98194
* Make sure the LR gets pushed in functions that use vaargs. This fixesJim Grosbach2010-03-101-0/+4
| | | | | | 400.perlbench for the nightly tests. llvm-svn: 98183
* comment why we use custom epilogue for t1 functions using vaargs.Jim Grosbach2010-03-101-0/+5
| | | | llvm-svn: 98182
* Factored out the disassembly printing of CPS option, MSR mask, and Negative ZeroJohnny Chen2010-03-106-24/+52
| | | | | | | operands into their own PrintMethod, in order not to pollute the printOperand() impl with disassembly only Imm modifiers. llvm-svn: 98172
* The backend now makes a reasonable job of targeting lmul / maccRichard Osborne2010-03-101-1/+0
| | | | llvm-svn: 98169
* Handle MVT::i64 type in DAG combine for ISD::ADD. Fold 64 bitRichard Osborne2010-03-101-2/+29
| | | | | | | expression add(add(mul(x,y),a),b) -> lmul(x,y,a,b) if all operands are zero extended. llvm-svn: 98168
* Fix checking of intermediates having one use in isADDADDMULRichard Osborne2010-03-101-2/+3
| | | | llvm-svn: 98164
* Extract recognition of patterns such as add(add(mul(x,y),a),b)Richard Osborne2010-03-101-48/+66
| | | | | | into a seperate function. llvm-svn: 98162
* Fix thinko.Richard Osborne2010-03-102-5/+7
| | | | llvm-svn: 98158
* Fold add(add(mul(x,y),a),b) -> lmul(x,y,a,b) if the intermediateRichard Osborne2010-03-101-0/+56
| | | | | | results are unused elsewhere. llvm-svn: 98157
* Prefer LMUL to MACCU as LMUL has no tied operands.Richard Osborne2010-03-103-3/+13
| | | | llvm-svn: 98153
* Custom lower (S|U)MUL_LOHI -> MACC(S|U)Richard Osborne2010-03-102-0/+40
| | | | llvm-svn: 98152
* Fix indentationRichard Osborne2010-03-101-1/+1
| | | | llvm-svn: 98151
* Lower add (mul a, b), c into MACCU / MACCS nodes which translateRichard Osborne2010-03-103-0/+86
| | | | | | | | directly to the maccu / maccs instructions. We handle this in ExpandADDSUB since after type legalisation it is messy to recognise these operations. llvm-svn: 98150
* move three lowering hooks from MAI to TLOF and make one of themChris Lattner2010-03-101-0/+4
| | | | | | | semantic instead of syntactic. This completes MCization of darwin/x86[-64]! llvm-svn: 98145
* set the temporary bit on MCSymbols correctly.Chris Lattner2010-03-109-22/+37
| | | | llvm-svn: 98124
* Clear up the last (famous last words) frame index value reuse issues for Thumb1.Jim Grosbach2010-03-101-1/+1
| | | | llvm-svn: 98109
OpenPOWER on IntegriCloud