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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
Chris Lattner [Thu, 7 Aug 2003 21:45:47 +0000 (21:45 +0000)]
* Fix <>'s in code to be <>'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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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