- Feb 22, 2011
-
-
Rafael Espindola authored
Patch by Jai Menon. llvm-svn: 126165
-
- Feb 20, 2011
-
-
Oscar Fuentes authored
Requires CMake 2.8.3 or newer. llvm-svn: 126092
-
- Feb 18, 2011
-
-
Oscar Fuentes authored
llvm-svn: 125969
-
Owen Anderson authored
Add FixedLenDecoderEmitter, the skeleton of a new disassembler emitter for fixed-length instruction encodings. A major part of its (eventual) goal is to support a much cleaner separation between disassembly callbacks provided by the target and the disassembler emitter itself, i.e. not requiring hardcoding of knowledge in tblgen like the existing disassembly emitters do. The hope is that some day this will allow us to replace the existing non-Thumb ARM disassembler and remove some of the hacks the old one introduced to tblgen. llvm-svn: 125966
-
Joerg Sonnenberger authored
llvm-svn: 125792
-
- Feb 17, 2011
-
-
Alexis Hunt authored
Patch thanks to Zach Anderson. llvm-svn: 125721
-
- Feb 15, 2011
-
-
Argyrios Kyrtzidis authored
-Use the tablegen class name for the checker class name. -Mark checker packages as hidden/not hidden. llvm-svn: 125558
-
- Feb 14, 2011
-
-
Argyrios Kyrtzidis authored
llvm-svn: 125493
-
Bruno Cardoso Lopes authored
- Add custom operand matching for imod and iflags. - Rename SplitMnemonicAndCC to SplitMnemonic since it splits more than CC from mnemonic. - While adding ".w" as an operand, don't change "Head" to avoid passing the wrong mnemonic to ParseOperand. - Add asm parser tests. - Add disassembler tests just to make sure it can catch all cps versions. llvm-svn: 125489
-
- Feb 13, 2011
-
-
Argyrios Kyrtzidis authored
llvm-svn: 125452
-
- Feb 12, 2011
-
-
Jim Grosbach authored
Teach the AsmMatcher handling to distinguish between an error custom-parsing an operand and a failure to match. The former should propogate the error upwards, while the latter should continue attempting to parse with alternative matchers. Update the ARM asm parser accordingly. llvm-svn: 125426
-
- Feb 11, 2011
-
-
Jim Grosbach authored
llvm-svn: 125408
-
- Feb 10, 2011
-
-
Bill Wendling authored
llvm-svn: 125256
-
Jim Grosbach authored
When matching operands for a candidate opcode match in the auto-generated AsmMatcher, check each operand against the expected operand match class. Previously, operands were classified independently of the opcode being handled, which led to difficulties when operand match classes were more complicated than simple subclass relationships. llvm-svn: 125245
-
- Feb 07, 2011
-
-
Bruno Cardoso Lopes authored
Motivation: Improve the parsing of not usual (different from registers or immediates) operand forms. This commit implements only the generic support. The ARM specific modifications will come next. A table like the one below is autogenerated for every instruction containing a 'ParserMethod' in its AsmOperandClass static const OperandMatchEntry OperandMatchTable[20] = { /* Mnemonic, Operand List Mask, Operand Class, Features */ { "cdp", 29 /* 0, 2, 3, 4 */, MCK_Coproc, Feature_IsThumb|Feature_HasV6 }, { "cdp", 58 /* 1, 3, 4, 5 */, MCK_Coproc, Feature_IsARM }, A matcher function very similar (but lot more naive) to MatchInstructionImpl scans the table. After the mnemonic match, the features are checked and if the "to be parsed" operand index is present in the mask, there's a real match. Then, a switch like the one below dispatch the parsing to the custom method provided in 'ParseMethod': case MCK_Coproc: return TryParseCoprocessorOperandName(Operands); llvm-svn: 125030
-
- Feb 05, 2011
-
-
Daniel Dunbar authored
implicitly allows custom conversions to be member functions. llvm-svn: 124908
-
- Feb 04, 2011
-
-
Jason W Kim authored
Teach ARM/MC/ELF to handle R_ARM_JUMP24 relocation type for conditional jumps. (yes, this is different from R_ARM_CALL) - Adds a new method getARMBranchTargetOpValue() which handles the necessary distinction between the conditional and unconditional br/bl needed for ARM/ELF At least for ARM mode, the needed fixup for conditional versus unconditional br/bl is identical, but the ARM docs and existing ARM tools expect this reloc type... Added a few FIXME's for future naming fixups in ARMInstrInfo.td llvm-svn: 124895
-
Daniel Dunbar authored
custom conversion functions). llvm-svn: 124872
-
Daniel Dunbar authored
llvm-svn: 124870
-
David Greene authored
Silence uninitialized value warnings. llvm-svn: 124869
-
Jim Grosbach authored
llvm-svn: 124832
-
- Feb 03, 2011
-
-
Oscar Fuentes authored
library. Installs tblgen (required by Clang). Translates handling of user settings and platform-dependant options to its own file, where it can included by another project. Installs the .cmake files required by projects like Clang. llvm-svn: 124816
-
- Feb 02, 2011
-
-
Kevin Enderby authored
The algorithm for identifying which operand is invalid will now always point to some operand and not the mnemonic sometimes. The change is now that ErrorInfo is the index of the highest operand that does not match for any of the matching mnemonics records. And no longer the ~0U value when the mnemonic matches and not every record with a matching mnemonic has the same mismatching operand index. llvm-svn: 124734
-
- Feb 01, 2011
-
-
David Greene authored
[AVX] Implement EnforceSmallerThan for mixed int/fp type lists. This makes type checking for extract_subvector and insert_subvector more robust and will allow stricter typechecking of more patterns in the future. This change handles int and fp as disjoint sets so that it will enforce integer types to be smaller than the largest integer type and fp types to be smaller than the largest fp type. There is no attempt to check type sizes across the int/fp sets. llvm-svn: 124672
-
- Jan 28, 2011
-
-
Bob Wilson authored
llvm-svn: 124450
-
- Jan 27, 2011
-
-
Douglas Gregor authored
Clang: separate the access-control diagnostics from other diagnostics that do not have SFINAE behavior. llvm-svn: 124440
-
- Jan 26, 2011
-
-
Bob Wilson authored
Patch by Bill Wendling. llvm-svn: 124328
-
Bob Wilson authored
llvm-svn: 124324
-
Bob Wilson authored
llvm-svn: 124323
-
Bob Wilson authored
When an operand class is defined with MIOperandInfo set to a list of suboperands, the AsmMatcher has so far required that operand to also define a custom ParserMatchClass, and InstAlias patterns have not been able to set the individual suboperands separately. This patch removes both of those restrictions. If a "compound" operand does not override the default ParserMatchClass, then the AsmMatcher will now parse its suboperands separately. If an InstAlias operand has the same class as the corresponding compound operand, then it will be handled as before; but if that check fails, TableGen will now try to match up a sequence of InstAlias operands with the corresponding suboperands. llvm-svn: 124314
-
NAKAMURA Takumi authored
llvm-svn: 124271
-
NAKAMURA Takumi authored
llvm-svn: 124270
-
- Jan 25, 2011
-
-
Daniel Dunbar authored
llvm-svn: 124154
-
- Jan 24, 2011
-
-
David Greene authored
[AVX] Add type checking support for vector/subvector type constraints. This will be used to check patterns referencing a forthcoming INSERT_SUBVECTOR SDNode. INSERT_SUBVECTOR in turn is very useful for matching to VINSERTF128 instructions and complements the already existing EXTRACT_SUBVECTOR SDNode. llvm-svn: 124145
-
- Jan 22, 2011
-
-
Bill Wendling authored
llvm-svn: 124026
-
- Jan 21, 2011
-
-
Peter Collingbourne authored
This patch makes the necessary changes to TableGen to support non-inheritable attributes. llvm-svn: 123958
-
- Jan 20, 2011
-
-
Bob Wilson authored
llvm-svn: 123934
-
Bob Wilson authored
llvm-svn: 123933
-
Bob Wilson authored
llvm-svn: 123932
-
Bob Wilson authored
There should be no functional change from this, but I think it's simpler this way. llvm-svn: 123931
-