Nick Hildenbrandt
1ccdc12400
Add parens around constant calls to getelemptr to properly associate the reference
...
llvm-svn: 4032
2002-10-03 20:47:24 +00:00
Chris Lattner
fcdb95cd42
Reimplement/port the Bottom Up Closure pass
...
llvm-svn: 4031
2002-10-03 20:38:41 +00:00
Chris Lattner
c135b54584
New testcase
...
llvm-svn: 4030
2002-10-03 20:06:33 +00:00
Chris Lattner
e52f808665
DataStructure.h doesn't include DSGraph.h
...
llvm-svn: 4029
2002-10-02 22:14:38 +00:00
Chris Lattner
bcb0197fe3
Remove commented out stuff
...
DataStructure.h doesn't include DSGraph.h now
llvm-svn: 4028
2002-10-02 22:14:17 +00:00
Chris Lattner
668457ea05
Move GlobalDSGraph class defn to the end of the file
...
llvm-svn: 4027
2002-10-02 21:55:52 +00:00
Chris Lattner
801fcdd060
This file doesn't need Pass.h
...
llvm-svn: 4026
2002-10-02 21:55:24 +00:00
Nick Hildenbrandt
1477c5282f
I was wrong on the removing of those references on the last commit.
...
llvm-svn: 4023
2002-10-02 21:14:33 +00:00
Chris Lattner
bdbc272229
* Implement the getc() function
...
* Support usage of stdin, stdout & stderr correctly in LLI!
llvm-svn: 4022
2002-10-02 21:12:13 +00:00
Chris Lattner
f6b465732c
Cleanup #includes, expose module
...
llvm-svn: 4021
2002-10-02 21:11:16 +00:00
Chris Lattner
68960ff1c7
Expose TD to ExternalFunctions.cpp
...
llvm-svn: 4020
2002-10-02 21:10:48 +00:00
Chris Lattner
94a5211b6a
- Print the predecessors of a basic block instead of the number of uses of
...
the block in the AsmWriter
llvm-svn: 4019
2002-10-02 19:38:55 +00:00
Chris Lattner
88c8ffce8b
Fix bug: 2002-10-02-SignExtensionProblem.ll
...
llvm-svn: 4017
2002-10-02 18:53:14 +00:00
Nick Hildenbrandt
d090d15736
Removed unneeded reference and dereferences.
...
llvm-svn: 4016
2002-10-02 18:34:51 +00:00
Chris Lattner
febd4191fe
New testcase for a problem discovered in the SPECINT gzip benchmark.
...
llvm-svn: 4015
2002-10-02 18:32:38 +00:00
Nick Hildenbrandt
5d1a2cf4b1
Cleaned up my last check-in.
...
llvm-svn: 4014
2002-10-02 18:32:35 +00:00
Nick Hildenbrandt
f9aa2b4886
No longer include malloc.h. If protoypes are needed for memory functions they will be present in the byte code and the generated c as well.
...
llvm-svn: 4013
2002-10-02 18:20:18 +00:00
Chris Lattner
62ca2aa593
* Implement fully general merging of array subscripts on demand! This
...
does not handle the initial pointer index case yet though.
llvm-svn: 4012
2002-10-02 06:24:36 +00:00
Chris Lattner
858642be4c
* Implement fully general merging of array subscripts on demand! This
...
does not handle the initial pointer index case yet though.
llvm-svn: 4011
2002-10-02 06:24:29 +00:00
Chris Lattner
5f38d9c112
When printing DS nodes, print the mergemap index as well to allow easier
...
debugging of merging process.
llvm-svn: 4010
2002-10-02 05:17:55 +00:00
Chris Lattner
0851fb32b7
Checkin the "meat" of the Data structure graph itself. I forgot to check
...
this in before. :(
llvm-svn: 4009
2002-10-02 04:58:12 +00:00
Chris Lattner
8c25c1a641
* Significant rework of DSNode to support arbitrary aliasing due to merging
...
* Now all and any bytes of a DSNode can be merged together individually. This
is neccesary to support the full generality of C and support aliasing
correctly.
llvm-svn: 4008
2002-10-02 04:57:39 +00:00
Chris Lattner
5ee67379d9
- Remove the User::eraseOperand method which is never used, really
...
dangerous, and not something we want to expose.
llvm-svn: 4007
2002-10-01 23:41:17 +00:00
Chris Lattner
38f12f932c
Do some cleanups to the Type and Constant section to remove latex stuff
...
There is still a lot of cleanup and fleshing out required here, but at least
it gets rid of the flagrantly bad parts.
llvm-svn: 4006
2002-10-01 23:17:09 +00:00
Chris Lattner
b6ec3ac95d
Temporary change to make datastructure stuff link in right
...
llvm-svn: 4005
2002-10-01 22:41:01 +00:00
Chris Lattner
3fec0954e8
Changes to work with Statistics rework
...
* Renamed StatisticReporter.h/cpp to Statistic.h/cpp
* Broke constructor to take two const char * arguments instead of one, so
that indendation can be taken care of automatically.
* Sort the list by pass name when printing
* Make sure to print all statistics as a group, instead of randomly when
the statistics dtors are called.
* Updated ProgrammersManual with new semantics.
llvm-svn: 4004
2002-10-01 22:40:31 +00:00
Chris Lattner
617dd8b496
Update manual to reflect recent changes in the Statistic class.
...
llvm-svn: 4003
2002-10-01 22:39:41 +00:00
Chris Lattner
7cf9f6f4b1
Updates to work with recent Statistic's changes:
...
* Renamed StatisticReporter.h/cpp to Statistic.h/cpp
* Broke constructor to take two const char * arguments instead of one, so
that indendation can be taken care of automatically.
* Sort the list by pass name when printing
* Make sure to print all statistics as a group, instead of randomly when
the statistics dtors are called.
* Updated ProgrammersManual with new semantics.
llvm-svn: 4002
2002-10-01 22:38:41 +00:00
Chris Lattner
4cc183889f
Updates to work with recent Statistic's changes:
...
* Renamed StatisticReporter.h/cpp to Statistic.h/cpp
* Broke constructor to take two const char * arguments instead of one, so
that indendation can be taken care of automatically.
* Sort the list by pass name when printing
* Make sure to print all statistics as a group, instead of randomly when
the statistics dtors are called.
* Updated ProgrammersManual with new semantics.
llvm-svn: 4001
2002-10-01 22:38:37 +00:00
Chris Lattner
b5d3e33496
Build subdirs in parallel
...
llvm-svn: 4000
2002-10-01 22:36:35 +00:00
Chris Lattner
c2322d5fac
- Rework Statistics:
...
* Renamed StatisticReporter.h/cpp to Statistic.h/cpp
* Broke constructor to take two const char * arguments instead of one, so
that indendation can be taken care of automatically.
* Sort the list by pass name when printing
* Make sure to print all statistics as a group, instead of randomly when
the statistics dtors are called.
llvm-svn: 3999
2002-10-01 22:35:45 +00:00
Chris Lattner
7f0db9917a
Check in DataStructure rewrite so far.
...
llvm-svn: 3998
2002-10-01 22:34:45 +00:00
Chris Lattner
9fc451723d
Initial checkin of Steensgaards context insensitive flow insensitive
...
alias analysis
llvm-svn: 3997
2002-10-01 22:34:12 +00:00
Chris Lattner
c1b7de86d5
Checkin some major reworks of data structure analysis. This is not done,
...
nor does it work very well, but I need to get it checked in before I break
the tree unintentionally.
llvm-svn: 3996
2002-10-01 22:33:50 +00:00
Chris Lattner
9a8022871b
Make sure to use the TimerGroup that we created!
...
llvm-svn: 3995
2002-10-01 20:12:06 +00:00
Chris Lattner
10fd9ad81e
Make sure not to count the PassManager wrapers
...
llvm-svn: 3994
2002-10-01 20:08:11 +00:00
Chris Lattner
b7a507eb31
Factor timer code out of PassManager implementation, into a generic interface
...
exposed by Support/Timer.h.
llvm-svn: 3993
2002-10-01 19:54:07 +00:00
Chris Lattner
9b38808792
Checkin generic interval timer support
...
llvm-svn: 3992
2002-10-01 19:36:54 +00:00
Nick Hildenbrandt
1defd8270c
Fixed to properly escape quotes in strings.
...
llvm-svn: 3991
2002-09-30 21:11:55 +00:00
Chris Lattner
61e617c5f2
Allow production of -stats output for benchmarks by specifying
...
ENABLE_STATS=1 on the make command line.
llvm-svn: 3989
2002-09-30 19:24:07 +00:00
Chris Lattner
90e74835ef
Allow production of -stats output for benchmarks by specifying
...
ENABLE_STATS=1 on the make command line.
llvm-svn: 3988
2002-09-30 19:23:55 +00:00
Vikram S. Adve
90d79b536c
On this code, llc did not pass the sixth argument (%reg321) to printf.
...
llvm-svn: 3986
2002-09-30 16:14:14 +00:00
Chris Lattner
53be50fb2f
Minor tweak
...
llvm-svn: 3985
2002-09-29 22:59:29 +00:00
Chris Lattner
d279fa6581
Enable buidling of programs on Linux again
...
llvm-svn: 3984
2002-09-29 22:58:51 +00:00
Vikram S. Adve
dddfcdc478
Added several more helper functions for construction MachineInstrs.
...
llvm-svn: 3983
2002-09-29 22:55:45 +00:00
Vikram S. Adve
01e64b5eef
Bug fix in folding getElementPtr instructions: don't fold one into
...
a predecessor if it has a non-zero first index and the predecessor
ends with a struct index.
llvm-svn: 3982
2002-09-29 22:55:05 +00:00
Chris Lattner
e3eaa16375
Fix a problem that was caused by stale analyses being in CurrentAnalyses
...
llvm-svn: 3981
2002-09-29 22:50:22 +00:00
Chris Lattner
61e8de1c61
Fix bug in LICM that caused the previous big win. :(
...
llvm-svn: 3980
2002-09-29 22:26:07 +00:00
Vikram S. Adve
0ab2587056
Minor change to interface for Create{Zero,Sign}ExtensionsInstructions.
...
llvm-svn: 3979
2002-09-29 21:53:31 +00:00
Chris Lattner
ef0e95bb42
Hoist the contents of Loops in depth first order in the dominator tree,
...
rather than in random order. This causes LICM to be DRAMATICALLY more
effective. For example, on bzip2.c, it is able to hoist 302 loads and
2380 total instructions, as opposed to 44/338 before. This obviously
makes other transformations much more powerful as well!
llvm-svn: 3978
2002-09-29 21:46:09 +00:00