Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | MASM doesn't have one of these. | Chris Lattner | 2006-05-09 | 1 | -0/+1 | |
| | | | | llvm-svn: 28190 | |||||
* | Preserve prior behavior | Chris Lattner | 2006-05-09 | 1 | -2/+1 | |
| | | | | llvm-svn: 28187 | |||||
* | Fix the MASM asmprinter's lies. It does not want to emit code to .text/.data | Chris Lattner | 2006-05-09 | 1 | -3/+7 | |
| | | | | | | it wants it emitted to _text/_data. llvm-svn: 28185 | |||||
* | Split SwitchSection into SwitchTo{Text|Data}Section methods. | Chris Lattner | 2006-05-09 | 1 | -5/+5 | |
| | | | | llvm-svn: 28184 | |||||
* | Fixing truncate. Previously we were emitting truncate from r16 to r8 as | Evan Cheng | 2006-05-08 | 1 | -6/+7 | |
| | | | | | | | | | | | | | | | | | | | | | | | | movw. That is we promote the destination operand to r16. So %CH = TRUNC_R16_R8 %BP is emitted as movw %bp, %cx. This is incorrect. If %cl is live, it would be clobbered. Ideally we want to do the opposite, that is emitted it as movb ??, %ch But this is not possible since %bp does not have a r8 sub-register. We are now defining a new register class R16_ which is a subclass of R16 containing only those 16-bit registers that have r8 sub-registers (i.e. AX - DX). We isel the truncate to two instructions, a MOV16to16_ to copy the value to the R16_ class, followed by a TRUNC_R16_R8. Due to bug 770, the register colaescer is not going to coalesce between R16 and R16_. That will be fixed later so we can eliminate the MOV16to16_. Right now, it can only be eliminated if we are lucky that source and destination registers are the same. llvm-svn: 28164 | |||||
* | Fix some loose ends in MASM support. | Jeff Cohen | 2006-05-06 | 1 | -60/+69 | |
| | | | | llvm-svn: 28148 | |||||
* | Better implementation of truncate. ISel matches it to a pseudo instruction | Evan Cheng | 2006-05-05 | 1 | -101/+34 | |
| | | | | | | | | that gets emitted as movl (for r32 to i16, i8) or a movw (for r16 to i8). And if the destination gets allocated a subregister of the source operand, then the instruction will not be emitted at all. llvm-svn: 28119 | |||||
* | Rename MO_VirtualRegister -> MO_Register. Clean up immediate handling. | Chris Lattner | 2006-05-04 | 1 | -1/+1 | |
| | | | | llvm-svn: 28104 | |||||
* | There shalt be only one "immediate" operand type! | Chris Lattner | 2006-05-04 | 1 | -2/+1 | |
| | | | | llvm-svn: 28099 | |||||
* | Make external globals public; other minor cleanup. | Jeff Cohen | 2006-05-04 | 1 | -15/+17 | |
| | | | | llvm-svn: 28096 | |||||
* | Remove a bunch more SparcV9 specific stuff | Chris Lattner | 2006-05-04 | 1 | -6/+0 | |
| | | | | llvm-svn: 28093 | |||||
* | Remove some more unused stuff from MachineInstr that was leftover from V9. | Chris Lattner | 2006-05-04 | 1 | -4/+0 | |
| | | | | llvm-svn: 28091 | |||||
* | Extend printBasicBlockLabel a bit so that it can be used to print all | Nate Begeman | 2006-05-02 | 1 | -4/+4 | |
| | | | | | | | basic block labels, consolidating the code to do so in one place for each target. llvm-svn: 28050 | |||||
* | De-virtualize SwitchSection. | Jeff Cohen | 2006-05-02 | 1 | -26/+2 | |
| | | | | llvm-svn: 28047 | |||||
* | De-virtualize EmitZeroes. | Jeff Cohen | 2006-05-02 | 1 | -7/+2 | |
| | | | | llvm-svn: 28046 | |||||
* | Finish support for Microsoft ML/MASM. May still be a few rough edges. | Jeff Cohen | 2006-05-02 | 1 | -3/+48 | |
| | | | | llvm-svn: 28045 | |||||
* | Make Intel syntax mode friendlier to Microsoft ML assembler (still needs ↵ | Jeff Cohen | 2006-05-02 | 1 | -14/+92 | |
| | | | | | | more work). llvm-svn: 28044 | |||||
* | Remove %'s from register names when in intel mode. | Chris Lattner | 2006-05-01 | 1 | -4/+3 | |
| | | | | llvm-svn: 28027 | |||||
* | I can't spell: Register, not Regsiter. | Evan Cheng | 2006-04-28 | 1 | -2/+2 | |
| | | | | llvm-svn: 28021 | |||||
* | Implemented x86 inline asm b, h, w, k modifiers. | Evan Cheng | 2006-04-28 | 1 | -0/+122 | |
| | | | | llvm-svn: 28020 | |||||
* | Bare-bone X86 inline asm printer support. | Evan Cheng | 2006-04-28 | 1 | -0/+28 | |
| | | | | llvm-svn: 28014 | |||||
* | JumpTable support! What this represents is working asm and jit support for | Nate Begeman | 2006-04-22 | 1 | -7/+2 | |
| | | | | | | | | x86 and ppc for 100% dense switch statements when relocations are non-PIC. This support will be extended and enhanced in the coming days to support PIC, and less dense forms of jump tables. llvm-svn: 27947 | |||||
* | Make sure that debug labels are defined within the same section and after the | Jim Laskey | 2006-04-07 | 1 | -5/+5 | |
| | | | | | | entry point of a function. llvm-svn: 27494 | |||||
* | Change interface to DwarfWriter. | Jim Laskey | 2006-03-23 | 1 | -2/+2 | |
| | | | | llvm-svn: 26991 | |||||
* | Added getTargetLowering() to TargetMachine. Refactored targets to support this. | Evan Cheng | 2006-03-13 | 1 | -1/+0 | |
| | | | | llvm-svn: 26742 | |||||
* | - Emit subsections_via_symbols for Darwin. | Evan Cheng | 2006-03-07 | 1 | -7/+13 | |
| | | | | | | - Conditionalize Dwarf debugging output (Darwin only for now). llvm-svn: 26582 | |||||
* | Enable Dwarf debugging info. | Evan Cheng | 2006-03-07 | 1 | -0/+10 | |
| | | | | llvm-svn: 26581 | |||||
* | Fixed ConstantPoolIndex operand asm print bug. This fixed 2005-07-17-INT-To-FP | Evan Cheng | 2006-02-26 | 1 | -10/+16 | |
| | | | | | | and 2005-05-12-Int64ToFP. llvm-svn: 26380 | |||||
* | Added an offset field to ConstantPoolSDNode. | Evan Cheng | 2006-02-25 | 1 | -17/+9 | |
| | | | | llvm-svn: 26371 | |||||
* | PIC related bug fixes. | Evan Cheng | 2006-02-23 | 1 | -2/+2 | |
| | | | | | | | 1. Various asm printer bug. 2. Lowering bug. Now TargetGlobalAddress is wrapped in X86ISD::TGAWrapper. llvm-svn: 26324 | |||||
* | - Added option -relocation-model to set relocation model. Valid values ↵ | Evan Cheng | 2006-02-22 | 1 | -6/+7 | |
| | | | | | | | | | | include static, pic, dynamic-no-pic, and default. PPC and x86 default is dynamic-no-pic for Darwin, pic for others. - Removed options -enable-pic and -ppc-static. llvm-svn: 26315 | |||||
* | x86 / Darwin PIC support. | Evan Cheng | 2006-02-18 | 1 | -4/+43 | |
| | | | | llvm-svn: 26273 | |||||
* | Darwin ABI issues: weak, linkonce, etc. dynamic-no-pic support is complete. | Evan Cheng | 2006-02-07 | 1 | -3/+3 | |
| | | | | | | | Also fixed a function stub bug. Added weak and linkonce support for x86 Linux. llvm-svn: 26038 | |||||
* | Eliminate the printCallOperand method, using a 'call' modifier on | Chris Lattner | 2006-02-06 | 1 | -5/+5 | |
| | | | | | | printOperand instead. llvm-svn: 26025 | |||||
* | Add explicit #includes of <iostream> | Chris Lattner | 2006-01-22 | 1 | -1/+1 | |
| | | | | llvm-svn: 25515 | |||||
* | No longer track value types for asm printer operands, and remove them as | Nate Begeman | 2005-11-30 | 1 | -2/+1 | |
| | | | | | | | an argument to every operand printing function. Requires some slight tweaks to x86, the only user. llvm-svn: 24541 | |||||
* | Fixed a minor bug: - -offset != offset iff offset == MININT | Evan Cheng | 2005-11-30 | 1 | -1/+1 | |
| | | | | llvm-svn: 24522 | |||||
* | Use HasDotTypeDotSizeDirective instead of forELF | Chris Lattner | 2005-11-21 | 1 | -1/+1 | |
| | | | | llvm-svn: 24481 | |||||
* | Add a forELF flag, allowing the removal of forCygwin and simplification of | Chris Lattner | 2005-11-21 | 1 | -1/+1 | |
| | | | | | | conditionals. llvm-svn: 24475 | |||||
* | Switch to using the shared constant pool printer, along with using shorter | Chris Lattner | 2005-11-21 | 1 | -2/+2 | |
| | | | | | | CPI ids llvm-svn: 24467 | |||||
* | Adjust to capitalized AsmPrinter method names | Chris Lattner | 2005-11-21 | 1 | -2/+2 | |
| | | | | llvm-svn: 24456 | |||||
* | Use PrivateGlobalPrefix for basic block labels. This allows the x86 darwin | Chris Lattner | 2005-11-21 | 1 | -2/+4 | |
| | | | | | | port to properly use L for the bb prefix instead of . llvm-svn: 24454 | |||||
* | convert the rest of this over to use SwitchSection | Chris Lattner | 2005-11-21 | 1 | -1/+1 | |
| | | | | llvm-svn: 24448 | |||||
* | Naturally align doubles in the constant pool, set PrivateGlobalPrefix on | Chris Lattner | 2005-11-21 | 1 | -1/+1 | |
| | | | | | | | | | darwin, use it when printing the constant pool indices so the labels are appropriately private, emit cp entries to .const instead of .data on darwin and only emit a single .section for the constant pool, not one for each entry. llvm-svn: 24440 | |||||
* | Add support for printing the sse scalar comparison instruction mnemonics. | Nate Begeman | 2005-07-14 | 1 | -0/+16 | |
| | | | | llvm-svn: 22440 | |||||
* | Percolate the call up to the right superclass | Chris Lattner | 2005-07-03 | 1 | -1/+1 | |
| | | | | llvm-svn: 22330 | |||||
* | Refactor X86AsmPrinter.cpp into multiple files. Patch contributed | Chris Lattner | 2005-07-01 | 1 | -0/+205 | |
by Aaron Gray, cleaned up by me. llvm-svn: 22324 |