summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/X86/AsmPrinter
Commit message (Collapse)AuthorAgeFilesLines
...
* turn the mcinst asmprinter on by default for x86, tweaking two tests toChris Lattner2009-09-091-1/+1
| | | | | | expect the slight syntax differences in the generated code. llvm-svn: 81305
* tidy upChris Lattner2009-09-091-22/+3
| | | | llvm-svn: 81304
* make sure to send external symbols through the mangler,Chris Lattner2009-09-091-5/+3
| | | | | | this fixes mingw-alloca.ll with the new asmprinter. llvm-svn: 81301
* add support for @PLT and friends on external symbols, fixesChris Lattner2009-09-091-2/+27
| | | | | | x86-64-pic-11.ll with the new asmprinter. llvm-svn: 81294
* change selectiondag to add the sign extended versions of immediate operandsChris Lattner2009-09-081-1/+1
| | | | | | | | to instructions instead of zero extended ones. This makes the asmprinter print signed values more consistently. This apparently only really affects the X86 backend. llvm-svn: 81265
* add support for some missing modifiers on jumptable/constant pool entries.Chris Lattner2009-09-081-0/+20
| | | | llvm-svn: 81199
* add a bunch more evil lowering code to work around various :subreg32 modifiersChris Lattner2009-09-081-3/+39
| | | | | | | in the .td files. This gets us down to 18 failures in codegen/x86 with the new asmprinter. llvm-svn: 81198
* ADd support for "lowering" the X86::MOVZX16rr8/X86::MOVZX16rm8Chris Lattner2009-09-081-1/+8
| | | | | | subreg32 modifiers. llvm-svn: 81196
* add a hack to lower MOV16r0 to MOV32r0 in MCInstLower, eliminatingChris Lattner2009-09-081-0/+12
| | | | | | | the problem with subreg32 modifiers. This gets all of Olden working with the new asmprinter. llvm-svn: 81195
* Remove unreachable code.Duncan Sands2009-09-061-3/+0
| | | | llvm-svn: 81126
* Remove some not-really-used variables, as warnedDuncan Sands2009-09-061-2/+1
| | | | | | about by icc (#593, partial). Patch by Erick Tryzelaar. llvm-svn: 81115
* don't call getOffset() on jump tables, this fixes three failing olden benchmarksChris Lattner2009-09-031-1/+1
| | | | | | with the new asmprinter. llvm-svn: 80906
* Implement support for X86II::MO_GOT_ABSOLUTE_ADDRESS. We get veryChris Lattner2009-09-031-15/+26
| | | | | | | | | | | | | | | | | | different formatting from the old asmprinter, but it should be semantically the same. We used to get: popl %eax addl $_GLOBAL_OFFSET_TABLE_ + [.-.Lllvm$6.$piclabel], %eax ... Now we get: popl %eax .Lpicbaseref6: addl $(_GLOBAL_OFFSET_TABLE_ + (.Lpicbaseref6 - .Lllvm$6.$piclabel)), %eax ... llvm-svn: 80905
* Reference to hidden symbols do not have to go through non-lazy pointer in ↵Evan Cheng2009-09-032-7/+1
| | | | | | non-pic mode. rdar://7187172. llvm-svn: 80904
* remove extraneous hack.Chris Lattner2009-09-031-2/+0
| | | | llvm-svn: 80893
* Thread an MCAsmInfo pointer through the various MC printing APIs, Chris Lattner2009-09-031-3/+3
| | | | | | | and fix a few things using << on MCSymbols to use ->print(). No functionality change other than unbreaking my previous patch. llvm-svn: 80890
* merge globaladdress symbol processing stuff into other stuff. NowChris Lattner2009-09-032-76/+65
| | | | | | | all global variable operand flag processing stuff is shared between different operand types. llvm-svn: 80886
* Split the "operand -> symbol" logic from the "get offset and other mungingChris Lattner2009-09-032-36/+34
| | | | | | from operand" logic. GlobalAddress still todo. llvm-svn: 80884
* implement lowering support for constant pool index operands, this gets a ↵Chris Lattner2009-09-032-13/+52
| | | | | | | | bunch more olden programs working. llvm-svn: 80881
* simplify this by using SmallString::str(), much nicer!Chris Lattner2009-09-031-1/+1
| | | | llvm-svn: 80874
* Added opaque 32-, 48-, and 80-bit memory operand types to the X86Sean Callanan2009-09-032-0/+13
| | | | | | | | | instruction tables to support segmented addressing (and other objects of obscure type). Modified the X86 assembly printers to handle these new operand types. Added JMP and CALL instructions that use segmented addresses. llvm-svn: 80857
* switch from std::string to SmallString + raw_svector_ostream.Chris Lattner2009-09-021-7/+5
| | | | llvm-svn: 80807
* split mcinst lowering stuff out to its own file.Chris Lattner2009-09-024-262/+293
| | | | llvm-svn: 80806
* Retype from unsigned to CallingConv::ID accordingly. Approved by Bob Wilson.Sandeep Patel2009-09-022-4/+4
| | | | llvm-svn: 80773
* X86/exp-asm-printer: Lower MachineOperand::MO_JumpTableIndex to MCOperand.Daniel Dunbar2009-08-312-1/+35
| | | | | | - Down to 7 failures on 403.gcc. llvm-svn: 80605
* Stop printing old asm printing code inline with -experimental-asm-printer ↵Daniel Dunbar2009-08-311-9/+0
| | | | | | (this allows diffing and assembling the .s) llvm-svn: 80604
* Avoid unnecessary +0 in experimental-asm-printer.Daniel Dunbar2009-08-311-7/+10
| | | | llvm-svn: 80603
* llvm-mc: Switch MCInst to storing an MCExpr* instead of an MCValue.Daniel Dunbar2009-08-312-10/+30
| | | | | | Also, use MCInst::print instead of custom code in MCAsmPrinter. llvm-svn: 80575
* Fix PR 4751, another difficulty with %a modifier on x86.Dale Johannesen2009-08-251-0/+4
| | | | llvm-svn: 79961
* rename TAI -> MAI, being careful not to make MAILJMP instructions :)Chris Lattner2009-08-223-42/+42
| | | | llvm-svn: 79777
* Rename TargetAsmInfo (and its subclasses) to MCAsmInfo.Chris Lattner2009-08-226-10/+10
| | | | llvm-svn: 79763
* Record variable debug info at ISel time directly.Devang Patel2009-08-221-3/+0
| | | | llvm-svn: 79742
* Add an extra line to conform with preferred style.Dale Johannesen2009-08-191-1/+2
| | | | llvm-svn: 79495
* Handle 'a' modifier in X86 asms. PR 4742.Dale Johannesen2009-08-191-0/+12
| | | | llvm-svn: 79484
* eliminate AsmPrinter::SwitchToSection and just have clientsChris Lattner2009-08-192-11/+12
| | | | | | talk to the MCStreamer directly instead. llvm-svn: 79405
* remove some pointless null switchtosections. The IntelAsmPrinter doesn't ↵Chris Lattner2009-08-181-4/+2
| | | | | | really work anyway. llvm-svn: 79321
* add support for some targetflags on GV operands. This allows us toChris Lattner2009-08-181-2/+44
| | | | | | | | | | | send instructions like: NEW: movl "L___stack_chk_guard$non_lazy_ptr" - "L1$pb"(%esi), %eax OLD: movl L___stack_chk_guard$non_lazy_ptr-"L1$pb"(%esi), %eax through the streamer. Several fixmes. llvm-svn: 79317
* the MinPad argument to PadToColumn only really makes sense to be 1,Chris Lattner2009-08-172-5/+5
| | | | | | just remove the argument and replace it with 1. llvm-svn: 79246
* add support for external symbols + X86::MOVPC32r.Chris Lattner2009-08-162-59/+123
| | | | llvm-svn: 79175
* implement support for lowering references to global addresses. For example, ↵Chris Lattner2009-08-162-5/+53
| | | | | | | | | | | | | we now can asmprint: NEW: movl "L___stack_chk_guard$non_lazy_ptr", %eax OLD: movl L___stack_chk_guard$non_lazy_ptr, %eax where 'new' is coming out of the MCInst version of the printer. llvm-svn: 79170
* Add virtual printMCInst method to AsmPrinter, as a quick way to expose the APIDaniel Dunbar2009-08-141-0/+2
| | | | | | to print one instruction. llvm-svn: 78985
* Add X86 instruction printer support for printing MCValue operands.Daniel Dunbar2009-08-141-0/+8
| | | | llvm-svn: 78984
* TargetRegistry: Change AsmPrinter constructor to be typed as returning anDaniel Dunbar2009-08-131-4/+4
| | | | | | AsmPrinter instance (instead of just a FunctionPass) llvm-svn: 78962
* TargetRegistry: Reorganize AsmPrinter construction so that clients pass in theDaniel Dunbar2009-08-131-2/+3
| | | | | | | | | TargetAsmInfo. This eliminates a dependency on TargetMachine.h from TargetRegistry.h, which technically was a layering violation. - Clients probably can only sensibly pass in the same TargetAsmInfo as the TargetMachine has, but there are only limited clients of this API. llvm-svn: 78928
* Various AsmWriter output cleanups. Use WriteAsOperand instead ofDan Gohman2009-08-132-18/+17
| | | | | | PrintUnmangledNameSafely. llvm-svn: 78878
* Symbols with LinkerPrivateLinkage are weak.Dale Johannesen2009-08-131-2/+2
| | | | | | This allows WebKit to build again. llvm-svn: 78872
* Use PadToColumn instead of tabs.Dan Gohman2009-08-122-4/+8
| | | | llvm-svn: 78834
* change the -x86-asm-syntax=intel/att flag to be in X86TAI Chris Lattner2009-08-111-4/+2
| | | | | | | instead of X86 Subtarget. This elimianates dependencies on X86Subtarget from X86TAI. llvm-svn: 78746
* Split EVT into MVT and EVT, the former representing _just_ a primitive type, ↵Owen Anderson2009-08-112-14/+14
| | | | | | | | while the latter is capable of representing either a primitive or an extended type. llvm-svn: 78713
* Rename MVT to EVT, in preparation for splitting SimpleValueType out into its ↵Owen Anderson2009-08-103-19/+19
| | | | | | own struct type. llvm-svn: 78610
OpenPOWER on IntegriCloud