oota-llvm.git
17 years agoMore extensive alias analysis.
Jim Laskey [Wed, 4 Oct 2006 16:53:27 +0000 (16:53 +0000)]
More extensive alias analysis.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30721 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoMore long term solution
Jim Laskey [Wed, 4 Oct 2006 10:40:15 +0000 (10:40 +0000)]
More long term solution

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30720 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoPattern match min/max nodes when we have sse. This implements
Chris Lattner [Wed, 4 Oct 2006 06:57:07 +0000 (06:57 +0000)]
Pattern match min/max nodes when we have sse.  This implements
CodeGen/X86/scalar_sse_minmax.ll

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30719 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agopattern match min/max nodes
Chris Lattner [Wed, 4 Oct 2006 06:56:02 +0000 (06:56 +0000)]
pattern match min/max nodes

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30718 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoadd a note :(
Chris Lattner [Wed, 4 Oct 2006 05:52:13 +0000 (05:52 +0000)]
add a note :(

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30717 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoThis case isn't implemented yet. It seems unlikely to be needed, but if it
Chris Lattner [Wed, 4 Oct 2006 04:58:58 +0000 (04:58 +0000)]
This case isn't implemented yet.  It seems unlikely to be needed, but if it
ever is, we want to get an assert instead of silent bad codegen.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30716 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoWork around for some problems with templates.
Jim Laskey [Wed, 4 Oct 2006 01:43:13 +0000 (01:43 +0000)]
Work around for some problems with templates.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30715 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoCombine ISD::EXTLOAD, ISD::SEXTLOAD, ISD::ZEXTLOAD into ISD::LOADX. Add an
Evan Cheng [Wed, 4 Oct 2006 00:56:09 +0000 (00:56 +0000)]
Combine ISD::EXTLOAD, ISD::SEXTLOAD, ISD::ZEXTLOAD into ISD::LOADX. Add an
extra operand to LOADX to specify the exact value extension type.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30714 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoUse $( $| $) to represent alternatives in asm blocks instead of {|}. This
Chris Lattner [Tue, 3 Oct 2006 23:27:09 +0000 (23:27 +0000)]
Use $( $| $) to represent alternatives in asm blocks instead of {|}.  This
is needed to support targets where {|} aren't special symbols.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30712 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoFix an obvious typo.
Evan Cheng [Tue, 3 Oct 2006 23:08:27 +0000 (23:08 +0000)]
Fix an obvious typo.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30711 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoBugfixes
Chris Lattner [Tue, 3 Oct 2006 20:19:23 +0000 (20:19 +0000)]
Bugfixes

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30709 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoPrint the MBB ID # along with the bb tag in the -print-machine-instrs output.
Chris Lattner [Tue, 3 Oct 2006 20:17:24 +0000 (20:17 +0000)]
Print the MBB ID # along with the bb tag in the -print-machine-instrs output.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30708 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoADd a method
Chris Lattner [Tue, 3 Oct 2006 20:16:45 +0000 (20:16 +0000)]
ADd a method

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30707 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoProvide a function that ensures MBB numbering is dense and inorder. This
Chris Lattner [Tue, 3 Oct 2006 19:18:57 +0000 (19:18 +0000)]
Provide a function that ensures MBB numbering is dense and inorder.  This
can be used by MachineFunctionPasses who need this property.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30706 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoSimplify logic further.
Nick Lewycky [Tue, 3 Oct 2006 17:36:01 +0000 (17:36 +0000)]
Simplify logic further.
Ensure that we copy KnownProperties before calling visitBasicBlock, else
we may leak properties into blocks where they don't belong.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30705 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoImplement floating point constants
Rafael Espindola [Tue, 3 Oct 2006 17:27:58 +0000 (17:27 +0000)]
Implement floating point constants

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30704 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoFix PR933 and CodeGen/X86/2006-10-02-BoolRetCrash.ll
Chris Lattner [Tue, 3 Oct 2006 17:18:42 +0000 (17:18 +0000)]
Fix PR933 and CodeGen/X86/2006-10-02-BoolRetCrash.ll

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30703 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agotestcase for PR933
Chris Lattner [Tue, 3 Oct 2006 17:17:54 +0000 (17:17 +0000)]
testcase for PR933

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30702 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoclean up use of 'explicit'. This is PR934.
Chris Lattner [Tue, 3 Oct 2006 17:09:12 +0000 (17:09 +0000)]
clean up use of 'explicit'.  This is PR934.
Patch contributed by Kevin Sopp!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30701 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoSimplify, now that predsimplify depends on break-crit-edges.
Nick Lewycky [Tue, 3 Oct 2006 15:19:11 +0000 (15:19 +0000)]
Simplify, now that predsimplify depends on break-crit-edges.
Fix SwitchInst where dest-block is the same as one of the cases.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30700 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoMove break-crit-edges before the predicate simplifier. Allows us to
Nick Lewycky [Tue, 3 Oct 2006 14:52:23 +0000 (14:52 +0000)]
Move break-crit-edges before the predicate simplifier. Allows us to
optimize in more cases.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30699 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoRevert previous patch. Still breaking things.
Evan Cheng [Tue, 3 Oct 2006 07:26:07 +0000 (07:26 +0000)]
Revert previous patch. Still breaking things.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30698 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoFix for PR929. The PHI nodes were being gone through for each instruction
Bill Wendling [Tue, 3 Oct 2006 07:20:20 +0000 (07:20 +0000)]
Fix for PR929. The PHI nodes were being gone through for each instruction
in a successor block for every block...resulting in some O(N^k) algorithm
which wasn't very good for performance. Calculating this information up
front and keeping it in a map made it much faster.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30697 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoFix PR932 and Analysis/Dominators/2006-10-02-BreakCritEdges.ll:
Chris Lattner [Tue, 3 Oct 2006 07:02:02 +0000 (07:02 +0000)]
Fix PR932 and Analysis/Dominators/2006-10-02-BreakCritEdges.ll:
The critical edge block dominates the dest block if the destblock dominates
all edges other than the one incoming from the critical edge.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30696 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoNew testcase for PR932
Chris Lattner [Tue, 3 Oct 2006 07:00:13 +0000 (07:00 +0000)]
New testcase for PR932

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30695 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoThese don't have immediate operands.
Evan Cheng [Tue, 3 Oct 2006 06:55:11 +0000 (06:55 +0000)]
These don't have immediate operands.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30694 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoMove DominatorTree to immediately follow DominatorTreeBase
Chris Lattner [Tue, 3 Oct 2006 05:24:56 +0000 (05:24 +0000)]
Move DominatorTree to immediately follow DominatorTreeBase

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30693 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agofix the names of the 64bit fp register
Rafael Espindola [Mon, 2 Oct 2006 19:30:56 +0000 (19:30 +0000)]
fix the names of the 64bit fp register
initial support for returning 64bit floating point numbers

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30692 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoDon't build the runtime library if LLVMGCC is not configured.
Reid Spencer [Mon, 2 Oct 2006 19:10:56 +0000 (19:10 +0000)]
Don't build the runtime library if LLVMGCC is not configured.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30691 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agofix misleading warning
Chris Lattner [Mon, 2 Oct 2006 17:24:55 +0000 (17:24 +0000)]
fix misleading warning

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30690 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoFix misleading warning message
Chris Lattner [Mon, 2 Oct 2006 17:23:42 +0000 (17:23 +0000)]
Fix misleading warning message

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30689 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoDebugging kruft
Jim Laskey [Mon, 2 Oct 2006 13:01:17 +0000 (13:01 +0000)]
Debugging kruft

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30688 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoUpdate documentaion of node annotation (coloring) in viewGraph.
Jim Laskey [Mon, 2 Oct 2006 12:28:07 +0000 (12:28 +0000)]
Update documentaion of node annotation (coloring) in viewGraph.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30687 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdd ability to annotate (color) nodes in a viewGraph.
Jim Laskey [Mon, 2 Oct 2006 12:26:53 +0000 (12:26 +0000)]
Add ability to annotate (color) nodes in a viewGraph.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30686 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoFixme is already done
Chris Lattner [Sun, 1 Oct 2006 22:46:33 +0000 (22:46 +0000)]
Fixme is already done

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30685 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoTeach globalsmodref-aa to track scalar pointer global variables which point
Chris Lattner [Sun, 1 Oct 2006 22:36:45 +0000 (22:36 +0000)]
Teach globalsmodref-aa to track scalar pointer global variables which point
to unaliased allocations.  Use this information to disambiguate pointers loaded
from them.  This is a very common case, so it's worthwhile to handle efficiently.

This implements Analysis/GlobalsModRef/indirect-global.ll

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30684 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoNew testcase
Chris Lattner [Sun, 1 Oct 2006 22:35:45 +0000 (22:35 +0000)]
New testcase

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30683 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoFix a bug from r1.391 of this file, where we checked the size instead of
Chris Lattner [Sun, 1 Oct 2006 19:40:58 +0000 (19:40 +0000)]
Fix a bug from r1.391 of this file, where we checked the size instead of
the alignment when promoting allocations.  This implements
InstCombine/cast.ll:test32

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30682 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agonew testcase, malloc should be promoted to [2 x double].
Chris Lattner [Sun, 1 Oct 2006 19:39:45 +0000 (19:39 +0000)]
new testcase, malloc should be promoted to [2 x double].

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30681 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoFix debug output
Chris Lattner [Sat, 30 Sep 2006 23:32:50 +0000 (23:32 +0000)]
Fix debug output

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30680 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoImplement SRA of heap allocations.
Chris Lattner [Sat, 30 Sep 2006 23:32:09 +0000 (23:32 +0000)]
Implement SRA of heap allocations.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30679 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoOverride use_back in instruction/basicblock to provide more type information.
Chris Lattner [Sat, 30 Sep 2006 22:20:34 +0000 (22:20 +0000)]
Override use_back in instruction/basicblock to provide more type information.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30678 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdd a version of the globalvariable ctor that inserts at a specific location.
Chris Lattner [Sat, 30 Sep 2006 21:31:26 +0000 (21:31 +0000)]
Add a version of the globalvariable ctor that inserts at a specific location.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30677 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdd some ifdef'd out debug info
Chris Lattner [Sat, 30 Sep 2006 19:40:30 +0000 (19:40 +0000)]
Add some ifdef'd out debug info

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30676 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoStacker doesn't build universal right.
Chris Lattner [Sat, 30 Sep 2006 00:24:20 +0000 (00:24 +0000)]
Stacker doesn't build universal right.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30675 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoNot needed.
Evan Cheng [Fri, 29 Sep 2006 22:05:10 +0000 (22:05 +0000)]
Not needed.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30674 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoadd floating point registers
Rafael Espindola [Fri, 29 Sep 2006 21:20:16 +0000 (21:20 +0000)]
add floating point registers
implement SINT_TO_FP

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30673 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoMove CompileCommonOpts to the end of the list so that EXTRA_OPTIONS=-O0 will
Chris Lattner [Fri, 29 Sep 2006 18:47:13 +0000 (18:47 +0000)]
Move CompileCommonOpts to the end of the list so that EXTRA_OPTIONS=-O0 will
override the optimization level.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30672 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoDefine this in the correct n/s
Chris Lattner [Fri, 29 Sep 2006 18:43:14 +0000 (18:43 +0000)]
Define this in the correct n/s

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30671 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdjust this to the wonky syntax that GCC expects.
Chris Lattner [Fri, 29 Sep 2006 17:34:56 +0000 (17:34 +0000)]
Adjust this to the wonky syntax that GCC expects.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30670 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoWrong directory.
Jim Laskey [Fri, 29 Sep 2006 17:31:45 +0000 (17:31 +0000)]
Wrong directory.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30669 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoMinor cleanups
Chris Lattner [Thu, 28 Sep 2006 23:45:00 +0000 (23:45 +0000)]
Minor cleanups

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30668 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoNow that ConstantBool::True/False are gone, we can modify Type.cpp to
Chris Lattner [Thu, 28 Sep 2006 23:38:07 +0000 (23:38 +0000)]
Now that ConstantBool::True/False are gone, we can modify Type.cpp to
eliminate its static dtors, without having code that depends on order of
initialization.  Eliminate static ctors/dtors from Type.cpp.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30667 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoEliminate ConstantBool::True and ConstantBool::False. Instead, provide
Chris Lattner [Thu, 28 Sep 2006 23:36:21 +0000 (23:36 +0000)]
Eliminate ConstantBool::True and ConstantBool::False.  Instead, provide
ConstantBool::getTrue() and ConstantBool::getFalse().

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30666 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoEliminate ConstantBool::True and ConstantBool::False. Instead, provide
Chris Lattner [Thu, 28 Sep 2006 23:35:22 +0000 (23:35 +0000)]
Eliminate ConstantBool::True and ConstantBool::False.  Instead, provide
ConstantBool::getTrue() and ConstantBool::getFalse().

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30665 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoEliminate ConstantBool::True and ConstantBool::False. Instead, provideConstantBool...
Chris Lattner [Thu, 28 Sep 2006 23:34:49 +0000 (23:34 +0000)]
Eliminate ConstantBool::True and ConstantBool::False.  Instead, provideConstantBool::getTrue() and ConstantBool::getFalse().

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30664 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoupdate comments
Chris Lattner [Thu, 28 Sep 2006 23:33:12 +0000 (23:33 +0000)]
update comments

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30663 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agowrap long lines
Chris Lattner [Thu, 28 Sep 2006 23:32:43 +0000 (23:32 +0000)]
wrap long lines

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30662 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agosimplify code
Chris Lattner [Thu, 28 Sep 2006 23:24:48 +0000 (23:24 +0000)]
simplify code

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30661 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoSimplify some code, reformat break's
Chris Lattner [Thu, 28 Sep 2006 23:19:29 +0000 (23:19 +0000)]
Simplify some code, reformat break's

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30660 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agosimplify code
Chris Lattner [Thu, 28 Sep 2006 23:17:41 +0000 (23:17 +0000)]
simplify code

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30659 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoSimplify some code
Chris Lattner [Thu, 28 Sep 2006 23:14:29 +0000 (23:14 +0000)]
Simplify some code

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30658 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAnother attempt at making ArgPromotion smarter. This patch no longer breaks Burg.
Owen Anderson [Thu, 28 Sep 2006 23:02:22 +0000 (23:02 +0000)]
Another attempt at making ArgPromotion smarter.  This patch no longer breaks Burg.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30657 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agosimplify code
Chris Lattner [Thu, 28 Sep 2006 22:58:25 +0000 (22:58 +0000)]
simplify code

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30656 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agosimplify code
Chris Lattner [Thu, 28 Sep 2006 22:50:29 +0000 (22:50 +0000)]
simplify code

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30655 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoUse the -emit-llvm switch to generate LLVM assembly that can be parsed
Reid Spencer [Thu, 28 Sep 2006 21:36:21 +0000 (21:36 +0000)]
Use the -emit-llvm switch to generate LLVM assembly that can be parsed
by the test case.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30654 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdd a test case for PR902.
Reid Spencer [Thu, 28 Sep 2006 21:20:05 +0000 (21:20 +0000)]
Add a test case for PR902.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30653 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoShift amounts are always 32-bits, even in 64-bit mode. This fixes
Chris Lattner [Thu, 28 Sep 2006 20:48:45 +0000 (20:48 +0000)]
Shift amounts are always 32-bits, even in 64-bit mode.  This fixes
CodeGen/PowerPC/2006-09-28-shift_64.ll

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30652 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agonew testcase
Chris Lattner [Thu, 28 Sep 2006 20:48:17 +0000 (20:48 +0000)]
new testcase

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30651 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoFix PR902:
Reid Spencer [Thu, 28 Sep 2006 19:28:24 +0000 (19:28 +0000)]
Fix PR902:
Errors are generated with the YYERROR macro which can only be called from
a production (inside yyparse) because of the goto statement in the macro.
This lead to several situations where GEN_ERROR was not called but
GenerateError was used instead (because it doesn't use YYERROR). However,
in such situations, catching the error much later (e.g. at the end of
the production) is not sufficient because LLVM can assert on invalid data
before the end of the production is reached. The solution is to ensure that
the CHECK_FOR_ERROR macro (which invokes YYERROR if there's an error) is
used as soon as possible after a call to GenerateError has been made.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30650 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoTestcase for PR924
Chris Lattner [Thu, 28 Sep 2006 18:58:02 +0000 (18:58 +0000)]
Testcase for PR924

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30649 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoTargetRegisterClass specifies the desired spill alignment. However, it cannot be...
Evan Cheng [Thu, 28 Sep 2006 18:52:32 +0000 (18:52 +0000)]
TargetRegisterClass specifies the desired spill alignment. However, it cannot be honored if stack alignment is smaller.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30648 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoFix search file for -release.
Jim Laskey [Thu, 28 Sep 2006 18:45:11 +0000 (18:45 +0000)]
Fix search file for -release.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30647 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdd support for -release-asserts.
Jim Laskey [Thu, 28 Sep 2006 17:49:20 +0000 (17:49 +0000)]
Add support for -release-asserts.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30646 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoProvide a gdb usage fix provided by Zhongzing Xu.
Reid Spencer [Thu, 28 Sep 2006 16:53:47 +0000 (16:53 +0000)]
Provide a gdb usage fix provided by Zhongzing Xu.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30645 91177308-0d34-0410-b5e6-96231b3b80d8

17 years ago"Once more into the breach, dear friends, once more, or fill the wall up
Bill Wendling [Thu, 28 Sep 2006 07:10:24 +0000 (07:10 +0000)]
"Once more into the breach, dear friends, once more, or fill the wall up
with our English dead."

No! Really! Serious this time...It was how the vreg uses were being
adjusted that was causing hte Olden tests to fail. I corrected this and
the Olden and Regression tests all passed.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30644 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agorefactor critical edge breaking out into the SplitCritEdgesForPHIConstants method.
Chris Lattner [Thu, 28 Sep 2006 06:17:10 +0000 (06:17 +0000)]
refactor critical edge breaking out into the SplitCritEdgesForPHIConstants method.
This is a baby step towards fixing PR925.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30643 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoadd a note about a general improvement to the code generator
Chris Lattner [Thu, 28 Sep 2006 06:01:17 +0000 (06:01 +0000)]
add a note about a general improvement to the code generator

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30642 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoremove reference to dead method
Chris Lattner [Thu, 28 Sep 2006 00:38:19 +0000 (00:38 +0000)]
remove reference to dead method

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30641 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoremove dead method
Chris Lattner [Thu, 28 Sep 2006 00:37:43 +0000 (00:37 +0000)]
remove dead method

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30640 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoUse the new ManagedStatic class to explicitly manage static variables, eliminating...
Chris Lattner [Thu, 28 Sep 2006 00:35:06 +0000 (00:35 +0000)]
Use the new ManagedStatic class to explicitly manage static variables, eliminating static ctors/dtors

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30639 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agonew helper class to provide more explicit management of static ctor/dtors.
Chris Lattner [Thu, 28 Sep 2006 00:31:55 +0000 (00:31 +0000)]
new helper class to provide more explicit management of static ctor/dtors.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30638 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agore-re-revert this, back to the right revision. It currently breaks bisort/mst
Chris Lattner [Thu, 28 Sep 2006 00:11:54 +0000 (00:11 +0000)]
re-re-revert this, back to the right revision.  It currently breaks bisort/mst
in olden among others.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30637 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoPEI now place callee save spills closest to the address pointed to by the
Evan Cheng [Thu, 28 Sep 2006 00:10:27 +0000 (00:10 +0000)]
PEI now place callee save spills closest to the address pointed to by the
incoming stack. This allows X86 backend to use push / pop in epilogue /
prologue.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30636 91177308-0d34-0410-b5e6-96231b3b80d8

17 years ago- Added a hook processFunctionBeforeCalleeSaveScn(). This is called by PEI just
Evan Cheng [Thu, 28 Sep 2006 00:07:19 +0000 (00:07 +0000)]
- Added a hook processFunctionBeforeCalleeSaveScn(). This is called by PEI just
before it determines which callee-save registers are to be spilled. This allows
the target to make changes such as forcing certain physical registers to be
spilled.
- Modified comments. It's important to note the order of registers in the array
returns by getCalleeSaveRegs() determines the order of callee save spill code.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30635 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agore-revert this patch, bisort and mst are still broken in Olden.
Chris Lattner [Thu, 28 Sep 2006 00:04:21 +0000 (00:04 +0000)]
re-revert this patch, bisort and mst are still broken in Olden.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30634 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoReapplying this patch. With the newest commits, the error in Olden/bisort
Bill Wendling [Wed, 27 Sep 2006 22:37:35 +0000 (22:37 +0000)]
Reapplying this patch. With the newest commits, the error in Olden/bisort
has disappeared.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30633 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agosilence warnings in release build
Chris Lattner [Wed, 27 Sep 2006 18:29:38 +0000 (18:29 +0000)]
silence warnings in release build

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30631 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoFix DFS walk.
Devang Patel [Wed, 27 Sep 2006 17:18:05 +0000 (17:18 +0000)]
Fix DFS walk.
Fix http://llvm.org/bugs/show_bug.cgi?id=923

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30630 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoTemporarily revert this. This breaks Olden/bisort on PPC
Chris Lattner [Wed, 27 Sep 2006 16:59:16 +0000 (16:59 +0000)]
Temporarily revert this.  This breaks Olden/bisort on PPC

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30628 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoMake sure C++ protection shows up in debug info
Jim Laskey [Wed, 27 Sep 2006 16:55:19 +0000 (16:55 +0000)]
Make sure C++ protection shows up in debug info

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30626 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoThis:
Chris Lattner [Wed, 27 Sep 2006 16:44:09 +0000 (16:44 +0000)]
This:
AggregateString += "\0\0";

Doesn't add two nuls to the AggregateString (for obvious reasons), which
broke the asmprinter when the first character of an asm string was not
literal text.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30625 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoPR878: Instead of calculating the vreg to PHI use count everytime we get
Bill Wendling [Wed, 27 Sep 2006 09:04:15 +0000 (09:04 +0000)]
PR878: Instead of calculating the vreg to PHI use count everytime we get
a function, do it up front in linear time (going through all of the
instructions once). We create a map out of them. Then it's no problem to
use the information in it during elimination...

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30624 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoset DEBUG_TYPE right
Chris Lattner [Wed, 27 Sep 2006 04:58:23 +0000 (04:58 +0000)]
set DEBUG_TYPE right

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30623 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdd http://llvm.org/bugs/show_bug.cgi?id=923 test case.
Devang Patel [Wed, 27 Sep 2006 02:58:44 +0000 (02:58 +0000)]
Add llvm.org/bugs/show_bug.cgi?id=923 test case.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30622 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoUse abstract private/comment directives, to increase portability to ppc/linux
Chris Lattner [Wed, 27 Sep 2006 02:55:21 +0000 (02:55 +0000)]
Use abstract private/comment directives, to increase portability to ppc/linux

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30621 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdd support for ${:private} which prints "L" on darwin.
Chris Lattner [Wed, 27 Sep 2006 00:06:07 +0000 (00:06 +0000)]
Add support for ${:private} which prints "L" on darwin.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30620 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdd support for ${:comment}, which expands to the current target's comment
Chris Lattner [Tue, 26 Sep 2006 23:59:50 +0000 (23:59 +0000)]
Add support for ${:comment}, which expands to the current target's comment
character, and ${:uid} which expands to a unique ID for the MachineInstr.
More can be added if/when they are needed.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30619 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoActually, name the method PrintSpecial to match other stuff in AsmPrinter.h
Chris Lattner [Tue, 26 Sep 2006 23:47:10 +0000 (23:47 +0000)]
Actually, name the method PrintSpecial to match other stuff in AsmPrinter.h

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30618 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdd support for ${:foo} syntax, where "foo" is passed into "printSpecial" and
Chris Lattner [Tue, 26 Sep 2006 23:45:08 +0000 (23:45 +0000)]
Add support for ${:foo} syntax, where "foo" is passed into "printSpecial" and
has no associated operand.  This is useful for portably encoding stuff like
the comment character into an asm string.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30617 91177308-0d34-0410-b5e6-96231b3b80d8