summaryrefslogtreecommitdiffstats
path: root/llvm/utils/TableGen/TGParser.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Make BinOps typed and require a type specifier for !nameconcat. ThisDavid Greene2009-04-231-9/+72
| | | | | | | allows binops to be used in typed contexts such as when passing arguments to classes. llvm-svn: 69921
* Allow defm to inherit from multiple multiclasses.David Greene2009-04-221-68/+76
| | | | llvm-svn: 69832
* Implement !nameconcat to concatenate strings and look up the resultingDavid Greene2009-04-221-21/+47
| | | | | | name in the symbol table, returning an object. llvm-svn: 69822
* Implement multiclass inheritance.David Greene2009-04-221-2/+171
| | | | llvm-svn: 69810
* fix a few spelling errors and typosJim Grosbach2009-03-261-1/+1
| | | | llvm-svn: 67758
* Add support to tablegen for naming the nodes themselves, not just the operands, Nate Begeman2009-03-191-1/+13
| | | | | | | in selectiondag patterns. This is required for the upcoming shuffle_vector rewrite, and as it turns out, cleans up a hack in the Alpha instruction info. llvm-svn: 67286
* give each Record a location.Chris Lattner2009-03-131-6/+6
| | | | llvm-svn: 66897
* make "locations" a class instead of a typedef.Chris Lattner2009-03-131-20/+20
| | | | llvm-svn: 66895
* implement support for C-style string literal concatenation in td files.Chris Lattner2009-03-111-2/+14
| | | | llvm-svn: 66663
* Unbreak the build on win32.Cedric Venet2009-02-141-1/+1
| | | | | | | | | | Cleanup some warning. Remark: when struct/class are declared differently than they are defined, this make problem for VC++ since it seems to mangle class differently that struct. These error are very hard to understand and find. So please, try to keep your definition/declaration in sync. Only tested with VS2008. hope it does not break anything. feel free to revert. llvm-svn: 64554
* Fun x86 encoding tricks: when adding an immediate value of 128,Dan Gohman2008-10-171-3/+3
| | | | | | | | | | | | | use a SUB instruction instead of an ADD, because -128 can be encoded in an 8-bit signed immediate field, while +128 can't be. This avoids the need for a 32-bit immediate field in this case. A similar optimization applies to 64-bit adds with 0x80000000, with the 32-bit signed immediate field. To support this, teach tablegen how to handle 64-bit constants. llvm-svn: 57663
* produce an error on invalid input instead of asserting:Chris Lattner2008-04-101-0/+5
| | | | | | | def : Pat<((v2f64 (vector_shuffle immAllZerosV_bc, ^ llvm-svn: 49462
* Fix a crash on code like: let x = 1 {xChris Lattner2008-01-101-1/+4
| | | | llvm-svn: 45827
* remove attributions from utils.Chris Lattner2007-12-291-2/+2
| | | | llvm-svn: 45419
* Add TGParser files to VStudio project files. Removed generated files ↵Chuck Rose III2007-11-261-0/+2
| | | | | | section from TableGen project file as it is no longer needed. #Include <algorithm> directly from TGParser.cpp so it can see std::reverse. llvm-svn: 44340
* resolve the last fixme's in the new tblgen parser.Chris Lattner2007-11-221-6/+4
| | | | llvm-svn: 44277
* Rewrite the tblgen parser in a recursive descent style, eliminating the ↵Chris Lattner2007-11-221-0/+1372
bison parser. This makes the parser much easier to understand, eliminates a ton of global variables, and gives tblgen nice caret diagnostics. It is also faster, but tblgen probably doesn't care about performance. There are a couple of FIXMEs which I will take care of next. llvm-svn: 44274
OpenPOWER on IntegriCloud