oota-llvm.git
22 years agoFix bug: test/Regression/Transforms/ADCE/2002-01-31-UseStuckAround.ll
Chris Lattner [Tue, 7 May 2002 22:11:39 +0000 (22:11 +0000)]
Fix bug: test/Regression/Transforms/ADCE/2002-01-31-UseStuckAround.ll
Cleanup code a lot

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2547 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoNew testcase for adce
Chris Lattner [Tue, 7 May 2002 21:05:36 +0000 (21:05 +0000)]
New testcase for adce

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2546 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoBuild the ADCE tests
Chris Lattner [Tue, 7 May 2002 20:52:15 +0000 (20:52 +0000)]
Build the ADCE tests

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2545 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoADCE tests
Chris Lattner [Tue, 7 May 2002 20:51:59 +0000 (20:51 +0000)]
ADCE tests

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2544 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoImplement constant propogation of PHI instructions like this:
Chris Lattner [Tue, 7 May 2002 20:44:59 +0000 (20:44 +0000)]
Implement constant propogation of PHI instructions like this:
  X = phi(0, 0, 0)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2543 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoOops, forgot to check in makefile
Chris Lattner [Tue, 7 May 2002 20:39:18 +0000 (20:39 +0000)]
Oops, forgot to check in makefile

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2542 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoAdd check that phi nodes get constant propogated away
Chris Lattner [Tue, 7 May 2002 20:32:19 +0000 (20:32 +0000)]
Add check that phi nodes get constant propogated away

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2541 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoconstprop doesn't delete dead instructions, it just makes them dead.
Chris Lattner [Tue, 7 May 2002 20:25:44 +0000 (20:25 +0000)]
constprop doesn't delete dead instructions, it just makes them dead.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2540 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoAdd testcase for not expressions
Chris Lattner [Tue, 7 May 2002 20:22:12 +0000 (20:22 +0000)]
Add testcase for not expressions

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2539 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoMerge all include/llvm/Transforms/Scalar/* into a single Scalar.h
Chris Lattner [Tue, 7 May 2002 20:03:27 +0000 (20:03 +0000)]
Merge all include/llvm/Transforms/Scalar/* into a single Scalar.h

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2538 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoMerge all individual .h files into a single Scalar.h file
Chris Lattner [Tue, 7 May 2002 20:03:00 +0000 (20:03 +0000)]
Merge all individual .h files into a single Scalar.h file

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2537 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoThis doesn't use DCE!
Chris Lattner [Tue, 7 May 2002 20:02:44 +0000 (20:02 +0000)]
This doesn't use DCE!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2536 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoExtend TargetData::getIndexedOffset to support arrays and pointers!
Chris Lattner [Tue, 7 May 2002 20:00:33 +0000 (20:00 +0000)]
Extend TargetData::getIndexedOffset to support arrays and pointers!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2535 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoThese files are supersumed by include/llvm/Transforms/Scalar.h
Chris Lattner [Tue, 7 May 2002 19:38:42 +0000 (19:38 +0000)]
These files are supersumed by include/llvm/Transforms/Scalar.h

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2534 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoNew header file to replace all of the Scalar/*.h files.
Chris Lattner [Tue, 7 May 2002 19:37:18 +0000 (19:37 +0000)]
New header file to replace all of the Scalar/*.h files.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2533 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoFix makefiles after shuffling passes around the libraries
Chris Lattner [Tue, 7 May 2002 19:27:33 +0000 (19:27 +0000)]
Fix makefiles after shuffling passes around the libraries

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2532 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoMove UnifyFunctionExitNodes to Utils library: final resting place this time
Chris Lattner [Tue, 7 May 2002 19:18:48 +0000 (19:18 +0000)]
Move UnifyFunctionExitNodes to Utils library: final resting place this time

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2531 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agofix comments and documentation in file
Chris Lattner [Tue, 7 May 2002 19:04:39 +0000 (19:04 +0000)]
fix comments and documentation in file

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2530 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoSplit ChangeAllocations.cpp into Raise & LowerAllocations.cpp
Chris Lattner [Tue, 7 May 2002 19:02:48 +0000 (19:02 +0000)]
Split ChangeAllocations.cpp into Raise & LowerAllocations.cpp

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2529 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoCheckin headers for Utils library
Chris Lattner [Tue, 7 May 2002 18:52:48 +0000 (18:52 +0000)]
Checkin headers for Utils library

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2528 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoCleanup implementation a bit + comments
Chris Lattner [Tue, 7 May 2002 18:51:44 +0000 (18:51 +0000)]
Cleanup implementation a bit + comments

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2527 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoCleanup implementation a bit
Chris Lattner [Tue, 7 May 2002 18:51:25 +0000 (18:51 +0000)]
Cleanup implementation a bit

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2526 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoChange script to not even look in test/ directory, significantly speeding it up
Chris Lattner [Tue, 7 May 2002 18:42:09 +0000 (18:42 +0000)]
Change script to not even look in test/ directory, significantly speeding it up

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2525 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoOops, somehow lost a slash. Fixed
Chris Lattner [Tue, 7 May 2002 18:39:52 +0000 (18:39 +0000)]
Oops, somehow lost a slash.  Fixed

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2524 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoUpdates to move some header files out of include/llvm/Transforms into
Chris Lattner [Tue, 7 May 2002 18:36:35 +0000 (18:36 +0000)]
Updates to move some header files out of include/llvm/Transforms into
the Scalar and Utils subdirectories

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2523 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoUpdate header after moving file
Chris Lattner [Tue, 7 May 2002 18:34:57 +0000 (18:34 +0000)]
Update header after moving file

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2522 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoRemove long dead file
Chris Lattner [Tue, 7 May 2002 18:20:10 +0000 (18:20 +0000)]
Remove long dead file

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2521 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoStraighten out makefiles after moving code to new Transform Utils library
Chris Lattner [Tue, 7 May 2002 18:18:26 +0000 (18:18 +0000)]
Straighten out makefiles after moving code to new Transform Utils library

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2520 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoFactor code out to the Transform Utils library
Chris Lattner [Tue, 7 May 2002 18:18:00 +0000 (18:18 +0000)]
Factor code out to the Transform Utils library

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2519 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoReduce dependance on TransformInternals.h, instead using the TransformUtils library
Chris Lattner [Tue, 7 May 2002 18:12:18 +0000 (18:12 +0000)]
Reduce dependance on TransformInternals.h, instead using the TransformUtils library

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2518 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoAdd #include no longer included by llvm/Transforms/Scalar/ConstantProp.h
Chris Lattner [Tue, 7 May 2002 18:11:30 +0000 (18:11 +0000)]
Add #include no longer included by llvm/Transforms/Scalar/ConstantProp.h

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2517 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoFactor code out to the TransformUtils library
Chris Lattner [Tue, 7 May 2002 18:10:55 +0000 (18:10 +0000)]
Factor code out to the TransformUtils library

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2516 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoFactor code out of TransformInternals into the Transform Utils library
Chris Lattner [Tue, 7 May 2002 18:09:15 +0000 (18:09 +0000)]
Factor code out of TransformInternals into the Transform Utils library

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2515 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoBuild Transforms Utils library
Chris Lattner [Tue, 7 May 2002 18:08:50 +0000 (18:08 +0000)]
Build Transforms Utils library

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2514 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoAdd code pulled out of TransformInternals.cpp, ConstProp.cpp, and DCE.cpp
Chris Lattner [Tue, 7 May 2002 18:07:59 +0000 (18:07 +0000)]
Add code pulled out of TransformInternals.cpp, ConstProp.cpp, and DCE.cpp

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2513 91177308-0d34-0410-b5e6-96231b3b80d8

22 years ago* Convert InstWorkList to vector instead of set, because on big programs it
Chris Lattner [Tue, 7 May 2002 04:29:32 +0000 (04:29 +0000)]
* Convert InstWorkList to vector instead of set, because on big programs it
  is empirically faster by a noticable margin, even though duplicates can
  happen.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2511 91177308-0d34-0410-b5e6-96231b3b80d8

22 years ago* Remove all cfg simplification stuff for a new cfg simplify pass (todo)
Chris Lattner [Tue, 7 May 2002 04:24:11 +0000 (04:24 +0000)]
* Remove all cfg simplification stuff for a new cfg simplify pass (todo)
* Convert to worklist instead of iterative algorithm

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2510 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoFinish up the updates to the language reference
Chris Lattner [Mon, 6 May 2002 22:08:29 +0000 (22:08 +0000)]
Finish up the updates to the language reference

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2509 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoMark analyses that only depend on the CFG of a function
Chris Lattner [Mon, 6 May 2002 19:32:07 +0000 (19:32 +0000)]
Mark analyses that only depend on the CFG of a function

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2507 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoMake functions that preserve the CFG not invalidate analyses that only depend
Chris Lattner [Mon, 6 May 2002 19:31:52 +0000 (19:31 +0000)]
Make functions that preserve the CFG not invalidate analyses that only depend
on the CFG of a function

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2506 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoAdd support for passes to announce that they only depend on the CFG of a
Chris Lattner [Mon, 6 May 2002 19:31:16 +0000 (19:31 +0000)]
Add support for passes to announce that they only depend on the CFG of a
function.  This is crude but effective

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2505 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoOnly do masking for unsigned values!
Chris Lattner [Mon, 6 May 2002 18:54:59 +0000 (18:54 +0000)]
Only do masking for unsigned values!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2504 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoGCSE is faster than SCCP, and it makes SCCP's job easier, so run it first.
Chris Lattner [Mon, 6 May 2002 18:54:12 +0000 (18:54 +0000)]
GCSE is faster than SCCP, and it makes SCCP's job easier, so run it first.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2503 91177308-0d34-0410-b5e6-96231b3b80d8

22 years ago* Eliminate dead code that should have been removed in last revision
Chris Lattner [Mon, 6 May 2002 18:21:31 +0000 (18:21 +0000)]
* Eliminate dead code that should have been removed in last revision
* Convert main constant propogation pass to be worklist driven instead of
  iterative.
* -constprop pass no longer "constant propogates" terminator instructions
   - CFG is now preserved!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2502 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoHandle X = phi Y --> X = Y
Chris Lattner [Mon, 6 May 2002 18:06:38 +0000 (18:06 +0000)]
Handle X = phi Y  --> X = Y

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2501 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoMake the testcase more interesting so that DCE does not eliminate it.
Chris Lattner [Mon, 6 May 2002 17:59:23 +0000 (17:59 +0000)]
Make the testcase more interesting so that DCE does not eliminate it.
Use DIE instead of DCE anyway

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2500 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoMove a bunch of code to a .cpp file, don't #include Instruction.h
Chris Lattner [Mon, 6 May 2002 17:54:50 +0000 (17:54 +0000)]
Move a bunch of code to a .cpp file, don't #include Instruction.h

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2499 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoMove code out of header file
Chris Lattner [Mon, 6 May 2002 17:54:27 +0000 (17:54 +0000)]
Move code out of header file

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2498 91177308-0d34-0410-b5e6-96231b3b80d8

22 years ago* Use simplified interface to constant propogation stuff.
Chris Lattner [Mon, 6 May 2002 17:54:10 +0000 (17:54 +0000)]
* Use simplified interface to constant propogation stuff.
* Remove dead PHI case (which could not work due to getNumOperands rather than
  getNumIncomingValues.  This really belongs in InstCombine, anyway so we'll
  move it there.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2497 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoAdd #include removed from ConstantHandling.h
Chris Lattner [Mon, 6 May 2002 17:53:10 +0000 (17:53 +0000)]
Add #include removed from ConstantHandling.h

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2496 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoNew testcase for PHI folding
Chris Lattner [Mon, 6 May 2002 17:43:38 +0000 (17:43 +0000)]
New testcase for PHI folding

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2495 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoClean up ADCE by removing extraneous wrapper class
Chris Lattner [Mon, 6 May 2002 17:27:57 +0000 (17:27 +0000)]
Clean up ADCE by removing extraneous wrapper class

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2494 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoCombine not (not X) -> X
Chris Lattner [Mon, 6 May 2002 17:03:21 +0000 (17:03 +0000)]
Combine not (not X) -> X

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2493 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoNew testcase to make sure not instructions get combined
Chris Lattner [Mon, 6 May 2002 17:00:47 +0000 (17:00 +0000)]
New testcase to make sure not instructions get combined

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2492 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoInstruction Combination can create a ton of trivially dead instructions. Remove
Chris Lattner [Mon, 6 May 2002 16:52:15 +0000 (16:52 +0000)]
Instruction Combination can create a ton of trivially dead instructions.  Remove
them with an DIE pass before more expensive optimizations are run.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2491 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoSupport more cases...
Chris Lattner [Mon, 6 May 2002 16:49:18 +0000 (16:49 +0000)]
Support more cases...

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2490 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoMore tests
Chris Lattner [Mon, 6 May 2002 16:44:53 +0000 (16:44 +0000)]
More tests

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2489 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoAdd testcase for -(-A)
Chris Lattner [Mon, 6 May 2002 16:19:16 +0000 (16:19 +0000)]
Add testcase for -(-A)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2488 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoChange usage of isPointerType to use isa
Chris Lattner [Mon, 6 May 2002 16:15:49 +0000 (16:15 +0000)]
Change usage of isPointerType to use isa

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2487 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoReplace all usages of Type::isPointerType with isa<PointerType>
Chris Lattner [Mon, 6 May 2002 16:15:30 +0000 (16:15 +0000)]
Replace all usages of Type::isPointerType with isa<PointerType>

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2486 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoImplement getPrimitiveSize()
Chris Lattner [Mon, 6 May 2002 16:14:39 +0000 (16:14 +0000)]
Implement getPrimitiveSize()
don't use isPointerType()

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2485 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoAdd many more instruction combination simplifications
Chris Lattner [Mon, 6 May 2002 16:14:14 +0000 (16:14 +0000)]
Add many more instruction combination simplifications

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2484 91177308-0d34-0410-b5e6-96231b3b80d8

22 years ago* Add getPrimitiveSize method
Chris Lattner [Mon, 6 May 2002 16:12:53 +0000 (16:12 +0000)]
* Add getPrimitiveSize method
* Remove isPointerType, isMethodType, etc... methods.  Use isa<> instead
* Added specialization of isa for pointer types so that DerivedTypes.h doesn't
  have to be #included to use isa<PointerType>(..)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2483 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoFix testcase, the 'shift out all bits' doesn't apply to signed types.
Chris Lattner [Mon, 6 May 2002 16:11:31 +0000 (16:11 +0000)]
Fix testcase, the 'shift out all bits' doesn't apply to signed types.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2482 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoVoid and Label values cannot be acted on directly so they have zero size
Chris Lattner [Mon, 6 May 2002 15:10:15 +0000 (15:10 +0000)]
Void and Label values cannot be acted on directly so they have zero size

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2481 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoMore testcases I don't want to forget about
Chris Lattner [Mon, 6 May 2002 05:51:26 +0000 (05:51 +0000)]
More testcases I don't want to forget about

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2480 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoNew testcases so I don't forget about these algebraic simplifications
Chris Lattner [Mon, 6 May 2002 05:43:36 +0000 (05:43 +0000)]
New testcases so I don't forget about these algebraic simplifications

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2479 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoNew testcase so I don't forget about this.
Chris Lattner [Mon, 6 May 2002 05:35:20 +0000 (05:35 +0000)]
New testcase so I don't forget about this.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2478 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoTestcase for missed merge opportunity
Chris Lattner [Mon, 6 May 2002 03:11:32 +0000 (03:11 +0000)]
Testcase for missed merge opportunity

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2477 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoRun DCE AFTER SCCP and GCSE!
Chris Lattner [Mon, 6 May 2002 03:04:17 +0000 (03:04 +0000)]
Run DCE AFTER SCCP and GCSE!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2476 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoBuild CFGsimplify directory
Chris Lattner [Mon, 6 May 2002 03:03:55 +0000 (03:03 +0000)]
Build CFGsimplify directory

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2475 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoUpdated documentation a _LOT_
Chris Lattner [Mon, 6 May 2002 03:03:22 +0000 (03:03 +0000)]
Updated documentation a _LOT_

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2474 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoRemove dead code
Chris Lattner [Mon, 6 May 2002 03:03:09 +0000 (03:03 +0000)]
Remove dead code

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2473 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoMerge blocks like this:
Chris Lattner [Mon, 6 May 2002 03:02:02 +0000 (03:02 +0000)]
Merge blocks like this:

void "test3"(bool %T) {
        br bool %T, label %BB1, label %BB1
BB1:
        ret void
}

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2472 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoImplement constant propogation of shift instructions
Chris Lattner [Mon, 6 May 2002 03:01:37 +0000 (03:01 +0000)]
Implement constant propogation of shift instructions

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2471 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoImplement constant propogation of shifts
Chris Lattner [Mon, 6 May 2002 03:00:54 +0000 (03:00 +0000)]
Implement constant propogation of shifts

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2470 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoPrint functions with curly braces instead of begin/end
Chris Lattner [Mon, 6 May 2002 03:00:40 +0000 (03:00 +0000)]
Print functions with curly braces instead of begin/end

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2469 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoAdd a range remove method
Chris Lattner [Mon, 6 May 2002 02:59:52 +0000 (02:59 +0000)]
Add a range remove method

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2468 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoImplement two iterator remove method
Chris Lattner [Mon, 6 May 2002 02:59:34 +0000 (02:59 +0000)]
Implement two iterator remove method

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2467 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoInitial testcases for CFG simplify (which is part of DCE for now)
Chris Lattner [Mon, 6 May 2002 02:37:38 +0000 (02:37 +0000)]
Initial testcases for CFG simplify (which is part of DCE for now)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2466 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoTest moved to SCCP test directory
Chris Lattner [Mon, 6 May 2002 00:52:06 +0000 (00:52 +0000)]
Test moved to SCCP test directory

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2465 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoImplement remainder
Chris Lattner [Fri, 3 May 2002 21:41:07 +0000 (21:41 +0000)]
Implement remainder
Fix implementation of Not

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2464 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoImplement remainder
Chris Lattner [Fri, 3 May 2002 21:40:37 +0000 (21:40 +0000)]
Implement remainder

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2463 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoNew testcase for bugs in the constant propogator
Chris Lattner [Fri, 3 May 2002 20:25:40 +0000 (20:25 +0000)]
New testcase for bugs in the constant propogator

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2462 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoAdd tests for floating point remainder elimination
Chris Lattner [Fri, 3 May 2002 20:16:29 +0000 (20:16 +0000)]
Add tests for floating point remainder elimination

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2461 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoNew testcase to see if constant propogation of remainder is implemented
Chris Lattner [Fri, 3 May 2002 20:14:21 +0000 (20:14 +0000)]
New testcase to see if constant propogation of remainder is implemented

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2460 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoThis testcase is a sanity check
Chris Lattner [Fri, 3 May 2002 20:12:31 +0000 (20:12 +0000)]
This testcase is a sanity check

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2459 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoFix bug: test/Regression/Transforms/SCCP/2002-05-03-NotOperator.ll
Chris Lattner [Fri, 3 May 2002 20:09:52 +0000 (20:09 +0000)]
Fix bug: test/Regression/Transforms/SCCP/2002-05-03-NotOperator.ll
by using the ~ operator instead of !

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2458 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoAdd new testcase for general constant prop.
Chris Lattner [Fri, 3 May 2002 19:58:17 +0000 (19:58 +0000)]
Add new testcase for general constant prop.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2457 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoAdd const prop pass to eliminate dead branches
Chris Lattner [Fri, 3 May 2002 19:57:16 +0000 (19:57 +0000)]
Add const prop pass to eliminate dead branches

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2456 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoImplement the NOT operator.
Chris Lattner [Fri, 3 May 2002 19:52:30 +0000 (19:52 +0000)]
Implement the NOT operator.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2455 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoWe currently don't allow unresolved opaque types!
Chris Lattner [Fri, 3 May 2002 18:32:40 +0000 (18:32 +0000)]
We currently don't allow unresolved opaque types!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2453 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoAdd -d switch to test AsmWriter as well
Chris Lattner [Fri, 3 May 2002 18:31:30 +0000 (18:31 +0000)]
Add -d switch to test AsmWriter as well

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2452 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoAllow open/closing curly braces instead of begin/end to define the body of a function
Chris Lattner [Fri, 3 May 2002 18:23:48 +0000 (18:23 +0000)]
Allow open/closing curly braces instead of begin/end to define the body of a function

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2451 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoEliminate usage of function level constant pool
Chris Lattner [Thu, 2 May 2002 21:52:35 +0000 (21:52 +0000)]
Eliminate usage of function level constant pool

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2450 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoUse unified diffs with gnu diff instead of old diffs
Chris Lattner [Thu, 2 May 2002 21:51:55 +0000 (21:51 +0000)]
Use unified diffs with gnu diff instead of old diffs

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2449 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoOk, really it only takes me 3 times to get this right!
Chris Lattner [Thu, 2 May 2002 21:49:50 +0000 (21:49 +0000)]
Ok, really it only takes me 3 times to get this right!
Now use #if 0 instead of #ifdef 0

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2448 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoOops, disable debugging code all the way. :)
Chris Lattner [Thu, 2 May 2002 21:47:40 +0000 (21:47 +0000)]
Oops, disable debugging code all the way.  :)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2447 91177308-0d34-0410-b5e6-96231b3b80d8

22 years ago* Finish the implementation of isEdgeFeasible this fixes bug:
Chris Lattner [Thu, 2 May 2002 21:44:00 +0000 (21:44 +0000)]
* Finish the implementation of isEdgeFeasible this fixes bug:
    test/Regression/Transforms/SCCP/2002-05-02-EdgeFailure.ll
* SCCP now preserves the CFG:  It leaves conditional branches the way they
  are in the program, not simplifying them.  A seperate pass should eliminate
  the potentially dead basic blocks and edges in the CFG.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2446 91177308-0d34-0410-b5e6-96231b3b80d8

22 years ago* Enable SCCP debugging to be turned on with a simple change of #define
Chris Lattner [Thu, 2 May 2002 21:18:01 +0000 (21:18 +0000)]
* Enable SCCP debugging to be turned on with a simple change of #define
* Change worklist to a set so that duplicates cannot happen
* Add support for the invoke instruction
* Avoid marking store and free instructions as overdefined, since they
  cannot produce a value anyway.
* Inline the OperandChangedState implementation
* Add isEdgeFeasible in preparation to fix a bug.  Right now it behaves
  exactly as before.
* Remove obsolete comment about constant pools

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2445 91177308-0d34-0410-b5e6-96231b3b80d8