oota-llvm.git
21 years agoInitial checkin of the LLEE, the (LL)VM (E)xecution (E)nvironment.
Misha Brukman [Mon, 11 Aug 2003 22:29:36 +0000 (22:29 +0000)]
Initial checkin of the LLEE, the (LL)VM (E)xecution (E)nvironment.

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

21 years agoAdd basic support for 16 and 32 bit function arguments!
Chris Lattner [Mon, 11 Aug 2003 21:30:00 +0000 (21:30 +0000)]
Add basic support for 16 and 32 bit function arguments!

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

21 years agoadd frameidx support
Chris Lattner [Mon, 11 Aug 2003 21:29:40 +0000 (21:29 +0000)]
add frameidx support
Make load work
Make type inference infer from Arg1 to arg0 as well as from arg0 to arg1

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

21 years agoAdd support for frameidx and literal immediates for instructions
Chris Lattner [Mon, 11 Aug 2003 21:28:59 +0000 (21:28 +0000)]
Add support for frameidx and literal immediates for instructions

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

21 years agoAdd support for naming the destination of a "set" in a pattern
Chris Lattner [Mon, 11 Aug 2003 20:32:02 +0000 (20:32 +0000)]
Add support for naming the destination of a "set" in a pattern

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

21 years agoAdd support for the Arg1 argument type
Chris Lattner [Mon, 11 Aug 2003 20:25:52 +0000 (20:25 +0000)]
Add support for the Arg1 argument type

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

21 years agoSort #includes, eliminate #include of "llvm/Type.h" which was redundant
Chris Lattner [Mon, 11 Aug 2003 20:06:16 +0000 (20:06 +0000)]
Sort #includes, eliminate #include of "llvm/Type.h" which was redundant

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

21 years agoCygwin apparently works with %'s on registers!
Chris Lattner [Mon, 11 Aug 2003 20:04:57 +0000 (20:04 +0000)]
Cygwin apparently works with %'s on registers!

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

21 years agoIf we can't find INT64_MAX, set it to a reasonable default value,
Brian Gaeke [Mon, 11 Aug 2003 20:04:57 +0000 (20:04 +0000)]
If we can't find INT64_MAX, set it to a reasonable default value,
instead of printing out an (incorrect) #error message.

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

21 years agoWhoops, accidental checkin. :(
Chris Lattner [Mon, 11 Aug 2003 19:35:46 +0000 (19:35 +0000)]
Whoops, accidental checkin.  :(

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

21 years agoAdd a new -enable-cygwin-compatible-output argument, which make the output more
Chris Lattner [Mon, 11 Aug 2003 19:35:26 +0000 (19:35 +0000)]
Add a new -enable-cygwin-compatible-output argument, which make the output more
consumably by the cygwin assembler.  This is really just a nasty hack until we
get real target triple support.

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

21 years agoAdd support to the mangler for targets which require _'s on global symbols
Chris Lattner [Mon, 11 Aug 2003 19:34:29 +0000 (19:34 +0000)]
Add support to the mangler for targets which require _'s on global symbols

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

21 years agoAdded keyword `include', and a FIXME for hex and binary constants.
Misha Brukman [Mon, 11 Aug 2003 19:14:20 +0000 (19:14 +0000)]
Added keyword `include', and a FIXME for hex and binary constants.

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

21 years ago* Added pointers to the README files in emacs/ and vim/ directories.
Misha Brukman [Mon, 11 Aug 2003 19:13:12 +0000 (19:13 +0000)]
* Added pointers to the README files in emacs/ and vim/ directories.
* Added slashes to distinguish directories and tools from simple scripts.

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

21 years ago* Added (X)Emacs mode for TableGen description files
Misha Brukman [Mon, 11 Aug 2003 19:10:02 +0000 (19:10 +0000)]
* Added (X)Emacs mode for TableGen description files
* Added README that describes how to use the mode files
* Associated files with .llx extension with llvm-mode

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

21 years agoPrint % signs before register names; turn off "noprefix" mode in gas output.
Brian Gaeke [Mon, 11 Aug 2003 19:05:46 +0000 (19:05 +0000)]
Print % signs before register names; turn off "noprefix" mode in gas output.
Fixes test case test/Programs/LLVMSource/2003-08-03-ReservedWordGlobal.ll.

Also: Refactor implicit-uses printing into its own method.
Remove a couple of unused variables.

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

21 years agoGeez, this misha guy is a _horrible_ speller. :)
Chris Lattner [Mon, 11 Aug 2003 18:53:14 +0000 (18:53 +0000)]
Geez, this misha guy is a _horrible_ speller.  :)

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

21 years ago* Added a section describing the hidden gems in llvm/utils
Misha Brukman [Mon, 11 Aug 2003 18:45:46 +0000 (18:45 +0000)]
* Added a section describing the hidden gems in llvm/utils
* Converted some tabs to spaces
* Made lines fit within 80 columns

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

21 years agoRegister argument to va_start must be marked as defined!
Vikram S. Adve [Mon, 11 Aug 2003 18:42:47 +0000 (18:42 +0000)]
Register argument to va_start must be marked as defined!

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

21 years agotablegen.vim:
Misha Brukman [Mon, 11 Aug 2003 18:05:19 +0000 (18:05 +0000)]
tablegen.vim:
* Added keyword `field'
* Keywords get different highlighting than types
* Added a simple attempt at multi-line C-style comments with FIXME

README:
* Added note about symlinking an entire directory ~/.vim/syntax

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

21 years agoAdd .llx
Chris Lattner [Mon, 11 Aug 2003 18:01:39 +0000 (18:01 +0000)]
Add .llx

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

21 years agoAdded a TableGen syntax highlighting mode for VIM and a README that describes
Misha Brukman [Mon, 11 Aug 2003 17:56:08 +0000 (17:56 +0000)]
Added a TableGen syntax highlighting mode for VIM and a README that describes
how to add the functionality to the user's VIM installation.

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

21 years agoAdd (ret int) expander so that we can at least write testcases
Chris Lattner [Mon, 11 Aug 2003 15:48:00 +0000 (15:48 +0000)]
Add (ret int) expander so that we can at least write testcases

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

21 years agoDon't forget to initializer result field to 0!
Chris Lattner [Mon, 11 Aug 2003 15:47:35 +0000 (15:47 +0000)]
Don't forget to initializer result field to 0!

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

21 years agoConverted tabs to spaces.
Misha Brukman [Mon, 11 Aug 2003 15:38:50 +0000 (15:38 +0000)]
Converted tabs to spaces.

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

21 years agoRemoved `-debug' so that spurious printouts of patterns are not seen at
Misha Brukman [Mon, 11 Aug 2003 15:30:20 +0000 (15:30 +0000)]
Removed `-debug' so that spurious printouts of patterns are not seen at
compilation time.

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

21 years agoRemove dead code
Chris Lattner [Mon, 11 Aug 2003 15:24:02 +0000 (15:24 +0000)]
Remove dead code

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

21 years agoAdd patterns for multiply, and, or, and xor
Chris Lattner [Mon, 11 Aug 2003 15:23:25 +0000 (15:23 +0000)]
Add patterns for multiply, and, or, and xor

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

21 years agoadd support for more nodes
Chris Lattner [Mon, 11 Aug 2003 15:23:05 +0000 (15:23 +0000)]
add support for more nodes

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

21 years agoPut printouts of acquired patterns under the DEBUG() guard, fixed spelling.
Misha Brukman [Mon, 11 Aug 2003 15:16:12 +0000 (15:16 +0000)]
Put printouts of acquired patterns under the DEBUG() guard, fixed spelling.

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

21 years agoUntil the pattern matching instruction selector is finished, enable debug output...
Chris Lattner [Mon, 11 Aug 2003 15:11:01 +0000 (15:11 +0000)]
Until the pattern matching instruction selector is finished, enable debug output from it

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

21 years agoFix handling of 'free' if it has absolutely no prototype
Chris Lattner [Mon, 11 Aug 2003 15:05:08 +0000 (15:05 +0000)]
Fix handling of 'free' if it has absolutely no prototype

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

21 years agoInclude the new selection library for the X86 target
Chris Lattner [Mon, 11 Aug 2003 14:59:53 +0000 (14:59 +0000)]
Include the new selection library for the X86 target

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

21 years agoAdd support for a pattern matching instruction selector. This is still in
Chris Lattner [Mon, 11 Aug 2003 14:59:22 +0000 (14:59 +0000)]
Add support for a pattern matching instruction selector.  This is still in
the early implementation phases, so it is disabled by default

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

21 years agoBuild the SelectionDAG library
Chris Lattner [Mon, 11 Aug 2003 14:57:48 +0000 (14:57 +0000)]
Build the SelectionDAG library

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

21 years agoInitial checkin of SelectionDAG implementation. This is still rough and
Chris Lattner [Mon, 11 Aug 2003 14:57:33 +0000 (14:57 +0000)]
Initial checkin of SelectionDAG implementation.  This is still rough and
unfinished

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

21 years agoInitial checkin of SelectionDAG header file
Chris Lattner [Mon, 11 Aug 2003 14:56:26 +0000 (14:56 +0000)]
Initial checkin of SelectionDAG header file

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

21 years agoAdd full support for code generating expanders!
Chris Lattner [Sun, 10 Aug 2003 23:51:52 +0000 (23:51 +0000)]
Add full support for code generating expanders!
This includes support for referencing named arguments.

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

21 years agoImplement autopromotion of leaf trees from arguments to nodes of their own,
Chris Lattner [Sun, 10 Aug 2003 22:38:36 +0000 (22:38 +0000)]
Implement autopromotion of leaf trees from arguments to nodes of their own,
making it easier to write patterns without lots of extraneous parens

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

21 years agoImplement correct parsing, representation, and printing of DAG argument names
Chris Lattner [Sun, 10 Aug 2003 22:14:13 +0000 (22:14 +0000)]
Implement correct parsing, representation, and printing of DAG argument names
Implements testcase TableGen/TreeNames.td

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

21 years agoRecognize $foo as a variable
Chris Lattner [Sun, 10 Aug 2003 22:04:25 +0000 (22:04 +0000)]
Recognize $foo as a variable

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

21 years agoNew testcase
Chris Lattner [Sun, 10 Aug 2003 22:02:44 +0000 (22:02 +0000)]
New testcase

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

21 years agoImplement real code emission, at least for Instruction patterns,
Chris Lattner [Sun, 10 Aug 2003 21:54:43 +0000 (21:54 +0000)]
Implement real code emission, at least for Instruction patterns,
next up: support for expanders

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

21 years agoFirst cut at emitting the reducer. This reducer just prints out the patterns
Chris Lattner [Sun, 10 Aug 2003 20:34:13 +0000 (20:34 +0000)]
First cut at emitting the reducer.  This reducer just prints out the patterns
selected, but it seems to work great!

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

21 years agoMake imm be a leaf instead of a nonterminal
Chris Lattner [Sun, 10 Aug 2003 19:51:16 +0000 (19:51 +0000)]
Make imm be a leaf instead of a nonterminal

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

21 years agoFinish the matcher!
Chris Lattner [Sun, 10 Aug 2003 19:50:51 +0000 (19:50 +0000)]
Finish the matcher!

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

21 years agoAdd new function
Chris Lattner [Sun, 10 Aug 2003 19:50:32 +0000 (19:50 +0000)]
Add new function

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

21 years agoRemoved information on the Pool Allocator as it is no longer available.
John Criswell [Fri, 8 Aug 2003 22:46:30 +0000 (22:46 +0000)]
Removed information on the Pool Allocator as it is no longer available.
Fixed a spelling error.

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

21 years agoAdded a FAQ about how to clean the directory if it fails to build after an
John Criswell [Fri, 8 Aug 2003 22:43:39 +0000 (22:43 +0000)]
Added a FAQ about how to clean the directory if it fails to build after an
update.

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

21 years agoUpdated for the 1.1 pre-release.
John Criswell [Fri, 8 Aug 2003 22:36:30 +0000 (22:36 +0000)]
Updated for the 1.1 pre-release.
Attempted to explain how OBJ_ROOT=. and OBJ_ROOT=`pwd` are not the same thing.

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

21 years agoThis implements a large amount of the matcher, in fact, all of it except for one bug
Chris Lattner [Fri, 8 Aug 2003 22:29:23 +0000 (22:29 +0000)]
This implements a large amount of the matcher, in fact, all of it except for one bug

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

21 years agoEmit the first half of the instruction selector.
Chris Lattner [Fri, 8 Aug 2003 16:30:10 +0000 (16:30 +0000)]
Emit the first half of the instruction selector.

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

21 years agoChomped spurious blank lines.
Misha Brukman [Fri, 8 Aug 2003 15:37:35 +0000 (15:37 +0000)]
Chomped spurious blank lines.

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

21 years agoFinish implementation of nonterminal instantiation.
Chris Lattner [Thu, 7 Aug 2003 23:16:20 +0000 (23:16 +0000)]
Finish implementation of nonterminal instantiation.
Tree patterns are now, finally, ready to use!

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

21 years agoAdd new method to get a value type as a string
Chris Lattner [Thu, 7 Aug 2003 23:15:21 +0000 (23:15 +0000)]
Add new method to get a value type as a string

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

21 years ago* Fix <>'s in code to be &lt;&gt;'s
Chris Lattner [Thu, 7 Aug 2003 21:45:47 +0000 (21:45 +0000)]
* Fix <>'s in code to be &lt;&gt;'s
* Add section describing how we prefer #includes to be ordered

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

21 years agoFile-related functions moved to FileUtilities.h .
Misha Brukman [Thu, 7 Aug 2003 21:42:28 +0000 (21:42 +0000)]
File-related functions moved to FileUtilities.h .

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

21 years agoclose() requires "unistd.h" .
Misha Brukman [Thu, 7 Aug 2003 21:35:41 +0000 (21:35 +0000)]
close() requires "unistd.h" .

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

21 years agoDoxygen-ify the comments by using '///' instead of '//'.
Misha Brukman [Thu, 7 Aug 2003 21:34:25 +0000 (21:34 +0000)]
Doxygen-ify the comments by using '///' instead of '//'.

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

21 years agoRemove references to `bugpoint' from the now-generic system utilities.
Misha Brukman [Thu, 7 Aug 2003 21:33:33 +0000 (21:33 +0000)]
Remove references to `bugpoint' from the now-generic system utilities.

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

21 years agoCompletely remove mention of the correlated branch elimination pass. It has
Chris Lattner [Thu, 7 Aug 2003 21:30:12 +0000 (21:30 +0000)]
Completely remove mention of the correlated branch elimination pass.  It has
bugs and needs to be reworked anyway.

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

21 years agoMoved removeFile() and getUniqueFilename() into FileUtilities.
Misha Brukman [Thu, 7 Aug 2003 21:28:50 +0000 (21:28 +0000)]
Moved removeFile() and getUniqueFilename() into FileUtilities.

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

21 years ago* The possessive third-person singular has no apostrophe (its)
Misha Brukman [Thu, 7 Aug 2003 21:23:52 +0000 (21:23 +0000)]
* The possessive third-person singular has no apostrophe (its)
* Grouped header files to fit with the LLVM standard
* Fit code into 80 columns

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

21 years agoRe-grouped and alphabetized headers for easier reading and cleaner style.
Misha Brukman [Thu, 7 Aug 2003 21:19:30 +0000 (21:19 +0000)]
Re-grouped and alphabetized headers for easier reading and cleaner style.

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

21 years agoFixed path for SystemUtils.h and a few code cleanups.
Misha Brukman [Thu, 7 Aug 2003 21:05:13 +0000 (21:05 +0000)]
Fixed path for SystemUtils.h and a few code cleanups.

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

21 years agoMoved SystemUtils.h to include/Support and SystemUtils.cpp to lib/Support.
Misha Brukman [Thu, 7 Aug 2003 21:04:42 +0000 (21:04 +0000)]
Moved SystemUtils.h to include/Support and SystemUtils.cpp to lib/Support.

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

21 years agoImplement type-inference/checking for non-terminal references
Chris Lattner [Thu, 7 Aug 2003 21:02:56 +0000 (21:02 +0000)]
Implement type-inference/checking for non-terminal references

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

21 years agoRename all of the "Process" methods to be "read" methods, start the Instantiate method
Chris Lattner [Thu, 7 Aug 2003 20:42:23 +0000 (20:42 +0000)]
Rename all of the "Process" methods to be "read" methods, start the Instantiate method

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

21 years agoAdd support for "cast" nodes, which are required when there is not enough information
Chris Lattner [Thu, 7 Aug 2003 19:59:42 +0000 (19:59 +0000)]
Add support for "cast" nodes, which are required when there is not enough information
to infer type type of all nodes, e.g. (ret imm)

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

21 years agoUse the new version of isSubClassOf
Chris Lattner [Thu, 7 Aug 2003 19:42:14 +0000 (19:42 +0000)]
Use the new version of isSubClassOf

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

21 years agoAdd and use a new method
Chris Lattner [Thu, 7 Aug 2003 19:41:59 +0000 (19:41 +0000)]
Add and use a new method

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

21 years agoCleanup and reorganize code, no functional changes
Chris Lattner [Thu, 7 Aug 2003 19:28:55 +0000 (19:28 +0000)]
Cleanup and reorganize code, no functional changes

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

21 years agoRead in expanders too
Chris Lattner [Thu, 7 Aug 2003 19:21:10 +0000 (19:21 +0000)]
Read in expanders too

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

21 years agoContinued evolution of the selector emitter: Represent instruction patterns
Chris Lattner [Thu, 7 Aug 2003 19:12:24 +0000 (19:12 +0000)]
Continued evolution of the selector emitter: Represent instruction patterns
as first class objects

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

21 years agoImplement LLVM intrinsics `llvm.setjmp' and `llvm.longjmp' as follows:
Misha Brukman [Thu, 7 Aug 2003 15:43:46 +0000 (15:43 +0000)]
Implement LLVM intrinsics `llvm.setjmp' and `llvm.longjmp' as follows:
* setjmp() simply returns 0
* longjmp() simply calls abort()

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

21 years agoFix assertion in MachineInstr::substituteValue().
Vikram S. Adve [Thu, 7 Aug 2003 15:01:48 +0000 (15:01 +0000)]
Fix assertion in MachineInstr::substituteValue().

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

21 years agoFix sanity-checking in 'maskUnsigned' code to be more precise:
Vikram S. Adve [Thu, 7 Aug 2003 15:01:26 +0000 (15:01 +0000)]
Fix sanity-checking in 'maskUnsigned' code to be more precise:
use or def-and-use operands can be substituted after one def-only
operand has been substituted.

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

21 years agoFixed a segfault in gccld.
John Criswell [Thu, 7 Aug 2003 14:43:13 +0000 (14:43 +0000)]
Fixed a segfault in gccld.
The original code does not work because the value from WorkList.end() is
invalidated once WorkList.erase() is called.  To ensure proper functionality,
we must ensure that WorkList.erase() is always called before WorkList.end().

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

21 years agoUpdate tablegen interfaces
Chris Lattner [Thu, 7 Aug 2003 13:52:22 +0000 (13:52 +0000)]
Update tablegen interfaces

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

21 years agoFinish implementation of the type inference engine.
Chris Lattner [Thu, 7 Aug 2003 06:02:15 +0000 (06:02 +0000)]
Finish implementation of the type inference engine.
Start working on reading in nonterminals

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

21 years agoAllow clients to get at the pointer type
Chris Lattner [Thu, 7 Aug 2003 06:01:44 +0000 (06:01 +0000)]
Allow clients to get at the pointer type

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

21 years agoAdd new method getVAlueAsDag
Chris Lattner [Thu, 7 Aug 2003 06:00:43 +0000 (06:00 +0000)]
Add new method getVAlueAsDag

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

21 years agoInitial checkin of tree pattern parser and type inference engine (which still needs...
Chris Lattner [Thu, 7 Aug 2003 05:40:14 +0000 (05:40 +0000)]
Initial checkin of tree pattern parser and type inference engine (which still needs work).

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

21 years agoEliminate now-dead method
Chris Lattner [Thu, 7 Aug 2003 05:39:37 +0000 (05:39 +0000)]
Eliminate now-dead method

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

21 years agoStart using the CodeGeneratorWrappers
Chris Lattner [Thu, 7 Aug 2003 05:39:09 +0000 (05:39 +0000)]
Start using the CodeGeneratorWrappers

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

21 years agoInitial checkin of useful wrappers around the Target classes, for now, only ValueType and
Chris Lattner [Thu, 7 Aug 2003 05:38:11 +0000 (05:38 +0000)]
Initial checkin of useful wrappers around the Target classes, for now, only ValueType and
Target are wrapped

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

21 years agoRemoved the support for pool allocation testing. This will be in a separate TEST...
Sumant Kowshik [Thu, 7 Aug 2003 05:36:53 +0000 (05:36 +0000)]
Removed the support for pool allocation testing. This will be in a separate TEST file

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

21 years agoChange implementation so that variable sized slabs are used to allow arbitrary sized...
Sumant Kowshik [Thu, 7 Aug 2003 05:31:04 +0000 (05:31 +0000)]
Change implementation so that variable sized slabs are used to allow arbitrary sized array allocations

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

21 years agoAdded code for pool allocating only the pool-allocatable data structures in the prese...
Sumant Kowshik [Thu, 7 Aug 2003 05:29:28 +0000 (05:29 +0000)]
Added code for pool allocating only the pool-allocatable data structures in the presence of collapsed nodes + a couple of bug fixes

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

21 years agoThis register is never used, disable it.
Chris Lattner [Thu, 7 Aug 2003 04:49:16 +0000 (04:49 +0000)]
This register is never used, disable it.

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

21 years agoAdded a flag which is set when all data structures are not pool allocated
Sumant Kowshik [Thu, 7 Aug 2003 04:37:52 +0000 (04:37 +0000)]
Added a flag which is set when all data structures are not pool allocated

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

21 years agoThere was no reason for these to be bit-fields, they just need to be unique.
Chris Lattner [Thu, 7 Aug 2003 00:17:00 +0000 (00:17 +0000)]
There was no reason for  these to be bit-fields, they just need to be unique.
Also, add an isVoid item

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

21 years agoChanging command-line option formats to be more consistent with LLVM style.
Misha Brukman [Wed, 6 Aug 2003 23:25:25 +0000 (23:25 +0000)]
Changing command-line option formats to be more consistent with LLVM style.

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

21 years ago* Renamed option from `nopreselect' to `nopreopt' since it disables more than
Misha Brukman [Wed, 6 Aug 2003 23:06:21 +0000 (23:06 +0000)]
* Renamed option from `nopreselect' to `nopreopt' since it disables more than
  just PreSelection
* Wrapped code at 80 columns
* Added the DecomposeMultiDimRefs Pass to the JIT compilation path

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

21 years agoIck, add the RIGHT accessor
Chris Lattner [Wed, 6 Aug 2003 23:01:18 +0000 (23:01 +0000)]
Ick, add the RIGHT accessor

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

21 years agoAdd accessor
Chris Lattner [Wed, 6 Aug 2003 23:00:31 +0000 (23:00 +0000)]
Add accessor

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

21 years agoThere is something wrong with code that looks like:
Chris Lattner [Wed, 6 Aug 2003 22:29:04 +0000 (22:29 +0000)]
There is something wrong with code that looks like:
if (R == 0 || ...)
  R->getName()

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

21 years agoUse the registers g1 and g5 as temporaries for making far jumps and far calls,
Misha Brukman [Wed, 6 Aug 2003 22:19:18 +0000 (22:19 +0000)]
Use the registers g1 and g5 as temporaries for making far jumps and far calls,
because saving i1 and i2 to their ``designated'' stack slots corrupts unknown
memory in other functions, standard libraries, and worse.

In addition, this has the benefit of improving JIT performance because we
eliminate writing out 4 instructions in CompilationCallback() and 2 loads and 2
stores.

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

21 years agoRemoved Makefile.common.
John Criswell [Wed, 6 Aug 2003 21:50:36 +0000 (21:50 +0000)]
Removed Makefile.common.
Since we are including Makefile.test, we automatically get Makefile.common.
Furthermore, the double inclusion of Makefile.common causes the test suite to
be executed twice per invocation of the top level make.

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

21 years agoExport the register classes so that the instruction selector can get at them as needed
Chris Lattner [Wed, 6 Aug 2003 21:47:14 +0000 (21:47 +0000)]
Export the register classes so that the instruction selector can get at them as needed

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