Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | fixing style nit: move class static to global static | Jason W Kim | 2010-12-01 | 1 | -42/+41 | |
| | | | | llvm-svn: 120619 | |||||
* | Add a post encoder method to the VFP instructions to convert them to the Thumb2 | Bill Wendling | 2010-12-01 | 3 | -4/+22 | |
| | | | | | | encoding if we're in that mode. llvm-svn: 120608 | |||||
* | Use the correct fixup type for ARM VLDR* | Jim Grosbach | 2010-12-01 | 1 | -2/+2 | |
| | | | | llvm-svn: 120604 | |||||
* | Refactor LEApcrelJT as a pseudo-instructionlowered to a cannonical ADR | Jim Grosbach | 2010-12-01 | 4 | -16/+72 | |
| | | | | | | | instruction at MC lowering. Add binary encoding information for the ADR, including fixup data for the label operand. llvm-svn: 120594 | |||||
* | Add correct encodings for STRD and LDRD, including fixup support. ↵ | Owen Anderson | 2010-12-01 | 7 | -32/+74 | |
| | | | | | | Additionally, update these to unified syntax. llvm-svn: 120589 | |||||
* | kill trailing space | Jason W Kim | 2010-12-01 | 1 | -1/+1 | |
| | | | | llvm-svn: 120586 | |||||
* | 10 bits, not 12. | Jim Grosbach | 2010-12-01 | 3 | -6/+6 | |
| | | | | llvm-svn: 120584 | |||||
* | Elaborate on FIXME. | Jim Grosbach | 2010-12-01 | 1 | -1/+4 | |
| | | | | llvm-svn: 120552 | |||||
* | Move the ARMAsmPrinter class defintiion into a header file. | Jim Grosbach | 2010-12-01 | 4 | -100/+127 | |
| | | | | llvm-svn: 120551 | |||||
* | Remove "comparison of integers of different signs" warning by making the | Bill Wendling | 2010-12-01 | 1 | -1/+1 | |
| | | | | | | variable unsigned. llvm-svn: 120541 | |||||
* | General cleanups of comments. | Bill Wendling | 2010-12-01 | 1 | -11/+7 | |
| | | | | llvm-svn: 120536 | |||||
* | ARM/MC/ELF relocation "hello world" for movw/movt. | Jason W Kim | 2010-12-01 | 1 | -44/+75 | |
| | | | | | | | | | | | Lifted adjustFixupValue() from Darwin for sharing w ELF. Test added TODO: refactor ELFObjectWriter::RecordRelocation more. Possibly share more code with Darwin? Lots more relocations... llvm-svn: 120534 | |||||
* | Formatting. It's all the rage! | Bill Wendling | 2010-12-01 | 1 | -35/+37 | |
| | | | | llvm-svn: 120533 | |||||
* | More refactoring. This time the T1pI pattern. | Bill Wendling | 2010-12-01 | 1 | -131/+96 | |
| | | | | llvm-svn: 120532 | |||||
* | Refactor load/store handling again. Simplify and make some room for | Eric Christopher | 2010-12-01 | 1 | -103/+60 | |
| | | | | | | reg+reg handling. llvm-svn: 120526 | |||||
* | Initialize an ARMConstantPoolValue field. | Jan Wen Voung | 2010-12-01 | 1 | -1/+1 | |
| | | | | llvm-svn: 120525 | |||||
* | s/T1pIEncode/T1pILdStEncode/g | Bill Wendling | 2010-12-01 | 2 | -62/+62 | |
| | | | | | | s/T1pIEncodeImm/T1pILdStEncodeImm/g llvm-svn: 120524 | |||||
* | Renaming variables to coincide with documentation. No functionality change. | Bill Wendling | 2010-12-01 | 2 | -21/+21 | |
| | | | | llvm-svn: 120522 | |||||
* | Refactor T1sI and T1sIt encodings into helper classes. | Bill Wendling | 2010-12-01 | 1 | -93/+78 | |
| | | | | llvm-svn: 120518 | |||||
* | Refactor the T1sIt encodings into a parent class to get rid of all of the "let" | Bill Wendling | 2010-12-01 | 1 | -131/+85 | |
| | | | | | | statements. llvm-svn: 120512 | |||||
* | Use by-name rather than by-order matching for NEON operands. | Owen Anderson | 2010-12-01 | 1 | -318/+318 | |
| | | | | llvm-svn: 120507 | |||||
* | Enable sibling call optimization of libcalls which are expanded during | Evan Cheng | 2010-11-30 | 3 | -29/+69 | |
| | | | | | | | | | | | legalization time. Since at legalization time there is no mapping from SDNode back to the corresponding LLVM instruction and the return SDNode is target specific, this requires a target hook to check for eligibility. Only x86 and ARM support this form of sibcall optimization right now. rdar://8707777 llvm-svn: 120501 | |||||
* | Rename operands to match ARM documentation. No functionality change. | Bill Wendling | 2010-11-30 | 2 | -101/+105 | |
| | | | | llvm-svn: 120500 | |||||
* | Fix typo. | Jim Grosbach | 2010-11-30 | 1 | -1/+1 | |
| | | | | llvm-svn: 120499 | |||||
* | Trailing whitespace. | Jim Grosbach | 2010-11-30 | 1 | -3/+3 | |
| | | | | llvm-svn: 120497 | |||||
* | Thanks to JimG for catching this! | Jason W Kim | 2010-11-30 | 1 | -0/+2 | |
| | | | | llvm-svn: 120494 | |||||
* | Inline classes that were used in only one place. | Bill Wendling | 2010-11-30 | 1 | -5/+2 | |
| | | | | llvm-svn: 120488 | |||||
* | * Add support for encoding t_addrmode_s2 and t_addrmode_s1. They are the same as | Bill Wendling | 2010-11-30 | 5 | -90/+151 | |
| | | | | | | | | | | t_addrmode_s4, but with a different scaling factor. * Encode the Thumb1 load and store instructions. This involved a bit of refactoring (hi, Chris! :-). Some of the patterns became dead afterwards and were removed. llvm-svn: 120482 | |||||
* | Simplify the encoding of reg+/-imm12 values that allow PC-relative encoding. ↵ | Owen Anderson | 2010-11-30 | 4 | -88/+16 | |
| | | | | | | | | | This allows the Thumb2 encoding to share code with the ARM encoding, which gets use fixup support for free. It also allows us to fold away at least one codegen-only pattern. llvm-svn: 120481 | |||||
* | Fix handling of ARM negative pc-relative fixups for loads and stores. | Jim Grosbach | 2010-11-30 | 2 | -9/+36 | |
| | | | | llvm-svn: 120480 | |||||
* | Provide Thumb2 encodings for a few miscellaneous instructions. | Owen Anderson | 2010-11-30 | 1 | -8/+22 | |
| | | | | llvm-svn: 120455 | |||||
* | Add FIXME | Jim Grosbach | 2010-11-30 | 1 | -0/+1 | |
| | | | | llvm-svn: 120451 | |||||
* | Add encoding support for Thumb2 PLD and PLI instructions. | Owen Anderson | 2010-11-30 | 3 | -1/+43 | |
| | | | | llvm-svn: 120449 | |||||
* | Noticed this on inspection, fix and update some comments. | Eric Christopher | 2010-11-30 | 1 | -3/+4 | |
| | | | | llvm-svn: 120447 | |||||
* | Pseudo-ize ARM MOVPCRX | Jim Grosbach | 2010-11-30 | 2 | -8/+19 | |
| | | | | llvm-svn: 120442 | |||||
* | Provide encodings for a few more load/store variants. | Owen Anderson | 2010-11-30 | 1 | -4/+16 | |
| | | | | llvm-svn: 120439 | |||||
* | Pseudo-ize BX_CALL and friends. Remove dead instruction format classes. | Jim Grosbach | 2010-11-30 | 3 | -46/+66 | |
| | | | | | | rdar://8685712 llvm-svn: 120438 | |||||
* | Add parsing for the Thumb t_addrmode_s4 addressing mode. This can almost | Bill Wendling | 2010-11-30 | 4 | -14/+89 | |
| | | | | | | | | | | certainly be made more generic. But it does allow us to parse something like: ldr r3, [r2, r4] correctly in Thumb mode. llvm-svn: 120408 | |||||
* | Minor cleanups. No functional change. | Bill Wendling | 2010-11-30 | 1 | -24/+23 | |
| | | | | llvm-svn: 120372 | |||||
* | s/ARM::BRIND/ARM::BX/g to coincide with r120366. | Bill Wendling | 2010-11-30 | 3 | -5/+5 | |
| | | | | llvm-svn: 120371 | |||||
* | Add correct encoding for "bl __aeabi_read_tp". However, the asm matcher isn't | Bill Wendling | 2010-11-30 | 1 | -3/+5 | |
| | | | | | | able to match this yet. llvm-svn: 120369 | |||||
* | Rename BX/BRIND/etc patterns to clarify which is actually the BX instruction | Jim Grosbach | 2010-11-30 | 2 | -9/+9 | |
| | | | | | | and which are pseudos. llvm-svn: 120366 | |||||
* | Add some encoding for the adr instruction. Labels still need to be finished. | Bill Wendling | 2010-11-30 | 1 | -6/+16 | |
| | | | | llvm-svn: 120365 | |||||
* | Correct Thumb2 encodings for a much wider range of loads and stores. | Owen Anderson | 2010-11-30 | 4 | -48/+96 | |
| | | | | llvm-svn: 120364 | |||||
* | Make a few more ARM pseudo instructions actually use the PseudoInst base class. | Jim Grosbach | 2010-11-30 | 1 | -14/+13 | |
| | | | | llvm-svn: 120362 | |||||
* | Predicate encoding should be withing {}s. And general cleanup. | Bill Wendling | 2010-11-30 | 2 | -8/+4 | |
| | | | | llvm-svn: 120361 | |||||
* | Predicate encoding should be withing {}s. | Bill Wendling | 2010-11-30 | 1 | -2/+2 | |
| | | | | llvm-svn: 120360 | |||||
* | Fix the encoding of VLD4-dup alignment. | Bob Wilson | 2010-11-30 | 4 | -37/+67 | |
| | | | | | | | | The only reasonable way I could find to do this is to provide an alternate version of the addrmode6 operand with a different encoding function. Use it for all the VLD-dup instructions for the sake of consistency. llvm-svn: 120358 | |||||
* | Rename VLDnDUP instructions with double-spaced registers | Bob Wilson | 2010-11-30 | 1 | -12/+12 | |
| | | | | | | in an attempt to make things a little more consistent. llvm-svn: 120357 | |||||
* | Add support for NEON VLD3-dup instructions. | Bob Wilson | 2010-11-30 | 6 | -1/+104 | |
| | | | | | | The encoding for alignment in VLD4-dup instructions is still a work in progress. llvm-svn: 120356 |