Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | turn the mcinst asmprinter on by default for x86, tweaking two tests to | Chris Lattner | 2009-09-09 | 1 | -1/+1 | |
| | | | | | | expect the slight syntax differences in the generated code. llvm-svn: 81305 | |||||
* | tidy up | Chris Lattner | 2009-09-09 | 1 | -22/+3 | |
| | | | | llvm-svn: 81304 | |||||
* | make sure to send external symbols through the mangler, | Chris Lattner | 2009-09-09 | 1 | -5/+3 | |
| | | | | | | this fixes mingw-alloca.ll with the new asmprinter. llvm-svn: 81301 | |||||
* | add support for @PLT and friends on external symbols, fixes | Chris Lattner | 2009-09-09 | 1 | -2/+27 | |
| | | | | | | x86-64-pic-11.ll with the new asmprinter. llvm-svn: 81294 | |||||
* | change selectiondag to add the sign extended versions of immediate operands | Chris Lattner | 2009-09-08 | 1 | -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 Lattner | 2009-09-08 | 1 | -0/+20 | |
| | | | | llvm-svn: 81199 | |||||
* | add a bunch more evil lowering code to work around various :subreg32 modifiers | Chris Lattner | 2009-09-08 | 1 | -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::MOVZX16rm8 | Chris Lattner | 2009-09-08 | 1 | -1/+8 | |
| | | | | | | subreg32 modifiers. llvm-svn: 81196 | |||||
* | add a hack to lower MOV16r0 to MOV32r0 in MCInstLower, eliminating | Chris Lattner | 2009-09-08 | 1 | -0/+12 | |
| | | | | | | | the problem with subreg32 modifiers. This gets all of Olden working with the new asmprinter. llvm-svn: 81195 | |||||
* | Remove unreachable code. | Duncan Sands | 2009-09-06 | 1 | -3/+0 | |
| | | | | llvm-svn: 81126 | |||||
* | Remove some not-really-used variables, as warned | Duncan Sands | 2009-09-06 | 1 | -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 benchmarks | Chris Lattner | 2009-09-03 | 1 | -1/+1 | |
| | | | | | | with the new asmprinter. llvm-svn: 80906 | |||||
* | Implement support for X86II::MO_GOT_ABSOLUTE_ADDRESS. We get very | Chris Lattner | 2009-09-03 | 1 | -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 Cheng | 2009-09-03 | 2 | -7/+1 | |
| | | | | | | non-pic mode. rdar://7187172. llvm-svn: 80904 | |||||
* | remove extraneous hack. | Chris Lattner | 2009-09-03 | 1 | -2/+0 | |
| | | | | llvm-svn: 80893 | |||||
* | Thread an MCAsmInfo pointer through the various MC printing APIs, | Chris Lattner | 2009-09-03 | 1 | -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. Now | Chris Lattner | 2009-09-03 | 2 | -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 munging | Chris Lattner | 2009-09-03 | 2 | -36/+34 | |
| | | | | | | from operand" logic. GlobalAddress still todo. llvm-svn: 80884 | |||||
* | implement lowering support for constant pool index operands, this gets a ↵ | Chris Lattner | 2009-09-03 | 2 | -13/+52 | |
| | | | | | | | | bunch more olden programs working. llvm-svn: 80881 | |||||
* | simplify this by using SmallString::str(), much nicer! | Chris Lattner | 2009-09-03 | 1 | -1/+1 | |
| | | | | llvm-svn: 80874 | |||||
* | Added opaque 32-, 48-, and 80-bit memory operand types to the X86 | Sean Callanan | 2009-09-03 | 2 | -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 Lattner | 2009-09-02 | 1 | -7/+5 | |
| | | | | llvm-svn: 80807 | |||||
* | split mcinst lowering stuff out to its own file. | Chris Lattner | 2009-09-02 | 4 | -262/+293 | |
| | | | | llvm-svn: 80806 | |||||
* | Retype from unsigned to CallingConv::ID accordingly. Approved by Bob Wilson. | Sandeep Patel | 2009-09-02 | 2 | -4/+4 | |
| | | | | llvm-svn: 80773 | |||||
* | X86/exp-asm-printer: Lower MachineOperand::MO_JumpTableIndex to MCOperand. | Daniel Dunbar | 2009-08-31 | 2 | -1/+35 | |
| | | | | | | - Down to 7 failures on 403.gcc. llvm-svn: 80605 | |||||
* | Stop printing old asm printing code inline with -experimental-asm-printer ↵ | Daniel Dunbar | 2009-08-31 | 1 | -9/+0 | |
| | | | | | | (this allows diffing and assembling the .s) llvm-svn: 80604 | |||||
* | Avoid unnecessary +0 in experimental-asm-printer. | Daniel Dunbar | 2009-08-31 | 1 | -7/+10 | |
| | | | | llvm-svn: 80603 | |||||
* | llvm-mc: Switch MCInst to storing an MCExpr* instead of an MCValue. | Daniel Dunbar | 2009-08-31 | 2 | -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 Johannesen | 2009-08-25 | 1 | -0/+4 | |
| | | | | llvm-svn: 79961 | |||||
* | rename TAI -> MAI, being careful not to make MAILJMP instructions :) | Chris Lattner | 2009-08-22 | 3 | -42/+42 | |
| | | | | llvm-svn: 79777 | |||||
* | Rename TargetAsmInfo (and its subclasses) to MCAsmInfo. | Chris Lattner | 2009-08-22 | 6 | -10/+10 | |
| | | | | llvm-svn: 79763 | |||||
* | Record variable debug info at ISel time directly. | Devang Patel | 2009-08-22 | 1 | -3/+0 | |
| | | | | llvm-svn: 79742 | |||||
* | Add an extra line to conform with preferred style. | Dale Johannesen | 2009-08-19 | 1 | -1/+2 | |
| | | | | llvm-svn: 79495 | |||||
* | Handle 'a' modifier in X86 asms. PR 4742. | Dale Johannesen | 2009-08-19 | 1 | -0/+12 | |
| | | | | llvm-svn: 79484 | |||||
* | eliminate AsmPrinter::SwitchToSection and just have clients | Chris Lattner | 2009-08-19 | 2 | -11/+12 | |
| | | | | | | talk to the MCStreamer directly instead. llvm-svn: 79405 | |||||
* | remove some pointless null switchtosections. The IntelAsmPrinter doesn't ↵ | Chris Lattner | 2009-08-18 | 1 | -4/+2 | |
| | | | | | | really work anyway. llvm-svn: 79321 | |||||
* | add support for some targetflags on GV operands. This allows us to | Chris Lattner | 2009-08-18 | 1 | -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 Lattner | 2009-08-17 | 2 | -5/+5 | |
| | | | | | | just remove the argument and replace it with 1. llvm-svn: 79246 | |||||
* | add support for external symbols + X86::MOVPC32r. | Chris Lattner | 2009-08-16 | 2 | -59/+123 | |
| | | | | llvm-svn: 79175 | |||||
* | implement support for lowering references to global addresses. For example, ↵ | Chris Lattner | 2009-08-16 | 2 | -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 API | Daniel Dunbar | 2009-08-14 | 1 | -0/+2 | |
| | | | | | | to print one instruction. llvm-svn: 78985 | |||||
* | Add X86 instruction printer support for printing MCValue operands. | Daniel Dunbar | 2009-08-14 | 1 | -0/+8 | |
| | | | | llvm-svn: 78984 | |||||
* | TargetRegistry: Change AsmPrinter constructor to be typed as returning an | Daniel Dunbar | 2009-08-13 | 1 | -4/+4 | |
| | | | | | | AsmPrinter instance (instead of just a FunctionPass) llvm-svn: 78962 | |||||
* | TargetRegistry: Reorganize AsmPrinter construction so that clients pass in the | Daniel Dunbar | 2009-08-13 | 1 | -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 of | Dan Gohman | 2009-08-13 | 2 | -18/+17 | |
| | | | | | | PrintUnmangledNameSafely. llvm-svn: 78878 | |||||
* | Symbols with LinkerPrivateLinkage are weak. | Dale Johannesen | 2009-08-13 | 1 | -2/+2 | |
| | | | | | | This allows WebKit to build again. llvm-svn: 78872 | |||||
* | Use PadToColumn instead of tabs. | Dan Gohman | 2009-08-12 | 2 | -4/+8 | |
| | | | | llvm-svn: 78834 | |||||
* | change the -x86-asm-syntax=intel/att flag to be in X86TAI | Chris Lattner | 2009-08-11 | 1 | -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 Anderson | 2009-08-11 | 2 | -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 Anderson | 2009-08-10 | 3 | -19/+19 | |
| | | | | | | own struct type. llvm-svn: 78610 |