summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen/AsmPrinter.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Fix an assert-on-inline-inline-asm bug.Chris Lattner2006-06-081-12/+18
| | | | llvm-svn: 28727
* Remove dead varChris Lattner2006-05-121-1/+0
| | | | llvm-svn: 28250
* Refactor a bunch of includes so that TargetMachine.h doesn't have to includeOwen Anderson2006-05-121-0/+1
| | | | | | | TargetData.h. This should make recompiles a bit faster with my current TargetData tinkering. llvm-svn: 28238
* Fix a regression in my patch from last night that broke the llvmgcc4 build onChris Lattner2006-05-091-1/+1
| | | | | | ppc llvm-svn: 28205
* Implement MASM sections correctly, without a "has masm sections flag" and a ↵Chris Lattner2006-05-091-27/+17
| | | | | | bunch of special case code. llvm-svn: 28194
* Oh yeah, there are two of these now, unify both.Chris Lattner2006-05-091-22/+15
| | | | llvm-svn: 28192
* Setting SwitchToSectionDirective properly in the MASM backend permits a bunchChris Lattner2006-05-091-22/+15
| | | | | | of code to be unified. llvm-svn: 28191
* Don't prefix section directives with a tab. Doing so causes blank lines toChris Lattner2006-05-091-1/+1
| | | | | | be emitted to the .s file. llvm-svn: 28189
* Make the masm codepath work like the normal code path.Chris Lattner2006-05-091-2/+4
| | | | llvm-svn: 28188
* The MASM asmprinter has been fixed, these hacks are no longer needed.Chris Lattner2006-05-091-20/+2
| | | | llvm-svn: 28186
* Split SwitchSection into SwitchTo{Text|Data}Section methods.Chris Lattner2006-05-091-14/+56
| | | | llvm-svn: 28184
* Fix some loose ends in MASM support.Jeff Cohen2006-05-061-5/+5
| | | | llvm-svn: 28148
* Indent multiline asm strings more nicelyChris Lattner2006-05-051-5/+9
| | | | llvm-svn: 28132
* Refactor TargetMachine, pushing handling of TargetData into the ↵Owen Anderson2006-05-031-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 nameNate Begeman2006-05-021-3/+2
| | | | llvm-svn: 28057
* Extend printBasicBlockLabel a bit so that it can be used to print allNate Begeman2006-05-021-3/+8
| | | | | | | basic block labels, consolidating the code to do so in one place for each target. llvm-svn: 28050
* De-virtualize SwitchSection.Jeff Cohen2006-05-021-10/+42
| | | | llvm-svn: 28047
* De-virtualize EmitZeroes.Jeff Cohen2006-05-021-3/+7
| | | | llvm-svn: 28046
* Make Intel syntax mode friendlier to Microsoft ML assembler (still needs ↵Jeff Cohen2006-05-021-10/+16
| | | | | | more work). llvm-svn: 28044
* Format #APP lines a bit nicerChris Lattner2006-05-011-2/+2
| | | | llvm-svn: 28026
* JumpTable support! What this represents is working asm and jit support forNate Begeman2006-04-221-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 theJim Laskey2006-03-071-2/+6
| | | | | | asm printer. llvm-svn: 26599
* Move #include "llvm/CodeGen/AsmPrinter.h" to top since it's the interface.Evan Cheng2006-03-031-1/+1
| | | | llvm-svn: 26493
* Don't print llvm constant in assmebly file. Assembler won't like comments thatEvan Cheng2006-03-011-1/+3
| | | | | | span multiple lines. llvm-svn: 26463
* Use the PrintAsmMemoryOperand to print addressing modes.Chris Lattner2006-02-241-4/+19
| | | | llvm-svn: 26364
* Pass all the flags to the asm printer, not just the # operands.Chris Lattner2006-02-241-2/+4
| | | | llvm-svn: 26362
* Record all of the expanded registers in the DAG and machine instr, fixingChris Lattner2006-02-231-5/+12
| | | | | | several bugs in inline asm expanded operands. llvm-svn: 26332
* Adjust to MachineConstantPool interface change: instead of keeping aChris Lattner2006-02-091-1/+7
| | | | | | value/alignment pair for each constant, keep a value/offset pair. llvm-svn: 26078
* rename fields of constant pool entriesChris Lattner2006-02-091-4/+4
| | | | llvm-svn: 26076
* Simplify code, alignment must be specified now.Chris Lattner2006-02-091-10/+1
| | | | llvm-svn: 26074
* Add support for assembler directives that wrap inline asmChris Lattner2006-02-081-1/+4
| | | | llvm-svn: 26065
* Add support for modifier characters to operand printersChris Lattner2006-02-061-2/+21
| | | | llvm-svn: 26021
* make sure that global doubles are aligned to 8 bytesChris Lattner2006-02-051-5/+10
| | | | llvm-svn: 25981
* Implement the AsmPrinter::getPreferredAlignmentLog method.Chris Lattner2006-02-051-0/+16
| | | | llvm-svn: 25978
* Implement smart printing of inline asm strings, handling variants andChris Lattner2006-02-011-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 Lattner2006-02-011-0/+4
| | | | llvm-svn: 25865
* Allow the specification of explicit alignments for constant pool entries.Evan Cheng2006-01-311-5/+9
| | | | llvm-svn: 25855
* Print the most trivial inline asms.Chris Lattner2006-01-301-1/+12
| | | | llvm-svn: 25822
* Stub out a methodChris Lattner2006-01-271-0/+6
| | | | llvm-svn: 25676
* Set up MachineDebugInfo to scan for debug information form "llvm.db"g globals.Jim Laskey2006-01-261-0/+5
| | | | | | Global Variable information is now pulled from "llvm.dbg.globals" llvm-svn: 25655
* rename methodChris Lattner2006-01-241-3/+4
| | | | llvm-svn: 25572
* Print file-scope inline asm blocks at the start of the output file.Chris Lattner2006-01-231-0/+5
| | | | llvm-svn: 25565
* If using __main, emit global ctor/dtor list like any other globalChris Lattner2006-01-121-2/+2
| | | | llvm-svn: 25251
* Applied some recommend changes from sabre. The dominate one beginning "let theJim Laskey2006-01-041-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 Laskey2006-01-041-0/+1
| | | | llvm-svn: 25093
* add these so I can be less naughtyDuraid Madina2005-12-281-0/+1
| | | | llvm-svn: 25034
* Don't emit a null terminator, nor anything after it, to the ctor/dtor listChris Lattner2005-12-211-1/+4
| | | | llvm-svn: 24887
* Add a couple more fields, move ctor init list to .cpp file, add supportChris Lattner2005-12-131-0/+70
| | | | | | for emitting the ctor/dtor list for common targets. llvm-svn: 24694
* Avoid emitting two tabs when switching to a named sectionChris Lattner2005-12-091-2/+2
| | | | llvm-svn: 24646
* Teach the SelectionDAG ISel how to turn ConstantPacked values intoNate Begeman2005-12-061-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
OpenPOWER on IntegriCloud