Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | Change ARMInstPrinter::printPredicateOperand() so it will not abort if it | Kevin Enderby | 2012-03-01 | 1 | -1/+4 | |
| | | | | | | runs into the undefined 15 condition code value. llvm-svn: 151844 | |||||
* | Remove dead code. Improve llvm_unreachable text. Simplify some control flow. | Ahmed Charles | 2012-02-19 | 1 | -1/+0 | |
| | | | | llvm-svn: 150918 | |||||
* | Emacs-tag and some comment fix for all ARM, CellSPU, Hexagon, MBlaze, ↵ | Jia Liu | 2012-02-18 | 1 | -1/+1 | |
| | | | | | | MSP430, PPC, PTX, Sparc, X86, XCore. llvm-svn: 150878 | |||||
* | Convert assert(0) to llvm_unreachable | Craig Topper | 2012-02-07 | 1 | -2/+2 | |
| | | | | llvm-svn: 149961 | |||||
* | NEON VLD4(all lanes) assembly parsing and encoding. | Jim Grosbach | 2012-01-25 | 2 | -1/+29 | |
| | | | | llvm-svn: 148884 | |||||
* | NEON VLD3(all lanes) assembly parsing and encoding. | Jim Grosbach | 2012-01-24 | 2 | -0/+26 | |
| | | | | llvm-svn: 148882 | |||||
* | NEON VLD4(multiple 4 element structures) assembly parsing. | Jim Grosbach | 2012-01-24 | 2 | -0/+14 | |
| | | | | llvm-svn: 148762 | |||||
* | NEON VLD3(multiple 3-element structures) assembly parsing. | Jim Grosbach | 2012-01-23 | 2 | -0/+12 | |
| | | | | llvm-svn: 148745 | |||||
* | ARM VFP assembly parsing and encoding for VCVT(float <--> fixed point). | Jim Grosbach | 2011-12-22 | 2 | -0/+12 | |
| | | | | | | rdar://10558523 llvm-svn: 147189 | |||||
* | ARM NEON VLD2 assembly parsing for structure to all lanes, non-writeback. | Jim Grosbach | 2011-12-21 | 2 | -0/+12 | |
| | | | | llvm-svn: 147025 | |||||
* | ARM assembly parsing and encoding support for LDRD(label). | Jim Grosbach | 2011-12-19 | 1 | -0/+11 | |
| | | | | | | rdar://9932658 llvm-svn: 146921 | |||||
* | ARM NEON VST2 assembly parsing and encoding. | Jim Grosbach | 2011-12-14 | 2 | -0/+12 | |
| | | | | | | | | Work in progress. Parsing for non-writeback, single spaced register lists works now. The rest have the representations better factored, but still need more to be able to parse properly. llvm-svn: 146579 | |||||
* | LLVMBuild: Remove trailing newline, which irked me. | Daniel Dunbar | 2011-12-12 | 1 | -1/+0 | |
| | | | | llvm-svn: 146409 | |||||
* | ARM parsing for VLD1 two register all lanes, no writeback. | Jim Grosbach | 2011-11-30 | 2 | -0/+11 | |
| | | | | llvm-svn: 145504 | |||||
* | ARM parsing aliases for VLD1 single register all lanes. | Jim Grosbach | 2011-11-30 | 2 | -0/+9 | |
| | | | | llvm-svn: 145464 | |||||
* | build/CMake: Finish removal of add_llvm_library_dependencies. | Daniel Dunbar | 2011-11-29 | 1 | -5/+0 | |
| | | | | llvm-svn: 145420 | |||||
* | Simplify some uses of utohexstr. | Benjamin Kramer | 2011-11-07 | 1 | -2/+2 | |
| | | | | | | As a side effect hex is printed lowercase instead of uppercase now. llvm-svn: 144013 | |||||
* | build: Add initial cut at LLVMBuild.txt files. | Daniel Dunbar | 2011-11-03 | 1 | -0/+24 | |
| | | | | llvm-svn: 143634 | |||||
* | Fix the issue that r143552 was trying to address the _right_ way. ↵ | Owen Anderson | 2011-11-02 | 1 | -2/+6 | |
| | | | | | | One-register lists are legal on LDM/STM instructions, but we should not print the PUSH/POP aliases when they appear. This fixes round tripping on this instruction. llvm-svn: 143557 | |||||
* | Assembly parsing for 4-register variant of VLD1. | Jim Grosbach | 2011-10-21 | 2 | -0/+12 | |
| | | | | llvm-svn: 142682 | |||||
* | Assembly parsing for 3-register variant of VLD1. | Jim Grosbach | 2011-10-21 | 2 | -0/+11 | |
| | | | | llvm-svn: 142675 | |||||
* | ARM VLD parsing and encoding. | Jim Grosbach | 2011-10-21 | 2 | -0/+10 | |
| | | | | | | | | | | | | Next step in the ongoing saga of NEON load/store assmebly parsing. Handle VLD1 instructions that take a two-register register list. Adjust the instruction definitions to only have the single encoded register as an operand. The super-register from the pseudo is kept as an implicit def, so passes which come after pseudo-expansion still know that the instruction defines the other subregs. llvm-svn: 142670 | |||||
* | whitespace. | Jim Grosbach | 2011-10-21 | 1 | -1/+1 | |
| | | | | llvm-svn: 142657 | |||||
* | ARM VTBL (one register) assembly parsing and encoding. | Jim Grosbach | 2011-10-18 | 2 | -0/+6 | |
| | | | | llvm-svn: 142441 | |||||
* | ARM parsing and encoding for the <option> form of LDC/STC instructions. | Jim Grosbach | 2011-10-12 | 2 | -0/+6 | |
| | | | | llvm-svn: 141786 | |||||
* | 80 columns. | Jim Grosbach | 2011-10-12 | 1 | -2/+1 | |
| | | | | llvm-svn: 141781 | |||||
* | Tidy up. Formatting. | Jim Grosbach | 2011-10-12 | 1 | -2/+2 | |
| | | | | llvm-svn: 141780 | |||||
* | ARM NEON assembly parsing and encoding for VDUP(scalar). | Jim Grosbach | 2011-10-07 | 2 | -0/+6 | |
| | | | | llvm-svn: 141446 | |||||
* | Support a valid, but not very useful, encoding of CPSIE where none of the ↵ | Owen Anderson | 2011-10-05 | 1 | -0/+3 | |
| | | | | | | AIF bits are set. llvm-svn: 141190 | |||||
* | Adding back support for printing operands symbolically to ARM's new disassembler | Kevin Enderby | 2011-10-04 | 1 | -1/+12 | |
| | | | | | | | | | | | | | | | | | | | using llvm's public 'C' disassembler API now including annotations. Hooked this up to Darwin's otool(1) so it can again print things like branch targets for example this: blx _puts instead of this: blx #-36 and includes support for annotations for branches to symbol stubs like: bl 0x40 @ symbol stub for: _puts and annotations for pc relative loads like this: ldr r3, #8 @ literal pool for: Hello, world! Also again can print the expression encoded in the Mach-O relocation entries for things like this: movt r0, :upper16:((_foo-_bar)+1234) llvm-svn: 141129 | |||||
* | ARM fix encoding of VMOV.f32 and VMOV.f64 immediates. | Jim Grosbach | 2011-09-30 | 2 | -34/+4 | |
| | | | | | | | | | | | Encode the immediate into its 8-bit form as part of isel rather than later, which simplifies things for mapping the encoding bits, allows the removal of the custom disassembler decoding hook, makes the operand printer trivial, and prepares things more cleanly for handling these in the asm parser. rdar://10211428 llvm-svn: 140834 | |||||
* | Check in a patch that has already been code reviewed by Owen that I'd ↵ | James Molloy | 2011-09-28 | 1 | -0/+20 | |
| | | | | | | | | | | | | forgotten to commit. Build on previous patches to successfully distinguish between an M-series and A/R-series MSR and MRS instruction. These take different mask names and have a *slightly* different opcode format. Add decoder and disassembler tests. Improvement on the previous patch - successfully distinguish between valid v6m and v7m masks (one is a subset of the other). The patch had to be edited slightly to apply to ToT. llvm-svn: 140696 | |||||
* | Post-index loads/stores in still need to print the post-indexed immediate, ↵ | Owen Anderson | 2011-09-23 | 1 | -3/+3 | |
| | | | | | | even if it's zero, to distinguish them from non-post-indexed instructions. llvm-svn: 140420 | |||||
* | Turns out that Thumb2 ADR doesn't need special printing like LDR does. Fix ↵ | Owen Anderson | 2011-09-21 | 2 | -13/+0 | |
| | | | | | | other test failures I caused. llvm-svn: 140284 | |||||
* | Print out immediate offset versions of PC-relative load/store instructions ↵ | Owen Anderson | 2011-09-21 | 2 | -0/+25 | |
| | | | | | | as [pc, #123] rather than simply #123. llvm-svn: 140283 | |||||
* | These do not need to be conditional on the presence of CommentStream, as ↵ | Owen Anderson | 2011-09-21 | 1 | -12/+12 | |
| | | | | | | they have a fallback path now. llvm-svn: 140267 | |||||
* | In the disassembler C API, be careful not to confuse the comment streamer ↵ | Owen Anderson | 2011-09-21 | 1 | -12/+12 | |
| | | | | | | that the disassembler outputs annotations on with the streamer that the InstPrinter will print them on. llvm-svn: 140217 | |||||
* | Thumb2 assembly parsing and encoding for TBB/TBH. | Jim Grosbach | 2011-09-19 | 2 | -0/+18 | |
| | | | | llvm-svn: 140078 | |||||
* | Fix disassembly of Thumb2 LDRSH with a #-0 offset. | Owen Anderson | 2011-09-16 | 1 | -1/+3 | |
| | | | | llvm-svn: 139943 | |||||
* | Don't attach annotations to MCInst's. Instead, have the disassembler ↵ | Owen Anderson | 2011-09-15 | 2 | -17/+15 | |
| | | | | | | return, and the printer accept, an annotation string which can be passed through if the client cares about annotations. llvm-svn: 139876 | |||||
* | Add support for stored annotations to MCInst, and provide facilities for ↵ | Owen Anderson | 2011-09-15 | 1 | -1/+17 | |
| | | | | | | MC-based InstPrinters to print them out. Enhance the ARM and X86 InstPrinter's to do so in verbose mode. llvm-svn: 139820 | |||||
* | Correct disassembly printing of Thumb2 post-incremented LDRD and STRD. | Owen Anderson | 2011-09-13 | 1 | -4/+7 | |
| | | | | llvm-svn: 139639 | |||||
* | Thumb2 assembly parsing and encoding for LDREX/LDREXB/LDREXD/LDREXH. | Jim Grosbach | 2011-09-09 | 2 | -0/+14 | |
| | | | | llvm-svn: 139381 | |||||
* | Refactor instprinter and mcdisassembler to take a SubtargetInfo. Add -mattr= ↵ | James Molloy | 2011-09-07 | 2 | -2/+10 | |
| | | | | | | handling to llvm-mc. Reviewed by Owen Anderson. llvm-svn: 139237 | |||||
* | Improve handling of #-0 offsets for many more pre-indexed addressing modes. | Owen Anderson | 2011-08-29 | 1 | -1/+3 | |
| | | | | llvm-svn: 138754 | |||||
* | When printing Thumb1 NOP ('mov r8, r8'), make sure to print the predicate. | Jim Grosbach | 2011-08-24 | 1 | -0/+1 | |
| | | | | | | rdar://10015134 llvm-svn: 138467 | |||||
* | Clean up Thumb load/store multiple definitions. | Jim Grosbach | 2011-08-23 | 1 | -7/+2 | |
| | | | | | | | | There is no non-writeback store multiple instruction in Thumb1, so don't define one. As a result load multiple is the only instantiation of the multiclass, so refactor that away entirely. llvm-svn: 138338 | |||||
* | Thumb parsing and encoding support for NOP. | Jim Grosbach | 2011-08-19 | 1 | -0/+7 | |
| | | | | | | The irony is not lost that this is not a completely trivial patchset. llvm-svn: 138143 | |||||
* | Thumb assembly parsing and encoding for LDM instruction. | Jim Grosbach | 2011-08-18 | 1 | -2/+2 | |
| | | | | | | | | Fix base register type and canonicallize to the "ldm" spelling rather than "ldmia." Add diagnostics for incorrect writeback token and out-of-range registers. llvm-svn: 137986 | |||||
* | Remove extraneous newline from operand print method. PR10569. | Jim Grosbach | 2011-08-17 | 1 | -3/+3 | |
| | | | | llvm-svn: 137900 |