summaryrefslogtreecommitdiffstats
path: root/llvm/utils/TableGen/TableGen.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Added a custom TableGen backend to support theSean Callanan2010-01-291-0/+12
| | | | | | | enhanced disassembler, and the necessary makefile rules to build the table for X86. llvm-svn: 94764
* Sketch TableGen disassembler emitter, based on patch by Sean Callanan.Daniel Dunbar2009-11-251-0/+7
| | | | llvm-svn: 89833
* TableGen: Add initial backend for clang Driver's option parsing.Daniel Dunbar2009-11-181-10/+22
| | | | llvm-svn: 89245
* Make LLVM command-line tools overwrite their output files without -f.Dan Gohman2009-08-251-2/+1
| | | | | | | | | | | | | | | | This is conventional command-line tool behavior. -f now just means "enable binary output on terminals". Add a -f option to llvm-extract and llvm-link, for consistency. Remove F_Force from raw_fd_ostream and enable overwriting and truncating by default. Introduce an F_Excl flag to permit users to enable a failure when the file already exists. This flag is currently unused. Update Makefiles and documentation accordingly. llvm-svn: 79990
* Change raw_fd_ostream to take flags as an optional bitmask Chris Lattner2009-08-231-2/+2
| | | | | | | | | | | | | | | | instead of as two bools. Use this to add a F_Append flag which has the obvious behavior. Other unrelated changes conflated into this patch: 1. REmove EH stuff from llvm-dis and llvm-as, the try blocks are dead. 2. Simplify the filename inference code in llvm-as/llvm-dis, because raw_fd_ostream does the right thing with '-'. 3. Switch machine verifier to use raw_ostream instead of ostream (Which is the thing that needed append in the first place). llvm-svn: 79807
* Add a Force option to raw_fd_ostream to specify whether openingDan Gohman2009-07-151-1/+2
| | | | | | | | an existing file is considered an error. Convert several tools to use raw_fd_ostream instead of std::ostream, and to use this new option instead of doing a manual check. llvm-svn: 75801
* Stub out assembly matcher (.s -> MCInst) tblgen backend.Daniel Dunbar2009-07-111-1/+7
| | | | llvm-svn: 75378
* Add a new little "FileCheck" utility for regression testing.Chris Lattner2009-07-081-7/+7
| | | | llvm-svn: 75022
* Replace std::iostreams with raw_ostream in TableGen.Daniel Dunbar2009-07-031-14/+15
| | | | | | | | - Sorry, I can't help myself. - No intended functionality change. llvm-svn: 74742
* Normalize SourceMgr messages.Daniel Dunbar2009-06-301-1/+1
| | | | | | | | | | | | - Don't print "Parsing" in front of every message. - Take additional "type" argument which is prepended to the message (with ": ") if given. - Update clients to print errors (warnings) as: <filename>:<line number>: error(warning): ... llvm-svn: 74489
* rename SourceMgr::PrintError to PrintMessage.Chris Lattner2009-06-211-1/+1
| | | | llvm-svn: 73861
* move include searching logic from TGLexer to SourceMgr.Chris Lattner2009-06-211-3/+3
| | | | llvm-svn: 73845
* Rename TGSourceMgr -> SourceMgr.Chris Lattner2009-06-211-2/+2
| | | | llvm-svn: 73844
* rename TGLoc -> SMLoc.Chris Lattner2009-06-211-2/+2
| | | | llvm-svn: 73843
* rename -gen-clang-diags-options -> -gen-clang-diag-groupsChris Lattner2009-04-151-5/+5
| | | | llvm-svn: 69208
* Add another Clang TableGen-backend (-gen-clang-diags-options) for emittingTed Kremenek2009-03-181-0/+6
| | | | | | | | | | | | declarations for controlling groups of warnings. Currently this transforms: def UnusedMacrosDiags : Option<"unused-macros", [pp_macro_not_used]>; into: static const diag::kind UnusedMacrosDiags[] = { diag::pp_macro_not_used }; llvm-svn: 67239
* Add (hidden) TableGen command option '-clang-component' which specifies theTed Kremenek2009-03-131-1/+6
| | | | | | | | | component's warnings to process for '-gen-clang-diags-defs'. Also, when the component is specified, generate a '#if' prologue at the top of the generated .def file (to match the current files). llvm-svn: 66975
* Add initial implementation of a TableGen backend for converting Clang-warningsTed Kremenek2009-03-131-2/+7
| | | | | | | tablegen files to the original .def preprocessor include files. This is my first TableGen backend; I don't claim that it is awesome. llvm-svn: 66971
* add a new TGError class and use it to propagate location info withChris Lattner2009-03-131-19/+14
| | | | | | | | | | | | | | | | | | | | | errors when thrown. This gets us nice errors like this from tblgen: CMOVL32rr: (set GR32:i32:$dst, (X86cmov GR32:$src1, GR32:$src2)) /Users/sabre/llvm/Debug/bin/tblgen: error: Included from X86.td:116: Parsing X86InstrInfo.td:922: In CMOVL32rr: X86cmov node requires exactly 4 operands! def CMOVL32rr : I<0x4C, MRMSrcReg, // if <s, GR32 = GR32 ^ instead of just: CMOVL32rr: (set GR32:i32:$dst, (X86cmov GR32:$src1, GR32:$src2)) /Users/sabre/llvm/Debug/bin/tblgen: In CMOVL32rr: X86cmov node requires exactly 4 operands! This is all I plan to do with this, but it should be easy enough to improve if anyone cares (e.g. keeping more loc info in "dag" expr records in tblgen. llvm-svn: 66898
* give each Record a location.Chris Lattner2009-03-131-1/+10
| | | | llvm-svn: 66897
* make "locations" a class instead of a typedef.Chris Lattner2009-03-131-2/+1
| | | | llvm-svn: 66895
* split buffer management and diagnostic printing out of the tblgenChris Lattner2009-03-131-4/+11
| | | | | | lexer into its own TGSourceMgr class. llvm-svn: 66873
* Change various llvm utilities to use PrettyStackTraceProgram inChris Lattner2009-03-061-0/+3
| | | | | | | their main routines. This makes the tools print their argc/argv commands if they crash. llvm-svn: 66248
* Reapply 63765. Patches for clang and llvm-gcc to follow.Dale Johannesen2009-02-051-0/+6
| | | | llvm-svn: 63812
* Reverting 63765. This broke the build of both clangDale Johannesen2009-02-041-6/+0
| | | | | | and llvm-gcc. llvm-svn: 63786
* New feature: add support for target intrinsics being defined in theNate Begeman2009-02-041-0/+6
| | | | | | | | | target directories themselves. This also means that VMCore no longer needs to know about every target's list of intrinsics. Future work will include converting the PowerPC target to this interface as an example implementation. llvm-svn: 63765
* Make tablegen print out a nice error message for a const char*Dan Gohman2008-11-071-0/+7
| | | | | | exception, like it does for a std::string exception. llvm-svn: 58865
* Initial checkin of the new "fast" instruction selection support. SeeDan Gohman2008-08-131-0/+7
| | | | | | | the comments in FastISelEmitter.cpp for details on what this is. This is currently experimental and unusable. llvm-svn: 54751
* Naming fix: LLVMCCConfigurationEmitter -> LLVMCConfigurationEmitter.Mikhail Glushenkov2008-05-061-5/+5
| | | | llvm-svn: 50754
* Rename LLVMCCConfigurationEmitter to LLVMCConfigurationEmitterMikhail Glushenkov2008-05-061-5/+5
| | | | llvm-svn: 50748
* Change the MemoryBuffer::getFile* methods to take just a pointer to theChris Lattner2008-04-011-2/+1
| | | | | | | | start of a filename, not a filename+length. All clients can produce a null terminated name, and the system api's require null terminated strings anyway. llvm-svn: 49041
* Add first proof-of-concept universal compiler driver framework basedAnton Korobeynikov2008-03-231-1/+8
| | | | | | | | | on ideas mentioned in PR686. Written by Mikhail Glushenkov and contributed by Codedgers, Inc. Old llvmc will be removed soon after new one will have all its properties. llvm-svn: 48699
* split enum emission out from InstrInfoEmitter into it's own tblgen backend.Chris Lattner2008-01-061-1/+2
| | | | llvm-svn: 45640
* remove attributions from utils.Chris Lattner2007-12-291-2/+2
| | | | llvm-svn: 45419
* Rewrite the tblgen parser in a recursive descent style, eliminating the ↵Chris Lattner2007-11-221-6/+27
| | | | | | | | | | | | 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
* reapplyChris Lattner2007-02-271-1/+7
| | | | llvm-svn: 34697
* Backing outEvan Cheng2007-02-271-7/+1
| | | | | | | | | | CodeGenTarget.cpp updated: 1.82 -> 1.83 Record.cpp updated: 1.55 -> 1.56 Record.h updated: 1.59 -> 1.60 TableGen.cpp updated: 1.47 -> 1.48 It's missing CallingConvEmitter.h llvm-svn: 34693
* initial support for calling convention generation, still unfinished.Chris Lattner2007-02-271-1/+7
| | | | llvm-svn: 34682
* What should be the last unnecessary <iostream>s in the library.Bill Wendling2006-12-071-7/+8
| | | | llvm-svn: 32333
* remove a bunch of long-dead testing codeChris Lattner2006-03-031-331/+1
| | | | llvm-svn: 26497
* initial implementation of intrinsic parsingChris Lattner2006-03-031-0/+7
| | | | llvm-svn: 26495
* Add support for "-Ifoo" in addition to "-I foo"Chris Lattner2006-03-031-1/+1
| | | | llvm-svn: 26487
* add support for multiple include directoriesChris Lattner2006-03-031-5/+5
| | | | llvm-svn: 26485
* more standards-compliance stuffDuraid Madina2005-12-261-0/+1
| | | | llvm-svn: 25014
* Remove the obsolete instr selector emitterChris Lattner2005-10-231-7/+1
| | | | llvm-svn: 23894
* Plugin new subtarget backend into the build.Jim Laskey2005-10-211-0/+7
| | | | llvm-svn: 23870
* Add an option and stuff implementation of a dag isel emitterChris Lattner2005-09-031-0/+7
| | | | llvm-svn: 23236
* Eliminate tabs and trailing spacesJeff Cohen2005-04-221-47/+47
| | | | llvm-svn: 21441
* Remove trailing whitespaceMisha Brukman2005-04-221-12/+12
| | | | llvm-svn: 21428
* Fix usage of changed function prototypeReid Spencer2004-11-141-1/+1
| | | | llvm-svn: 17798
OpenPOWER on IntegriCloud