Chris Lattner
132ba2a411
* 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
llvm-svn: 2577
2002-05-09 15:18:52 +00:00
Chris Lattner
eed155e6a0
Gut the type printing code so there is only one copy of it instead of 3
...
llvm-svn: 2576
2002-05-09 14:40:11 +00:00
Chris Lattner
c99a44eb25
* 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.
llvm-svn: 2575
2002-05-09 05:16:40 +00:00
Chris Lattner
1532dbfead
Remove gross "Operand" instance variable
...
Remove lots of unneccesary arguments to methods
llvm-svn: 2574
2002-05-09 04:39:00 +00:00
Chris Lattner
c897bddb17
Simplify and clean up function calls.
...
Now indirect function calls work, except that function pointer types are not correct.
llvm-svn: 2573
2002-05-09 04:21:21 +00:00
Chris Lattner
2fca988a57
* Remove dead function
...
* Print C strings correctly
* Expand C escape sequences nicely (ie \n \t, etc get generated instead of hex escapes)
llvm-svn: 2572
2002-05-09 03:56:52 +00:00
Chris Lattner
af14c8d51f
Make Getelementptr, load & store all work the right way.
...
Handle global variables correctly.
llvm-svn: 2571
2002-05-09 03:50:42 +00:00
Chris Lattner
7fbd831ce5
Many random fixes:
...
* Use binary operator logic for shifts instead of cloning code
* Unary not is '~' not '!'
llvm-svn: 2570
2002-05-09 03:28:37 +00:00
Chris Lattner
ec8243a8d4
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.
llvm-svn: 2569
2002-05-09 03:12:34 +00:00
Chris Lattner
234ad49817
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.
llvm-svn: 2568
2002-05-09 03:06:06 +00:00
Chris Lattner
eabc647e7c
First wave of cleanups, looks like the first of many.
...
llvm-svn: 2567
2002-05-09 02:28:59 +00:00
Chris Lattner
ad3c495225
Add ability to transform (x - (y - z)) into (x + (z - y))
...
llvm-svn: 2566
2002-05-09 01:29:19 +00:00
Chris Lattner
c5a41d8af1
Fix broken testcase
...
llvm-svn: 2565
2002-05-09 01:28:30 +00:00
Chris Lattner
e693f33937
Clean up dis so that it does not print out code in various traversal orders.
...
Now it only output llvm or C code.
llvm-svn: 2564
2002-05-09 01:25:55 +00:00
Chris Lattner
936e9f0e49
Add two new patterns that instcombine should or does handle
...
llvm-svn: 2563
2002-05-08 23:15:01 +00:00
Chris Lattner
f5cbf64ed2
Print out post dominance data structures more nicely
...
llvm-svn: 2562
2002-05-08 23:11:08 +00:00
Chris Lattner
147e975c43
* Combine: A-(-B) -> A + B
...
* Bugfix: A + -B and -A + B
llvm-svn: 2561
2002-05-08 22:46:53 +00:00
Chris Lattner
90f5d5a5b1
New testcase for LICM reassociation
...
llvm-svn: 2560
2002-05-08 22:20:55 +00:00
Chris Lattner
c0f5800678
Initial checkin of expression reassociation pass
...
llvm-svn: 2559
2002-05-08 22:19:27 +00:00
Chris Lattner
5fbada2e21
Add expr reassociation pass prototype
...
llvm-svn: 2558
2002-05-08 22:19:01 +00:00
Chris Lattner
a2f3b65dec
Expose expression reassociation
...
llvm-svn: 2557
2002-05-08 22:18:34 +00:00
Chris Lattner
356ef11e5a
Run expression reassociation as part of gccas
...
llvm-svn: 2556
2002-05-08 22:18:20 +00:00
Chris Lattner
5a2dbc2b3e
Add some simple test of reassociation
...
llvm-svn: 2555
2002-05-08 21:34:22 +00:00
Chris Lattner
d75d5d19ab
run reassociate tests
...
llvm-svn: 2554
2002-05-08 21:34:11 +00:00
Chris Lattner
338a462110
Verify that function call arguments match the function signature
...
llvm-svn: 2553
2002-05-08 19:49:50 +00:00
Sumant Kowshik
cf3afd9dc5
*** empty log message ***
...
llvm-svn: 2552
2002-05-08 18:09:58 +00:00
Chris Lattner
b4bf0c1422
Spell aggressive correctly
...
llvm-svn: 2551
2002-05-07 22:15:01 +00:00
Chris Lattner
bbcb8914e6
Give the unified exit node a name
...
llvm-svn: 2550
2002-05-07 22:14:45 +00:00
Chris Lattner
f1b3d4f27a
Spell aggressive right
...
llvm-svn: 2549
2002-05-07 22:12:52 +00:00
Chris Lattner
e3fdc3355a
Fix misspelling
...
llvm-svn: 2548
2002-05-07 22:12:36 +00:00
Chris Lattner
c1496bda61
Fix bug: test/Regression/Transforms/ADCE/2002-01-31-UseStuckAround.ll
...
Cleanup code a lot
llvm-svn: 2547
2002-05-07 22:11:39 +00:00
Chris Lattner
38e019c267
New testcase for adce
...
llvm-svn: 2546
2002-05-07 21:05:36 +00:00
Chris Lattner
bcdd44937c
Build the ADCE tests
...
llvm-svn: 2545
2002-05-07 20:52:15 +00:00
Chris Lattner
fa7a203b57
ADCE tests
...
llvm-svn: 2544
2002-05-07 20:51:59 +00:00
Chris Lattner
78a0d421a2
Implement constant propogation of PHI instructions like this:
...
X = phi(0, 0, 0)
llvm-svn: 2543
2002-05-07 20:44:59 +00:00
Chris Lattner
c8ab06d452
Oops, forgot to check in makefile
...
llvm-svn: 2542
2002-05-07 20:39:18 +00:00
Chris Lattner
bafd51a722
Add check that phi nodes get constant propogated away
...
llvm-svn: 2541
2002-05-07 20:32:19 +00:00
Chris Lattner
26910ded0e
constprop doesn't delete dead instructions, it just makes them dead.
...
llvm-svn: 2540
2002-05-07 20:25:44 +00:00
Chris Lattner
5cd7dbb304
Add testcase for not expressions
...
llvm-svn: 2539
2002-05-07 20:22:12 +00:00
Chris Lattner
89a20ef164
Merge all include/llvm/Transforms/Scalar/* into a single Scalar.h
...
llvm-svn: 2538
2002-05-07 20:03:27 +00:00
Chris Lattner
b4cfa7ff97
Merge all individual .h files into a single Scalar.h file
...
llvm-svn: 2537
2002-05-07 20:03:00 +00:00
Chris Lattner
4eaf9f70e0
This doesn't use DCE!
...
llvm-svn: 2536
2002-05-07 20:02:44 +00:00
Chris Lattner
8b1e4d63fe
Extend TargetData::getIndexedOffset to support arrays and pointers!
...
llvm-svn: 2535
2002-05-07 20:00:33 +00:00
Chris Lattner
ac70e1cdd0
These files are supersumed by include/llvm/Transforms/Scalar.h
...
llvm-svn: 2534
2002-05-07 19:38:42 +00:00
Chris Lattner
6a74c61af3
New header file to replace all of the Scalar/*.h files.
...
llvm-svn: 2533
2002-05-07 19:37:18 +00:00
Chris Lattner
355cc5ab26
Fix makefiles after shuffling passes around the libraries
...
llvm-svn: 2532
2002-05-07 19:27:33 +00:00
Chris Lattner
15435fd550
Move UnifyFunctionExitNodes to Utils library: final resting place this time
...
llvm-svn: 2531
2002-05-07 19:18:48 +00:00
Chris Lattner
03453a0e39
fix comments and documentation in file
...
llvm-svn: 2530
2002-05-07 19:04:39 +00:00
Chris Lattner
77f791dd5b
Split ChangeAllocations.cpp into Raise & LowerAllocations.cpp
...
llvm-svn: 2529
2002-05-07 19:02:48 +00:00
Chris Lattner
1ccea0a64c
Checkin headers for Utils library
...
llvm-svn: 2528
2002-05-07 18:52:48 +00:00