- Jul 27, 2011
-
-
Frits van Bommel authored
llvm-svn: 136215
-
Jay Foad authored
llvm-svn: 136212
-
- Jul 26, 2011
-
-
Owen Anderson authored
Split am2offset into register addend and immediate addend forms, necessary for allowing the fixed-length disassembler to distinguish between SBFX and STR_PRE. llvm-svn: 136141
-
Jim Grosbach authored
llvm-svn: 136090
-
Evan Cheng authored
Rename TargetAsmParser to MCTargetAsmParser and TargetAsmLexer to MCTargetAsmLexer; rename createAsmLexer to createMCAsmLexer and createAsmParser to createMCAsmParser. llvm-svn: 136027
-
Jim Grosbach authored
llvm-svn: 136006
-
- Jul 23, 2011
-
-
Benjamin Kramer authored
llvm-svn: 135841
-
Benjamin Kramer authored
Turn the DenseSet in MCRegisterClass into a tblgenerated bit field. This should be faster and smaller. Goodbye static ctors and dtors! llvm-svn: 135836
-
Benjamin Kramer authored
This makes TargetRegisterClass slightly slower. Next step will be making contains faster. Eventually TargetRegisterClass will be killed entirely. llvm-svn: 135835
-
Jim Grosbach authored
The immediate is in the range 1-32, but is encoded as 0-31 in a 5-bit bitfield. Update the representation such that we store the operand as 0-31, allowing us to remove the encoder method and the special case handling in the disassembler. Update the assembly parser and the instruction printer accordingly. llvm-svn: 135823
-
Benjamin Kramer authored
llvm-svn: 135816
-
- Jul 22, 2011
-
-
Benjamin Kramer authored
llvm-svn: 135768
-
Benjamin Kramer authored
- This currently introduces more instances of the static DenseSet dtor, but that should be fixable. llvm-svn: 135735
-
Owen Anderson authored
Get rid of the extraneous GPR operand on so_reg_imm operands, which in turn necessitates a lot of changes to related bits. llvm-svn: 135722
-
- Jul 21, 2011
-
-
Owen Anderson authored
Split up the ARM so_reg ComplexPattern into so_reg_reg and so_reg_imm, allowing us to distinguish the encodings that use shifted registers from those that use shifted immediates. This is necessary to allow the fixed-length decoder to distinguish things like BICS vs LDRH. llvm-svn: 135693
-
Chris Lattner authored
to for it to be an an anon namespace and be in a header. Eliminate some extraenous uses of tie. llvm-svn: 135669
-
- Jul 20, 2011
-
-
Jim Grosbach authored
Move the shift operator and special value (32 encoded as 0 for PKHTB) handling into the instruction printer. This cleans up a bit of the disassembler special casing for these instructions, more easily handles not printing the operand at all for "lsl #0" and prepares for correct asm parsing of these operands. llvm-svn: 135626
-
- Jul 19, 2011
-
-
Owen Anderson authored
llvm-svn: 135524
-
Jim Grosbach authored
Add range checking for the immediate operand and handle the "mov" mnemonic choosing between encodings based on the value of the immediate. Add tests for fixups, encoding choice and values, and diagnostic for out of range values. llvm-svn: 135500
-
Owen Anderson authored
Revamp our handling of tLDMIA[_UPD] and tSTMIA[_UPD] to avoid having multiple instructions with the same encoding. This resolves another conflict when bringing up the new-style disassembler. llvm-svn: 135442
-
- Jul 18, 2011
-
-
Evan Cheng authored
to MCRegisterInfo. Also initialize the mapping at construction time. This patch eliminate TargetRegisterInfo from TargetAsmInfo. It's another step towards fixing the layering violation. llvm-svn: 135424
-
Owen Anderson authored
Original Log: Get rid of the separate opcodes for the Darwin versions of tBL, tBLXi, and tBLXr, using pseudo-instructions to lower to the single final opcode. Update the ARM disassembler for this change. llvm-svn: 135414
-
Jakob Stoklund Olesen authored
Make all of the RecTy constructors private, and use get() factory methods instead. Return singleton instances when it makes sense. ListTy instance pointers are stored in the element RecTy instance. BitsRecTy instance pointers, one per length, are stored in a static vector. Also unique DefInit instances. A Record has a unique DefInit which has a unique RecordRecTy instance. This saves some 200k-300k RecTy allocations when parsing ARM.td. It reduces TableGen's heap usage by almost 50%. llvm-svn: 135399
-
Frits van Bommel authored
Migrate LLVM and Clang to use the new makeArrayRef(...) functions where previously explicit non-default constructors were used. Mostly mechanical with some manual reformatting. llvm-svn: 135390
-
- Jul 16, 2011
-
-
Owen Anderson authored
llvm-svn: 135343
-
Eli Friedman authored
Make the disassembler able to disassemble a bunch of instructions with names in the TableGen files containing "64" on x86-32. This includes a bunch of x87 instructions, like fld, and a bunch of SSSE3 instructions on MMX registers like pshufb. Part of PR8873. llvm-svn: 135337
-
Owen Anderson authored
Get rid of the separate opcodes for the Darwin versions of tBL, tBLXi, and tBLXr, using pseudo-instructions to lower to the single final opcode. Update the ARM disassembler for this change. llvm-svn: 135319
-
- Jul 15, 2011
-
-
Kevin Enderby authored
llvm-svn: 135287
-
NAKAMURA Takumi authored
MSVC decorates (and distinguishes) "const" in mangler. It brought linkage error between "extern const" declarations and definitions. llvm-svn: 135269
-
- Jul 14, 2011
-
-
Benjamin Kramer authored
- The actual values are from the MCOI::OperandType enum. - Teach tblgen to read it from the instruction definition. - This is a better implementation of the hacks in edis. llvm-svn: 135197
-
Evan Cheng authored
registeration and creation code into XXXMCDesc libraries. llvm-svn: 135184
-
Chris Lattner authored
conceptually have nuls in it. llvm-svn: 135165
-
Benjamin Kramer authored
llvm-svn: 135154
-
Owen Anderson authored
Add a target-indepedent entry to MCInstrDesc to describe the encoded size of an opcode. Switch ARM over to using that rather than its own special MCInstrDesc bits. llvm-svn: 135106
-
David Greene authored
Rename struct Init to class Init for consistency and in preparation for making Init a FoldingSetNode. llvm-svn: 135097
-
Jim Grosbach authored
llvm-svn: 135092
-
- Jul 13, 2011
-
-
Jim Grosbach authored
The immediate is of limited range and the operand type should reflect that. llvm-svn: 135066
-
- Jul 12, 2011
-
-
Eric Christopher authored
in multiple buildbots. llvm-svn: 134936
-
- Jul 11, 2011
-
-
David Greene authored
Respond to some feedback asking for a name change. llvm-svn: 134921
-
Evan Cheng authored
llvm-svn: 134917
-