Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Lower stpcpy_chk when possible. | Eric Christopher | 2010-03-11 | 3 | -6/+40 |
| | | | | llvm-svn: 98274 | ||||
* | Bad bad bug. x86 force indirect tail call address into eax when it's meant ↵ | Evan Cheng | 2010-03-11 | 1 | -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 Osborne | 2010-03-11 | 1 | -23/+0 |
| | | | | llvm-svn: 98269 | ||||
* | Avoid leaking CompileUnits in DwarfDebug.cpp. | Jeffrey Yasskin | 2010-03-11 | 2 | -14/+15 |
| | | | | llvm-svn: 98268 | ||||
* | MC/Mach-O: Add MCSymbolData::getAddress() utility. | Daniel Dunbar | 2010-03-11 | 1 | -4/+4 |
| | | | | llvm-svn: 98266 | ||||
* | Fix typo. | Eric Christopher | 2010-03-11 | 1 | -1/+1 |
| | | | | llvm-svn: 98260 | ||||
* | Add dag combine to simplify lmul(x, 0, a, b) | Richard Osborne | 2010-03-11 | 1 | -0/+27 |
| | | | | llvm-svn: 98258 | ||||
* | Switch XCore over to using inline jump table entries. | Richard Osborne | 2010-03-11 | 2 | -0/+6 |
| | | | | llvm-svn: 98256 | ||||
* | Add a new jump table encoding to indicate jump tables entries | Richard Osborne | 2010-03-11 | 3 | -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 Cheng | 2010-03-11 | 2 | -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 Kremenek | 2010-03-11 | 1 | -0/+1 |
| | | | | llvm-svn: 98250 | ||||
* | Have fast-isel understand llvm.objectsize. Update testcase for slightly | Eric Christopher | 2010-03-11 | 1 | -0/+24 |
| | | | | | | different codegen. llvm-svn: 98244 | ||||
* | Make clang bootstrap happier on OSX 10.5 by reducing the number of headers | Jeffrey Yasskin | 2010-03-11 | 2 | -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 Dunbar | 2010-03-11 | 2 | -4/+28 |
| | | | | | | assembly time value of variables. llvm-svn: 98241 | ||||
* | MC/Mach-O: Start passing in the basic MCAsmLayout object. | Daniel Dunbar | 2010-03-11 | 1 | -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 to | Eric Christopher | 2010-03-11 | 1 | -0/+134 |
| | | | | | | | | that in InstCombineCalls. More call lowering needed. llvm-svn: 98228 | ||||
* | MC: Sketch initial MCAsmLayout class, which encapsulates the current layout ↵ | Daniel Dunbar | 2010-03-11 | 3 | -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 Dunbar | 2010-03-11 | 1 | -1/+0 |
| | | | | llvm-svn: 98225 | ||||
* | Fix debug_value handling. | Dale Johannesen | 2010-03-11 | 1 | -2/+6 |
| | | | | llvm-svn: 98224 | ||||
* | MC: Provide MCAssembler with a TargetAsmBackend. | Daniel Dunbar | 2010-03-11 | 3 | -11/+14 |
| | | | | llvm-svn: 98222 | ||||
* | MC: Sketch some TargetAsmBackend hooks we are going to need. | Daniel Dunbar | 2010-03-11 | 1 | -2/+22 |
| | | | | llvm-svn: 98221 | ||||
* | MC: Provide the target triple to AsmBackend constructors. | Daniel Dunbar | 2010-03-11 | 2 | -8/+7 |
| | | | | llvm-svn: 98220 | ||||
* | Add strncpy libcall creator. Use it when it should be used. | Eric Christopher | 2010-03-11 | 2 | -1/+22 |
| | | | | llvm-svn: 98219 | ||||
* | When outputing a non-lazy pointer for a stub, we may need to fill in the value | Bill Wendling | 2010-03-11 | 1 | -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 Chen | 2010-03-11 | 3 | -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 Wilson | 2010-03-11 | 1 | -2/+2 |
| | | | | llvm-svn: 98215 | ||||
* | add support, testcases, and dox for the new GHC calling | Chris Lattner | 2010-03-11 | 4 | -13/+60 |
| | | | | | | convention. Patch by David Terei! llvm-svn: 98212 | ||||
* | Lower small memcpys to load/stores on Thumb2. | Bob Wilson | 2010-03-11 | 1 | -3/+3 |
| | | | | | | Radar 7686922. llvm-svn: 98210 | ||||
* | VirtRegRewriter spring cleaning. No functional change. | Jakob Stoklund Olesen | 2010-03-11 | 1 | -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 Lattner | 2010-03-11 | 1 | -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 case | Chris Lattner | 2010-03-10 | 1 | -5/+7 |
| | | | | | | when it looked past a trunc. llvm-svn: 98203 | ||||
* | Cosmetic: lengthen names and improve comments. | Dale Johannesen | 2010-03-10 | 2 | -16/+15 |
| | | | | llvm-svn: 98202 | ||||
* | Fix an obvious typo in an assert. | Bob Wilson | 2010-03-10 | 1 | -1/+1 |
| | | | | | | Patch by Sean Callanan. llvm-svn: 98200 | ||||
* | Add a bit along with the MCSymbols stored in the MachineModuleInfo maps that | Bill Wendling | 2010-03-10 | 6 | -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 Johannesen | 2010-03-10 | 8 | -28/+191 |
| | | | | | | | No functional effect yet. This is still evolving and should not be viewed as final. llvm-svn: 98195 | ||||
* | move PR6576 here. | Chris Lattner | 2010-03-10 | 1 | -0/+24 |
| | | | | llvm-svn: 98194 | ||||
* | Fix another bitwidth calculation to handle vector types; based on a | Dan Gohman | 2010-03-10 | 1 | -1/+1 |
| | | | | | | patch by Micah Villmow for PR6572. llvm-svn: 98188 | ||||
* | MC/Mach-O: Use the MCAssembler symbol map instead of reconstructing. | Daniel Dunbar | 2010-03-10 | 1 | -32/+17 |
| | | | | llvm-svn: 98187 | ||||
* | MC: Move the backend section and symbol data maps to MCAssembler. | Daniel Dunbar | 2010-03-10 | 1 | -30/+11 |
| | | | | llvm-svn: 98186 | ||||
* | Make sure the LR gets pushed in functions that use vaargs. This fixes | Jim Grosbach | 2010-03-10 | 1 | -0/+4 |
| | | | | | | 400.perlbench for the nightly tests. llvm-svn: 98183 | ||||
* | comment why we use custom epilogue for t1 functions using vaargs. | Jim Grosbach | 2010-03-10 | 1 | -0/+5 |
| | | | | llvm-svn: 98182 | ||||
* | Fix another place where DEBUG_VALUE affected codegen. | Dale Johannesen | 2010-03-10 | 1 | -1/+12 |
| | | | | llvm-svn: 98181 | ||||
* | Add a DominatorTree argument to isLCSSA so that it doesn't have to | Dan Gohman | 2010-03-10 | 6 | -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 Gohman | 2010-03-10 | 1 | -0/+11 |
| | | | | llvm-svn: 98178 | ||||
* | Factored out the disassembly printing of CPS option, MSR mask, and Negative Zero | Johnny Chen | 2010-03-10 | 6 | -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 / macc | Richard Osborne | 2010-03-10 | 1 | -1/+0 |
| | | | | llvm-svn: 98169 | ||||
* | Handle MVT::i64 type in DAG combine for ISD::ADD. Fold 64 bit | Richard Osborne | 2010-03-10 | 1 | -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 Dunbar | 2010-03-10 | 3 | -3/+0 |
| | | | | llvm-svn: 98167 | ||||
* | Fix checking of intermediates having one use in isADDADDMUL | Richard Osborne | 2010-03-10 | 1 | -2/+3 |
| | | | | llvm-svn: 98164 | ||||
* | Extract recognition of patterns such as add(add(mul(x,y),a),b) | Richard Osborne | 2010-03-10 | 1 | -48/+66 |
| | | | | | | into a seperate function. llvm-svn: 98162 |