summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/ARM/ARMAsmPrinter.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Make the ARM BR_JTadd instruction an explicit pseudo and lower it properlyJim Grosbach2010-11-171-2/+20
| | | | | | in the MC lowering process. llvm-svn: 119559
* Add FIXMEs.Jim Grosbach2010-11-151-0/+4
| | | | llvm-svn: 119167
* add fields to the .td files unconditionally, simplifying tblgen a bit.Chris Lattner2010-11-151-1/+1
| | | | | | Switch the ARM backend to use 'let' instead of 'set' with this change. llvm-svn: 119120
* rename LowerToMCInst -> LowerARMMachineInstrToMCInst.Chris Lattner2010-11-141-3/+3
| | | | llvm-svn: 119071
* even more simplifications. ARM MCInstLowering is now justChris Lattner2010-11-141-5/+3
| | | | | | | a single function instead of a class. It doesn't need the complexity that X86 does. llvm-svn: 119070
* simplify and tidy upChris Lattner2010-11-141-2/+1
| | | | llvm-svn: 119066
* Simplify and clean up MC symbol lookup for ARM constant pool values. This fixesJim Grosbach2010-11-101-10/+10
| | | | | | | | double quoting of ObjC symbol names in constant pool entries. rdar://8652107 llvm-svn: 118688
* Update ARMConstantPoolValue to not use a modifier string. Use an explicitJim Grosbach2010-11-101-47/+38
| | | | | | | VariantKind marker to indicate the additional information necessary. Update MC to handle the new Kinds. rdar://8647623 llvm-svn: 118671
* Change the ARMConstantPoolValue modifier string to an enumeration. This willJim Grosbach2010-11-091-1/+1
| | | | | | help in MC'izing the references that use them. llvm-svn: 118633
* Handle ARM constant pool values that need an explicit reference to the '.'Jim Grosbach2010-11-091-1/+9
| | | | | | pseudo-label. (TLS stuff). llvm-svn: 118609
* Further MCize ARM constant pool values. This allows basic PIC references forJim Grosbach2010-11-091-67/+83
| | | | | | object file emission. llvm-svn: 118601
* Revert 118422 in search of bot verdancy.Dale Johannesen2010-11-081-44/+10
| | | | llvm-svn: 118429
* Support -mcpu=cortex-a8 in ARM attributes - Has Fixme. 1 Test modified.Jason W Kim2010-11-081-10/+44
| | | | llvm-svn: 118422
* MC'ize the '.code 16' and '.thumb_func' ARM directives.Jim Grosbach2010-11-051-11/+2
| | | | llvm-svn: 118301
* MC'ize simple ARMConstantValue entry emission (with a FIXME).Jim Grosbach2010-11-051-28/+37
| | | | llvm-svn: 118295
* Add FIXME.Jim Grosbach2010-11-051-0/+1
| | | | llvm-svn: 118280
* Convert ARM::MOVi2pieces to a true pseudo-instruction and expand it inJim Grosbach2010-10-291-38/+0
| | | | | | the ARMExpandPseudos pass rather than during the asm lowering. llvm-svn: 117714
* ARM::MOVi32imm is expanded in ARMExpandPseudoInsts, so there's no need toJim Grosbach2010-10-291-55/+0
| | | | | | handle it in the asm lowering. llvm-svn: 117707
* Refactor ARM STR/STRB instruction patterns into STR{B}i12 and STR{B}rs, likeJim Grosbach2010-10-271-4/+3
| | | | | | | | the LDR instructions have. This makes the literal/register forms of the instructions explicit and allows us to assign scheduling itineraries appropriately. rdar://8477752 llvm-svn: 117505
* Split ARM::LDRB into LDRBi12 and LDRBrs. Adjust accordingly. Continuing onJim Grosbach2010-10-271-1/+1
| | | | | | rdar://8477752. llvm-svn: 117419
* First part of refactoring ARM addrmode2 (load/store) instructions to be moreJim Grosbach2010-10-261-7/+4
| | | | | | | | explicit about the operands. Split out the different variants into separate instructions. This gives us the ability to, among other things, assign different scheduling itineraries to the variants. rdar://8477752. llvm-svn: 117409
* Produce the headers directly in the Finish method. This allows us to useRafael Espindola2010-10-251-21/+15
| | | | | | the existing streamer methods that are endian safe. llvm-svn: 117323
* Add a virtual destructor.Rafael Espindola2010-10-251-0/+1
| | | | llvm-svn: 117280
* Add support for emitting ARM file attributes.Rafael Espindola2010-10-251-37/+123
| | | | llvm-svn: 117275
* Second set of ARM/MC/ELF changes.Jason W Kim2010-10-111-5/+43
| | | | | | | | | Added ARM specific ELF section types. Added AttributesSection to ARMElfTargetObject First step in unifying .cpu assembly tag with ELF/.o llc now asserts on actual ELF emission on -filetype=obj :-) llvm-svn: 116257
* remove trailing whitespaceJim Grosbach2010-10-061-5/+5
| | | | llvm-svn: 115860
* First in a sequence of ARM/MC/*ELF* specific work.Jason W Kim2010-10-061-38/+59
| | | | | | | | | Lifted the EmitRawText calls to ARMAsmPrinter::emitAttribute() Added ARMAsmPrinter::emitAttributes() (plural s). TODO: .cpu attribute needs to be refactored llvm-svn: 115859
* Kill of the vestiges of the 'call' Modifier (no longer needed for PLT).Jim Grosbach2010-10-061-9/+2
| | | | llvm-svn: 115845
* 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
OpenPOWER on IntegriCloud