summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/ARM/ARMAsmPrinter.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Now that VDUPfqf and VDUPfdfare properly pseudos, kill the no-longer-neededJim Grosbach2010-10-061-10/+2
| | | | | | "lane" operand modifier. llvm-svn: 115843
* target operand flag values aren't a bitmaskJim Grosbach2010-10-061-2/+2
| | | | llvm-svn: 115798
* Nuke the rest of the :comment referencesJim Grosbach2010-10-011-2/+2
| | | | llvm-svn: 115373
* Rename the AsmPrinter directory to InstPrinter for those targets that haveJim Grosbach2010-10-011-1/+1
| | | | | | | been MC-ized for assembly printing. MSP430 is mostly so, but still has the asm printer and lowering code in the printer subdir for the moment. llvm-svn: 115360
* Nuke a few more unused asm stringsJim Grosbach2010-09-301-6/+8
| | | | llvm-svn: 115193
* 80 column fixJim Grosbach2010-09-301-1/+3
| | | | llvm-svn: 115149
* Tiny patch for proof-of-concept cleanup of ARMAsmPrinter::EmitStartOfAsmFile()Jason W Kim2010-09-301-1/+1
| | | | | | | Small test for sanity check of resulting ARM .s file. Tested against -r115129. llvm-svn: 115133
* Nuke it from orbit. It's the only way to be sure.Jim Grosbach2010-09-301-761/+8
| | | | | | (Kill the dead non-MC asm printer for the ARM target.) llvm-svn: 115127
* One Printer to rule them all, One Printer to find them,Jim Grosbach2010-09-291-102/+1
| | | | | | | | | One Printer to lower them all and in the back end bind them. (Remove option to use the old non-MC asm printer.) llvm-svn: 115038
* Factor out dbg_value comment printing and teach MC asm printing to use it.Jim Grosbach2010-09-281-13/+29
| | | | | | This should make the arm-linux self-host buildbot happy again. llvm-svn: 114964
* Enable the MC-ized ARM asm printer. Passing all local tests, so it's time toJim Grosbach2010-09-271-0/+67
| | | | | | | enable it for real. Leaving the CL option in place to it's easy to disable it again if (when) testers find something I've missed. llvm-svn: 114915
* ARM-mode eh.sjlj.longjmp MC loweringJim Grosbach2010-09-271-0/+54
| | | | llvm-svn: 114896
* Enable the MC-ized ARM asm printer. Passing all local tests, so it's time toJim Grosbach2010-09-271-1/+1
| | | | | | | enable it for real. Leaving the CL option in place to it's easy to disable it again if (when) testers find something I've missed. llvm-svn: 114892
* Add ARM explicit MCInst lowering for the Thumb eh.sjlj.setjmp sequence.Jim Grosbach2010-09-241-0/+95
| | | | llvm-svn: 114758
* ARM-mode eh.sjlj.setjmp pseudo MC-inst lowering expansionJim Grosbach2010-09-231-0/+77
| | | | llvm-svn: 114707
* never mind. I can't read, apparentlyJim Grosbach2010-09-231-1/+1
| | | | llvm-svn: 114689
* Fix opcode value for the 'trap' instruction, keeping the type suffix on theJim Grosbach2010-09-231-1/+1
| | | | | | constant. Hopefully the non-Darwin bots will like it... llvm-svn: 114687
* explicit 'unsigned long' on constant value. Hopefully make bots happier.Jim Grosbach2010-09-231-1/+1
| | | | llvm-svn: 114686
* Unbreak build. Jim, please review.Benjamin Kramer2010-09-231-4/+4
| | | | llvm-svn: 114684
* Clean up the 'trap' instruction printing a bit. Non-Darwin assemblers don'tJim Grosbach2010-09-231-0/+34
| | | | | | | | | | | | (yet) recognize the 'trap' mnemonic, so we use .short/.long to emit the opcode directly. On Darwin, however, we do want the mnemonic for more readable assembly code and better disassembly. Adjust the .td file to use the 'trap' mnemonic and handle using the binutils workaround in the assembly printer. Also tweak the formatting of the opcode values to make them consistent between the MC printer and the old printer. llvm-svn: 114679
* add FIXMEJim Grosbach2010-09-221-0/+1
| | | | llvm-svn: 114578
* Add MC instruction printer support for ARM and Thumb1 jump tables.Jim Grosbach2010-09-221-3/+49
| | | | llvm-svn: 114555
* Add MC instruction printer support for TB[BH] style thumb2 jump tables.Jim Grosbach2010-09-221-24/+27
| | | | llvm-svn: 114553
* Clean up comment.Jim Grosbach2010-09-221-4/+4
| | | | llvm-svn: 114550
* Add start of support for MC instruction printer of ARM jump tables. Filling inJim Grosbach2010-09-211-0/+72
| | | | | | the rest of it is next up. llvm-svn: 114500
* Fix errant printing of [v]ldm instructions that aren't a popJim Grosbach2010-09-211-32/+24
| | | | llvm-svn: 114445
* factor out a simple helper function to create a label for PC-relativeJim Grosbach2010-09-181-19/+17
| | | | | | instructions (PICADD, PICLDR, et.al.) llvm-svn: 114243
* Add MC-inst handling for tPICADDJim Grosbach2010-09-171-0/+26
| | | | llvm-svn: 114237
* Teach the (non-MC) instruction printer to use the cannonical names for push/pop,Jim Grosbach2010-09-171-4/+71
| | | | | | and shift instructions on ARM. Update the tests to match. llvm-svn: 114230
* Hook up verbose asm comment printing for SOImm operands in MC printerJim Grosbach2010-09-171-1/+1
| | | | llvm-svn: 114215
* handle the upper16/lower16 target operand flags on symbol references for MCJim Grosbach2010-09-171-1/+1
| | | | | | instruction lowering. llvm-svn: 114191
* expand PICLDR MC lowering to handle other PICLDR and PICSTR versions.Jim Grosbach2010-09-171-11/+31
| | | | llvm-svn: 114183
* MC-ization of the PICLDR pseudo. Next up, adding the other variantsJim Grosbach2010-09-161-0/+29
| | | | | | (PICLDRB, et. al.) and PICSTR* llvm-svn: 114098
* Remove support for "dregpair" operand modifier, now that it is no longer beingBob Wilson2010-09-161-7/+1
| | | | | | used for anything. llvm-svn: 114067
* move getRegisterNumbering() to out of ARMBaseRegisterInfo into the helperJim Grosbach2010-09-151-1/+1
| | | | | | | | | functions in ARMBaseInfo.h so it can be used in the MC library as well. For anything bigger than this, we may want a means to have a small support library for shared helper functions like this. Cross that bridge when we come to it. llvm-svn: 114016
* Add predicate and 's' bit operands to PICADD instruction lowering.Jim Grosbach2010-09-141-0/+5
| | | | llvm-svn: 113860
* fix comment typoJim Grosbach2010-09-141-1/+1
| | | | llvm-svn: 113856
* Remove trailing whitespaceJim Grosbach2010-09-021-31/+31
| | | | llvm-svn: 112790
* Change ARM VFP VLDM/VSTM instructions to use addressing mode #4, just likeBob Wilson2010-08-271-10/+0
| | | | | | | | | | | | | | | | | | | all the other LDM/STM instructions. This fixes asm printer crashes when compiling with -O0. I've changed one of the NEON tests (vst3.ll) to run with -O0 to check this in the future. Prior to this change VLDM/VSTM used addressing mode #5, but not really. The offset field was used to hold a count of the number of registers being loaded or stored, and the AM5 opcode field was expanded to specify the IA or DB mode, instead of the standard ADD/SUB specifier. Much of the backend was not aware of these special cases. The crashes occured when rewriting a frameindex caused the AM5 offset field to be changed so that it did not have a valid submode. I don't know exactly what changed to expose this now. Maybe we've never done much with -O0 and NEON. Regardless, there's no longer any reason to keep a count of the VLDM/VSTM registers, so we can use addressing mode #4 and clean things up in a lot of places. llvm-svn: 112322
* Rename sat_shift operand to shift_imm, in preparation for using it for otherBob Wilson2010-08-161-3/+3
| | | | | | instructions besides saturate instructions. No functional changes. llvm-svn: 111168
* Cleaned up the for-disassembly-only entries in the arm instruction table so thatJohnny Chen2010-08-121-0/+9
| | | | | | | the memory barrier variants (other than 'SY' full system domain read and write) are treated as one instruction with option operand. llvm-svn: 110951
* Move the ARM SSAT and USAT optional shift amount operand out of theBob Wilson2010-08-111-2/+23
| | | | | | instruction opcode. This also fixes part of PR7792. llvm-svn: 110875
* ARM "rrx" shift operands do not have an immediate. PR7790.Bob Wilson2010-08-051-12/+9
| | | | llvm-svn: 110292
* Implement target specific getDebugValueLocation().Devang Patel2010-08-041-0/+13
| | | | llvm-svn: 110267
* Move newlines before inline jumptables from the asm strings in .td files toBob Wilson2010-07-311-2/+2
| | | | | | | the jtblock_operand print methods. This avoids extra newlines in the disassembler's output. PR7757. llvm-svn: 109948
* Add the __TEXT,__StaticInit section to the list of sections emitted at theBob Wilson2010-07-301-0/+6
| | | | | | | beginning on ARM Darwin assembly files so that it won't be placed after debug sections. Radar 8252813. llvm-svn: 109879
* For ARM/Darwin, add a dwarf entry indicating whether a function is arm or thumbJim Grosbach2010-07-211-0/+17
| | | | | | rdar://8202967 llvm-svn: 109057
* sink the arm implementations of ASmPrinter and MCInstLowerChris Lattner2010-07-191-0/+1438
| | | | | | | | out of the AsmPrinter directory into libarm. Now the ARM InstPrinters depend jsut on the MC stuff, not on vmcore or codegen. llvm-svn: 108783
* Move ARM to pluggable asmprinterAnton Korobeynikov2008-08-171-1030/+0
| | | | llvm-svn: 54889
* Handle visibility printing with all generality. Remove bunch of duplicate code.Anton Korobeynikov2008-08-081-16/+2
| | | | llvm-svn: 54540
OpenPOWER on IntegriCloud