Chris Lattner
0b2a6e00d1
* 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
06f9532c8a
- 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
3e55b86821
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
e6e375e704
Temporary change to make datastructure stuff link in right
...
llvm-svn: 4005
2002-10-01 22:41:01 +00:00
Chris Lattner
c2996d9a8b
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
3dfd3b5a3d
Update manual to reflect recent changes in the Statistic class.
...
llvm-svn: 4003
2002-10-01 22:39:41 +00:00
Chris Lattner
bf3a099a62
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
3cf3782bc0
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
f242bec91b
Build subdirs in parallel
...
llvm-svn: 4000
2002-10-01 22:36:35 +00:00
Chris Lattner
c758fe6b72
- 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
7c91242aef
Check in DataStructure rewrite so far.
...
llvm-svn: 3998
2002-10-01 22:34:45 +00:00
Chris Lattner
d3121eb8cb
Initial checkin of Steensgaards context insensitive flow insensitive
...
alias analysis
llvm-svn: 3997
2002-10-01 22:34:12 +00:00
Chris Lattner
193e6924ca
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
52db271374
Make sure to use the TimerGroup that we created!
...
llvm-svn: 3995
2002-10-01 20:12:06 +00:00
Chris Lattner
d5fc9023a8
Make sure not to count the PassManager wrapers
...
llvm-svn: 3994
2002-10-01 20:08:11 +00:00
Chris Lattner
af751b8e72
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
6dad11f6c0
Checkin generic interval timer support
...
llvm-svn: 3992
2002-10-01 19:36:54 +00:00
Nick Hildenbrandt
386834b2f1
Fixed to properly escape quotes in strings.
...
llvm-svn: 3991
2002-09-30 21:11:55 +00:00
Chris Lattner
fd400215d5
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
ce6b87be98
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
2b099a2419
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
1931788143
Minor tweak
...
llvm-svn: 3985
2002-09-29 22:59:29 +00:00
Chris Lattner
36fb08ee53
Enable buidling of programs on Linux again
...
llvm-svn: 3984
2002-09-29 22:58:51 +00:00
Vikram S. Adve
6be99c4f23
Added several more helper functions for construction MachineInstrs.
...
llvm-svn: 3983
2002-09-29 22:55:45 +00:00
Vikram S. Adve
75b4a29613
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
6b6f540959
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
05e86302f4
Fix bug in LICM that caused the previous big win. :(
...
llvm-svn: 3980
2002-09-29 22:26:07 +00:00
Vikram S. Adve
5b5dd671b2
Minor change to interface for Create{Zero,Sign}ExtensionsInstructions.
...
llvm-svn: 3979
2002-09-29 21:53:31 +00:00
Chris Lattner
6443769b34
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
Chris Lattner
467a9e84c4
Fix printing of loop information
...
llvm-svn: 3977
2002-09-29 21:43:04 +00:00
Chris Lattner
ae3ac7e1c9
Improve printing of dominator sets
...
llvm-svn: 3976
2002-09-29 21:42:42 +00:00
Chris Lattner
03a9e15a9f
Fix major bugs in dominator set & tree information updating
...
llvm-svn: 3975
2002-09-29 21:41:38 +00:00
Chris Lattner
85dd58c2cb
Simplify code a bit, add an assertion
...
llvm-svn: 3974
2002-09-29 21:37:08 +00:00
Joel Stanley
fc2aac7f8f
Fixed errors in ReplaceInstWithValue/ReplaceInstWithInst examples.
...
llvm-svn: 3973
2002-09-29 17:31:54 +00:00
Vikram S. Adve
be55f2dd2c
Convert DIRS to PARALLEL_DIRS. They can be built independently.
...
llvm-svn: 3972
2002-09-29 11:52:14 +00:00
Vikram S. Adve
009dac7ab4
Regression test for llc bug that was folding two getelementptrs illegally.
...
llvm-svn: 3971
2002-09-28 18:09:05 +00:00
Vikram S. Adve
9011903ee2
Added a couple of helper methods for live range construction.
...
llvm-svn: 3970
2002-09-28 17:05:43 +00:00
Vikram S. Adve
ed2df3ecf8
Live ranges for Return value and return address of a Call are now
...
created here, simply by handling all implicit operands (which should
have been done anyway).
llvm-svn: 3969
2002-09-28 17:05:22 +00:00
Vikram S. Adve
8076fe87b7
Fixed method getReturnValue(): it should return NULL if the
...
callee does not return a value.
llvm-svn: 3968
2002-09-28 17:03:54 +00:00
Vikram S. Adve
8fef3b8033
Fixed incorrect assertion: spill code for function ptr should be
...
handled like normal operands, not like other call arguments.
llvm-svn: 3967
2002-09-28 17:02:40 +00:00
Vikram S. Adve
d76d82b40f
Return address register should be marked as "result" for the JMPL instruction
...
since it is defined by the instruction.
llvm-svn: 3966
2002-09-28 17:00:15 +00:00
Vikram S. Adve
6d1036d41b
Live ranges for Return value and return address of a Call are no longer
...
created here. Instead they are created in LiveRangeInfo.cpp. This
simplifies the code here quite a bit.
llvm-svn: 3965
2002-09-28 16:59:05 +00:00
Vikram S. Adve
cce628aeaf
Simplified code that handles call args and rets, so it no longer
...
needs the RegClass list to be passed in.
llvm-svn: 3964
2002-09-28 16:56:59 +00:00
Vikram S. Adve
4bb9866dc5
Simplify Call translation slightly.
...
llvm-svn: 3963
2002-09-28 16:55:41 +00:00
Vikram S. Adve
d92bd6f951
Regression test for live range bug for call arguments.
...
llvm-svn: 3962
2002-09-28 16:51:47 +00:00
Vikram S. Adve
34d16d64b0
Overhaul integer conversions to match C++ ISO standard.
...
Don't allow direct FP-to-uint conversion (must be eliminated by preselection).
Address arithmetic for arrays is now entirely 64-bit so no sign-ext needed.
llvm-svn: 3961
2002-09-27 14:33:08 +00:00
Vikram S. Adve
40e2347b90
Modify operand order for Create{Sign,Zero}ExtensionInstructions.
...
llvm-svn: 3960
2002-09-27 14:29:45 +00:00
Vikram S. Adve
d238de02c7
Bug fix: some redundant copies were not being deleted after detection :-|.
...
llvm-svn: 3959
2002-09-27 14:27:37 +00:00
Vikram S. Adve
66303bb9a5
Sign-extend integer constants from original type size to 64 bits!
...
llvm-svn: 3958
2002-09-27 14:26:20 +00:00
Vikram S. Adve
46aeb8c7c2
Decompose FP-to-UInt casts into FP-to-ULong-toUInt.
...
llvm-svn: 3957
2002-09-27 14:24:45 +00:00
Vikram S. Adve
2a351d54a0
Simple test for constant expressions constructed from global addresses.
...
llvm-svn: 3956
2002-09-27 13:27:14 +00:00
Vikram S. Adve
9cf9da9642
Overhauled completely.
...
llvm-svn: 3955
2002-09-27 13:26:36 +00:00
Chris Lattner
647df647e1
First try at implementing the AliasSetTracker class. I'm sure it will need
...
revision as I start to use it though.
llvm-svn: 3954
2002-09-26 21:49:07 +00:00
Chris Lattner
ed06af34b6
* Run preheaders pass tests
...
* Linearize list of directories so I don't have to keep dealing with
wrapping problems.
llvm-svn: 3953
2002-09-26 19:53:02 +00:00
Chris Lattner
b009ceaa9d
Checkin the simple features tests for the preheader insertion pass.
...
llvm-svn: 3952
2002-09-26 19:50:11 +00:00
Chris Lattner
d57f3f5073
- Further cleanups of LICM pass, remove extra work from previous implementation
...
- Do not clone instructions then insert clone outside of loop. Just move them.
llvm-svn: 3951
2002-09-26 19:40:25 +00:00
Chris Lattner
f64f2d3fb3
Improve comments, doxygenize more
...
llvm-svn: 3950
2002-09-26 16:52:07 +00:00
Chris Lattner
7b1dcc39c3
Don't hardcode path to dot in the doxygen config file. Let doxygen search the PATH
...
llvm-svn: 3949
2002-09-26 16:45:59 +00:00
Chris Lattner
c293224214
Don't hardcode path to doxygen
...
llvm-svn: 3948
2002-09-26 16:38:42 +00:00
Chris Lattner
718b221ff8
Clean up LICM significantly now that it is guaranteed to have loop preheaders
...
llvm-svn: 3947
2002-09-26 16:38:03 +00:00
Chris Lattner
ca056914c6
Change pass name to something sane
...
llvm-svn: 3946
2002-09-26 16:37:37 +00:00
Chris Lattner
d771fdfd75
Loop invariant code motion now depends on the LoopPreheader pass. Dead code
...
has not yet been removed.
llvm-svn: 3945
2002-09-26 16:19:31 +00:00
Chris Lattner
bedbd6bc16
- Cleanup break-crit-edges pass by making SplitCriticalEdge a member method.
...
- break-crit-edges pass does not invalidate loop-preheader pass.
llvm-svn: 3944
2002-09-26 16:18:51 +00:00
Chris Lattner
9b4c1aa389
Checkin new loop-preheader insertion pass.
...
llvm-svn: 3943
2002-09-26 16:17:33 +00:00
Chris Lattner
61992f66d8
Checkin new loop-preheader insertion pass.
...
llvm-svn: 3942
2002-09-26 16:17:31 +00:00
Chris Lattner
3524f58309
Fix printing of loop information
...
llvm-svn: 3941
2002-09-26 16:15:54 +00:00
Chris Lattner
0fcb61f2b7
- Fix bug in LoopInfo causing ParentLoop to be garbage
...
llvm-svn: 3940
2002-09-26 16:15:19 +00:00
Chris Lattner
98ae0f1897
- Add methods to ImmediateDominators & DominatorTree to allow updates
...
- Make DominatorTree::Node not inherit from std::vector
llvm-svn: 3939
2002-09-26 16:14:41 +00:00
Chris Lattner
6561db0c12
- Add methods to ImmediateDominators & DominatorTree to allow updates
...
- Make DominatorTree::Node not inherit from std::vector
llvm-svn: 3938
2002-09-26 16:14:37 +00:00
Chris Lattner
9ff37c5265
Add a new "DominatorSet::addDominator" method to allow updates
...
llvm-svn: 3937
2002-09-26 05:42:47 +00:00
Chris Lattner
08373d1c9c
- Add new methods to LoopInfo: getLoopPreheader, addBasicBlockToLoop.
...
These allow extra information to be easily gathered, and loopinfo to be
updated.
llvm-svn: 3936
2002-09-26 05:32:50 +00:00
Chris Lattner
0a96a521eb
- Add new methods to LoopInfo: getLoopPreheader, addBasicBlockToLoop.
...
These allow extra information to be easily gathered, and loopinfo to be
updated.
llvm-svn: 3935
2002-09-26 05:32:43 +00:00
Chris Lattner
4dfede8070
- Add new ctor to BasicBlock to allow insertion before any BB, not just at
...
the end of the function.
llvm-svn: 3934
2002-09-26 05:03:22 +00:00
Chris Lattner
506389a37f
- Add new ctor to BasicBlock to allow insertion before any BB, not just at
...
the end of the function.
llvm-svn: 3933
2002-09-26 05:03:17 +00:00
Chris Lattner
870a4a5bb4
Converted SimpleStructMutation to take TargetData as a required pass.
...
llvm-svn: 3932
2002-09-26 00:17:21 +00:00
Chris Lattner
7b5746bfcf
Converted SimpleStructMutation to take TargetData as a required pass.
...
llvm-svn: 3931
2002-09-26 00:17:18 +00:00
Chris Lattner
79efacbb19
Change LowerAllocations pass to 'require' TargetData instead of it being
...
passed in.
llvm-svn: 3930
2002-09-25 23:47:49 +00:00
Chris Lattner
3cab9f0396
Change LowerAllocations pass to 'require' TargetData instead of it being
...
passed in.
llvm-svn: 3929
2002-09-25 23:47:47 +00:00
Chris Lattner
fec6850f90
Convert TargetData to be an ImmutablePass
...
llvm-svn: 3928
2002-09-25 23:46:56 +00:00
Chris Lattner
09cfdcb1a3
Convert TargetData to be an ImmutablePass
...
llvm-svn: 3927
2002-09-25 23:46:55 +00:00
Chris Lattner
9720dda185
Add documentation for ImmutablePass's
...
llvm-svn: 3926
2002-09-25 22:31:38 +00:00
Chris Lattner
635d8919a7
ImmutablePass's don't need a runOnFunction, nor do they need to explicitly say
...
that they preserve all xforms
llvm-svn: 3925
2002-09-25 22:27:54 +00:00
Chris Lattner
ceae380b2c
Convert BasicVN to be an ImmutablePass
...
llvm-svn: 3924
2002-09-25 22:27:25 +00:00
Chris Lattner
480b37d479
* Fix ugly bug in previous checkin where I reused the name 'i' one too many times
...
* Print out immutable passes in the -debug-pass=Structure report.
llvm-svn: 3923
2002-09-25 22:26:52 +00:00
Chris Lattner
81f4eaab04
Convert BasicAA to be an immutable pass instead of a FunctionPass
...
llvm-svn: 3922
2002-09-25 22:00:18 +00:00
Chris Lattner
ee0788d42d
Add support for ImmutablePasses, which are not run, and cannot be
...
invalidated.
llvm-svn: 3921
2002-09-25 21:59:11 +00:00
Nick Hildenbrandt
88e87783b8
Strings now handled correctly.
...
llvm-svn: 3920
2002-09-25 20:29:26 +00:00
Chris Lattner
7a6ce5a28c
Checkin stub for Misha to implement
...
llvm-svn: 3919
2002-09-25 19:10:06 +00:00
Chris Lattner
8d081dd436
Make sure to print message when linking a debug .o file
...
llvm-svn: 3918
2002-09-25 17:15:22 +00:00
Chris Lattner
b408154f5f
- Fix bug: Mem2Reg/2002-05-01-ShouldNotPromoteThisAlloca.ll
...
llvm-svn: 3917
2002-09-24 21:19:41 +00:00
Chris Lattner
4357e54760
Eliminate extraneous #include
...
llvm-svn: 3916
2002-09-24 21:18:40 +00:00
Chris Lattner
588378fb38
A lot of this stuff has been done. Remove the done items
...
llvm-svn: 3915
2002-09-24 16:15:36 +00:00
Chris Lattner
4e6e0eda00
New feature test for something we have done for a long time
...
llvm-svn: 3914
2002-09-24 16:13:20 +00:00
Chris Lattner
d6dcd8ec32
Fix bug: SimplifyCFG/2002-09-24-PHIAssertion.ll
...
llvm-svn: 3913
2002-09-24 16:09:17 +00:00
Chris Lattner
710e9a5c65
New testcase that causes SimplifyCFG to assert out.
...
llvm-svn: 3912
2002-09-24 16:02:44 +00:00
Chris Lattner
c05ad96803
- Do not expose Critical Edge breaking mechanics outside the BCE pass, thus
...
removing it from Transforms/Local.h and from Transforms/Utils/*
llvm-svn: 3911
2002-09-24 15:52:01 +00:00
Chris Lattner
75f80bd0b6
- Do not expose Critical Edge breaking mechanics outside the BCE pass, thus
...
removing it from Transforms/Local.h and from Transforms/Utils/*
llvm-svn: 3910
2002-09-24 15:51:56 +00:00
Chris Lattner
068c681a84
- Do not expose Critical Edge breaking mechanics outside the BCE pass, thus
...
removing it from Transforms/Local.h and from Transforms/Utils/*
llvm-svn: 3909
2002-09-24 15:51:54 +00:00
Chris Lattner
b4e7e22be3
Correlated Exprs pass now requires BCE pass instead of doing it manually
...
llvm-svn: 3908
2002-09-24 15:43:56 +00:00
Chris Lattner
4bec665b09
- Expose passinfo from BreakCriticalEdges pass so that it may be "Required"
...
by other passes. Make BCE pass be in anonymous namespace now.
llvm-svn: 3907
2002-09-24 15:43:12 +00:00
Chris Lattner
13fea86b05
Expose passinfo from BreakCriticalEdges pass so that it may be "Required" by
...
other passes
llvm-svn: 3906
2002-09-24 15:42:27 +00:00
Chris Lattner
47c2e3e952
Make sure to close the file before deleting it
...
llvm-svn: 3905
2002-09-24 00:09:48 +00:00
Chris Lattner
5325c5f340
Minor cleanups
...
llvm-svn: 3904
2002-09-24 00:09:26 +00:00
Chris Lattner
b03832d5d0
Add new BreakCriticalEdges pass
...
llvm-svn: 3903
2002-09-24 00:08:39 +00:00
Chris Lattner
9f48a00e43
Add new BreakCriticalEdges pass
...
llvm-svn: 3902
2002-09-24 00:08:37 +00:00
Chris Lattner
34d39668f9
There are no implicit gep forms of load and store anymore
...
llvm-svn: 3901
2002-09-24 00:08:01 +00:00
Chris Lattner
c952e4558b
Make users of FindUsedTypes not have problems with linkage. This fixes
...
Cwriter.
llvm-svn: 3900
2002-09-24 00:07:21 +00:00
Chris Lattner
fc75a8552d
Make users of FindUsedTypes not have problems with linkage. This fixes
...
cwriter.
llvm-svn: 3899
2002-09-24 00:07:17 +00:00
Chris Lattner
d4c8f4e826
Convert to using long indexes instead of uint
...
llvm-svn: 3898
2002-09-23 23:41:53 +00:00
Chris Lattner
555518c70f
Optimize away cases like:
...
%cast109 = cast uint %cast212 to short ; <short> [#uses=1]
%cast214 = cast short %cast109 to uint ; <uint> [#uses=1]
%cast215 = cast uint %cast214 to short ; <short> [#uses=1]
llvm-svn: 3897
2002-09-23 23:39:43 +00:00
Chris Lattner
ef453e2800
Add some more testcases for things to get optimized away
...
llvm-svn: 3896
2002-09-23 23:39:17 +00:00
Chris Lattner
28d103548d
Fix: ConstantMerge/2002-09-23-CPR-Update.ll
...
Basically, this bug boiled down to calling replaceUsesOfWith on a constant,
which changed it's shape in an illegal way. This pass now goes through all
of the trouble neccesary to do the replacement on constants.
llvm-svn: 3895
2002-09-23 23:00:46 +00:00
Chris Lattner
be4521f333
New testcase distilled from SPEC vortex benchmark
...
llvm-svn: 3894
2002-09-23 22:31:04 +00:00
Chris Lattner
935559ad2a
Run constantmerge tests too
...
llvm-svn: 3893
2002-09-23 22:26:23 +00:00
Nick Hildenbrandt
9cedce62ee
Parenthesis are now added to casts of type array.
...
llvm-svn: 3892
2002-09-23 21:02:50 +00:00
Chris Lattner
7ccb217f21
* Fix bug: CorrelatedExprs/2002-09-23-PHIUpdateBug.ll
...
* Make sure "Changed" is updated correctly
llvm-svn: 3891
2002-09-23 20:06:22 +00:00
Chris Lattner
caad373759
Fix testcase to accurately expose bug
...
llvm-svn: 3890
2002-09-23 20:04:54 +00:00
Chris Lattner
16c563fd78
New testcase distilled from SPEC MCF benchmark
...
llvm-svn: 3889
2002-09-23 19:54:06 +00:00
Chris Lattner
4037a261d8
Insert resolved constants into the global map so they are reused correctly.
...
This bug was exposed linking the SPEC benchmark suite.
llvm-svn: 3888
2002-09-23 18:14:15 +00:00
Chris Lattner
6b9be6f95a
Group #includes better
...
llvm-svn: 3887
2002-09-23 17:45:52 +00:00
Vikram S. Adve
ff0ebda5d7
Allow LLC to be executed on Linux; only the LLC output should not be executed.
...
llvm-svn: 3886
2002-09-23 14:24:19 +00:00
Vikram S. Adve
b4e9f91b81
C tests are run via Makefile.singlesrc so don't run them twice.
...
llvm-svn: 3885
2002-09-23 14:23:15 +00:00
Vikram S. Adve
8e6e1816c0
Put intermediate source files in a subdirectory here instead of with
...
object files. Also,
llvm-svn: 3884
2002-09-23 13:12:28 +00:00
Vikram S. Adve
7765a4a4f6
Disable reassociation pass in LLC until it is fixed.
...
llvm-svn: 3883
2002-09-23 12:55:50 +00:00
Chris Lattner
20ebb24264
'whoami' doesn't exist on solaris
...
llvm-svn: 3882
2002-09-22 23:35:11 +00:00
Chris Lattner
0fbbd8a742
Update url
...
llvm-svn: 3881
2002-09-22 21:25:12 +00:00
Chris Lattner
1047feff1b
Add information about the DEBUG() macro and the Statistic template
...
llvm-svn: 3880
2002-09-22 19:38:40 +00:00
Chris Lattner
387d76a983
* Remove the -stopraise option, which is no longer needed now that we have
...
the -debug-pass=Arguments option
* Run instcombining BEFORE mem2reg so that getelementptr X, long 0's are
cleaned up. This is also important because scalar replacement of aggr.
will want instcombine to run before it goes as well.
llvm-svn: 3879
2002-09-22 18:50:22 +00:00
Chris Lattner
facc751260
Don't insert a PHI node to merge "returns" from an inlined function if there
...
is only a single return from the function!
llvm-svn: 3878
2002-09-22 18:41:25 +00:00
Chris Lattner
a8ce09e2de
* Minor fixes to support C files.
...
* Build burg as a utility now, change its location
* Clean up other rules
llvm-svn: 3876
2002-09-22 02:47:15 +00:00
Chris Lattner
75246ec78d
Clean up dead rules
...
llvm-svn: 3875
2002-09-22 02:41:20 +00:00
Chris Lattner
8f07f947cf
Fix tons of warnings, convert burg to use Makefile.common system, rename
...
gram.y to gram.yc so that we don't try to turn it into a .cpp file.
llvm-svn: 3874
2002-09-22 02:40:40 +00:00
Anand Shukla
4b6bd16c2b
Changed codegen to add 2 empty slots at the top of stack using StackSlots pass
...
llvm-svn: 3873
2002-09-21 05:01:21 +00:00
Anand Shukla
ca15c99c4d
Initial version: it adds 2 empty slots at the top of stack
...
llvm-svn: 3872
2002-09-21 04:58:26 +00:00
Chris Lattner
230d832e38
Fix cwriter to not output FP constants in ascii, output them in hex instead.
...
This fixes a number of FP precision problems, making the output of the
power benchmark closer to the right answer.
Unfortunately, this only addresses FP constants used directly in functions.
Constants referred to by global constants (such as an array of FP values)
aren't helped by this. Until this happens power won't work.
llvm-svn: 3871
2002-09-20 23:26:33 +00:00
Chris Lattner
79ea4c4aa2
Fix bug: 2002-09-20-VarArgPrototypes.ll
...
llvm-svn: 3870
2002-09-20 22:32:30 +00:00
Chris Lattner
6e1f8c5963
Build with $(CC), not gcc explicitly
...
llvm-svn: 3869
2002-09-20 22:32:00 +00:00
Chris Lattner
d48ac6ea41
New testcase for cbe
...
llvm-svn: 3868
2002-09-20 22:28:03 +00:00
Nick Hildenbrandt
6829a0b1d1
New testcase for broken type printing for the cwriter
...
llvm-svn: 3867
2002-09-20 21:44:32 +00:00
Anand Shukla
8137896962
Changed uchar to unsigned char in function ParseBytecodeBuffer, because seemingly it affects opt in uncertain ways :)
...
llvm-svn: 3866
2002-09-20 20:57:54 +00:00
Vikram S. Adve
6a2258b230
Fix yet another profile linking issue.
...
llvm-svn: 3865
2002-09-20 18:16:20 +00:00
Anand Shukla
77dca14403
Added checking threshold
...
llvm-svn: 3864
2002-09-20 16:44:35 +00:00
Vikram S. Adve
0a79c117ac
Peephole optimization pass on final machine code.
...
llvm-svn: 3863
2002-09-20 16:33:03 +00:00
Vikram S. Adve
a0abb97e71
Fix link error for profile version. Also, build Burg differently
...
for different architectures.
llvm-svn: 3862
2002-09-20 16:15:57 +00:00
Vikram S. Adve
321f83d8d8
Build burg separately for different architectures.
...
llvm-svn: 3861
2002-09-20 16:14:47 +00:00
Chris Lattner
2895a2f421
Fix output of typedefs to avoid syntax errors.
...
* We now can correctly Cify the Olden-power benchmark
llvm-svn: 3860
2002-09-20 15:20:24 +00:00
Chris Lattner
7bd37ed1a6
* Add a couple of comments to the output c code
...
* _FIX_ infinite recursion problem, due to typedefs of a structure being
printed before the structure.
llvm-svn: 3859
2002-09-20 15:18:30 +00:00
Chris Lattner
32d812feff
Another change that doesn't affect functionality. Since we are only looking
...
at types in the symbol table, only traverse the type plane, saving a loop nest.
llvm-svn: 3858
2002-09-20 15:12:13 +00:00
Chris Lattner
9a973b4f6a
Make the StructPrinted set only take memory when it's being used.
...
rename parseStruct to printContainedStructs
llvm-svn: 3857
2002-09-20 15:05:40 +00:00
Chris Lattner
37bd117997
No functionality changes, primarily just changing tab indentation to space
...
indentation
llvm-svn: 3856
2002-09-20 14:56:54 +00:00