summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
...
* Discard split intervals made empty due to folding.Evan Cheng2007-12-041-5/+16
| | | | llvm-svn: 44565
* More CellSPU files... more to follow.Scott Michel2007-12-032-0/+125
| | | | llvm-svn: 44559
* Makefile fragment for CellSPU.Scott Michel2007-12-031-0/+20
| | | | llvm-svn: 44558
* First commit to CellSPU. More to followScott Michel2007-12-031-5/+36
| | | | llvm-svn: 44557
* Bug fixes.Evan Cheng2007-12-031-7/+8
| | | | llvm-svn: 44549
* RegenerateAnton Korobeynikov2007-12-032-196/+210
| | | | llvm-svn: 44546
* Fix fallout from my last patch: don't reject varargs functions :)Anton Korobeynikov2007-12-031-7/+14
| | | | llvm-svn: 44545
* Rather than having special rules like "intrinsics cannotDuncan Sands2007-12-0315-96/+73
| | | | | | | | | throw exceptions", just mark intrinsics with the nounwind attribute. Likewise, mark intrinsics as readnone/readonly and get rid of special aliasing logic (which didn't use anything more than this anyway). llvm-svn: 44544
* update file comment.Chris Lattner2007-12-031-2/+5
| | | | llvm-svn: 44543
* RegenerateAnton Korobeynikov2007-12-032-280/+292
| | | | llvm-svn: 44541
* If ExitValue operand is also defined in Loop header thenDevang Patel2007-12-031-0/+17
| | | | | | | | insert new ExitValue after this operand definition. This fixes PR1828. llvm-svn: 44539
* More sanity checks for function types. Anton Korobeynikov2007-12-032-2/+26
| | | | | | Thanks goes to PyPy folks for generating broken stuff :) llvm-svn: 44538
* Applying Anton's binmode fix to the other ofstream too.Gordon Henriksen2007-12-031-1/+1
| | | | llvm-svn: 44535
* Sorry, typo :)Anton Korobeynikov2007-12-031-2/+4
| | | | llvm-svn: 44534
* Open output file correctly. This is extremely important forAnton Korobeynikov2007-12-031-1/+1
| | | | | | windows-based hosts, where files are opened in text mode by default. llvm-svn: 44533
* TypoEvan Cheng2007-12-031-1/+1
| | | | llvm-svn: 44532
* Update kill info for uses of split intervals.Evan Cheng2007-12-032-11/+17
| | | | llvm-svn: 44531
* Provide hook for _alloca to make JITing on Cygwin slightly happier :)Anton Korobeynikov2007-12-031-3/+11
| | | | llvm-svn: 44528
* Remove redundant foldMemoryOperand variants and other code clean up.Evan Cheng2007-12-0217-233/+163
| | | | llvm-svn: 44517
* Integrate the readonly/readnone logic more deeplyDuncan Sands2007-12-0111-70/+77
| | | | | | | | | | | | | | | into alias analysis. This meant updating the API which now has versions of the getModRefBehavior, doesNotAccessMemory and onlyReadsMemory methods which take a callsite parameter. These should be used unless the callsite is not known, since in general they can do a better job than the versions that take a function. Also, users should no longer call the version of getModRefBehavior that takes both a function and a callsite. To reduce the chance of misuse it is now protected. llvm-svn: 44487
* Fix a bug where splitting cause some unnecessary spilling.Evan Cheng2007-12-011-2/+12
| | | | llvm-svn: 44482
* Allow some reloads to be folded in multi-use cases. Specifically testl r, r ↵Evan Cheng2007-12-019-30/+182
| | | | | | -> cmpl [mem], 0. llvm-svn: 44479
* Fixed subtle bug in Deserializer::JumpTo when jumping when the block-nestingTed Kremenek2007-11-301-9/+27
| | | | | | | information matching did not exactly match the underlying stream's scoping information. llvm-svn: 44470
* Do not fold reload into an instruction with multiple uses. It issues one ↵Evan Cheng2007-11-301-75/+86
| | | | | | extra load. llvm-svn: 44467
* chain update requests properly.Chris Lattner2007-11-301-0/+3
| | | | llvm-svn: 44460
* Small optimization of parameter attribute lookup.Duncan Sands2007-11-301-1/+1
| | | | llvm-svn: 44458
* Add a convenience method for modifying parameterDuncan Sands2007-11-302-4/+62
| | | | | | | | attributes. While there, I noticed that not all attribute methods returned a pointer-to-constant, so I fixed that. llvm-svn: 44457
* Check that there are not more attributes thanDuncan Sands2007-11-301-0/+4
| | | | | | function parameters. llvm-svn: 44452
* Provide a way to update DescGlobals cache directly.Devang Patel2007-11-301-0/+6
| | | | llvm-svn: 44446
* Do not lose rematerialization info when spilling already split live intervals.Evan Cheng2007-11-291-14/+9
| | | | llvm-svn: 44443
* Fix a miscompilation in spiff on PPC.Owen Anderson2007-11-291-1/+2
| | | | llvm-svn: 44437
* Fix a major performance issue with splitting. If there is a def (not def/use)Evan Cheng2007-11-291-60/+133
| | | | | | | | | | | | | | | in the middle of a split basic block, create a new live interval starting at the def. This avoid artifically extending the live interval over a number of cycles where it is dead. e.g. bb1: = vr1204 (use / kill) <= new interval starts and ends here. ... ... vr1204 = (new def) <= start a new interval here. = vr1204 (use) llvm-svn: 44436
* Replace the odd kill# hack with something less fragile.Evan Cheng2007-11-293-16/+17
| | | | llvm-svn: 44434
* Small parameter attributes cleanup.Duncan Sands2007-11-291-4/+6
| | | | llvm-svn: 44433
* Fixed various live interval splitting bugs / compile time issues.Evan Cheng2007-11-293-157/+266
| | | | llvm-svn: 44428
* Kill info update bug.Evan Cheng2007-11-291-0/+3
| | | | llvm-svn: 44427
* Work around a GCC bug, producing this code:Chris Lattner2007-11-281-0/+6
| | | | | | | | | | | | | | unsigned char *llvm_cbe_X; ... llvm_cbe_X = 0; *((void**)&llvm_cbe_X) = __builtin_stack_save(); instead of: llvm_cbe_X = __builtin_stack_save(); See PR1809 for details. llvm-svn: 44415
* Implement ExpandOperationResult for ppc i64 fp->int, which fixesChris Lattner2007-11-282-0/+11
| | | | | | | CodeGen/Generic/fp_to_int.ll among others. Its unclear why this just started failing... llvm-svn: 44407
* for consistency, allow a fallthrough if the final check returns null.Chris Lattner2007-11-281-1/+2
| | | | llvm-svn: 44406
* Add some convenience methods for querying attributes, andDuncan Sands2007-11-289-82/+50
| | | | | | use them. llvm-svn: 44403
* My compiler complains that "x always evaluates to true"Duncan Sands2007-11-281-2/+6
| | | | | | | | | | | | | | | | | | | | | | | in this call: Result.IntVal = APInt(80, 2, x); What is x? uint16_t x[8]; I deduce that the APInt constructor being used is this one: APInt(uint32_t numBits, uint64_t val, bool isSigned = false); rather than this one: APInt(uint32_t numBits, uint32_t numWords, const uint64_t bigVal[]); That doesn't seem right! This fix compiles but is otherwise completely untested. llvm-svn: 44400
* Add missing newlines at EOF.Duncan Sands2007-11-281-1/+1
| | | | llvm-svn: 44399
* Recover compile time regression.Evan Cheng2007-11-283-86/+73
| | | | llvm-svn: 44386
* Add MachineLoopInfo. This is not yet tested.Owen Anderson2007-11-271-0/+41
| | | | llvm-svn: 44384
* several entries got significantly better, though they still aren't done.Chris Lattner2007-11-271-40/+18
| | | | llvm-svn: 44382
* implement a trivial readme entry.Chris Lattner2007-11-273-18/+26
| | | | llvm-svn: 44380
* Fix a crash on invalid code due to memcpy lowering.Chris Lattner2007-11-271-25/+30
| | | | llvm-svn: 44378
* Make this actually work on systems that support ppc long double.Chris Lattner2007-11-271-3/+8
| | | | llvm-svn: 44374
* Unbreak all of the darwin/ppc32 JIT failures having to do Chris Lattner2007-11-271-0/+10
| | | | | | with not being able to find printf. llvm-svn: 44373
* Support returning non-power-of-2 vectors to unblock some workNate Begeman2007-11-272-4/+13
| | | | llvm-svn: 44371
OpenPOWER on IntegriCloud