summaryrefslogtreecommitdiffstats
path: root/llvm
Commit message (Collapse)AuthorAgeFilesLines
* Simplify code. No intended functionality/performance change.Benjamin Kramer2010-01-071-37/+12
| | | | llvm-svn: 92938
* If the data requires a relocation then don't attempt toEric Christopher2010-01-071-0/+7
| | | | | | | add it to the constant pool for fast-isel. We already don't add it for the normal case. llvm-svn: 92934
* We need to put any kind of data with a relocation into aEric Christopher2010-01-071-1/+1
| | | | | | not-readonly segment on darwin. llvm-svn: 92933
* Use separate namespace for named metadata.Devang Patel2010-01-079-29/+155
| | | | llvm-svn: 92931
* Fix occurrence typoKovarththanan Rajaratnam2010-01-071-8/+8
| | | | llvm-svn: 92926
* constant materialization could be improved.Chris Lattner2010-01-071-0/+33
| | | | llvm-svn: 92921
* Kill dead store.Benjamin Kramer2010-01-071-2/+1
| | | | llvm-svn: 92920
* Remove dead variable.Benjamin Kramer2010-01-071-7/+2
| | | | llvm-svn: 92919
* Use pop_back_val instead of back()+pop_back.Benjamin Kramer2010-01-071-7/+4
| | | | llvm-svn: 92918
* Use a do-while loop instead of while + boolean.Benjamin Kramer2010-01-071-6/+4
| | | | llvm-svn: 92912
* Correct spelling.Duncan Sands2010-01-071-2/+2
| | | | llvm-svn: 92910
* Be less stingy as to how many selects and phi nodes weDuncan Sands2010-01-071-2/+2
| | | | | | are prepared to look through. llvm-svn: 92898
* More trivial optimizations to a function well outside the critical pathDouglas Gregor2010-01-071-15/+8
| | | | llvm-svn: 92896
* handle ConstantVector while I'm in here.Chris Lattner2010-01-071-0/+3
| | | | llvm-svn: 92892
* fix a globalopt crash on 'bullet' (handling evaluation of a storeChris Lattner2010-01-072-16/+36
| | | | | | | | | | to an element of a vector in a static ctor) which occurs with an unrelated patch I'm testing. Annoyingly, EvaluateStoreInto basically does exactly the same stuff as InsertElement constant folding, but it now handles vectors, and you can't insertelement into a vector. It would be 'really nice' if GEP into a vector were not legal. llvm-svn: 92889
* Fix a minor regression from my dag combiner changes. One more place which ↵Evan Cheng2010-01-072-7/+52
| | | | | | needs to look pass truncates. llvm-svn: 92885
* Switch StringRef::edit_distance over to using raw pointers, since bothDouglas Gregor2010-01-071-7/+25
| | | | | | | std::vector and llvm::SmallVector have annoying performance tradeoffs. No, I don't expect this to matter, and now it won't. llvm-svn: 92884
* Add comments.Jakob Stoklund Olesen2010-01-073-0/+6
| | | | llvm-svn: 92883
* 80 column violationsJim Grosbach2010-01-061-4/+6
| | | | llvm-svn: 92876
* Allow double defs after tail duplication.Jakob Stoklund Olesen2010-01-061-1/+2
| | | | llvm-svn: 92874
* Add Target hook to duplicate machine instructions.Jakob Stoklund Olesen2010-01-066-22/+151
| | | | | | | Some instructions refer to unique labels, and so cannot be trivially cloned with CloneMachineInstr. llvm-svn: 92873
* Addressing mode 6 (load/store) instructions can't encode an immediate offsetJim Grosbach2010-01-061-1/+4
| | | | | | for stack references. llvm-svn: 92871
* Anti-dependency breaking needs to be careful regarding instructions withJim Grosbach2010-01-062-3/+9
| | | | | | multiple register definitions. llvm-svn: 92864
* Move the object size intrinsic optimization to inst-combine and makeEric Christopher2010-01-062-24/+12
| | | | | | it work for any integer size return type. llvm-svn: 92853
* Comment.Evan Cheng2010-01-061-0/+3
| | | | llvm-svn: 92850
* Teach dag combine to fold the following transformation more aggressively:Evan Cheng2010-01-0612-120/+339
| | | | | | | | | | (OP (trunc x), (trunc y)) -> (trunc (OP x, y)) Unfortunately this simple change causes dag combine to infinite looping. The problem is the shrink demanded ops optimization tend to canonicalize expressions in the opposite manner. That is badness. This patch disable those optimizations in dag combine but instead it is done as a late pass in sdisel. This also exposes some deficiencies in dag combine and x86 setcc / brcond lowering. Teach them to look pass ISD::TRUNCATE in various places. llvm-svn: 92849
* Fix struct/class mismatchDouglas Gregor2010-01-061-1/+1
| | | | llvm-svn: 92841
* When parsing function-local metadata, create a function-local MDNodeVictor Hernandez2010-01-062-10/+16
| | | | llvm-svn: 92838
* 80 column and whitespace cleanupJim Grosbach2010-01-064-95/+108
| | | | llvm-svn: 92837
* Fix a README item: have functionattrs look through selects andDuncan Sands2010-01-063-42/+69
| | | | | | | | | phi nodes when deciding which pointers point to local memory. I actually checked long ago how useful this is, and it isn't very: it hardly ever fires in the testsuite, but since Chris wants it here it is! llvm-svn: 92836
* Formatting.Mikhail Glushenkov2010-01-061-2/+2
| | | | llvm-svn: 92831
* Fixed malformed -*- lines in PBQP headers.Lang Hames2010-01-069-9/+9
| | | | llvm-svn: 92830
* Partially address a README by having functionattrs consider calls toDuncan Sands2010-01-066-9/+60
| | | | | | | | | | memcpy, memset and other intrinsics that only access their arguments to be readnone if the intrinsic's arguments all point to local memory. This improves the testcase in the README to readonly, but it could in theory be made readnone, however this would involve more sophisticated analysis that looks through the memcpy. llvm-svn: 92829
* This is testing a darwin specific feature, so only turnDuncan Sands2010-01-061-0/+2
| | | | | | it on for darwin (it fails on linux). llvm-svn: 92826
* tweaks suggested by DuncanChris Lattner2010-01-061-7/+7
| | | | llvm-svn: 92824
* Reenable debug info on PPC. Works well enough toDale Johannesen2010-01-061-0/+1
| | | | | | bootstrap. llvm-svn: 92818
* Make sure debug info hook gets called when emittingDale Johannesen2010-01-061-12/+11
| | | | | | synonyms for PPC. llvm-svn: 92817
* Teach instcombine's sext elimination logic to be more aggressive.Chris Lattner2010-01-063-39/+179
| | | | | | | | | | | | | | Previously, instcombine would only promote an expression tree to the larger type if doing so eliminated two casts. This is because a need to manually do the sign extend after the promoted expression tree with two shifts. Now, we keep track of whether the result of the computation is going to be properly sign extended already. If so, we can unconditionally promote the expression, which allows us to zap more sext's. This implements rdar://6598839 (aka gcc pr38751) llvm-svn: 92815
* Add <imp-def> and <imp-kill> operands when replacing virtual sub-register ↵Jakob Stoklund Olesen2010-01-063-18/+52
| | | | | | | | | | | | | | defs and kills. An instruction like this: %reg1097:1<def> = VMOVSR %R3<kill>, 14, %reg0 Must be replaced with this when substituting physical registers: %S0<def> = VMOVSR %R3<kill>, 14, %reg0, %D0<imp-def> llvm-svn: 92812
* The previous code could potentially cause a cycle. Allow ordering w.r.t. a 0 ↵Bill Wendling2010-01-061-2/+2
| | | | | | order. llvm-svn: 92810
* Only check the ordering if there is an ordering for each nodes.Bill Wendling2010-01-061-2/+2
| | | | llvm-svn: 92807
* Add a semi-primitive form of scheduling via the "SDNode ordering" to theBill Wendling2010-01-051-0/+12
| | | | | | bottom-up scheduler. We prefer the lower order number. llvm-svn: 92806
* simplify this code.Chris Lattner2010-01-051-109/+66
| | | | llvm-svn: 92800
* Move this test from test/Transforms/IndVarSimplify toDan Gohman2010-01-051-0/+0
| | | | | | | test/CodeGen/X86, as doesn't use -indvars, and it does use llc -march=x86-64. llvm-svn: 92799
* Don't assign the shift the same type as the variable being shifted. This couldBill Wendling2010-01-052-1/+18
| | | | | | result in illegal types for the SHL operator. llvm-svn: 92797
* Undo r92785, it caused test failure.Johnny Chen2010-01-051-3/+3
| | | | llvm-svn: 92796
* make this a static function instead of a method.Chris Lattner2010-01-052-6/+5
| | | | llvm-svn: 92795
* Don't use the ISD::NodeType enum for SDNode opcodes, as CodeGenDan Gohman2010-01-053-25/+25
| | | | | | | uses several kinds of opcode values which are not declared within that enum. This fixes PR5946. llvm-svn: 92794
* Re-add parsing of function-local metadata; this time with testcase.Victor Hernandez2010-01-053-21/+50
| | | | llvm-svn: 92793
* more rearrangement and cleanup, fix my test failure.Chris Lattner2010-01-052-122/+108
| | | | llvm-svn: 92792
OpenPOWER on IntegriCloud