Vikram S. Adve [Sat, 28 Sep 2002 18:09:05 +0000 (18:09 +0000)]
Regression test for llc bug that was folding two getelementptrs illegally.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3971
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Sat, 28 Sep 2002 17:05:43 +0000 (17:05 +0000)]
Added a couple of helper methods for live range construction.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3970
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Sat, 28 Sep 2002 17:05:22 +0000 (17:05 +0000)]
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).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3969
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Sat, 28 Sep 2002 17:03:54 +0000 (17:03 +0000)]
Fixed method getReturnValue(): it should return NULL if the
callee does not return a value.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3968
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Sat, 28 Sep 2002 17:02:40 +0000 (17:02 +0000)]
Fixed incorrect assertion: spill code for function ptr should be
handled like normal operands, not like other call arguments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3967
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Sat, 28 Sep 2002 17:00:15 +0000 (17:00 +0000)]
Return address register should be marked as "result" for the JMPL instruction
since it is defined by the instruction.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3966
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Sat, 28 Sep 2002 16:59:05 +0000 (16:59 +0000)]
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3965
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Sat, 28 Sep 2002 16:56:59 +0000 (16:56 +0000)]
Simplified code that handles call args and rets, so it no longer
needs the RegClass list to be passed in.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3964
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Sat, 28 Sep 2002 16:55:41 +0000 (16:55 +0000)]
Simplify Call translation slightly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3963
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Sat, 28 Sep 2002 16:51:47 +0000 (16:51 +0000)]
Regression test for live range bug for call arguments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3962
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Fri, 27 Sep 2002 14:33:08 +0000 (14:33 +0000)]
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3961
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Fri, 27 Sep 2002 14:29:45 +0000 (14:29 +0000)]
Modify operand order for Create{Sign,Zero}ExtensionInstructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3960
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Fri, 27 Sep 2002 14:27:37 +0000 (14:27 +0000)]
Bug fix: some redundant copies were not being deleted after detection :-|.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3959
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Fri, 27 Sep 2002 14:26:20 +0000 (14:26 +0000)]
Sign-extend integer constants from original type size to 64 bits!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3958
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Fri, 27 Sep 2002 14:24:45 +0000 (14:24 +0000)]
Decompose FP-to-UInt casts into FP-to-ULong-toUInt.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3957
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Fri, 27 Sep 2002 13:27:14 +0000 (13:27 +0000)]
Simple test for constant expressions constructed from global addresses.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3956
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Fri, 27 Sep 2002 13:26:36 +0000 (13:26 +0000)]
Overhauled completely.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3955
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 26 Sep 2002 21:49:07 +0000 (21:49 +0000)]
First try at implementing the AliasSetTracker class. I'm sure it will need
revision as I start to use it though.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3954
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 26 Sep 2002 19:53:02 +0000 (19:53 +0000)]
* Run preheaders pass tests
* Linearize list of directories so I don't have to keep dealing with
wrapping problems.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3953
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 26 Sep 2002 19:50:11 +0000 (19:50 +0000)]
Checkin the simple features tests for the preheader insertion pass.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3952
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 26 Sep 2002 19:40:25 +0000 (19:40 +0000)]
- Further cleanups of LICM pass, remove extra work from previous implementation
- Do not clone instructions then insert clone outside of loop. Just move them.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3951
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 26 Sep 2002 16:52:07 +0000 (16:52 +0000)]
Improve comments, doxygenize more
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3950
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 26 Sep 2002 16:45:59 +0000 (16:45 +0000)]
Don't hardcode path to dot in the doxygen config file. Let doxygen search the PATH
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3949
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 26 Sep 2002 16:38:42 +0000 (16:38 +0000)]
Don't hardcode path to doxygen
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3948
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 26 Sep 2002 16:38:03 +0000 (16:38 +0000)]
Clean up LICM significantly now that it is guaranteed to have loop preheaders
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3947
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 26 Sep 2002 16:37:37 +0000 (16:37 +0000)]
Change pass name to something sane
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3946
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 26 Sep 2002 16:19:31 +0000 (16:19 +0000)]
Loop invariant code motion now depends on the LoopPreheader pass. Dead code
has not yet been removed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3945
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 26 Sep 2002 16:18:51 +0000 (16:18 +0000)]
- Cleanup break-crit-edges pass by making SplitCriticalEdge a member method.
- break-crit-edges pass does not invalidate loop-preheader pass.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3944
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 26 Sep 2002 16:17:33 +0000 (16:17 +0000)]
Checkin new loop-preheader insertion pass.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3943
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 26 Sep 2002 16:17:31 +0000 (16:17 +0000)]
Checkin new loop-preheader insertion pass.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3942
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 26 Sep 2002 16:15:54 +0000 (16:15 +0000)]
Fix printing of loop information
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3941
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 26 Sep 2002 16:15:19 +0000 (16:15 +0000)]
- Fix bug in LoopInfo causing ParentLoop to be garbage
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3940
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 26 Sep 2002 16:14:41 +0000 (16:14 +0000)]
- Add methods to ImmediateDominators & DominatorTree to allow updates
- Make DominatorTree::Node not inherit from std::vector
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3939
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 26 Sep 2002 16:14:37 +0000 (16:14 +0000)]
- Add methods to ImmediateDominators & DominatorTree to allow updates
- Make DominatorTree::Node not inherit from std::vector
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3938
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 26 Sep 2002 05:42:47 +0000 (05:42 +0000)]
Add a new "DominatorSet::addDominator" method to allow updates
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3937
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 26 Sep 2002 05:32:50 +0000 (05:32 +0000)]
- Add new methods to LoopInfo: getLoopPreheader, addBasicBlockToLoop.
These allow extra information to be easily gathered, and loopinfo to be
updated.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3936
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 26 Sep 2002 05:32:43 +0000 (05:32 +0000)]
- Add new methods to LoopInfo: getLoopPreheader, addBasicBlockToLoop.
These allow extra information to be easily gathered, and loopinfo to be
updated.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3935
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 26 Sep 2002 05:03:22 +0000 (05:03 +0000)]
- Add new ctor to BasicBlock to allow insertion before any BB, not just at
the end of the function.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3934
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 26 Sep 2002 05:03:17 +0000 (05:03 +0000)]
- Add new ctor to BasicBlock to allow insertion before any BB, not just at
the end of the function.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3933
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 26 Sep 2002 00:17:21 +0000 (00:17 +0000)]
Converted SimpleStructMutation to take TargetData as a required pass.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3932
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 26 Sep 2002 00:17:18 +0000 (00:17 +0000)]
Converted SimpleStructMutation to take TargetData as a required pass.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3931
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 25 Sep 2002 23:47:49 +0000 (23:47 +0000)]
Change LowerAllocations pass to 'require' TargetData instead of it being
passed in.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3930
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 25 Sep 2002 23:47:47 +0000 (23:47 +0000)]
Change LowerAllocations pass to 'require' TargetData instead of it being
passed in.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3929
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 25 Sep 2002 23:46:56 +0000 (23:46 +0000)]
Convert TargetData to be an ImmutablePass
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3928
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 25 Sep 2002 23:46:55 +0000 (23:46 +0000)]
Convert TargetData to be an ImmutablePass
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3927
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 25 Sep 2002 22:31:38 +0000 (22:31 +0000)]
Add documentation for ImmutablePass's
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3926
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 25 Sep 2002 22:27:54 +0000 (22:27 +0000)]
ImmutablePass's don't need a runOnFunction, nor do they need to explicitly say
that they preserve all xforms
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3925
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 25 Sep 2002 22:27:25 +0000 (22:27 +0000)]
Convert BasicVN to be an ImmutablePass
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3924
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 25 Sep 2002 22:26:52 +0000 (22:26 +0000)]
* 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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3923
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 25 Sep 2002 22:00:18 +0000 (22:00 +0000)]
Convert BasicAA to be an immutable pass instead of a FunctionPass
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3922
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 25 Sep 2002 21:59:11 +0000 (21:59 +0000)]
Add support for ImmutablePasses, which are not run, and cannot be
invalidated.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3921
91177308-0d34-0410-b5e6-
96231b3b80d8
Nick Hildenbrandt [Wed, 25 Sep 2002 20:29:26 +0000 (20:29 +0000)]
Strings now handled correctly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3920
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 25 Sep 2002 19:10:06 +0000 (19:10 +0000)]
Checkin stub for Misha to implement
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3919
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 25 Sep 2002 17:15:22 +0000 (17:15 +0000)]
Make sure to print message when linking a debug .o file
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3918
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 24 Sep 2002 21:19:41 +0000 (21:19 +0000)]
- Fix bug: Mem2Reg/2002-05-01-ShouldNotPromoteThisAlloca.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3917
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 24 Sep 2002 21:18:40 +0000 (21:18 +0000)]
Eliminate extraneous #include
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3916
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 24 Sep 2002 16:15:36 +0000 (16:15 +0000)]
A lot of this stuff has been done. Remove the done items
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3915
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 24 Sep 2002 16:13:20 +0000 (16:13 +0000)]
New feature test for something we have done for a long time
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3914
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 24 Sep 2002 16:09:17 +0000 (16:09 +0000)]
Fix bug: SimplifyCFG/2002-09-24-PHIAssertion.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3913
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 24 Sep 2002 16:02:44 +0000 (16:02 +0000)]
New testcase that causes SimplifyCFG to assert out.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3912
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 24 Sep 2002 15:52:01 +0000 (15:52 +0000)]
- Do not expose Critical Edge breaking mechanics outside the BCE pass, thus
removing it from Transforms/Local.h and from Transforms/Utils/*
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3911
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 24 Sep 2002 15:51:56 +0000 (15:51 +0000)]
- Do not expose Critical Edge breaking mechanics outside the BCE pass, thus
removing it from Transforms/Local.h and from Transforms/Utils/*
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3910
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 24 Sep 2002 15:51:54 +0000 (15:51 +0000)]
- Do not expose Critical Edge breaking mechanics outside the BCE pass, thus
removing it from Transforms/Local.h and from Transforms/Utils/*
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3909
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 24 Sep 2002 15:43:56 +0000 (15:43 +0000)]
Correlated Exprs pass now requires BCE pass instead of doing it manually
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3908
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 24 Sep 2002 15:43:12 +0000 (15:43 +0000)]
- Expose passinfo from BreakCriticalEdges pass so that it may be "Required"
by other passes. Make BCE pass be in anonymous namespace now.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3907
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 24 Sep 2002 15:42:27 +0000 (15:42 +0000)]
Expose passinfo from BreakCriticalEdges pass so that it may be "Required" by
other passes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3906
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 24 Sep 2002 00:09:48 +0000 (00:09 +0000)]
Make sure to close the file before deleting it
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3905
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 24 Sep 2002 00:09:26 +0000 (00:09 +0000)]
Minor cleanups
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3904
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 24 Sep 2002 00:08:39 +0000 (00:08 +0000)]
Add new BreakCriticalEdges pass
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3903
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 24 Sep 2002 00:08:37 +0000 (00:08 +0000)]
Add new BreakCriticalEdges pass
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3902
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 24 Sep 2002 00:08:01 +0000 (00:08 +0000)]
There are no implicit gep forms of load and store anymore
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3901
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 24 Sep 2002 00:07:21 +0000 (00:07 +0000)]
Make users of FindUsedTypes not have problems with linkage. This fixes
Cwriter.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3900
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 24 Sep 2002 00:07:17 +0000 (00:07 +0000)]
Make users of FindUsedTypes not have problems with linkage. This fixes
cwriter.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3899
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 23 Sep 2002 23:41:53 +0000 (23:41 +0000)]
Convert to using long indexes instead of uint
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3898
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 23 Sep 2002 23:39:43 +0000 (23:39 +0000)]
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]
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3897
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 23 Sep 2002 23:39:17 +0000 (23:39 +0000)]
Add some more testcases for things to get optimized away
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3896
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 23 Sep 2002 23:00:46 +0000 (23:00 +0000)]
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3895
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 23 Sep 2002 22:31:04 +0000 (22:31 +0000)]
New testcase distilled from SPEC vortex benchmark
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3894
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 23 Sep 2002 22:26:23 +0000 (22:26 +0000)]
Run constantmerge tests too
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3893
91177308-0d34-0410-b5e6-
96231b3b80d8
Nick Hildenbrandt [Mon, 23 Sep 2002 21:02:50 +0000 (21:02 +0000)]
Parenthesis are now added to casts of type array.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3892
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 23 Sep 2002 20:06:22 +0000 (20:06 +0000)]
* Fix bug: CorrelatedExprs/2002-09-23-PHIUpdateBug.ll
* Make sure "Changed" is updated correctly
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3891
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 23 Sep 2002 20:04:54 +0000 (20:04 +0000)]
Fix testcase to accurately expose bug
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3890
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 23 Sep 2002 19:54:06 +0000 (19:54 +0000)]
New testcase distilled from SPEC MCF benchmark
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3889
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 23 Sep 2002 18:14:15 +0000 (18:14 +0000)]
Insert resolved constants into the global map so they are reused correctly.
This bug was exposed linking the SPEC benchmark suite.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3888
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 23 Sep 2002 17:45:52 +0000 (17:45 +0000)]
Group #includes better
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3887
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Mon, 23 Sep 2002 14:24:19 +0000 (14:24 +0000)]
Allow LLC to be executed on Linux; only the LLC output should not be executed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3886
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Mon, 23 Sep 2002 14:23:15 +0000 (14:23 +0000)]
C tests are run via Makefile.singlesrc so don't run them twice.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3885
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Mon, 23 Sep 2002 13:12:28 +0000 (13:12 +0000)]
Put intermediate source files in a subdirectory here instead of with
object files. Also,
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3884
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Mon, 23 Sep 2002 12:55:50 +0000 (12:55 +0000)]
Disable reassociation pass in LLC until it is fixed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3883
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 22 Sep 2002 23:35:11 +0000 (23:35 +0000)]
'whoami' doesn't exist on solaris
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3882
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 22 Sep 2002 21:25:12 +0000 (21:25 +0000)]
Update url
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3881
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 22 Sep 2002 19:38:40 +0000 (19:38 +0000)]
Add information about the DEBUG() macro and the Statistic template
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3880
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 22 Sep 2002 18:50:22 +0000 (18:50 +0000)]
* 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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3879
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 22 Sep 2002 18:41:25 +0000 (18:41 +0000)]
Don't insert a PHI node to merge "returns" from an inlined function if there
is only a single return from the function!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3878
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 22 Sep 2002 02:47:15 +0000 (02:47 +0000)]
* Minor fixes to support C files.
* Build burg as a utility now, change its location
* Clean up other rules
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3876
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 22 Sep 2002 02:41:20 +0000 (02:41 +0000)]
Clean up dead rules
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3875
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 22 Sep 2002 02:40:40 +0000 (02:40 +0000)]
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3874
91177308-0d34-0410-b5e6-
96231b3b80d8
Anand Shukla [Sat, 21 Sep 2002 05:01:21 +0000 (05:01 +0000)]
Changed codegen to add 2 empty slots at the top of stack using StackSlots pass
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3873
91177308-0d34-0410-b5e6-
96231b3b80d8
Anand Shukla [Sat, 21 Sep 2002 04:58:26 +0000 (04:58 +0000)]
Initial version: it adds 2 empty slots at the top of stack
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3872
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 20 Sep 2002 23:26:33 +0000 (23:26 +0000)]
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3871
91177308-0d34-0410-b5e6-
96231b3b80d8