summaryrefslogtreecommitdiffstats
path: root/llvm/utils
Commit message (Collapse)AuthorAgeFilesLines
* Don't return false when the function's return type is a pointer.Kaelyn Uhrain2012-10-251-2/+2
| | | | llvm-svn: 166719
* Remove exception handling usage from tblgen.Joerg Sonnenberger2012-10-2526-305/+375
| | | | | | | | | | | Most places can use PrintFatalError as the unwinding mechanism was not used for anything other than printing the error. The single exception was CodeGenDAGPatterns.cpp, where intermediate errors during type resolution were ignored to simplify incremental platform development. This use is replaced by an error flag in TreePattern and bailout earlier in various places if it is set. llvm-svn: 166712
* Remove unused member & unnecessary semicolon.David Blaikie2012-10-251-3/+2
| | | | llvm-svn: 166694
* llvm/utils/TableGen/CMakeLists.txt: Update corresponding to r166685.NAKAMURA Takumi2012-10-251-0/+1
| | | | llvm-svn: 166686
* add TableGen support to create relationship maps between instructionsSebastian Pop2012-10-253-0/+612
| | | | | | | | | | | Relationship maps are represented as InstrMapping records which are parsed by TableGen and the information is used to construct mapping tables to represent appropriate relations between instructions. These tables are emitted into XXXGenInstrInfo.inc file along with the functions to query them. Patch by Jyotsna Verma <jverma@codeaurora.org>. llvm-svn: 166685
* Don't use stack unwinding to provide the location information forJoerg Sonnenberger2012-10-244-69/+77
| | | | | | SetTheory, but pass down the location explicitly. llvm-svn: 166629
* Allow the commuted form of tied-operand constraints in tablegen ("$dst = $src",Lang Hames2012-10-201-5/+6
| | | | | | rather than "$src = $dst"). llvm-svn: 166382
* lit: Rename the valgrind leaks feature to match what is currently usedDaniel Dunbar2012-10-191-1/+1
| | | | | | (vg_leak). llvm-svn: 166306
* lit: Remove support for XTARGET.Daniel Dunbar2012-10-195-28/+15
| | | | | | | | - The XTARGET feature (inherited from old DG tests) was just confusing (and barely ever used). The same effect can now be achieved with a combination of the more useful REQUIRES and XFAIL. llvm-svn: 166305
* lit: Add 'valgrind' and 'valgrind-leaks' features when valgrind is used.Daniel Dunbar2012-10-194-5/+13
| | | | | | - These can be used with the XFAIL options. llvm-svn: 166303
* lit: Propagate TERM variable in environment, some tools can do really obscureDaniel Dunbar2012-10-191-0/+1
| | | | | | odd things if this is missing. llvm-svn: 166289
* lit: Allow XFAIL: lines to also refer to "features".Daniel Dunbar2012-10-182-5/+14
| | | | llvm-svn: 166224
* Add an enum for the return and function indexes into the AttrListPtr object. ↵Bill Wendling2012-10-151-2/+2
| | | | | | This gets rid of some magic numbers. llvm-svn: 165924
* Attributes RewriteBill Wendling2012-10-151-4/+4
| | | | | | | | | | Convert the internal representation of the Attributes class into a pointer to an opaque object that's uniqued by and stored in the LLVMContext object. The Attributes class then becomes a thin wrapper around this opaque object. Eventually, the internal representation will be expanded to include attributes that represent code generation options, etc. llvm-svn: 165917
* [ms-inline asm] Use the new API introduced in r165830 in lieu of theChad Rosier2012-10-121-22/+15
| | | | | | MapAndConstraints vector. Also remove the unused Kind argument. llvm-svn: 165833
* Change (!list.size() == 0) to (!list.empty()). No functional change.Richard Trieu2012-10-121-1/+1
| | | | llvm-svn: 165812
* Remove unnecessary classof()'sSean Silva2012-10-111-2/+0
| | | | | | | isa<> et al. automatically infer when the cast is an upcast (including a self-cast), so these are no longer necessary. llvm-svn: 165767
* Remove extra semicolons.Chad Rosier2012-10-111-2/+2
| | | | llvm-svn: 165757
* tblgen: Compile TableGen without RTTI.Sean Silva2012-10-102-2/+0
| | | | | | TableGen no longer needs RTTI! llvm-svn: 165651
* tblgen: Move mini Type hierarchy to LLVM-style RTTI.Sean Silva2012-10-101-4/+22
| | | | llvm-svn: 165648
* tblgen: Use semantically correct RTTI functions.Sean Silva2012-10-109-42/+36
| | | | | | Also, some minor cleanup. llvm-svn: 165647
* tblgen: Mechanically move dynamic_cast<> to dyn_cast<>.Sean Silva2012-10-1013-98/+98
| | | | | | | | | | Some of these dyn_cast<>'s would be better phrased as isa<> or cast<>. That will happen in a future patch. There are also two dyn_cast_or_null<>'s slipped in instead of dyn_cast<>'s, since they were causing crashes with just dyn_cast<>. llvm-svn: 165646
* Pass into the AttributeWithIndex::get method an ArrayRef of attributeBill Wendling2012-10-101-35/+27
| | | | | | enums. These are then created via the correct Attributes creation method. llvm-svn: 165607
* TableGen subtarget emitter cleanup.Andrew Trick2012-10-102-29/+39
| | | | | | Consistently evaluate Aliases and Sequences recursively. llvm-svn: 165604
* misched: Generate IsBuffered flag for machine resources.Andrew Trick2012-10-101-4/+4
| | | | llvm-svn: 165602
* Move TargetData to DataLayout.Micah Villmow2012-10-081-2/+2
| | | | llvm-svn: 165403
* [ms-inline asm] Add a few typedefs to simplify future changes.Chad Rosier2012-10-051-11/+12
| | | | llvm-svn: 165324
* tblgen: Replace uses of dynamic_cast<XXXRecTy> with dyn_cast<>.Sean Silva2012-10-051-1/+1
| | | | | | | | This is a mechanical change of dynamic_cast<> to dyn_cast<>. A number of these uses are actually more like isa<> or cast<>, and will be changed to the semanticaly appropriate one in a future patch. llvm-svn: 165291
* Added instregex support to TableGen subtarget emitter.Andrew Trick2012-10-033-10/+84
| | | | | | | | This allows the processor-specific machine model to override selected base opcodes without any fanciness. e.g. InstRW<[CoreXWriteVANDP], (instregex "VANDP")>. llvm-svn: 165180
* TableGen subtarget emitter, nearly first class support for SchedAlias.Andrew Trick2012-10-033-130/+229
| | | | | | | | | A processor can now arbitrarily alias one SchedWrite onto another. Only the SchedAlias definition need be within the processor model. The aliased SchedWrite may be a SchedVariant, WriteSequence, or transitively refer to another alias. llvm-svn: 165179
* Cleanup TableGen subtarget emitter.Andrew Trick2012-10-032-6/+7
| | | | llvm-svn: 165178
* [ms-inline asm] Default to the 'm' constraint. This matches the behavior of theChad Rosier2012-10-031-3/+3
| | | | | | MSVC compiler. llvm-svn: 165174
* tblgen: Migrate llvm-tblgen to new TableGenMain API.Sean Silva2012-10-031-82/+77
| | | | llvm-svn: 165166
* Fix 80-column violations. Cleanup whitespace in generated code.Chad Rosier2012-10-021-15/+23
| | | | llvm-svn: 164983
* [ms-inline asm] Add the convertToMapAndConstraints() function that is used toChad Rosier2012-10-011-45/+38
| | | | | | | | | | | map constraints and MCInst operands to inline asm operands. This replaces the getMCInstOperandNum() function. The logic to determine the constraints are not in place, so we still default to a register constraint (i.e., "r"). Also, we no longer build the MCInst but rather return just the opcode to get the MCInstrDesc. llvm-svn: 164979
* Revert 'Fix a typo 'iff' => 'if''. iff is an abreviation of if and only if. ↵Sylvestre Ledru2012-09-2716-114/+114
| | | | | | See: http://en.wikipedia.org/wiki/If_and_only_if Commit 164767 llvm-svn: 164768
* Fix a typo 'iff' => 'if'Sylvestre Ledru2012-09-2716-114/+114
| | | | llvm-svn: 164767
* Rather then have a wrapper function, have tblgen instantiate the implementation.Chad Rosier2012-09-241-6/+6
| | | | | | Also remove an unused argument. llvm-svn: 164567
* Rather then have a wrapper function, have tblgen instantiate the implementation.Chad Rosier2012-09-241-2/+2
| | | | llvm-svn: 164548
* Machine Model (-schedmodel only). Added SchedAliases.Andrew Trick2012-09-223-87/+295
| | | | | | | Allow subtargets to tie SchedReadWrite types to processor specific sequences or variants. llvm-svn: 164451
* [ms-inline asm] Expose the mnemonicIsValid() function in the AsmParser.Chad Rosier2012-09-211-2/+2
| | | | llvm-svn: 164420
* Whitespace.Chad Rosier2012-09-211-2/+2
| | | | llvm-svn: 164406
* Clarify comment.Dmitri Gribenko2012-09-211-1/+1
| | | | llvm-svn: 164371
* Add in new data types that are used by AMDIL/ANL among others.Micah Villmow2012-09-191-0/+8
| | | | llvm-svn: 164261
* Soften the pattern-can-never-match error in TableGen into a warning. This ↵Owen Anderson2012-09-191-2/+5
| | | | | | pattern can be very useful in cases where you want to define a multiclass that covers both commutative and non-commutative operators (say, add and sub). llvm-svn: 164256
* Remove code for setting the VEX L-bit as a function of operand size from the ↵Craig Topper2012-09-192-19/+2
| | | | | | code emitters and the disassembler table builder. Fix a couple instructions that were still missing VEX_L. llvm-svn: 164204
* SchedMachineModel: compress the CPU's WriteLatencyTable.Andrew Trick2012-09-193-7/+44
| | | | llvm-svn: 164199
* Iterate deterministicaly over ClassInfo*'sSean Silva2012-09-191-2/+12
| | | | | | | | Fixes an observed instance of nondeterministic TableGen output. Review by Jakob. llvm-svn: 164191
* Iterate deterministically over register classesSean Silva2012-09-191-2/+3
| | | | | | | | Fixes an observed instance of nondeterministic TableGen output. Review by Jakob. llvm-svn: 164190
* Refactor Record* by-ID comparator to Record.hSean Silva2012-09-192-18/+9
| | | | | | | | | | | This is a generally useful utility; there's no reason to have it hidden in CodeGenDAGPatterns.cpp. Also, rename it to fit the other comparators in Record.h Review by Jakob. llvm-svn: 164189
OpenPOWER on IntegriCloud