summaryrefslogtreecommitdiffstats
path: root/llvm/utils/TableGen/AsmWriterEmitter.h
Commit message (Collapse)AuthorAgeFilesLines
* Write llvm-tblgen backends as functions instead of sub-classes.Jakob Stoklund Olesen2012-06-111-54/+0
| | | | | | | | | The TableGenBackend base class doesn't do much, and will be removed completely soon. Patch by Sean Silva! llvm-svn: 158311
* Remove getInstructionName from MCInstPrinter implementations in favor of ↵Craig Topper2012-04-021-1/+0
| | | | | | using the instruction name table from MCInstrInfo. Reduces static data in the InstPrinter implementations. llvm-svn: 153863
* Rip out emission of the regIsInRegClass function for the asm printer.Benjamin Kramer2012-03-301-1/+0
| | | | | | It's slow, bloated and completely redundant with MCRegisterClass::contains. llvm-svn: 153782
* Move TableGen's parser and entry point into a libraryPeter Collingbourne2011-10-011-1/+1
| | | | | | This is the first step towards splitting LLVM and Clang's tblgen executables. llvm-svn: 140951
* * Add classes that support the "feature" information.Bill Wendling2011-03-211-0/+1
| | | | | | * Move the code that emits the reg in reg class matching into its own function. llvm-svn: 127988
* A new TableGen feature! (Not turned on just yet.)Bill Wendling2011-02-261-0/+1
| | | | | | | | | | | | | | | | | | | | InstAlias<{alias}, {aliasee}>; The InstAlias instruction should be able to go from the MCInst to the {alias}. All of the information is there to match the MCInst with the {aliasee}. From there, it's a simple matter to emit the {alias}, with the correct operands from the {aliasee}. The code this patch generates can be used by the InstPrinter to automatically print out the alias without having to write special C++ code to handle the situation. This is a WIP, and therefore are several limitations. For instance, it cannot handle AsmOperands at the moment. It also doesn't know what to do when two {alias}es match the same {aliasee}. (Currently, it just ignores those two cases and allows the printInstruction method to handle them.) llvm-svn: 126538
* enhance llvm-mc -show-inst to print the enum of an instruction, like so:Chris Lattner2010-02-111-0/+1
| | | | | | | | | | testb %al, %al ## <MCInst #2412 TEST8rr ## <MCOperand Reg:2> ## <MCOperand Reg:2>> jne LBB1_7 ## <MCInst #938 JNE_1 ## <MCOperand Expr:(LBB1_7)>> llvm-svn: 95935
* make tblgen produce a function that returns the name for a physreg.Chris Lattner2009-09-131-0/+3
| | | | | | Nothing is using this info yet. llvm-svn: 81707
* Replace std::iostreams with raw_ostream in TableGen.Daniel Dunbar2009-07-031-1/+1
| | | | | | | | - Sorry, I can't help myself. - No intended functionality change. llvm-svn: 74742
* remove attributions from utils.Chris Lattner2007-12-291-2/+2
| | | | llvm-svn: 45419
* Maximally group commands. When all instructions within a command set have aChris Lattner2006-07-181-1/+2
| | | | | | | series of identical commands, handle them all with one switch. In the case of the x86 at&t asm printer, only 3 switches are needed for all instructions. llvm-svn: 29184
* Change generator to remove operands as it processes them. No change inChris Lattner2006-07-181-2/+1
| | | | | | generated file. llvm-svn: 29183
* Completely change the structure of the generated asmprinter to be more tableChris Lattner2006-07-181-1/+20
| | | | | | | | | based and less switch-statements-with-hundreds-of-cases based. This shrinks the x86 asmprinters to about 1/3 their previous size. Other improvements coming. llvm-svn: 29177
* Remove trailing whitespaceMisha Brukman2005-04-221-3/+3
| | | | llvm-svn: 21428
* Initial cut at an asm writer emitter. So far, this only handles emission ofChris Lattner2004-08-011-0/+31
instructions, and only instructions that take no operands at that! llvm-svn: 15386
OpenPOWER on IntegriCloud