oota-llvm.git
17 years agoFor PR950:
Reid Spencer [Sun, 31 Dec 2006 05:50:28 +0000 (05:50 +0000)]
For PR950:
Convert signed integer types to signless.

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

17 years agoFor PR950:
Reid Spencer [Sun, 31 Dec 2006 05:48:39 +0000 (05:48 +0000)]
For PR950:
This patch replaces signed integer types with signless ones:
1. [US]Byte -> Int8
2. [U]Short -> Int16
3. [U]Int   -> Int32
4. [U]Long  -> Int64.
5. Removal of isSigned, isUnsigned, getSignedVersion, getUnsignedVersion
   and other methods related to signedness. In a few places this warranted
   identifying the signedness information from other sources.

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

17 years agoFor PR950:
Reid Spencer [Sun, 31 Dec 2006 05:45:57 +0000 (05:45 +0000)]
For PR950:
Don't attempt to parse both the old and new grammars. It is near impossible
to get it right. Remove support for the new define keyword and don't
attempt to insert parameter attributes because there isn't enough
contextual information for it.

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

17 years agoFor PR950:
Reid Spencer [Sun, 31 Dec 2006 05:44:24 +0000 (05:44 +0000)]
For PR950:
Update for signless integer types and parameter attribute implementation.
Of significant note:
  1. This changes the bytecode format yet again.
  2. There are 1/2 as many integer type planes (this is a good thing)
  3. GEP indices now use only 1 bit to identify their type which means
     more GEP instructions won't be relegated to format 0 (size win)
  4. Parameter attributes are implemented but currently being stored
     verbosely for each function type. Some other day this needs to be
     optimized for size.

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

17 years agoFor PR950:
Reid Spencer [Sun, 31 Dec 2006 05:40:51 +0000 (05:40 +0000)]
For PR950:
Regenerate

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

17 years agoFor PR950:
Reid Spencer [Sun, 31 Dec 2006 05:40:12 +0000 (05:40 +0000)]
For PR950:
Major reorganization. This patch introduces the signedness changes for
the new integer types (i8, i16, i32, i64) which replace the old signed
versions (ubyte, sbyte, ushort, short, etc). This patch also implements
the function type parameter attributes feature. Together these conspired
to introduce new reduce/reduce errors into the grammar. Consequently, it
was necessary to introduce a new keyword into the grammar in order to
disambiguate. Without this, yacc would make incorrect shift/reduce and
reduce/reduce decisions and fail to parse the intended assembly.

Changes in assembly:

1. The "implementation" keyword is superfluous but still supported. You
   can use it as a sentry which will ensure there are no remaining up
   reference types. However, this is optional as those checks are also
   performed elsewhere.

2. Parameter attributes are now implemented using an at sign to
   indicate the attribute. The attributes are placed after the type
   in a function declaration or after the argument value in a function
   call. For example:
      i8 @sext %myfunc(i16 @zext)
      call i8 @sext %myfunc(i16 @zext %someVal)
   The facility is available for supporting additional attributes and
   they can be combined using the @(attr1,attr2,attr3) syntax. Right
   now  the only two supported are @sext and @zext

3. Functions must now be defined with the "define" keyword which is
   analagous to the "declare" keyword for function declarations. The
   introduction of this keyword disambiguates situations where a
   named result type is confused with a new type or gvar definition.
   For example:
      %MyType = type i16
      %MyType %func(%MyType) { ... }
   With the introduction of optional parameter attributes between
   the function name and the function result type, yacc will pick
   the wrong rule to reduce unless it is disambiguated with "define"
   before the function definition, as in:
      define %MyType @zext %func(%MyType %someArg) { ... }

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

17 years agoFor PR950:
Reid Spencer [Sun, 31 Dec 2006 05:26:44 +0000 (05:26 +0000)]
For PR950:
Change signed integer type names to unsigned equivalents.

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

17 years agoFor PR950:
Reid Spencer [Sun, 31 Dec 2006 05:25:34 +0000 (05:25 +0000)]
For PR950:
Implement signless integer types and FunctionType parameter attributes.

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

17 years agoFor PR950:
Reid Spencer [Sun, 31 Dec 2006 05:24:50 +0000 (05:24 +0000)]
For PR950:
* Change integer type name from signed to signless
* Implement printing of FunctionType parameter attributes.

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

17 years agoFor PR950:
Reid Spencer [Sun, 31 Dec 2006 05:23:18 +0000 (05:23 +0000)]
For PR950:
Change integer type names for signless integer types

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

17 years agoFor PR950:
Reid Spencer [Sun, 31 Dec 2006 05:22:12 +0000 (05:22 +0000)]
For PR950:
Add a new feature to FunctionType, Parameter Attributes. This allows tags
such as "sext" and "zext" to be associated with a faunction's arguments
or return type. This allows signedness information to be carried forward
from the frontend to the backend for arguments and result types.

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

17 years agoFor PR950:
Reid Spencer [Sun, 31 Dec 2006 05:20:51 +0000 (05:20 +0000)]
For PR950:
Make integer types signless:
  Rename [US]Byte->Int8, [U]Short->Int16, [U]Int->Int32, [U]Long->Int64
  Remove methods pertaining to sign of integer types.

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

17 years agoTypo.
Nick Lewycky [Sun, 31 Dec 2006 03:44:08 +0000 (03:44 +0000)]
Typo.

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

17 years agoWhen compiling a C or C++ file to assembly, make the assembly output
Reid Spencer [Sat, 30 Dec 2006 16:31:02 +0000 (16:31 +0000)]
When compiling a C or C++ file to assembly, make the assembly output
depend on the compiler. This works around problems in the Stacker runtime
when the CFE changes in such a way that the assembly file needs to be
updated.

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

17 years agoRegenerate.
Reid Spencer [Fri, 29 Dec 2006 20:35:03 +0000 (20:35 +0000)]
Regenerate.

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

17 years agoFor PR950:
Reid Spencer [Fri, 29 Dec 2006 20:33:37 +0000 (20:33 +0000)]
For PR950:
Fix several bugs and update for new assembly syntax. Changes made include:
1. Fixing rules for icmp/fcmp instructions to not require a closing paren
   at the end. This was a cut-and-paste error from a previous commit.
2. Changing things like Out << " " to Out << ' '
3. Adding the "define" keyword for function definitions
4. Adding support for packed structures

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

17 years agoFor PR950:
Reid Spencer [Fri, 29 Dec 2006 20:29:48 +0000 (20:29 +0000)]
For PR950:
Remove all grammar conflicts from assembly parsing.  This change involves:
1. Making the "type" keyword not a primitive type (removes several
   reduce/reduce conflicts)
2. Being more specific about which linkage types are allowed for functions
   and global variables. In particular "appending" can no longer be
   specified for a function. A differentiation was made between the various
   internal and external linkage types.
3. Introduced the "define" keyword which is now required when defining a
   function. This disambiguates several cases where a named function return
   type could get confused with the definition of a new type. Using the
   keyword eliminates all shift/reduce conflicts and the remaining
   reduce/reduce conflicts.

These changes are necessary to implement the function parameter attributes
that will be introduced soon. Adding the function parameter attributes in
the presence of the shift/reduce and reduce/reduce conflicts led to severe
ambiguities that caused the parser to report syntax errors that needed to
be resolved. This patch resolves them.

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

17 years agoRun llvm-upgrade on test to prepare for new assembly syntax.
Reid Spencer [Fri, 29 Dec 2006 20:21:51 +0000 (20:21 +0000)]
Run llvm-upgrade on test to prepare for new assembly syntax.

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

17 years agoUpdate tests that need to be run through llvm-upgrade. This is necessary
Reid Spencer [Fri, 29 Dec 2006 20:01:32 +0000 (20:01 +0000)]
Update tests that need to be run through llvm-upgrade. This is necessary
for upcoming changes to the llvm assembly grammar.

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

17 years agofix comment
Rafael Espindola [Fri, 29 Dec 2006 14:28:12 +0000 (14:28 +0000)]
fix comment

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

17 years agoMake a variable private now that the conditions requiring it to be
Reid Spencer [Fri, 29 Dec 2006 04:12:03 +0000 (04:12 +0000)]
Make a variable private now that the conditions requiring it to be
protected have been removed.

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

17 years agoDoxygenify a comment.
Reid Spencer [Fri, 29 Dec 2006 04:10:59 +0000 (04:10 +0000)]
Doxygenify a comment.

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

17 years agoPreview of new calling conventions: cextcc and csretextcc to handle explicit
Reid Spencer [Thu, 28 Dec 2006 16:55:55 +0000 (16:55 +0000)]
Preview of new calling conventions: cextcc and csretextcc to handle explicit
sign and zero extension in function calls.

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

17 years agoDefine StaticCtorsSection and StaticDtorsSection for ARM.
Lauro Ramos Venancio [Thu, 28 Dec 2006 13:13:00 +0000 (13:13 +0000)]
Define StaticCtorsSection and StaticDtorsSection for ARM.

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

17 years agoImplement SELECT_CC (f32/f64) for ARM.
Lauro Ramos Venancio [Thu, 28 Dec 2006 13:11:14 +0000 (13:11 +0000)]
Implement SELECT_CC (f32/f64) for ARM.

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

17 years agoremove duplicated line
Rafael Espindola [Thu, 28 Dec 2006 12:51:40 +0000 (12:51 +0000)]
remove duplicated line
bug noticed by Lauro

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

17 years agoThis patch defines extloadi1 and fixes an internal compiler error on
Lauro Ramos Venancio [Tue, 26 Dec 2006 19:30:42 +0000 (19:30 +0000)]
This patch defines extloadi1 and fixes an internal compiler error on
arm.

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

17 years agoCleanup ConstantFoldCompareInstruction:
Reid Spencer [Sun, 24 Dec 2006 18:52:08 +0000 (18:52 +0000)]
Cleanup ConstantFoldCompareInstruction:
1. Make the arguments const like the other ConstantFold* functions.
2. Clean up evaluateFCmpRelation so it makes sense for floating point.
3. Implement the use of evaluateFCmpRelation to fold floating point CEs
4. Shorten a variable name so more things fit on one line.
5. Fix various comments.

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

17 years agoFix some comments.
Reid Spencer [Sun, 24 Dec 2006 18:42:29 +0000 (18:42 +0000)]
Fix some comments.

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

17 years agoFor PR1066:
Reid Spencer [Sun, 24 Dec 2006 00:40:59 +0000 (00:40 +0000)]
For PR1066:
Fix this by ensuring that a bitcast is inserted to do sign switching. This
is only temporarily needed as the merging of signed and unsigned is next
on the SignlessTypes plate.

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

17 years agoShut up some compilers that can't accurately analyze variable usage
Reid Spencer [Sat, 23 Dec 2006 19:17:57 +0000 (19:17 +0000)]
Shut up some compilers that can't accurately analyze variable usage
correctly and emit "may be used uninitialized" warnings.

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

17 years agoTest case for PR1065.
Reid Spencer [Sat, 23 Dec 2006 19:14:10 +0000 (19:14 +0000)]
Test case for PR1065.

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

17 years agoAdd some documentation to make Nick happy.
Reid Spencer [Sat, 23 Dec 2006 19:06:54 +0000 (19:06 +0000)]
Add some documentation to make Nick happy.

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

17 years agoFor PR1065:
Reid Spencer [Sat, 23 Dec 2006 18:58:04 +0000 (18:58 +0000)]
For PR1065:
Don't allow CmpInst instances to be processed in FoldSelectOpOp because
you can't easily swap their operands.

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

17 years agoDon't overload var names.
Reid Spencer [Sat, 23 Dec 2006 10:21:26 +0000 (10:21 +0000)]
Don't overload var names.

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

17 years agoFor PR950:
Reid Spencer [Sat, 23 Dec 2006 06:05:41 +0000 (06:05 +0000)]
For PR950:
This patch removes the SetCC instructions and replaces them with the ICmp
and FCmp instructions. The SetCondInst instruction has been removed and
been replaced with ICmpInst and FCmpInst.

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

17 years agoadd a simple fast-path for dead allocas
Chris Lattner [Fri, 22 Dec 2006 23:14:42 +0000 (23:14 +0000)]
add a simple fast-path for dead allocas

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

17 years agoEnable new pass manager. 2nd attempt.
Devang Patel [Fri, 22 Dec 2006 22:55:30 +0000 (22:55 +0000)]
Enable new pass manager. 2nd attempt.

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

17 years agoModulePass and ImmutablePass. Force out of line virtual method.
Devang Patel [Fri, 22 Dec 2006 22:49:00 +0000 (22:49 +0000)]
ModulePass and ImmutablePass. Force out of line virtual method.

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

17 years agoadd a generic component to this test
Chris Lattner [Fri, 22 Dec 2006 22:48:44 +0000 (22:48 +0000)]
add a generic component to this test

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

17 years agolet this pass for ppc/linux
Chris Lattner [Fri, 22 Dec 2006 22:38:38 +0000 (22:38 +0000)]
let this pass for ppc/linux

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

17 years agoRefactored JIT codegen for mingw32. Now we're using standart relocation
Anton Korobeynikov [Fri, 22 Dec 2006 22:29:05 +0000 (22:29 +0000)]
Refactored JIT codegen for mingw32. Now we're using standart relocation
type for distinguish JIT & non-JIT instead of "dirty" hacks :)

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

17 years agoNeed to walk the derived chain of typedefs to get actual size.
Jim Laskey [Fri, 22 Dec 2006 20:03:42 +0000 (20:03 +0000)]
Need to walk the derived chain of typedefs to get actual size.

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

17 years agoDebug dump error.
Evan Cheng [Fri, 22 Dec 2006 02:04:05 +0000 (02:04 +0000)]
Debug dump error.

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

17 years agoIgnore the LibDeps.txt.tmp file.
Reid Spencer [Fri, 22 Dec 2006 02:02:45 +0000 (02:02 +0000)]
Ignore the LibDeps.txt.tmp file.

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

17 years agoadd a note
Chris Lattner [Fri, 22 Dec 2006 01:03:22 +0000 (01:03 +0000)]
add a note

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

17 years agoFix for ARM weak symbols, patch by Lauro Ramos Venancio!
Chris Lattner [Thu, 21 Dec 2006 22:59:58 +0000 (22:59 +0000)]
Fix for ARM weak symbols, patch by Lauro Ramos Venancio!

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

17 years agoAdd a new variable, LLVMGCCLIBEXEC to get the libexec directory where the
Reid Spencer [Thu, 21 Dec 2006 22:55:41 +0000 (22:55 +0000)]
Add a new variable, LLVMGCCLIBEXEC to get the libexec directory where the
cc1 and cc1plus executables live.

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

17 years agoGrandchildren are covered by protect.
Jim Laskey [Thu, 21 Dec 2006 21:24:35 +0000 (21:24 +0000)]
Grandchildren are covered by protect.

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

17 years agoChanges from Nick Lewycky with a simplified PPCTargetAsmInfo.
Jim Laskey [Thu, 21 Dec 2006 20:26:09 +0000 (20:26 +0000)]
Changes from Nick Lewycky with a simplified PPCTargetAsmInfo.

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

17 years agoInteger constants now print out as signed values in the assembly,
Reid Spencer [Thu, 21 Dec 2006 19:14:49 +0000 (19:14 +0000)]
Integer constants now print out as signed values in the assembly,
regardless of the signedness of the associated type.

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

17 years agoJust print integer constants as signed values. The actual signedness
Reid Spencer [Thu, 21 Dec 2006 19:04:23 +0000 (19:04 +0000)]
Just print integer constants as signed values. The actual signedness
doesn't matter as it is determined in the way the constant is used.

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

17 years agoAdd a FIXME about signedness.
Reid Spencer [Thu, 21 Dec 2006 18:59:16 +0000 (18:59 +0000)]
Add a FIXME about signedness.

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

17 years agoSimplify all the casting business and get rid of isSigned().
Reid Spencer [Thu, 21 Dec 2006 08:28:31 +0000 (08:28 +0000)]
Simplify all the casting business and get rid of isSigned().

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

17 years agoRemove isSigned calls via foreknowledge of main's argument types.
Reid Spencer [Thu, 21 Dec 2006 07:49:49 +0000 (07:49 +0000)]
Remove isSigned calls via foreknowledge of main's argument types.

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

17 years agoGet rid of a useless if statement whose then and else blocks were identical.
Reid Spencer [Thu, 21 Dec 2006 07:15:54 +0000 (07:15 +0000)]
Get rid of a useless if statement whose then and else blocks were identical.

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

17 years agoAdd some comments about things that can go away once signless types are in.
Reid Spencer [Thu, 21 Dec 2006 06:43:46 +0000 (06:43 +0000)]
Add some comments about things that can go away once signless types are in.

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

17 years agoAt the beginning of run, initialize analyis info availability for _ALL_
Devang Patel [Thu, 21 Dec 2006 00:16:50 +0000 (00:16 +0000)]
At the beginning of run, initialize analyis info availability for _ALL_
pass managers. Otherwise, stale available analysis info, from the managers not
yet run, may cause pass manager to take wrong turn.

This fixes CBE test failures reported by nightly tester.

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

17 years agoThese tests all rely on using register mnemonics and thus must behave in the
Jim Laskey [Thu, 21 Dec 2006 00:01:42 +0000 (00:01 +0000)]
These tests all rely on using register mnemonics and thus must behave in the
world of darwin.

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

17 years agoOops.
Jim Laskey [Wed, 20 Dec 2006 21:35:00 +0000 (21:35 +0000)]
Oops.

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

17 years agoOriginal patch was overly complicated.
Jim Laskey [Wed, 20 Dec 2006 21:33:34 +0000 (21:33 +0000)]
Original patch was overly complicated.

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

17 years agoFix Regression/Verifier/invoke-1.ll
Chris Lattner [Wed, 20 Dec 2006 21:20:13 +0000 (21:20 +0000)]
Fix Regression/Verifier/invoke-1.ll

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

17 years agoChanges to target powerpc for non-Darwin assemblers.
Jim Laskey [Wed, 20 Dec 2006 20:56:46 +0000 (20:56 +0000)]
Changes to target powerpc for non-Darwin assemblers.

1. Patches from Nick Lewycky.
2. Code to filter register names and print them as numeric values on
non-Darwin systems.

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

17 years agoFixed 80 cols & style violation
Anton Korobeynikov [Wed, 20 Dec 2006 20:40:30 +0000 (20:40 +0000)]
Fixed 80 cols & style violation

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

17 years agoEnable old pass manager. New pass manager causes CBE failures in llvm-test.
Devang Patel [Wed, 20 Dec 2006 19:57:07 +0000 (19:57 +0000)]
Enable old pass manager. New pass manager causes CBE failures in llvm-test.

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

17 years agoRevert the previous patch which was incorrect. This unbreaks eon, but rebreaks
Chris Lattner [Wed, 20 Dec 2006 19:50:15 +0000 (19:50 +0000)]
Revert the previous patch which was incorrect.  This unbreaks eon, but rebreaks
invoke-1.ll

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

17 years agoAdd some tests for negative constants to unsigned and large positive
Reid Spencer [Wed, 20 Dec 2006 17:27:58 +0000 (17:27 +0000)]
Add some tests for negative constants to unsigned and large positive
constants to signed.

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

17 years agoAllow negative constants for unsigned integers and unsigned constants
Reid Spencer [Wed, 20 Dec 2006 17:20:09 +0000 (17:20 +0000)]
Allow negative constants for unsigned integers and unsigned constants
greater than MAX_INT64 for signed integers. This is now valid and is just
waiting for the distinction between signed and unsigned to go away.

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

17 years agohandle undef values much more carefully: generalize the resolveundefbranches
Chris Lattner [Wed, 20 Dec 2006 06:21:33 +0000 (06:21 +0000)]
handle undef values much more carefully: generalize the resolveundefbranches
code to handle instructions as well, so that we properly fold things like
X & undef -> 0.
This fixes Transforms/SCCP/2006-12-19-UndefBug.ll

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

17 years agonew testcase
Chris Lattner [Wed, 20 Dec 2006 06:20:23 +0000 (06:20 +0000)]
new testcase

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

17 years agofix a typo
Chris Lattner [Wed, 20 Dec 2006 04:23:36 +0000 (04:23 +0000)]
fix a typo

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

17 years agogetLoad() and getStore() calls missed SVOffset operand. Thanks to Dan Gohman
Evan Cheng [Wed, 20 Dec 2006 01:27:29 +0000 (01:27 +0000)]
getLoad() and getStore() calls missed SVOffset operand. Thanks to Dan Gohman
for pointing it out!

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

17 years agoFixed dllimported symbols support during JIT'ing. JIT on mingw32
Anton Korobeynikov [Wed, 20 Dec 2006 01:03:20 +0000 (01:03 +0000)]
Fixed dllimported symbols support during JIT'ing. JIT on mingw32
platform should be more or less workable. At least, sim is running fine
under lli :)

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

17 years agoeliminate constructor from Statistic class. It is now impossible to get a
Chris Lattner [Tue, 19 Dec 2006 23:17:40 +0000 (23:17 +0000)]
eliminate constructor from Statistic class.  It is now impossible to get a
static constructor for them :).   Transition complete.

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

17 years agoswitch statistics over to not use static ctors.
Chris Lattner [Tue, 19 Dec 2006 23:16:47 +0000 (23:16 +0000)]
switch statistics over to not use static ctors.

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

17 years agoRemove documentation for isSigned and isUnsigned methods of Type class.
Reid Spencer [Tue, 19 Dec 2006 23:12:09 +0000 (23:12 +0000)]
Remove documentation for isSigned and isUnsigned methods of Type class.

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

17 years agoswitch statistic over, remove misspelt comment.
Chris Lattner [Tue, 19 Dec 2006 23:03:41 +0000 (23:03 +0000)]
switch statistic over, remove misspelt comment.

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

17 years agoeliminate static ctors for Statistic objects.
Chris Lattner [Tue, 19 Dec 2006 22:59:26 +0000 (22:59 +0000)]
eliminate static ctors for Statistic objects.

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

17 years agoelimiante Statistic static ctors
Chris Lattner [Tue, 19 Dec 2006 22:56:53 +0000 (22:56 +0000)]
elimiante Statistic static ctors

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

17 years agoAdded operator methods to the Statistic class; some LLVM projects depend
John Criswell [Tue, 19 Dec 2006 22:55:57 +0000 (22:55 +0000)]
Added operator methods to the Statistic class; some LLVM projects depend
on these.

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

17 years agoremove static ctors from Statistic objects
Chris Lattner [Tue, 19 Dec 2006 22:43:32 +0000 (22:43 +0000)]
remove static ctors from Statistic objects

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

17 years agoUpdate this test because constant integers are always printed signed now.
Reid Spencer [Tue, 19 Dec 2006 22:42:17 +0000 (22:42 +0000)]
Update this test because constant integers are always printed signed now.

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

17 years agoEliminate static ctors from Statistics
Chris Lattner [Tue, 19 Dec 2006 22:41:21 +0000 (22:41 +0000)]
Eliminate static ctors from Statistics

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

17 years agoeliminate static ctors from Statistics
Chris Lattner [Tue, 19 Dec 2006 22:30:33 +0000 (22:30 +0000)]
eliminate static ctors from Statistics

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

17 years agoeliminate static ctor from example.
Chris Lattner [Tue, 19 Dec 2006 22:24:09 +0000 (22:24 +0000)]
eliminate static ctor from example.

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

17 years agoremove dead statistic
Chris Lattner [Tue, 19 Dec 2006 22:23:21 +0000 (22:23 +0000)]
remove dead statistic

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

17 years agoswitch more statistics over to STATISTIC, eliminating static ctors. Also,
Chris Lattner [Tue, 19 Dec 2006 22:17:40 +0000 (22:17 +0000)]
switch more statistics over to STATISTIC, eliminating static ctors.  Also,
delete some dead ones.

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

17 years agoEliminate static ctors due to Statistic objects
Chris Lattner [Tue, 19 Dec 2006 22:09:18 +0000 (22:09 +0000)]
Eliminate static ctors due to Statistic objects

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

17 years agoConvert more Statistic's over to STATISTIC
Chris Lattner [Tue, 19 Dec 2006 21:49:03 +0000 (21:49 +0000)]
Convert more Statistic's over to STATISTIC

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

17 years agoupdate to reflect changes in statistic class.
Chris Lattner [Tue, 19 Dec 2006 21:46:21 +0000 (21:46 +0000)]
update to reflect changes in statistic class.

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

17 years agoSwitch over Transforms/Scalar to use the STATISTIC macro. For each statistic
Chris Lattner [Tue, 19 Dec 2006 21:40:18 +0000 (21:40 +0000)]
Switch over Transforms/Scalar to use the STATISTIC macro.  For each statistic
converted, we lose a static initializer.  This also allows GCC to emit warnings
about unused statistics.

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

17 years agoEnable new pass manager.
Devang Patel [Tue, 19 Dec 2006 21:32:24 +0000 (21:32 +0000)]
Enable new pass manager.

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

17 years agoFix for PR1062 by Dan Gohman.
Evan Cheng [Tue, 19 Dec 2006 21:31:42 +0000 (21:31 +0000)]
Fix for PR1062 by Dan Gohman.

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

17 years agoRefactor statistic a big and introduce a horrible-but-necessary macro
Chris Lattner [Tue, 19 Dec 2006 21:27:47 +0000 (21:27 +0000)]
Refactor statistic a big and introduce a horrible-but-necessary macro
(STATISTIC), which allows us to define statistics that don't introduce
static ctors into the .o files.  I'm migrating code over to use this
incrementally.

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

17 years agoNow that ConstantInt::isValueValidForType can handle signed and unsigned
Reid Spencer [Tue, 19 Dec 2006 21:16:35 +0000 (21:16 +0000)]
Now that ConstantInt::isValueValidForType can handle signed and unsigned
values regardless of the signedness of the constant's type, it is okay to
always make the AsmWriter.cpp print constant ints as signed values. The
AsmParser will automatically handle things like: uint -1 as a result.

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

17 years agoFix for PR1059: http://llvm.org/PR1059
Anton Korobeynikov [Tue, 19 Dec 2006 21:04:20 +0000 (21:04 +0000)]
Fix for PR1059: http://llvm.org/PR1059

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

17 years agoNow, there is additional layer, referred in the comment,
Devang Patel [Tue, 19 Dec 2006 20:12:38 +0000 (20:12 +0000)]
Now, there is additional layer, referred in the comment,
in place to handle this correctly.

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

17 years agoFor PR950:
Reid Spencer [Tue, 19 Dec 2006 19:55:17 +0000 (19:55 +0000)]
For PR950:
Test needs to be upgraded for the forthcoming FCmpInst patch.

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

17 years agoThis test needs to be upgraded for the forthcoming FCmpInst patch.
Reid Spencer [Tue, 19 Dec 2006 19:50:30 +0000 (19:50 +0000)]
This test needs to be upgraded for the forthcoming FCmpInst patch.

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

17 years agoFix an example that used the old SetCondInst instruction.
Reid Spencer [Tue, 19 Dec 2006 19:47:54 +0000 (19:47 +0000)]
Fix an example that used the old SetCondInst instruction.

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