Chris Lattner
7dda395004
Major change to tblgen: instead of resolving values every time a class is
...
finished up, only resolve fully when the def is defined. This allows things
to be changed and all uses to be propagated through. This implements
TableGen/LazyChange.td and fixes TemplateArgRename.td in the process.
None of the .td files used in LLVM backends are changed at all by this
patch.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21344 91177308-0d34-0410-b5e6-96231b3b80d8
2005-04-19 03:36:21 +00:00
Chris Lattner
577057faaa
implementing shifting of literal integers
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21336 91177308-0d34-0410-b5e6-96231b3b80d8
2005-04-19 01:17:35 +00:00
Chris Lattner
b9266f880a
Add initial lexer and parser support for shifting values. Every use of this
...
will lead to it being rejected though.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21335 91177308-0d34-0410-b5e6-96231b3b80d8
2005-04-19 01:11:03 +00:00
Reid Spencer
ead87b6712
For PR387:
...
Make this compile without warning when -Woverloaded-virtual is used.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18588 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-06 23:42:37 +00:00
Chris Lattner
1fca5ff62b
Convert 'struct' to 'class' in various places to adhere to the coding standards
...
and work better with VC++. Patch contributed by Morten Ofstad!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17281 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-27 16:14:51 +00:00
Chris Lattner
89e0f74094
Make VC happier, patch contributed by Morten Ofstad
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17179 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-23 04:58:50 +00:00
Chris Lattner
1dba7abdd7
Implement test/Regression/TableGen/ListSlices.td
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15249 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-27 01:01:21 +00:00
Chris Lattner
b0fef64dc9
Add initial support for list slices. This currently allows you to do stuff
...
like this:
def B {
list<int> X = [10, 20, 30, 4, 1, 1231, 20] [2-4,2,2,0-6];
}
... which isn't particularly useful, but more is to come.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15247 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-26 23:21:34 +00:00
Misha Brukman
234b3ec879
The "best" of both worlds: readable C++ comments and valid HTML For doxygen.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12964 91177308-0d34-0410-b5e6-96231b3b80d8
2004-04-15 15:30:15 +00:00
Brian Gaeke
d0fde30ce8
Put all LLVM code into the llvm namespace, as per bug 109.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9903 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-11 22:41:34 +00:00
John Criswell
01d45827a1
Added LLVM copyright header.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9305 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-20 20:20:30 +00:00
Chris Lattner
990db46e9a
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
2003-08-10 22:38:36 +00:00
Chris Lattner
91290d7e9a
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
2003-08-10 22:14:13 +00:00
Chris Lattner
a40e5ad69f
Add and use a new method
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7682 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-07 19:41:59 +00:00
Chris Lattner
784a793636
Add new method getVAlueAsDag
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7669 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-07 06:00:43 +00:00
Chris Lattner
eac56ac0da
Ick, add the RIGHT accessor
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7656 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-06 23:01:18 +00:00
Chris Lattner
6514a326cf
Add accessor
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7655 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-06 23:00:31 +00:00
Chris Lattner
8e9a9774eb
add support for DagInit initializers, which represent DAG patterns
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7576 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-04 20:44:17 +00:00
Chris Lattner
e9d019c364
It appears that somehow we forgot to add support for code variables.
...
Fix bug: TableGen/2003-08-03-PassCode.td
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7561 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-04 04:53:50 +00:00
Chris Lattner
40f71134b9
Add initial support for a new 'dag' type
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7559 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-04 04:50:57 +00:00
Chris Lattner
0969c5bdf2
Add new Record::getValueAsBit method
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7544 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-03 21:58:13 +00:00
Chris Lattner
08ca97291f
Fix bug: TableGen/IntBitInit.td
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7526 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-03 18:29:51 +00:00
Chris Lattner
7cf0ce4b8d
Changes to allow lists of any type
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7519 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-03 18:17:22 +00:00
Chris Lattner
dbb295bd0d
Add new method
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7502 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-02 01:27:37 +00:00
Chris Lattner
c7d58024f8
add support for emitting register classes
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7473 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-01 06:27:59 +00:00
Chris Lattner
58c5de1692
Add new getValueAsListInit and getValueAsInt methods
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7472 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-01 06:15:10 +00:00
Chris Lattner
24151a6888
Fix the way field bit references are resolved, also allow resolution of field references overall!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7470 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-01 05:58:58 +00:00
Chris Lattner
6f334ad8f5
Add new getValueAsBitsInit 'high-level' method
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7467 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-01 04:46:24 +00:00
Chris Lattner
5c737ad4d6
Switch over to an exception handling model for "high-level" requests.
...
Add new getValueAsString method.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7463 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-01 04:37:57 +00:00
Chris Lattner
ab47ae3381
Factor code out into a new getAllDerivedDefinitions method, which is generally useful
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7461 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-01 04:09:58 +00:00
Chris Lattner
14d7c59491
Add file comment
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7444 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-31 04:37:57 +00:00
Chris Lattner
e3a1d05448
Add support for code fragments
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7440 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-30 22:15:58 +00:00
Chris Lattner
f05760de76
Initial support for the 'code' type.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7439 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-30 21:47:42 +00:00
Chris Lattner
bfce056ea8
Don't pollute the namespace with template arguments after they have been resolved
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7410 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-30 04:56:05 +00:00
Chris Lattner
f1b36f9a71
Allow passing lists through variables
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7407 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-30 04:16:52 +00:00
Chris Lattner
9b929aa749
Implement resolution of variables to the value of the variable once it gets a value
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7406 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-30 04:05:07 +00:00
Chris Lattner
ce3d64025b
Allow initializing variable initializers with variables
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7354 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-28 03:39:57 +00:00
Chris Lattner
b5b3c6fc01
Use C++ headers, not C headers
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7308 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-25 17:32:51 +00:00
John Criswell
028936ada1
Added assert.h so that it compiles under newer versions of GCC.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6683 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-11 14:17:21 +00:00
Chris Lattner
ade0de9123
Tighten up assertion checking
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4939 91177308-0d34-0410-b5e6-96231b3b80d8
2002-12-06 03:55:39 +00:00
Chris Lattner
b1ed0fc630
Continue implementing field initializers
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4879 91177308-0d34-0410-b5e6-96231b3b80d8
2002-12-03 06:00:33 +00:00
Chris Lattner
b45b3b3cd1
Continued support for field intitializers
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4855 91177308-0d34-0410-b5e6-96231b3b80d8
2002-12-02 17:53:54 +00:00
Chris Lattner
7331ab9d56
Continued support for Field Initializer
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4853 91177308-0d34-0410-b5e6-96231b3b80d8
2002-12-02 17:43:58 +00:00
Chris Lattner
f1e37d9d03
Add comments, factor out common code
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4851 91177308-0d34-0410-b5e6-96231b3b80d8
2002-12-02 16:57:01 +00:00
Chris Lattner
a1651900e1
Initial support for Field Expressions
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4848 91177308-0d34-0410-b5e6-96231b3b80d8
2002-12-02 16:42:52 +00:00
Chris Lattner
07278e48dc
Add comments
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4845 91177308-0d34-0410-b5e6-96231b3b80d8
2002-12-02 16:13:23 +00:00
Chris Lattner
e62c1185be
Initial checkin of TableGen utility
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4843 91177308-0d34-0410-b5e6-96231b3b80d8
2002-12-02 01:23:04 +00:00