|  | Commit message (Collapse) | Author | Age | Files | Lines | 
|---|
| | 
| 
| 
| 
| 
| | * Commandline option (for now) controls that flag that is passed in
llvm-svn: 13141 | 
| | 
| 
| 
| 
| 
| 
| | With this fix we now successfully extract all 149 loops from 256.bzip2 without
crashing or miscompiling the program!
llvm-svn: 12493 | 
| | 
| 
| 
| | llvm-svn: 12489 | 
| | 
| 
| 
| | llvm-svn: 12487 | 
| | 
| 
| 
| | llvm-svn: 12486 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| | 1. Names were not put on the new arguments created (ok, this just helps sanity :)
2. Fix outgoing pointer values
3. Do not insert stores for values that had not been computed
4. Fix some wierd problems with the outset calculation
This fixes CodeExtractor/2004-03-14-DominanceProblem.ll, making the extractor
work on at least one simple case!
llvm-svn: 12484 | 
| | 
| 
| 
| 
| 
| 
| | exposed the fact that the header was not self-contained.  There is a reason
we do things :)
llvm-svn: 12481 | 
| | 
| 
| 
| 
| 
| | considered an input.
llvm-svn: 12406 | 
| | 
| 
| 
| 
| 
| 
| 
| | Simplify the input/output finder.  All elements of a basic block are
instructions.  Any used arguments are also inputs.  An instruction can only
be used by another instruction.
llvm-svn: 12405 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| | * Don't insert a branch to the switch instruction after the call, just
  make it a single block.
* Insert the new alloca instructions in the entry block of the original
  function instead of having them execute dynamically
* Don't make the default edge of the switch instruction go back to the switch.
  The loop extractor shouldn't create new loops!
* Give meaningful names to the alloca slots and the reload instructions
* Some minor code simplifications
llvm-svn: 12402 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| | This also implements a two minor improvements:
  * Don't insert live-out stores IN the region, insert them on the code path
    that exits the region
  * If the region is exited to the same block from multiple paths, share the
    switch statement entry, live-out store code, and the basic block.
llvm-svn: 12401 | 
| | 
| 
| 
| 
| 
| 
| | a member of the class.  While we're at it, turn the collection into a set
instead of a vector to improve efficiency and make queries simpler.
llvm-svn: 12400 | 
| | 
| 
| 
| | llvm-svn: 12382 | 
| | 
| 
| 
| 
| 
| | curly braceage
llvm-svn: 12378 | 
| | 
| 
| 
| | llvm-svn: 12070 | 
| | 
| 
| 
| 
| 
| | * Add comments to ExtractLoop()
llvm-svn: 12053 | 
|  | a new function, taking care of inputs and outputs.
llvm-svn: 11935 |