aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* remove deprecated getInstType() methodChris Lattner2002-05-102-5/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2595 91177308-0d34-0410-b5e6-96231b3b80d8
* Expose the pi node insertion pass.Chris Lattner2002-05-101-2/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2594 91177308-0d34-0410-b5e6-96231b3b80d8
* Initial checkin of the PiNodeInsertion passChris Lattner2002-05-101-0/+185
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2593 91177308-0d34-0410-b5e6-96231b3b80d8
* Add prototype for the PiNodeInserter passChris Lattner2002-05-101-0/+23
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2592 91177308-0d34-0410-b5e6-96231b3b80d8
* Test the Pi node inserterChris Lattner2002-05-101-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2591 91177308-0d34-0410-b5e6-96231b3b80d8
* Initial checkin of testcases for Pi node inserterChris Lattner2002-05-103-0/+43
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2590 91177308-0d34-0410-b5e6-96231b3b80d8
* Last minor cleanups, this code still does not work for all cases, but itChris Lattner2002-05-092-36/+20
| | | | | | | works much better than it used to. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2588 91177308-0d34-0410-b5e6-96231b3b80d8
* Two Cleanups to generated C code:Chris Lattner2002-05-092-70/+130
| | | | | | | | | | | | | | | 1. Avoid printing *(&globalvariable), instead print globalvariable alone as a special case. 2. Inline subexpressions into expressions as much as legal that preserves execution characteristics of expressions. Now we get nice (but over-parenthesized, oh well) things like: ltmp_428_7 = spec__putc(((unsigned char )((bsBuff) >> 24)), (bsStream)); instead of five seperate instructions (bsBuff & bsStream are globals). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2587 91177308-0d34-0410-b5e6-96231b3b80d8
* * Remove CInstPrintVisitor class, incorporating it into the CWriter classChris Lattner2002-05-092-688/+600
| | | | | | | * Reorder code in the file to make it more logically laid out. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2586 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove CLocalVars data structure entirely, instead of building stuff andChris Lattner2002-05-092-56/+6
| | | | | | | then printing it out, just print as we go. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2585 91177308-0d34-0410-b5e6-96231b3b80d8
* Simplify code by removing InstLocalVarsVisitor, replacing it with a simpleChris Lattner2002-05-092-124/+34
| | | | | | | inst_iterator. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2584 91177308-0d34-0410-b5e6-96231b3b80d8
* * Clean up how PHI nodes are handledChris Lattner2002-05-092-108/+146
| | | | | | | | | | | | | | | * Correct global variable references * Fix loads & stores with zero indices * Do not emit an else part of a branch if there is no code (no phi node and a fallthrough branch), makes code more readable to get: if (l2_cond240) { goto l13_bb10; } with no else{} branch git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2583 91177308-0d34-0410-b5e6-96231b3b80d8
* Handle setcc <global*>, 0 instructions, Global pointers are never null!Chris Lattner2002-05-091-4/+18
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2582 91177308-0d34-0410-b5e6-96231b3b80d8
* Give the longer name to the instruction that will probably be eliminated laterChris Lattner2002-05-091-1/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2581 91177308-0d34-0410-b5e6-96231b3b80d8
* New testcase for wierd combine opportunity found in bzip2 benchmarkChris Lattner2002-05-091-3/+7
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2580 91177308-0d34-0410-b5e6-96231b3b80d8
* Emit:Chris Lattner2002-05-092-4/+26
| | | | | | | | | | | 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
* * Print structures types correctlyChris Lattner2002-05-092-84/+140
| | | | | | | | * 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
* * Continue cleanup of type printing codeChris Lattner2002-05-092-116/+90
| | | | | | | | | * 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
* Gut the type printing code so there is only one copy of it instead of 3Chris Lattner2002-05-092-592/+184
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2576 91177308-0d34-0410-b5e6-96231b3b80d8
* * Remove dead "constant printing" codeChris Lattner2002-05-092-96/+44
| | | | | | | | | | * 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
* Remove gross "Operand" instance variableChris Lattner2002-05-092-82/+62
| | | | | | | Remove lots of unneccesary arguments to methods git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2574 91177308-0d34-0410-b5e6-96231b3b80d8
* Simplify and clean up function calls.Chris Lattner2002-05-092-98/+74
| | | | | | | 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
* * Remove dead functionChris Lattner2002-05-092-18/+40
| | | | | | | | * 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
* Make Getelementptr, load & store all work the right way.Chris Lattner2002-05-092-224/+74
| | | | | | | Handle global variables correctly. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2571 91177308-0d34-0410-b5e6-96231b3b80d8
* Many random fixes:Chris Lattner2002-05-092-224/+112
| | | | | | | | * 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
* Incorporate and purge function before and after printing them so unnamed valuesChris Lattner2002-05-092-22/+32
| | | | | | | | | 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
* Factor out the code to print a value to ONE place.Chris Lattner2002-05-092-374/+202
| | | | | | | 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
* First wave of cleanups, looks like the first of many.Chris Lattner2002-05-092-584/+324
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2567 91177308-0d34-0410-b5e6-96231b3b80d8
* Add ability to transform (x - (y - z)) into (x + (z - y))Chris Lattner2002-05-091-0/+13
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2566 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix broken testcaseChris Lattner2002-05-091-3/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2565 91177308-0d34-0410-b5e6-96231b3b80d8
* Clean up dis so that it does not print out code in various traversal orders.Chris Lattner2002-05-093-201/+48
| | | | | | | 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
* Add two new patterns that instcombine should or does handleChris Lattner2002-05-081-0/+12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2563 91177308-0d34-0410-b5e6-96231b3b80d8
* Print out post dominance data structures more nicelyChris Lattner2002-05-081-3/+9
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2562 91177308-0d34-0410-b5e6-96231b3b80d8
* * Combine: A-(-B) -> A + BChris Lattner2002-05-081-10/+6
| | | | | | | * Bugfix: A + -B and -A + B git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2561 91177308-0d34-0410-b5e6-96231b3b80d8
* New testcase for LICM reassociationChris Lattner2002-05-081-0/+59
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2560 91177308-0d34-0410-b5e6-96231b3b80d8
* Initial checkin of expression reassociation passChris Lattner2002-05-081-0/+198
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2559 91177308-0d34-0410-b5e6-96231b3b80d8
* Add expr reassociation pass prototypeChris Lattner2002-05-081-0/+10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2558 91177308-0d34-0410-b5e6-96231b3b80d8
* Expose expression reassociationChris Lattner2002-05-081-1/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2557 91177308-0d34-0410-b5e6-96231b3b80d8
* Run expression reassociation as part of gccasChris Lattner2002-05-081-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2556 91177308-0d34-0410-b5e6-96231b3b80d8
* Add some simple test of reassociationChris Lattner2002-05-084-0/+66
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2555 91177308-0d34-0410-b5e6-96231b3b80d8
* run reassociate testsChris Lattner2002-05-081-1/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2554 91177308-0d34-0410-b5e6-96231b3b80d8
* Verify that function call arguments match the function signatureChris Lattner2002-05-081-0/+17
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2553 91177308-0d34-0410-b5e6-96231b3b80d8
* *** empty log message ***Sumant Kowshik2002-05-0810-15/+2909
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2552 91177308-0d34-0410-b5e6-96231b3b80d8
* Spell aggressive correctlyChris Lattner2002-05-071-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2551 91177308-0d34-0410-b5e6-96231b3b80d8
* Give the unified exit node a nameChris Lattner2002-05-071-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2550 91177308-0d34-0410-b5e6-96231b3b80d8
* Spell aggressive rightChris Lattner2002-05-071-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2549 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix misspellingChris Lattner2002-05-071-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2548 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix bug: test/Regression/Transforms/ADCE/2002-01-31-UseStuckAround.llChris Lattner2002-05-071-46/+31
| | | | | | | Cleanup code a lot git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2547 91177308-0d34-0410-b5e6-96231b3b80d8
* New testcase for adceChris Lattner2002-05-071-0/+37
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2546 91177308-0d34-0410-b5e6-96231b3b80d8
* Build the ADCE testsChris Lattner2002-05-071-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2545 91177308-0d34-0410-b5e6-96231b3b80d8