oota-llvm.git
17 years agoRegenerate.
Jim Laskey [Tue, 6 Feb 2007 18:03:31 +0000 (18:03 +0000)]
Regenerate.

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

17 years agoSupport var arg intrinsics.
Jim Laskey [Tue, 6 Feb 2007 18:02:54 +0000 (18:02 +0000)]
Support var arg intrinsics.

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

17 years agoFix build error.
Lauro Ramos Venancio [Tue, 6 Feb 2007 14:59:28 +0000 (14:59 +0000)]
Fix build error.
UniqueVector.h:66: error: Ã¢\80\98assertâ\80\99 was not declared in this scope

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

17 years agoSelect add FI, c correctly.
Evan Cheng [Tue, 6 Feb 2007 09:11:20 +0000 (09:11 +0000)]
Select add FI, c correctly.

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

17 years agoAdd a DYNAMIC_STACKALLOC test case.
Evan Cheng [Tue, 6 Feb 2007 07:18:27 +0000 (07:18 +0000)]
Add a DYNAMIC_STACKALLOC test case.

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

17 years agofoldMemoryOperand() cannot fold tMOVrr sp into load / store in thumb mode. tLDRspi...
Evan Cheng [Tue, 6 Feb 2007 06:13:29 +0000 (06:13 +0000)]
foldMemoryOperand() cannot fold tMOVrr sp into load / store in thumb mode. tLDRspi / tSTRspi cannot target / store high registers.

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

17 years agoFix PR1181 and CodeGen/CBackend/2007-02-05-memset.ll
Chris Lattner [Tue, 6 Feb 2007 06:07:51 +0000 (06:07 +0000)]
Fix PR1181 and CodeGen/CBackend/2007-02-05-memset.ll

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

17 years agotestcase for pr1181
Chris Lattner [Tue, 6 Feb 2007 06:07:34 +0000 (06:07 +0000)]
testcase for pr1181

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

17 years agoAs Reid suggested, fixed some problems.
Zhou Sheng [Tue, 6 Feb 2007 06:04:53 +0000 (06:04 +0000)]
As Reid suggested, fixed some problems.

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

17 years agoAs Reid suggested, fixed some problems.
Zhou Sheng [Tue, 6 Feb 2007 05:59:47 +0000 (05:59 +0000)]
As Reid suggested, fixed some problems.

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

17 years agoDisable this for now.
Chris Lattner [Tue, 6 Feb 2007 05:38:37 +0000 (05:38 +0000)]
Disable this for now.

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

17 years agoAdd a class APInt to represent arbitrary precision constant integral values.
Zhou Sheng [Tue, 6 Feb 2007 03:00:16 +0000 (03:00 +0000)]
Add a class APInt to represent arbitrary precision constant integral values.
It is a functional replacement for common case integer type like "unsigned",
"uint64_t", but also allows non-byte-width integer type and large integer
value types such as 3-bits, 15-bits, or more than 64-bits of precision. For
more details, see pr1043.

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

17 years agoFix Transforms/ConstProp/2007-02-05-BitCast.ll
Chris Lattner [Tue, 6 Feb 2007 02:22:56 +0000 (02:22 +0000)]
Fix Transforms/ConstProp/2007-02-05-BitCast.ll

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

17 years agoTestcase for miscompilation
Chris Lattner [Tue, 6 Feb 2007 02:22:37 +0000 (02:22 +0000)]
Testcase for miscompilation

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

17 years agoOops, swap this. This fixes a regression I introduced in the ARM backend.
Chris Lattner [Tue, 6 Feb 2007 01:56:31 +0000 (01:56 +0000)]
Oops, swap this.  This fixes a regression I introduced in the ARM backend.

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

17 years agoeliminateFrameIndex() bug when frame pointer is used as base register.
Evan Cheng [Tue, 6 Feb 2007 00:23:31 +0000 (00:23 +0000)]
eliminateFrameIndex() bug when frame pointer is used as base register.

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

17 years ago- Store val, [sp, c] must be selected to tSTRsp.
Evan Cheng [Tue, 6 Feb 2007 00:22:06 +0000 (00:22 +0000)]
- Store val, [sp, c] must be selected to tSTRsp.
- If c does not fit in the offset field, materialize sp + c into a register
  using tADDhirr.

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

17 years agoAlthough targets are not required to support integers > 64bits, TargetData
Reid Spencer [Mon, 5 Feb 2007 23:51:43 +0000 (23:51 +0000)]
Although targets are not required to support integers > 64bits, TargetData
must in order for backends that do want to support large integer types to be
able to function. Consequently, don't assert if the bitwidth > 64 bits
when computing the size and alignment. Instead, compute the size by rounding
up to the next even number of bytes for the size. Compute the alignment
as the same as the LongABIAlignment. These provide reasonable defaults
that the target can override.

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

17 years agoA value of 64 or fewer bits is valid if the ConstantInt has more then 64 bits.
Reid Spencer [Mon, 5 Feb 2007 23:47:56 +0000 (23:47 +0000)]
A value of 64 or fewer bits is valid if the ConstantInt has more then 64 bits.

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

17 years agoMake classes in anonymous namespaces use VISIBILITY_HIDDEN to help reduce
Reid Spencer [Mon, 5 Feb 2007 23:42:17 +0000 (23:42 +0000)]
Make classes in anonymous namespaces use VISIBILITY_HIDDEN to help reduce
LLVM's footprint and speed up linking.

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

17 years agoWith the last change, we no longer need both directions of mapping from
Chris Lattner [Mon, 5 Feb 2007 23:37:20 +0000 (23:37 +0000)]
With the last change, we no longer need both directions of mapping from
BBNumbers.  Instead of using a bi-directional mapping, just use a single
densemap.  This speeds up mem2reg on 176.gcc by 8%, from  1.3489 to
1.2485s.

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

17 years agoApply the VISIBILITY_HIDDEN field to the remaining anonymous classes in
Reid Spencer [Mon, 5 Feb 2007 23:32:05 +0000 (23:32 +0000)]
Apply the VISIBILITY_HIDDEN field to the remaining anonymous classes in
the Transforms library. This reduces debug library size by 132 KB, debug
binary size by 376 KB, and reduces link time for llvm tools slightly.

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

17 years agoSimplify use of DFBlocks, this makes no noticable performance difference,
Chris Lattner [Mon, 5 Feb 2007 23:31:26 +0000 (23:31 +0000)]
Simplify use of DFBlocks, this makes no noticable performance difference,
but paves the way to eliminate BBNumbers.

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

17 years agoThis file should have been removed when -raise was removed. It isn't
Reid Spencer [Mon, 5 Feb 2007 23:27:02 +0000 (23:27 +0000)]
This file should have been removed when -raise was removed. It isn't
used any more.

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

17 years agoSimplify this a bit, add an assertion
Chris Lattner [Mon, 5 Feb 2007 23:24:48 +0000 (23:24 +0000)]
Simplify this a bit, add an assertion

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

17 years agoStableBasicBlockNumbering is conceptually just a wrapper around UniqueVector,
Chris Lattner [Mon, 5 Feb 2007 23:19:24 +0000 (23:19 +0000)]
StableBasicBlockNumbering is conceptually just a wrapper around UniqueVector,
so we should actually use a UniqueVector to implement it.

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

17 years agoAdd a show-footprint target to run du a few times to show how much disk
Reid Spencer [Mon, 5 Feb 2007 23:18:58 +0000 (23:18 +0000)]
Add a show-footprint target to run du a few times to show how much disk
space a build tree's objects are consuming.

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

17 years agoConst method must use const_iterator.
Chris Lattner [Mon, 5 Feb 2007 23:18:32 +0000 (23:18 +0000)]
Const method must use const_iterator.

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

17 years agoSwitch InsertedPHINodes back to SmallPtrSet now that the SmallPtrSet::erase
Chris Lattner [Mon, 5 Feb 2007 23:11:37 +0000 (23:11 +0000)]
Switch InsertedPHINodes back to SmallPtrSet now that the SmallPtrSet::erase
bug is fixed.

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

17 years agoFix a bug in smallptrset::erase: in the small case, return true if the
Chris Lattner [Mon, 5 Feb 2007 23:10:31 +0000 (23:10 +0000)]
Fix a bug in smallptrset::erase: in the small case, return true if the
element was in the set.

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

17 years agoswitch a SmallPtrSet back to an std::set for now, this caused problems.
Chris Lattner [Mon, 5 Feb 2007 22:28:52 +0000 (22:28 +0000)]
switch a SmallPtrSet back to an std::set for now, this caused problems.

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

17 years agoswitch an std::set over to a SmallPtrSet, speeding up mem2reg 6% on 176.gcc.
Chris Lattner [Mon, 5 Feb 2007 22:15:21 +0000 (22:15 +0000)]
switch an std::set over to a SmallPtrSet, speeding up mem2reg 6% on 176.gcc.

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

17 years agoswitch an std::set over to SmallPtrSet, speeding up mem2reg 3.4% on 176.gcc.
Chris Lattner [Mon, 5 Feb 2007 22:13:11 +0000 (22:13 +0000)]
switch an std::set over to SmallPtrSet, speeding up mem2reg 3.4% on 176.gcc.

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

17 years agoeliminate some malloc traffic, this speeds up mem2reg by 3.4%.
Chris Lattner [Mon, 5 Feb 2007 21:58:48 +0000 (21:58 +0000)]
eliminate some malloc traffic, this speeds up mem2reg by 3.4%.

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

17 years agoAdd missing and needed #include.
Reid Spencer [Mon, 5 Feb 2007 21:47:39 +0000 (21:47 +0000)]
Add missing and needed #include.

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

17 years agoMake the class VISIBILITY_HIDDEN.
Reid Spencer [Mon, 5 Feb 2007 21:45:12 +0000 (21:45 +0000)]
Make the class VISIBILITY_HIDDEN.
Reduce lexical size of the anonymous namespace.

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

17 years agoFix PR1178
Chris Lattner [Mon, 5 Feb 2007 21:23:52 +0000 (21:23 +0000)]
Fix PR1178

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

17 years agoFor PR411:
Reid Spencer [Mon, 5 Feb 2007 21:19:13 +0000 (21:19 +0000)]
For PR411:
Adjust to changes in Module interface:
getMainFunction() -> getFunction("main")
getNamedFunction(X) -> getFunction(X)

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

17 years agoFor PR411:
Reid Spencer [Mon, 5 Feb 2007 21:17:53 +0000 (21:17 +0000)]
For PR411:
Change getNamedFunction -> getFunction
Make llvm-extract run the StripDeadPrototypes pass.

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

17 years agoFor PR411:
Reid Spencer [Mon, 5 Feb 2007 21:17:06 +0000 (21:17 +0000)]
For PR411:
Clean up the Module::getFunction interface. getMainFunction and
getNamedFunction are now gone. Just use getFunction instead.

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

17 years agoFor PR411:
Reid Spencer [Mon, 5 Feb 2007 20:59:45 +0000 (20:59 +0000)]
For PR411:
This test is not particularly useful without type planes.

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

17 years agoFor PR411:
Reid Spencer [Mon, 5 Feb 2007 20:47:22 +0000 (20:47 +0000)]
For PR411:
This patch replaces the SymbolTable class with ValueSymbolTable which does
not support types planes. This means that all symbol names in LLVM must now
be unique. The patch addresses the necessary changes to deal with this and
removes code no longer needed as a result. This completes the bulk of the
changes for this PR. Some cleanup patches will follow.

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

17 years agoFor PR411:
Reid Spencer [Mon, 5 Feb 2007 20:41:05 +0000 (20:41 +0000)]
For PR411:
This pass is no longer needed.

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

17 years agoCreate a pass to strip dead function declarations (prototypes). This is
Reid Spencer [Mon, 5 Feb 2007 20:24:25 +0000 (20:24 +0000)]
Create a pass to strip dead function declarations (prototypes). This is
for use by llvm-extract and bugpoint.

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

17 years agoFix PR1158
Devang Patel [Mon, 5 Feb 2007 19:34:17 +0000 (19:34 +0000)]
Fix PR1158

Do not insert Analysis pass, if it is already available.

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

17 years agoTest case for PR1158
Devang Patel [Mon, 5 Feb 2007 19:33:20 +0000 (19:33 +0000)]
Test case for PR1158

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

17 years agoAdd a class APInt to represent arbitrary precision constant integral values.
Zhou Sheng [Mon, 5 Feb 2007 17:29:16 +0000 (17:29 +0000)]
Add a class APInt to represent arbitrary precision constant integral values.
It is a functional replacement for common case integer type like "unsigned",
"uint64_t", but also allows non-byte-width integer type and large integer
value types such as 3-bits, 15-bits, or more than 64-bits of precision. For
more details, see pr1043.

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

17 years agoRegenerate.
Reid Spencer [Mon, 5 Feb 2007 17:04:00 +0000 (17:04 +0000)]
Regenerate.

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

17 years ago! removal was a little over zealous. Put the ! back in asserts.
Reid Spencer [Mon, 5 Feb 2007 17:01:20 +0000 (17:01 +0000)]
! removal was a little over zealous. Put the ! back in asserts.

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

17 years agoFix unord test.
Lauro Ramos Venancio [Mon, 5 Feb 2007 16:33:56 +0000 (16:33 +0000)]
Fix unord test.

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

17 years agoRegenerate.
Reid Spencer [Mon, 5 Feb 2007 10:18:06 +0000 (10:18 +0000)]
Regenerate.

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

17 years agoAssembler no longer prints ! at the end of its error messages.
Reid Spencer [Mon, 5 Feb 2007 10:17:51 +0000 (10:17 +0000)]
Assembler no longer prints ! at the end of its error messages.

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

17 years agoThere is nothing exclamatory about an error message. No other compiler
Reid Spencer [Mon, 5 Feb 2007 10:16:10 +0000 (10:16 +0000)]
There is nothing exclamatory about an error message. No other compiler
or assembler uses ! at the end of every message. We shouldn't either.

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

17 years agoMake the RUN: line readable.
Reid Spencer [Mon, 5 Feb 2007 10:09:41 +0000 (10:09 +0000)]
Make the RUN: line readable.

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

17 years agoDon't prevent install target from descending into the utils directory.
Reid Spencer [Mon, 5 Feb 2007 09:43:17 +0000 (09:43 +0000)]
Don't prevent install target from descending into the utils directory.
It prevents "make install" on a clean directory from working.

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

17 years agoadd a note
Chris Lattner [Mon, 5 Feb 2007 06:30:51 +0000 (06:30 +0000)]
add a note

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

17 years agoUse opt to generate the list of passes to run.
Reid Spencer [Mon, 5 Feb 2007 06:10:19 +0000 (06:10 +0000)]
Use opt to generate the list of passes to run.

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

17 years agoFix miscompilations of consumer-typeset, telecomm-gsm, and 176.gcc.
Chris Lattner [Mon, 5 Feb 2007 05:57:49 +0000 (05:57 +0000)]
Fix miscompilations of consumer-typeset, telecomm-gsm, and 176.gcc.

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

17 years agoFor PR1177:
Reid Spencer [Mon, 5 Feb 2007 05:23:32 +0000 (05:23 +0000)]
For PR1177:
Revert last patch which caused iteration invalidation.

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

17 years agofix a miscompilation of 176.gcc
Chris Lattner [Mon, 5 Feb 2007 04:09:35 +0000 (04:09 +0000)]
fix a miscompilation of 176.gcc

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

17 years agoFor PR411:
Reid Spencer [Mon, 5 Feb 2007 04:00:04 +0000 (04:00 +0000)]
For PR411:
Don't re-use var names.

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

17 years agonew testcase for 1174, currently xfailed
Chris Lattner [Mon, 5 Feb 2007 03:56:59 +0000 (03:56 +0000)]
new testcase for 1174, currently xfailed

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

17 years agoUse DenseMap for pointer->pointer maps.
Owen Anderson [Mon, 5 Feb 2007 02:39:47 +0000 (02:39 +0000)]
Use DenseMap for pointer->pointer maps.

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

17 years agoUse unsigned char& instead of std::vector<>::reference.
Bill Wendling [Mon, 5 Feb 2007 02:37:07 +0000 (02:37 +0000)]
Use unsigned char& instead of std::vector<>::reference.

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

17 years agoTest for PR1173
Anton Korobeynikov [Mon, 5 Feb 2007 02:28:56 +0000 (02:28 +0000)]
Test for PR1173

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

17 years agofix bug number
Chris Lattner [Mon, 5 Feb 2007 02:26:07 +0000 (02:26 +0000)]
fix bug number

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

17 years agotest for pr1173
Chris Lattner [Mon, 5 Feb 2007 02:19:09 +0000 (02:19 +0000)]
test for pr1173

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

17 years agorewrite shift/shift folding, now that types are not signed.
Chris Lattner [Mon, 5 Feb 2007 00:57:54 +0000 (00:57 +0000)]
rewrite shift/shift folding, now that types are not signed.

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

17 years agotestcase for PR1175
Chris Lattner [Sun, 4 Feb 2007 23:55:04 +0000 (23:55 +0000)]
testcase for PR1175

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

17 years agoFix indenting, remove tabs.
Nick Lewycky [Sun, 4 Feb 2007 23:43:05 +0000 (23:43 +0000)]
Fix indenting, remove tabs.

Learn from sext and zext. The destination value falls within the range of the
source type.

Generalize properties regarding constant ints.

Get smarter about marking blocks as unreachable. If 1 >= 2 in order for this
block to execute, then it isn't reachable.

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

17 years agoFixing silly "not-implemented" bug in AsmPrinter. This fixes PR1169.
Anton Korobeynikov [Sun, 4 Feb 2007 23:27:42 +0000 (23:27 +0000)]
Fixing silly "not-implemented" bug in AsmPrinter. This fixes PR1169.

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

17 years agoWhen using LINK_COMPONENTS, append the components to the end of the
Reid Spencer [Sun, 4 Feb 2007 22:12:25 +0000 (22:12 +0000)]
When using LINK_COMPONENTS, append the components to the end of the
libraries linked with. This permits a project to still use USEDLIBS to
specify its own libraries in conjunction with LINK_COMPONENTS. llvm-stacker
needs this after libLLVMTransforms.a went away.

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

17 years agoFix grammaro in output message.
Reid Spencer [Sun, 4 Feb 2007 22:08:16 +0000 (22:08 +0000)]
Fix grammaro in output message.

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

17 years agoFix a miscompilation in the addr mode code trying to implement X | C and
Chris Lattner [Sun, 4 Feb 2007 20:18:17 +0000 (20:18 +0000)]
Fix a miscompilation in the addr mode code trying to implement X | C and
X + C to promote LEA formation.  We would incorrectly apply it in some cases
(test) and miss it in others.

This fixes CodeGen/X86/2007-02-04-OrAddrMode.ll

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

17 years agonew testcase for x86 backend miscompilation
Chris Lattner [Sun, 4 Feb 2007 20:15:15 +0000 (20:15 +0000)]
new testcase for x86 backend miscompilation

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

17 years agoswitch the VRBaseMap in the scheduler from an std::map to a DenseMap. This
Chris Lattner [Sun, 4 Feb 2007 08:47:20 +0000 (08:47 +0000)]
switch the VRBaseMap in the scheduler from an std::map to a DenseMap.  This
speeds up the isel pass from 2.5570s to 2.4722s on kc++ (3.4%).

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

17 years agoIntroduce new UnarySDNode/BinarySDNode/TernarySDNode nodes, which coallocate
Chris Lattner [Sun, 4 Feb 2007 08:35:21 +0000 (08:35 +0000)]
Introduce new UnarySDNode/BinarySDNode/TernarySDNode nodes, which coallocate
their operands with the node itself.  This reduces malloc traffic for operand
lists.  This reduces isel time on kc++ from 2.6164 to 2.5570s, about 2.3%.

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

17 years agoAdd a new SDNode ctor and InitOperands method. This allows the operands for
Chris Lattner [Sun, 4 Feb 2007 08:13:53 +0000 (08:13 +0000)]
Add a new SDNode ctor and InitOperands method.  This allows the operands for
an SDNode to be allocated as part of the node itself, instead of being a
separate new[]'d object.  Switch HandleSDNode, LoadSDNode, and StoreSDNode
to use this mechanism.  This saves one heap allocation and free for each node
of this type that is allocated.  This reduces isel time from 2.7638 to 2.6164s
on kc++, which is a 5.6% speedup.

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

17 years agoeliminate the SDNode::setValueTypes method.
Chris Lattner [Sun, 4 Feb 2007 07:37:24 +0000 (07:37 +0000)]
eliminate the SDNode::setValueTypes method.

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

17 years agoeliminate a bunch of duplicate ctors and helper functions.
Chris Lattner [Sun, 4 Feb 2007 07:28:00 +0000 (07:28 +0000)]
eliminate a bunch of duplicate ctors and helper functions.

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

17 years agoFix some comments and other minor sundry things.
Reid Spencer [Sun, 4 Feb 2007 04:43:17 +0000 (04:43 +0000)]
Fix some comments and other minor sundry things.

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

17 years agoEnsure that visibility and section are properly propagated.
Reid Spencer [Sun, 4 Feb 2007 04:30:33 +0000 (04:30 +0000)]
Ensure that visibility and section are properly propagated.

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

17 years agoBack out last revision which was committed by accident.
Reid Spencer [Sun, 4 Feb 2007 04:29:21 +0000 (04:29 +0000)]
Back out last revision which was committed by accident.

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

17 years agoMake sure that section and visibility are properly propagated.
Reid Spencer [Sun, 4 Feb 2007 04:28:18 +0000 (04:28 +0000)]
Make sure that section and visibility are properly propagated.

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

17 years agomove MorphNode to out of line and merge setNodeOperands into it. There is
Chris Lattner [Sun, 4 Feb 2007 02:49:29 +0000 (02:49 +0000)]
move MorphNode to out of line and merge setNodeOperands into it.  There is
no behavior or performance change here.

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

17 years agosimplify MorphNodeTo to take a VTList operand.
Chris Lattner [Sun, 4 Feb 2007 02:41:42 +0000 (02:41 +0000)]
simplify MorphNodeTo to take a VTList operand.

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

17 years agoeliminate some extraneous methods in SDNode
Chris Lattner [Sun, 4 Feb 2007 02:32:44 +0000 (02:32 +0000)]
eliminate some extraneous methods in SDNode

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

17 years agoGive each selectiondag node class a home for it's vtable and rtti info
Chris Lattner [Sun, 4 Feb 2007 02:23:32 +0000 (02:23 +0000)]
Give each selectiondag node class a home for it's vtable and rtti info

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

17 years agoPrepare for PR411
Reid Spencer [Sun, 4 Feb 2007 02:11:13 +0000 (02:11 +0000)]
Prepare for PR411

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

17 years agoEncode small integers more densely in foldingset, avoiding overflowing the SmallVecto...
Chris Lattner [Sun, 4 Feb 2007 01:48:10 +0000 (01:48 +0000)]
Encode small integers more densely in foldingset, avoiding overflowing the SmallVector as often.

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

17 years agoSwitch VAlueMap from std::map to DenseMap.
Chris Lattner [Sun, 4 Feb 2007 01:35:11 +0000 (01:35 +0000)]
Switch VAlueMap from std::map to DenseMap.

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

17 years agoSwitch NodeMap from std::map to DenseMap, this speeds up isel by 2.3%
Chris Lattner [Sun, 4 Feb 2007 01:31:47 +0000 (01:31 +0000)]
Switch NodeMap from std::map to DenseMap, this speeds up isel by 2.3%

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

17 years agoswtich vector-> smallvector, speeding up selectiondag stuff 1%
Chris Lattner [Sun, 4 Feb 2007 01:20:02 +0000 (01:20 +0000)]
swtich vector-> smallvector, speeding up selectiondag stuff 1%

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

17 years agoSwitch promoted/expanded ops over to using a DenseMap. Vector related maps
Chris Lattner [Sun, 4 Feb 2007 01:17:38 +0000 (01:17 +0000)]
Switch promoted/expanded ops over to using a DenseMap.  Vector related maps
aren't worth it.

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

17 years agoRegenerate.
Reid Spencer [Sun, 4 Feb 2007 01:12:11 +0000 (01:12 +0000)]
Regenerate.

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

17 years agoFor PR1151:
Reid Spencer [Sun, 4 Feb 2007 01:05:23 +0000 (01:05 +0000)]
For PR1151:
Make llvm-upgrade valgrind clean. Deleting type instances is a really
nasty thing to do to LLVM. This was a hold-over from the re-write.
This fixes test/Assembler/2007-01-22-UpgradeTypeMapInvalidMemory.ll and
potentially many other bugs.

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

17 years agoswitch LegalizedNodes from std::map to a DenseMap. This speeds up isel
Chris Lattner [Sun, 4 Feb 2007 00:50:02 +0000 (00:50 +0000)]
switch LegalizedNodes from std::map to a DenseMap.  This speeds up isel
time as a whole on kc++ by 11%.

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

17 years agoadd a version of insert that takes the key and value.
Chris Lattner [Sun, 4 Feb 2007 00:42:41 +0000 (00:42 +0000)]
add a version of insert that takes the key and value.

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

17 years agoFor PR1163:
Reid Spencer [Sun, 4 Feb 2007 00:40:42 +0000 (00:40 +0000)]
For PR1163:
Make the Module's dependent library use a std::vector instead of SetVector
adjust #includes in .cpp files because SetVector.h is no longer included.

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

17 years agoMake SmallSetVector useful
Chris Lattner [Sun, 4 Feb 2007 00:30:40 +0000 (00:30 +0000)]
Make SmallSetVector useful

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