Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Fix some loose ends in MASM support. | Jeff Cohen | 2006-05-06 | 1 | -5/+5 |
| | | | | llvm-svn: 28148 | ||||
* | Indent multiline asm strings more nicely | Chris Lattner | 2006-05-05 | 1 | -5/+9 |
| | | | | llvm-svn: 28132 | ||||
* | Refactor TargetMachine, pushing handling of TargetData into the ↵ | Owen Anderson | 2006-05-03 | 1 | -16/+16 |
| | | | | | | | | target-specific subclasses. This has one caller-visible change: getTargetData() now returns a pointer instead of a reference. This fixes PR 759. llvm-svn: 28074 | ||||
* | Print function number instead of name | Nate Begeman | 2006-05-02 | 1 | -3/+2 |
| | | | | llvm-svn: 28057 | ||||
* | Extend printBasicBlockLabel a bit so that it can be used to print all | Nate Begeman | 2006-05-02 | 1 | -3/+8 |
| | | | | | | | 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 | -10/+42 |
| | | | | llvm-svn: 28047 | ||||
* | De-virtualize EmitZeroes. | Jeff Cohen | 2006-05-02 | 1 | -3/+7 |
| | | | | llvm-svn: 28046 | ||||
* | Make Intel syntax mode friendlier to Microsoft ML assembler (still needs ↵ | Jeff Cohen | 2006-05-02 | 1 | -10/+16 |
| | | | | | | more work). llvm-svn: 28044 | ||||
* | Format #APP lines a bit nicer | Chris Lattner | 2006-05-01 | 1 | -2/+2 |
| | | | | llvm-svn: 28026 | ||||
* | JumpTable support! What this represents is working asm and jit support for | Nate Begeman | 2006-04-22 | 1 | -0/+38 |
| | | | | | | | | 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 | ||||
* | Use "llvm.metadata" section for debug globals. Filter out these globals in the | Jim Laskey | 2006-03-07 | 1 | -2/+6 |
| | | | | | | asm printer. llvm-svn: 26599 | ||||
* | Move #include "llvm/CodeGen/AsmPrinter.h" to top since it's the interface. | Evan Cheng | 2006-03-03 | 1 | -1/+1 |
| | | | | llvm-svn: 26493 | ||||
* | Don't print llvm constant in assmebly file. Assembler won't like comments that | Evan Cheng | 2006-03-01 | 1 | -1/+3 |
| | | | | | | span multiple lines. llvm-svn: 26463 | ||||
* | Use the PrintAsmMemoryOperand to print addressing modes. | Chris Lattner | 2006-02-24 | 1 | -4/+19 |
| | | | | llvm-svn: 26364 | ||||
* | Pass all the flags to the asm printer, not just the # operands. | Chris Lattner | 2006-02-24 | 1 | -2/+4 |
| | | | | llvm-svn: 26362 | ||||
* | Record all of the expanded registers in the DAG and machine instr, fixing | Chris Lattner | 2006-02-23 | 1 | -5/+12 |
| | | | | | | several bugs in inline asm expanded operands. llvm-svn: 26332 | ||||
* | Adjust to MachineConstantPool interface change: instead of keeping a | Chris Lattner | 2006-02-09 | 1 | -1/+7 |
| | | | | | | value/alignment pair for each constant, keep a value/offset pair. llvm-svn: 26078 | ||||
* | rename fields of constant pool entries | Chris Lattner | 2006-02-09 | 1 | -4/+4 |
| | | | | llvm-svn: 26076 | ||||
* | Simplify code, alignment must be specified now. | Chris Lattner | 2006-02-09 | 1 | -10/+1 |
| | | | | llvm-svn: 26074 | ||||
* | Add support for assembler directives that wrap inline asm | Chris Lattner | 2006-02-08 | 1 | -1/+4 |
| | | | | llvm-svn: 26065 | ||||
* | Add support for modifier characters to operand printers | Chris Lattner | 2006-02-06 | 1 | -2/+21 |
| | | | | llvm-svn: 26021 | ||||
* | make sure that global doubles are aligned to 8 bytes | Chris Lattner | 2006-02-05 | 1 | -5/+10 |
| | | | | llvm-svn: 25981 | ||||
* | Implement the AsmPrinter::getPreferredAlignmentLog method. | Chris Lattner | 2006-02-05 | 1 | -0/+16 |
| | | | | llvm-svn: 25978 | ||||
* | Implement smart printing of inline asm strings, handling variants and | Chris Lattner | 2006-02-01 | 1 | -5/+112 |
| | | | | | | | | | | | | | | | | | | | | | | substituted operands. For this testcase: int %test(int %A, int %B) { %C = call int asm "xyz $0, $1, $2", "=r,r,r"(int %A, int %B) ret int %C } we now emit: _test: or r2, r3, r3 or r3, r4, r4 xyz r2, r2, r3 ;; look here or r3, r2, r2 blr ... note the substituted operands. :) llvm-svn: 25886 | ||||
* | adjust to changes in InlineAsm interface. Fix a few minor bugs. | Chris Lattner | 2006-02-01 | 1 | -0/+4 |
| | | | | llvm-svn: 25865 | ||||
* | Allow the specification of explicit alignments for constant pool entries. | Evan Cheng | 2006-01-31 | 1 | -5/+9 |
| | | | | llvm-svn: 25855 | ||||
* | Print the most trivial inline asms. | Chris Lattner | 2006-01-30 | 1 | -1/+12 |
| | | | | llvm-svn: 25822 | ||||
* | Stub out a method | Chris Lattner | 2006-01-27 | 1 | -0/+6 |
| | | | | llvm-svn: 25676 | ||||
* | Set up MachineDebugInfo to scan for debug information form "llvm.db"g globals. | Jim Laskey | 2006-01-26 | 1 | -0/+5 |
| | | | | | | Global Variable information is now pulled from "llvm.dbg.globals" llvm-svn: 25655 | ||||
* | rename method | Chris Lattner | 2006-01-24 | 1 | -3/+4 |
| | | | | llvm-svn: 25572 | ||||
* | Print file-scope inline asm blocks at the start of the output file. | Chris Lattner | 2006-01-23 | 1 | -0/+5 |
| | | | | llvm-svn: 25565 | ||||
* | If using __main, emit global ctor/dtor list like any other global | Chris Lattner | 2006-01-12 | 1 | -2/+2 |
| | | | | llvm-svn: 25251 | ||||
* | Applied some recommend changes from sabre. The dominate one beginning "let the | Jim Laskey | 2006-01-04 | 1 | -1/+0 |
| | | | | | | | pass manager do it's thing." Fixes crash when compiling -g files and suppresses dwarf statements if no debug info is present. llvm-svn: 25100 | ||||
* | Tie dwarf generation to darwin assembler. | Jim Laskey | 2006-01-04 | 1 | -0/+1 |
| | | | | llvm-svn: 25093 | ||||
* | add these so I can be less naughty | Duraid Madina | 2005-12-28 | 1 | -0/+1 |
| | | | | llvm-svn: 25034 | ||||
* | Don't emit a null terminator, nor anything after it, to the ctor/dtor list | Chris Lattner | 2005-12-21 | 1 | -1/+4 |
| | | | | llvm-svn: 24887 | ||||
* | Add a couple more fields, move ctor init list to .cpp file, add support | Chris Lattner | 2005-12-13 | 1 | -0/+70 |
| | | | | | | for emitting the ctor/dtor list for common targets. llvm-svn: 24694 | ||||
* | Avoid emitting two tabs when switching to a named section | Chris Lattner | 2005-12-09 | 1 | -2/+2 |
| | | | | llvm-svn: 24646 | ||||
* | Teach the SelectionDAG ISel how to turn ConstantPacked values into | Nate Begeman | 2005-12-06 | 1 | -0/+8 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | constant nodes with vector types. Also teach the asm printer how to print ConstantPacked constant pool entries. This allows us to generate altivec code such as the following, which adds a vector constantto a packed float. LCPI1_0: <4 x float> < float 0.0e+0, float 0.0e+0, float 0.0e+0, float 1.0e+0 > .space 4 .space 4 .space 4 .long 1065353216 ; float 1 .text .align 4 .globl _foo _foo: lis r2, ha16(LCPI1_0) la r2, lo16(LCPI1_0)(r2) li r4, 0 lvx v0, r4, r2 lvx v1, r4, r3 vaddfp v0, v1, v0 stvx v0, r4, r3 blr For the llvm code: void %foo(<4 x float> * %a) { entry: %tmp1 = load <4 x float> * %a; %tmp2 = add <4 x float> %tmp1, < float 0.0, float 0.0, float 0.0, float 1.0 > store <4 x float> %tmp2, <4 x float> *%a ret void } llvm-svn: 24616 | ||||
* | Allow target to customize directive used to switch to arbitrary section in ↵ | Chris Lattner | 2005-11-21 | 1 | -1/+28 |
| | | | | | | | | SwitchSection, add generic constant pool emitter llvm-svn: 24464 | ||||
* | increment the function number in SetupMachineFunction | Chris Lattner | 2005-11-21 | 1 | -0/+1 |
| | | | | llvm-svn: 24461 | ||||
* | Adjust to capitalized asmprinter method names | Chris Lattner | 2005-11-21 | 1 | -18/+18 |
| | | | | llvm-svn: 24457 | ||||
* | Add section switching to common code generator code. Add a couple of | Chris Lattner | 2005-11-21 | 1 | -0/+19 |
| | | | | | | asserts. llvm-svn: 24445 | ||||
* | Remove extraneous parents around constants when using a constant expr cast. | Chris Lattner | 2005-11-15 | 1 | -2/+0 |
| | | | | llvm-svn: 24357 | ||||
* | Teach emitAlignment to handle explicit alignment requests by globals. | Chris Lattner | 2005-11-14 | 1 | -1/+3 |
| | | | | llvm-svn: 24354 | ||||
* | Get rid of casts by #including the right header | Chris Lattner | 2005-11-10 | 1 | -6/+6 |
| | | | | llvm-svn: 24275 | ||||
* | Compile C strings to: | Chris Lattner | 2005-11-10 | 1 | -0/+1 |
| | | | | | | | | | | | | | l1__2E_str_1: ; '.str_1' .asciz "foo" not: .align 0 l1__2E_str_1: ; '.str_1' .asciz "foo" llvm-svn: 24273 | ||||
* | add support for .asciz, and enable it by default. If your target ↵ | Chris Lattner | 2005-11-10 | 1 | -5/+13 |
| | | | | | | | | | | | | | | | | assemblerdoesn't support .asciz, just set AscizDirective to null in your asmprinter. This compiles C strings to: l1__2E_str_1: ; '.str_1' .asciz "foo" instead of: l1__2E_str_1: ; '.str_1' .ascii "foo\000" llvm-svn: 24272 | ||||
* | Culling out use of unions for converting FP to bits and vice versa. | Jim Laskey | 2005-08-17 | 1 | -18/+7 |
| | | | | llvm-svn: 22838 | ||||
* | Handle 64-bit constant exprs on 64-bit targets. | Chris Lattner | 2005-08-08 | 1 | -1/+3 |
| | | | | llvm-svn: 22696 |