summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
* Lower stpcpy_chk when possible.Eric Christopher2010-03-113-6/+40
| | | | llvm-svn: 98274
* 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
* 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-111-4/+4
| | | | 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-111-0/+27
| | | | 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-113-0/+11
| | | | | | 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-112-10/+21
| | | | | | | | | 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-111-0/+24
| | | | | | 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-112-4/+28
| | | | | | assembly time value of variables. llvm-svn: 98241
* MC/Mach-O: Start passing in the basic MCAsmLayout object.Daniel Dunbar2010-03-111-13/+14
| | | | | | - 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-113-11/+12
| | | | | | 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
* 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-113-11/+14
| | | | llvm-svn: 98222
* 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
* Add strncpy libcall creator. Use it when it should be used.Eric Christopher2010-03-112-1/+22
| | | | 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
* 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
* VirtRegRewriter spring cleaning. No functional change.Jakob Stoklund Olesen2010-03-111-1255/+1292
| | | | | | | Move methods out of line and M-x whitespace-cleanup. Promote common method arguments to member variables. llvm-svn: 98207
* 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 PR6533 by updating the br(xor) code to remember the caseChris Lattner2010-03-101-5/+7
| | | | | | when it looked past a trunc. llvm-svn: 98203
* Cosmetic: lengthen names and improve comments.Dale Johannesen2010-03-102-16/+15
| | | | llvm-svn: 98202
* 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-106-72/+114
| | | | | | | | 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-108-28/+191
| | | | | | | 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
* Fix another bitwidth calculation to handle vector types; based on aDan Gohman2010-03-101-1/+1
| | | | | | patch by Micah Villmow for PR6572. llvm-svn: 98188
* MC/Mach-O: Use the MCAssembler symbol map instead of reconstructing.Daniel Dunbar2010-03-101-32/+17
| | | | llvm-svn: 98187
* MC: Move the backend section and symbol data maps to MCAssembler.Daniel Dunbar2010-03-101-30/+11
| | | | llvm-svn: 98186
* 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
* Fix another place where DEBUG_VALUE affected codegen.Dale Johannesen2010-03-101-1/+12
| | | | llvm-svn: 98181
* Add a DominatorTree argument to isLCSSA so that it doesn't have toDan Gohman2010-03-106-21/+7
| | | | | | | compute a set of reachable blocks for itself each time it is called, which is fairly frequently. llvm-svn: 98179
* Constant-fold GEP-of-GEP into a single GEP.Dan Gohman2010-03-101-0/+11
| | | | llvm-svn: 98178
* 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
* Remove unneeded includes.Daniel Dunbar2010-03-103-3/+0
| | | | llvm-svn: 98167
* 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
OpenPOWER on IntegriCloud