oota-llvm.git
22 years agoEmit:
Chris Lattner [Thu, 9 May 2002 15:59:50 +0000 (15:59 +0000)]
Emit:
  l3_reg109 = l81_this->field0;
Instead of:
  l3_reg109 = l81_this[0u].field0;

where possible

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

22 years ago* Print structures types correctly
Chris Lattner [Thu, 9 May 2002 15:49:41 +0000 (15:49 +0000)]
* Print structures types correctly
* Clean up generated code to not emit basic block labels and goto
  instructions if they are unneccesary (for example, fall throughs)

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

22 years ago* Continue cleanup of type printing code
Chris Lattner [Thu, 9 May 2002 15:18:52 +0000 (15:18 +0000)]
* Continue cleanup of type printing code
* Print a newline after a malloc instruction
* Convert unprintable characters to x_ instead of _x so that we don't
  generate identifiers that start with underscores

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

22 years agoGut the type printing code so there is only one copy of it instead of 3
Chris Lattner [Thu, 9 May 2002 14:40:11 +0000 (14:40 +0000)]
Gut the type printing code so there is only one copy of it instead of 3

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

22 years ago* Remove dead "constant printing" code
Chris Lattner [Thu, 9 May 2002 05:16:40 +0000 (05:16 +0000)]
* Remove dead "constant printing" code
* Mangle names with only a prefix so that they are easier on the eyes.
* Put spaces around binary operators with low precedence to make them easier to read
* Don't prefix function names with &, although it's correct, it's unnecesary and
  easier to read without it.

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

22 years agoRemove gross "Operand" instance variable
Chris Lattner [Thu, 9 May 2002 04:39:00 +0000 (04:39 +0000)]
Remove gross "Operand" instance variable
Remove lots of unneccesary arguments to methods

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

22 years agoSimplify and clean up function calls.
Chris Lattner [Thu, 9 May 2002 04:21:21 +0000 (04:21 +0000)]
Simplify and clean up function calls.
Now indirect function calls work, except that function pointer types are not correct.

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

22 years ago* Remove dead function
Chris Lattner [Thu, 9 May 2002 03:56:52 +0000 (03:56 +0000)]
* Remove dead function
* Print C strings correctly
* Expand C escape sequences nicely (ie \n \t, etc get generated instead of hex escapes)

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

22 years agoMake Getelementptr, load & store all work the right way.
Chris Lattner [Thu, 9 May 2002 03:50:42 +0000 (03:50 +0000)]
Make Getelementptr, load & store all work the right way.
Handle global variables correctly.

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

22 years agoMany random fixes:
Chris Lattner [Thu, 9 May 2002 03:28:37 +0000 (03:28 +0000)]
Many random fixes:
 * Use binary operator logic for shifts instead of cloning code
 * Unary not is '~' not '!'

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

22 years agoIncorporate and purge function before and after printing them so unnamed values
Chris Lattner [Thu, 9 May 2002 03:12:34 +0000 (03:12 +0000)]
Incorporate and purge function before and after printing them so unnamed values
have some hope of working right.

Function calls do not try to emit an lvalue if they return void.

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

22 years agoFactor out the code to print a value to ONE place.
Chris Lattner [Thu, 9 May 2002 03:06:06 +0000 (03:06 +0000)]
Factor out the code to print a value to ONE place.
It turns out that unnamed values DO NOT work at all, that's next on the list.

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

22 years agoFirst wave of cleanups, looks like the first of many.
Chris Lattner [Thu, 9 May 2002 02:28:59 +0000 (02:28 +0000)]
First wave of cleanups, looks like the first of many.

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

22 years agoAdd ability to transform (x - (y - z)) into (x + (z - y))
Chris Lattner [Thu, 9 May 2002 01:29:19 +0000 (01:29 +0000)]
Add ability to transform (x - (y - z)) into (x + (z - y))

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

22 years agoFix broken testcase
Chris Lattner [Thu, 9 May 2002 01:28:30 +0000 (01:28 +0000)]
Fix broken testcase

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

22 years agoClean up dis so that it does not print out code in various traversal orders.
Chris Lattner [Thu, 9 May 2002 01:25:55 +0000 (01:25 +0000)]
Clean up dis so that it does not print out code in various traversal orders.
Now it only output llvm or C code.

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

22 years agoAdd two new patterns that instcombine should or does handle
Chris Lattner [Wed, 8 May 2002 23:15:01 +0000 (23:15 +0000)]
Add two new patterns that instcombine should or does handle

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

22 years agoPrint out post dominance data structures more nicely
Chris Lattner [Wed, 8 May 2002 23:11:08 +0000 (23:11 +0000)]
Print out post dominance data structures more nicely

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

22 years ago* Combine: A-(-B) -> A + B
Chris Lattner [Wed, 8 May 2002 22:46:53 +0000 (22:46 +0000)]
* Combine: A-(-B) -> A + B
* Bugfix:  A + -B and -A + B

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

22 years agoNew testcase for LICM reassociation
Chris Lattner [Wed, 8 May 2002 22:20:55 +0000 (22:20 +0000)]
New testcase for LICM reassociation

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

22 years agoInitial checkin of expression reassociation pass
Chris Lattner [Wed, 8 May 2002 22:19:27 +0000 (22:19 +0000)]
Initial checkin of expression reassociation pass

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

22 years agoAdd expr reassociation pass prototype
Chris Lattner [Wed, 8 May 2002 22:19:01 +0000 (22:19 +0000)]
Add expr reassociation pass prototype

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

22 years agoExpose expression reassociation
Chris Lattner [Wed, 8 May 2002 22:18:34 +0000 (22:18 +0000)]
Expose expression reassociation

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

22 years agoRun expression reassociation as part of gccas
Chris Lattner [Wed, 8 May 2002 22:18:20 +0000 (22:18 +0000)]
Run expression reassociation as part of gccas

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

22 years agoAdd some simple test of reassociation
Chris Lattner [Wed, 8 May 2002 21:34:22 +0000 (21:34 +0000)]
Add some simple test of reassociation

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

22 years agorun reassociate tests
Chris Lattner [Wed, 8 May 2002 21:34:11 +0000 (21:34 +0000)]
run reassociate tests

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

22 years agoVerify that function call arguments match the function signature
Chris Lattner [Wed, 8 May 2002 19:49:50 +0000 (19:49 +0000)]
Verify that function call arguments match the function signature

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

22 years ago*** empty log message ***
Sumant Kowshik [Wed, 8 May 2002 18:09:58 +0000 (18:09 +0000)]
*** empty log message ***

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

22 years agoSpell aggressive correctly
Chris Lattner [Tue, 7 May 2002 22:15:01 +0000 (22:15 +0000)]
Spell aggressive correctly

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

22 years agoGive the unified exit node a name
Chris Lattner [Tue, 7 May 2002 22:14:45 +0000 (22:14 +0000)]
Give the unified exit node a name

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

22 years agoSpell aggressive right
Chris Lattner [Tue, 7 May 2002 22:12:52 +0000 (22:12 +0000)]
Spell aggressive right

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

22 years agoFix misspelling
Chris Lattner [Tue, 7 May 2002 22:12:36 +0000 (22:12 +0000)]
Fix misspelling

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

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