7c788888872233748da10a8177a9a1eb176c1bc8 |
|
01-Oct-2011 |
Peter Collingbourne <peter@pcc.me.uk> |
Move TableGen's parser and entry point into a library This is the first step towards splitting LLVM and Clang's tblgen executables. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@140951 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
29f018cee616e4082e5005bc9adee4dc777e621c |
|
30-Sep-2011 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Switch to ArrayRef<CodeGenRegisterClass*>. This makes it possible to allocate CodeGenRegisterClass instances dynamically and reorder them. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@140816 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
bea6f615eefae279e53bbb63a31d2c3c67274c45 |
|
27-Jun-2011 |
Owen Anderson <resistor@mac.com> |
Add support for alternative register names, useful for instructions whose operands are logically equivalent to existing registers, but happen to be printed specially. For example, an instruciton that prints d0[0] instead of s0. Patch by Jim Grosbach. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133940 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
abdbc84b4ed4276ed3def50f554e3ba156325717 |
|
18-Jun-2011 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Store CodeGenRegisters as pointers so they won't be reallocated. Reuse the CodeGenRegBank DenseMap in a few places that would build their own or use linear search. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133333 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
7b9cafde5e3faec22bbfbbc90cca0876968abad9 |
|
15-Jun-2011 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Move the list of register classes into CodeGenRegBank as well. No functional change intended. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133029 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
b5923db192d2aa938ff3c12aaac87d80ab649625 |
|
11-Jun-2011 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Move the list of registers into CodeGenRegBank. Also move the sub-register index computations from RegisterInfoEmitter into CodeGenRegBank. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132865 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
dc29c447136aabf05f48a7119e48065c3b4cee9b |
|
10-Jun-2011 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Move some sub-register index calculations to CodeGenRegisters.cpp Create a new CodeGenRegBank class that will eventually hold all the code that computes the register structure from Records. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132849 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
123cab9480812e51f6d4cb118fe685691130f625 |
|
07-May-2011 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Teach TableGen to automatically generate missing SubRegIndex instances. The RegisterInfo.td file should only specify the indexes that sources need to refer to. The rest is inferred. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131058 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
510207cb1e7427df711ac85002cab622f67bdf7c |
|
11-Mar-2011 |
Jim Grosbach <grosbach@apple.com> |
Trailing whitespace. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127447 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
036609bd7d42ed1f57865969e059eb7d1eb6c392 |
|
23-Dec-2010 |
Chris Lattner <sabre@nondot.org> |
Flag -> Glue, the ongoing saga git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122513 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
67db883487fca3472fdde51e931657e22d4d0495 |
|
13-Dec-2010 |
Chris Lattner <sabre@nondot.org> |
eliminate the Records global variable, patch by Garrison Venn! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121659 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
ec6f096c36f4144ff9b3b24c2939720cdcbb7bcc |
|
02-Nov-2010 |
Chris Lattner <sabre@nondot.org> |
a bunch of random cleanup, move a helper to CGT where it belongs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118031 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
52a261b3c1391c5fec399ddeb3fc6ee9541e8790 |
|
21-Sep-2010 |
Chris Lattner <sabre@nondot.org> |
fix a long standing wart: all the ComplexPattern's were being passed the root of the match, even though only a few patterns actually needed this (one in X86, several in ARM [which should be refactored anyway], and some in CellSPU that I don't feel like detangling). Instead of requiring all ComplexPatterns to take the dead root, have targets opt into getting the root by putting SDNPWantRoot on the ComplexPattern. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114471 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
48d0c163fb60f7da7ef3657df242bf11dbdb0617 |
|
25-May-2010 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Ignore NumberHack and give each SubRegIndex instance a unique enum value instead. This passes lit tests, but I'll give it a go through the buildbots to smoke out any remaining places that depend on the old SubRegIndex numbering. Then I'll remove NumberHack entirely. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@104615 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
09bc0298650c76db1a06e20ca84c1dcb34071600 |
|
24-May-2010 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Replace the tablegen RegisterClass field SubRegClassList with an alist-like data structure that represents a mapping without any dependencies on SubRegIndex numbering. This brings us closer to being able to remove the explicit SubRegIndex numbering, and it is now possible to specify any mapping without inventing *_INVALID register classes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@104563 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
e8cabf3c2eb835f9189a39c810654d9bd302f7ee |
|
19-Mar-2010 |
Chris Lattner <sabre@nondot.org> |
add a new SDNPVariadic SDNP node flag, and use it in dag isel gen instead of instruction properties. This allows the oh-so-useful behavior of matching a variadic non-root node. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98934 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
e14d2e210dc7fe28009f44818a057622a73322e4 |
|
19-Mar-2010 |
Chris Lattner <sabre@nondot.org> |
Finally change the instruction looking map to be a densemap from record* -> instrinfo instead of std::string -> instrinfo. This speeds up tblgen on cellcpu from 7.28 -> 5.98s with a debug build (20%). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98916 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
6a91b18e5777f39e52e93221453abfa4553b6f93 |
|
19-Mar-2010 |
Chris Lattner <sabre@nondot.org> |
make inst_begin/inst_end iterate over InstructionsByEnumValue. Use CodeGenTarget::getInstNamespace in one place and fix it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98915 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
01dcecc214918b29cf3712420457fef309eeaad6 |
|
19-Mar-2010 |
Chris Lattner <sabre@nondot.org> |
revert 98912 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98914 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
a28bc686fa4f2375237aeab58530126462ae9b41 |
|
19-Mar-2010 |
Chris Lattner <sabre@nondot.org> |
make inst_begin/inst_end iterate over InstructionsByEnumValue. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98912 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
f65027842e82027dd6e8020586a299aaa548e355 |
|
19-Mar-2010 |
Chris Lattner <sabre@nondot.org> |
change Target.getInstructionsByEnumValue to return a reference to a vector that CGT stores instead of synthesizing it on every call. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98910 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
b61e09de6d0cd7241ddc6dee3efef416552eec3b |
|
19-Mar-2010 |
Chris Lattner <sabre@nondot.org> |
don't go through getInstructions(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98906 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
f30187a36324fb75042d9ffd20c3fb70aff7763d |
|
19-Mar-2010 |
Chris Lattner <sabre@nondot.org> |
look up instructions by record, not by name. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98904 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
2cacec55f947c716b058a39038889550d7e39b3c |
|
15-Mar-2010 |
Chris Lattner <sabre@nondot.org> |
Completely rewrite tblgen's type inference mechanism, changing the primary datastructure from being a "std::vector<unsigned char>" to being a new TypeSet class that actually has (gasp) invariants! This changes more things than I remember, but one major innovation here is that it enforces that named input values agree in type with their output values. This also eliminates code that transparently assumes (in some cases) that SDNodeXForm input/output types are the same, because this is wrong in many case. This also eliminates a bug which caused a lot of ambiguous patterns to go undetected, where a register class would sometimes pick the first possible type, causing an ambiguous pattern to get arbitrary results. With all the recent target changes, this causes no functionality change! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98534 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
537ab90d8de19b9f9cd758188947bde2edfd0358 |
|
04-Jan-2010 |
Dan Gohman <gohman@apple.com> |
Remove the CPAttrParentAsRoot code, which is unused, and inconvenient for a refactoring I'm working on. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92503 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
c128b3e74eaba34a8f6d2b8c3dc19861b9cbd901 |
|
06-Nov-2009 |
Chris Lattner <sabre@nondot.org> |
clang++ points out that this is pointless. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86239 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
825b72b0571821bf2d378749f69d6c4cfb52d2f9 |
|
11-Aug-2009 |
Owen Anderson <resistor@mac.com> |
Split EVT into MVT and EVT, the former representing _just_ a primitive type, while the latter is capable of representing either a primitive or an extended type. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78713 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
e50ed30282bb5b4a9ed952580523f2dda16215ac |
|
11-Aug-2009 |
Owen Anderson <resistor@mac.com> |
Rename MVT to EVT, in preparation for splitting SimpleValueType out into its own struct type. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78610 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
0e2771f4c4a6e1ffc664eb23487087f824340255 |
|
29-Jul-2009 |
Daniel Dunbar <daniel@zuster.org> |
Match X86 register names to number. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77404 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
1a55180238dbcf11113f610aea010447e51f595b |
|
03-Jul-2009 |
Daniel Dunbar <daniel@zuster.org> |
Replace std::iostreams with raw_ostream in TableGen. - Sorry, I can't help myself. - No intended functionality change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74742 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
874ae251c317788391f9c3f113957802d390a063 |
|
02-Jun-2009 |
Dale Johannesen <dalej@apple.com> |
Revert 72707 and 72709, for the moment. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72712 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
4150d83abe90a5da4ddf86433b7bf4329acfa57c |
|
02-Jun-2009 |
Dale Johannesen <dalej@apple.com> |
Make the implicit inputs and outputs of target-independent ADDC/ADDE use MVT::i1 (later, whatever it gets legalized to) instead of MVT::Flag. Remove CARRY_FALSE in favor of 0; adjust all target-independent code to use this format. Most targets will still produce a Flag-setting target-dependent version when selection is done. X86 is converted to use i32 instead, which means TableGen needs to produce different code in xxxGenDAGISel.inc. This keys off the new supportsHasI1 bit in xxxInstrInfo, currently set only for X86; in principle this is temporary and should go away when all other targets have been converted. All relevant X86 instruction patterns are modified to represent setting and using EFLAGS explicitly. The same can be done on other targets. The immediate behavior change is that an ADC/ADD pair are no longer tightly coupled in the X86 scheduler; they can be separated by instructions that don't clobber the flags (MOV). I will soon add some peephole optimizations based on using other instructions that set the flags to feed into ADC. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72707 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
8a17870da491b9598418fce180857515208b7393 |
|
13-Apr-2009 |
Dan Gohman <gohman@apple.com> |
Generalize getRegisterClassForRegister to handle registers in multiple classes in the case that the classes are all in subset/superset relations. This function is used by the fast-isel emitter, which always wants the super-most set. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68957 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
1e0ee4bc38e9cdc7e7ac49968527e2c05f927904 |
|
20-Aug-2008 |
Dan Gohman <gohman@apple.com> |
Factor the code for determining the target-specific instruction namespace out of the isel emitters and into common code. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55079 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
28873106309db515d58889a4c4fa3e0a92d1b60e |
|
25-Jun-2008 |
Mon P Wang <wangmp@apple.com> |
Added MemOperands to Atomic operations since Atomics touches memory. Added abstract class MemSDNode for any Node that have an associated MemOperand Changed atomic.lcs => atomic.cmp.swap, atomic.las => atomic.load.add, and atomic.lss => atomic.load.sub git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52706 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
83ec4b6711980242ef3c55a4fa36b2d7a39c1bfb |
|
06-Jun-2008 |
Duncan Sands <baldrick@free.fr> |
Wrap MVT::ValueType in a struct to get type safety and better control the abstraction. Rename the type to MVT. To update out-of-tree patches, the main thing to do is to rename MVT::ValueType to MVT, and rewrite expressions like MVT::getSizeInBits(VT) in the form VT.getSizeInBits(). Use VT.getSimpleVT() to extract a MVT::SimpleValueType for use in switch statements (you will get an assert failure if VT is an extended value type - these shouldn't exist after type legalization). This results in a small speedup of codegen and no new testsuite failures (x86-64 linux). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52044 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
ee4fa1977dd3a495a8857eef924ee5961db765c6 |
|
03-Apr-2008 |
Dan Gohman <gohman@apple.com> |
Move instruction flag inference out of InstrInfoEmitter and into CodeGenDAGPatterns, where it can be used in other tablegen backends. This allows the inference to be done for DAGISelEmitter so that it gets accurate mayLoad/mayStore/isSimpleLoad flags. This brings MemOperand functionality back to where it was before 48329. However, it doesn't solve the problem of anonymous patterns which expand to code that does loads or stores. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49123 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
8535624739e55ab7424eadf792e1a3b4123421c7 |
|
31-Jan-2008 |
Christopher Lamb <christopher.lamb@gmail.com> |
Allow ComplexExpressions in InstrInfo.td files to be slightly more... complex! ComplexExpressions can now have attributes which affect how TableGen interprets the pattern when generating matchin code. The first (and currently, only) attribute causes the immediate parent node of the ComplexPattern operand to be passed into the matching code rather than the node at the root of the entire DAG containing the pattern. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46606 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
bc0b9f70ae072d695e0eb7ceb729b3306b0679fe |
|
10-Jan-2008 |
Chris Lattner <sabre@nondot.org> |
start inferring 'no side effects'. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45822 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
710e995889c71812743f3f33861c24273f4569a7 |
|
10-Jan-2008 |
Chris Lattner <sabre@nondot.org> |
realize that instructions who match intrinsics that read memory read memory. Also, instructions with any nodes that are SDNPMayLoad also read memory. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45817 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
c8478d8b12c2d7e4cea32d0c9940f5cac2baa4dd |
|
06-Jan-2008 |
Chris Lattner <sabre@nondot.org> |
Change the 'isStore' inferrer to look for 'SDNPMayStore' instead of "ISD::STORE". This allows us to mark target-specific dag nodes as storing (such as ppc byteswap stores). This allows us to remove more explicit isStore flags from the .td files. Finally, add a warning for when a .td file contains an explicit isStore and tblgen is able to infer it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45654 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
6cefb77a7073057fecd721ae141140d75ce76512 |
|
05-Jan-2008 |
Chris Lattner <sabre@nondot.org> |
change getQualifiedName to be a global function. Split the pattern parsing code out from the dag isel emitter into it's own file. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45632 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
3060910e290949a9ac5eda8726d030790c4d60ff |
|
29-Dec-2007 |
Chris Lattner <sabre@nondot.org> |
remove attributions from utils. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45419 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
3bf6e183d5f116adc8adbf6853da5f479f22139c |
|
13-Jul-2007 |
Dan Gohman <gohman@apple.com> |
Eliminate an unused parameter. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39828 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
b9daee9ece898ff5bf8cf354fe2286ad44a357e8 |
|
04-Jun-2007 |
Dan Gohman <gohman@apple.com> |
Remove the operator<< for MVT::ValueType in preparation for MVT::ValueType being changed from an enum to an integer type, which can't have a custom operator<< overload. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37412 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
94b3040fef9475c74b877fb32cb45200cea273bb |
|
11-Oct-2006 |
Evan Cheng <evan.cheng@apple.com> |
Added properties such as SDNPHasChain to ComplexPattern. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30890 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
764811f1452808ff8a6d84f4ec2637355356e22e |
|
18-May-2006 |
Evan Cheng <evan.cheng@apple.com> |
Don't generate getCalleeSaveReg and getCalleeSaveRegClasses anymore. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28376 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
2618d07765e94ca12c68c9db31e7843cc69d7178 |
|
17-May-2006 |
Evan Cheng <evan.cheng@apple.com> |
Remove PointerType from target definition. Use abstract type MVT::iPTR to represent pointer type. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28363 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
44a65fa552ed61cf9dba8f68f59b05e5137e6b01 |
|
16-May-2006 |
Evan Cheng <evan.cheng@apple.com> |
Allow patterns to refer to physical registers that belong to multiple register classes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28323 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
8850a1bcef0c2a785f918395fe0a05054914b349 |
|
28-Mar-2006 |
Chris Lattner <sabre@nondot.org> |
Add support for decoding iPTR to the right pointer type. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27188 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
aa77d77a431ec5d2946df2bee33fe2023ca508d6 |
|
27-Jan-2006 |
Chris Lattner <sabre@nondot.org> |
PHI and INLINEASM are now builtin instructions provided by Target.td git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25673 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
3aa39f439a0971a2502b2c728a8006becaf96601 |
|
08-Dec-2005 |
Evan Cheng <evan.cheng@apple.com> |
* Added an explicit type field to ComplexPattern. * Renamed MatchingNodes to RootNodes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24636 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
0fc71988900e600f3ef5b13d9682e2bbab92811d |
|
08-Dec-2005 |
Evan Cheng <evan.cheng@apple.com> |
Added support for ComplexPattern. These are patterns that require C++ pattern matching code that is not currently auto-generated by tblgen, e.g. X86 addressing mode. Selection routines for complex patterns can return multiple operands, e.g. X86 addressing mode returns 4. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24634 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
5c4736a3da04795ba8d04e152e151afd6942e2f1 |
|
05-Dec-2005 |
Chris Lattner <sabre@nondot.org> |
Add some methods git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24596 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
ddb395463c08b39090bbee4ed22433f5990a6331 |
|
01-Dec-2005 |
Nate Begeman <natebegeman@mac.com> |
Stop checking the ValueType of the CodeGenInstruction. Instead, use the ValueType from the RegisterClass or Operands. This step is necessary to allow RegisterClasses to have multiple ValueTypes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24555 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
a974b20cae7691361f2be5b27fbc1658855ed96c |
|
14-Sep-2005 |
Chris Lattner <sabre@nondot.org> |
add an accessor git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23349 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
e9f4ba8dd47de9da2a98db3bbe25b54d5a9607f1 |
|
08-Sep-2005 |
Chris Lattner <sabre@nondot.org> |
Compute the value types that are natively supported by a target. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23282 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
3da94aec4d429b2ba0f65fa040c33650cade196b |
|
22-Apr-2005 |
Misha Brukman <brukman+llvm@gmail.com> |
Remove trailing whitespace git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21428 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
d6488671736d0a5aaee1218748b94d8c68f33716 |
|
22-Jan-2005 |
Chris Lattner <sabre@nondot.org> |
Refactor code for numbering instructions into CodeGenTarget. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19758 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
1fca5ff62bb2ecb5bfc8974f4dbfc56e9d3ca721 |
|
27-Oct-2004 |
Chris Lattner <sabre@nondot.org> |
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
/external/llvm/utils/TableGen/CodeGenTarget.h
|
35e83cc970e2ed99c8087e0c6b99f8a3618c279b |
|
14-Oct-2004 |
Misha Brukman <brukman+llvm@gmail.com> |
* Add option to read isLittleEndianEncoding for InstrInfo classes * Doxygen-ify some function comments git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16974 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
056afeface2ac98664ed8fa4799b46178a4a6fe3 |
|
21-Aug-2004 |
Chris Lattner <sabre@nondot.org> |
Start parsing register classes into a more structured form git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15961 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
26693113201f4c9d441678e50d96f38d3288798e |
|
16-Aug-2004 |
Chris Lattner <sabre@nondot.org> |
Use CodeGenRegister class to make reading in of register information more systematic. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15805 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
175580c0f36b026daf9de0adabdb7ddcf7619db6 |
|
15-Aug-2004 |
Chris Lattner <sabre@nondot.org> |
Make the AsmWriter a first-class tblgen object. Allow targets to specify name of the generated asmwriter class, and the name of the format string. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15747 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
87c5905e0b6f551e21c9a96f1b6418920d908210 |
|
01-Aug-2004 |
Chris Lattner <sabre@nondot.org> |
Parse the operand list of the instruction. We currently support register and immediate operands. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15390 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
ec3524064c57fbc2c5976ca301bbaadc94006d07 |
|
01-Aug-2004 |
Chris Lattner <sabre@nondot.org> |
Add, and start using, the CodeGenInstruction class. This class represents an instance of the Instruction tablegen class. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15385 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
803a5f6ecb1823280f80e3c4459aa58627d0484c |
|
01-Aug-2004 |
Chris Lattner <sabre@nondot.org> |
Rename CodeGenWrappers.(cpp|h) -> CodeGenTarget.(cpp|h) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15382 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
d0fde30ce850b78371fd1386338350591f9ff494 |
|
11-Nov-2003 |
Brian Gaeke <gaeke@uiuc.edu> |
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
/external/llvm/utils/TableGen/CodeGenTarget.h
|
01d45827a1e512f3b19ba857772bf02baa3c0c4e |
|
20-Oct-2003 |
John Criswell <criswell@uiuc.edu> |
Added LLVM copyright header. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9305 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
6ad90765541c688d955437548bf6cc3799f6c7af |
|
14-Aug-2003 |
Misha Brukman <brukman+llvm@gmail.com> |
Using std::string requires `#include <string>', says gcc-2.95.3. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7833 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
b72fb7ef75862269879ecaaf8e31c5d9a6bb56e5 |
|
10-Aug-2003 |
Chris Lattner <sabre@nondot.org> |
Add new function git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7706 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
d3464c19a8b6acecd8a9618489ec7612505fd4bd |
|
08-Aug-2003 |
Chris Lattner <sabre@nondot.org> |
Add new method to get a value type as a string git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7698 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
54c66feed926f6cdaf544895f78b5bb1ead6f0ea |
|
07-Aug-2003 |
Chris Lattner <sabre@nondot.org> |
Allow clients to get at the pointer type git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7670 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|
45872079672a4fb500fdcb9c77b23e3e550c8f97 |
|
07-Aug-2003 |
Chris Lattner <sabre@nondot.org> |
Initial checkin of useful wrappers around the Target classes, for now, only ValueType and Target are wrapped git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7665 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/utils/TableGen/CodeGenTarget.h
|