summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/X86/AsmPrinter/X86IntelInstPrinter.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Rename the AsmPrinter directory to InstPrinter for those targets that haveJim Grosbach2010-10-011-138/+0
| | | | | | | 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
* Clean up asm writer usage for x86 and msp430 to flag that the writer shouldJim Grosbach2010-09-301-2/+0
| | | | | | | use MC instructions in the printInstruction() method via the tablegen flag for it rather than a #define prior to including the autogenerated bits. llvm-svn: 115238
* I have manually decoded the imm field of an insertps one too manyChris Lattner2010-08-281-0/+5
| | | | | | | | | | | | | | | | | times. This patch causes llc and llvm-mc (which both default to verbose-asm) to print out comments after a few common shuffle instructions which indicates the shuffle mask, e.g.: insertps $113, %xmm3, %xmm0 ## xmm0 = zero,xmm0[1,2],xmm3[1] unpcklps %xmm1, %xmm0 ## xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1] pshufd $1, %xmm1, %xmm1 ## xmm1 = xmm1[1,0,0,0] This is carefully factored to keep the information extraction (of the shuffle mask) separate from the printing logic. I plan to move the extraction part out somewhere else at some point for other parts of the x86 backend that want to introspect on the behavior of shuffles. llvm-svn: 112387
* Change LEA to have 5 operands for its memory operand, justChris Lattner2010-07-081-13/+10
| | | | | | | | | | | like all other instructions, even though a segment is not allowed. This resolves a bunch of gross hacks in the encoder and makes LEA more consistent with the rest of the instruction set. No functionality change. llvm-svn: 107934
* fix an ugly wart in the MCInstPrinter api where theChris Lattner2010-04-041-2/+2
| | | | | | | | raw_ostream to print an instruction to had to be specified at MCInstPrinter construction time instead of being able to pick at each call to printInstruction. llvm-svn: 100307
* change a ton of code to not implicitly use the "O" raw_ostreamChris Lattner2010-04-041-13/+17
| | | | | | member of AsmPrinter. Instead, pass it in explicitly. llvm-svn: 100306
* enhance llvm-mc -show-inst to print the enum of an instruction, like so:Chris Lattner2010-02-111-0/+4
| | | | | | | | | | testb %al, %al ## <MCInst #2412 TEST8rr ## <MCOperand Reg:2> ## <MCOperand Reg:2>> jne LBB1_7 ## <MCInst #938 JNE_1 ## <MCOperand Expr:(LBB1_7)>> llvm-svn: 95935
* sink handling of target-independent machine instrs (otherChris Lattner2010-02-031-1/+0
| | | | | | | | than DEBUG_VALUE :( ) into the target indep AsmPrinter.cpp file. This allows elimination of the NO_ASM_WRITER_BOILERPLATE hack among other things. llvm-svn: 95177
* remove the MAI argument to MCExpr::print and switch overthing to use << when ↵Chris Lattner2010-01-181-3/+3
| | | | | | printing them. llvm-svn: 93699
* remove a temporary hack.Chris Lattner2009-09-201-3/+1
| | | | llvm-svn: 82395
* kill off printPICLabel now, it's specialness is handled byChris Lattner2009-09-201-6/+1
| | | | | | | the MachineInstr ->MCInst lowering process, not in the asmprinter. llvm-svn: 82388
* Add an intel syntax MCInstPrinter implementation. You can nowChris Lattner2009-09-201-0/+138
transcode from AT&T to intel syntax with "llvm-mc foo.s -output-asm-variant=1" llvm-svn: 82385
OpenPOWER on IntegriCloud