summaryrefslogtreecommitdiffstats
path: root/llvm
Commit message (Collapse)AuthorAgeFilesLines
* Remove superfluous NULL assignmentKovarththanan Rajaratnam2010-03-121-11/+11
| | | | llvm-svn: 98350
* 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
* Now that it's supported, turn copysignl into a COPYSIGN node.Duncan Sands2010-03-121-1/+1
| | | | llvm-svn: 98348
* Fix PR6522: implement copysign expansion for x86 long doubleDuncan Sands2010-03-121-23/+39
| | | | | | | | (it seems that FreeBSD doesn't have copysignl). Done by removing a bunch of assumptions from the code. This may also help with sparc 128 bit floats. llvm-svn: 98346
* Factor checked library call optimization into a common helper class and use itBenjamin Kramer2010-03-124-200/+140
| | | | | | to unify the almost identical code in CodeGenPrepare and InstCombineCalls. llvm-svn: 98338
* fix PR6577, a bug in sdbuilder lowering select instructionsChris Lattner2010-03-122-1/+16
| | | | | | whose true value was not Val#0. llvm-svn: 98336
* update mkpatch for MC, patch by Aaron GrayChris Lattner2010-03-121-1/+1
| | | | llvm-svn: 98334
* 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-122-11/+1
| | | | | | | just make unnamed temp symbols instead of having to come up with its own names. llvm-svn: 98324
* There is no need to create specification DIE for definitions at DIFile level.Devang Patel2010-03-111-1/+2
| | | | llvm-svn: 98302
* MC-ize PPC's asm printing of stubs.Bill Wendling2010-03-111-9/+20
| | | | llvm-svn: 98300
* Whoops this already existed.Nate Begeman2010-03-112-7/+0
| | | | llvm-svn: 98297
* Add a handful of additional useful pass manager things to the C APINate Begeman2010-03-112-0/+25
| | | | llvm-svn: 98296
* Extract methods from LocalRewriter::RewriteMBB bringing it down to 666 lines.Jakob Stoklund Olesen2010-03-111-168/+197
| | | | llvm-svn: 98295
* enhance MCContext::GetOrCreateTemporarySymbol() to create a new symbolChris Lattner2010-03-111-0/+6
| | | | | | with an arbitrary unique name. llvm-svn: 98294
* change MCContext to always have an MCAsmInfo.Chris Lattner2010-03-116-15/+24
| | | | llvm-svn: 98293
* fix a fixme in TargetLoweringObjectFile::getExprForDwarfReferenceChris Lattner2010-03-115-18/+31
| | | | | | | | | 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-114-66/+0
| | | | llvm-svn: 98289
* empty symbols aren't possible, the mcsymbol ctor aborts on them.Chris Lattner2010-03-111-4/+0
| | | | llvm-svn: 98288
* 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
* stpcpy is so similar to strcpy, it doesn't deserve a complete copy of the ↵Benjamin Kramer2010-03-114-65/+13
| | | | | | __strcpy_chk -> strcpy code. llvm-svn: 98284
* revert r98270.Bill Wendling2010-03-112-3/+3
| | | | llvm-svn: 98281
* rename getSymbolForDwarf* to getExprForDwarf* since it returnsChris Lattner2010-03-117-38/+50
| | | | | | | | | an MCExpr and not an MCSymbol. Change it to take an MCStreamer, which is currently unused. No functionality change. llvm-svn: 98278
* In case of tail call size of Ins and InVals may not match.Evan Cheng2010-03-111-6/+7
| | | | llvm-svn: 98277
* Lower stpcpy_chk when possible.Eric Christopher2010-03-114-6/+45
| | | | llvm-svn: 98274
* Bad bad bug. x86 force indirect tail call address into eax when it's meant ↵Evan Cheng2010-03-112-3/+3
| | | | | | 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
* Avoid leaking CompileUnits in DwarfDebug.cpp.Jeffrey Yasskin2010-03-112-14/+15
| | | | llvm-svn: 98268
* MC/Mach-O: Add MCSymbolData::getAddress() utility.Daniel Dunbar2010-03-112-4/+9
| | | | llvm-svn: 98266
* Fix typo.Eric Christopher2010-03-111-1/+1
| | | | llvm-svn: 98260
* Add dag combine to simplify lmul(x, 0, a, b)Richard Osborne2010-03-112-0/+40
| | | | llvm-svn: 98258
* Switch XCore over to using inline jump table entries.Richard Osborne2010-03-112-0/+6
| | | | llvm-svn: 98256
* Add a new jump table encoding to indicate jump tables entriesRichard Osborne2010-03-114-1/+16
| | | | | | are inside the function by the target at the point of use. llvm-svn: 98255
* The check for coalescing a virtual register to a physical register, e.g.Evan Cheng2010-03-114-15/+61
| | | | | | | | | cl = EXTRACT_SUBREG reg1024, 1, is overly conservative. It should check for overlaps of vr's live interval with the super registers of the physical register (ECX in this case) and let JoinIntervals() handle checking the coalescing feasibility against the physical register (cl in this case). llvm-svn: 98251
* Update CMake build.Ted Kremenek2010-03-111-0/+1
| | | | llvm-svn: 98250
* Have fast-isel understand llvm.objectsize. Update testcase for slightlyEric Christopher2010-03-112-1/+25
| | | | | | different codegen. llvm-svn: 98244
* Make clang bootstrap happier on OSX 10.5 by reducing the number of headersJeffrey Yasskin2010-03-112-39/+67
| | | | | | | | | included when using global symbols to ask the linker for the addresses of various functions. One of the symbols was actually getting declared by a header included in DynamicLibrary.cpp, which conflicted with the "extern void*" declaration in SearchForAddressOfSpecialSymbol(). llvm-svn: 98243
* MC/Mach-O: Implement "absolutizing" semantics of .set, by evaluating the ↵Daniel Dunbar2010-03-113-4/+99
| | | | | | assembly time value of variables. llvm-svn: 98241
* MC/Mach-O: Start passing in the basic MCAsmLayout object.Daniel Dunbar2010-03-112-27/+15
| | | | | | - Also, drop the current location part of AsmLayout, I think I prefer to implement this via explicit symbols. llvm-svn: 98240
* Do some final lowering in CodeGenPrepare of _chk calls similar toEric Christopher2010-03-111-0/+134
| | | | | | | | that in InstCombineCalls. More call lowering needed. llvm-svn: 98228
* MC: Sketch initial MCAsmLayout class, which encapsulates the current layout ↵Daniel Dunbar2010-03-116-14/+72
| | | | | | 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
* Fix (unused) RegisterAsmBackend template, clang++ isn't happy about this.Daniel Dunbar2010-03-111-2/+3
| | | | llvm-svn: 98226
* Remove dead include.Daniel Dunbar2010-03-111-1/+0
| | | | llvm-svn: 98225
* Fix debug_value handling.Dale Johannesen2010-03-111-2/+6
| | | | llvm-svn: 98224
* MC: Provide MCAssembler with a TargetAsmBackend.Daniel Dunbar2010-03-117-23/+27
| | | | llvm-svn: 98222
* MC: Sketch some TargetAsmBackend hooks we are going to need.Daniel Dunbar2010-03-112-2/+44
| | | | llvm-svn: 98221
* MC: Provide the target triple to AsmBackend constructors.Daniel Dunbar2010-03-113-11/+11
| | | | llvm-svn: 98220
* Add strncpy libcall creator. Use it when it should be used.Eric Christopher2010-03-113-1/+27
| | | | llvm-svn: 98219
* 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
OpenPOWER on IntegriCloud