summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen
Commit message (Collapse)AuthorAgeFilesLines
...
* Remove assert to treat memmove and memset like memcpyMon P Wang2010-04-061-3/+4
| | | | llvm-svn: 100521
* propagate cookie management out one layer of function calls.Chris Lattner2010-04-062-5/+4
| | | | llvm-svn: 100510
* report errors through LLVMContext's inline asm handler if available.Chris Lattner2010-04-061-1/+15
| | | | llvm-svn: 100509
* Give MachineModuleInfo an actual Module*.Chris Lattner2010-04-062-5/+14
| | | | llvm-svn: 100508
* Remove unnecessary include.Devang Patel2010-04-061-1/+0
| | | | llvm-svn: 100505
* Fix an obvious copy-n-paste bug. It's not known to cause any miscompilation.Evan Cheng2010-04-051-4/+2
| | | | llvm-svn: 100494
* Give AsmParser an option to control whether it finalizesChris Lattner2010-04-051-1/+2
| | | | | | | | | | | | | | | | | | | | the stream. New demo: $ clang asm.c -S -o - -emit-llvm | llc -filetype=obj -o t.o $ otool -tv t.o t.o: (__TEXT,__text) section _foo: 0000000000000000 subq $0x08,%rsp 0000000000000004 movl %edi,(%rsp) 0000000000000007 movl %edi,%eax 0000000000000009 incl %eax 000000000000000b movl %eax,(%rsp) 000000000000000e movl %eax,0x04(%rsp) 0000000000000012 addq $0x08,%rsp 0000000000000016 ret llvm-svn: 100492
* add .o file writing for inline asm in llc. Here's a sillyChris Lattner2010-04-051-3/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | demo: $ clang asm.c -S -o - -emit-llvm | llc -filetype=obj -o t.o <inline asm>:1:2: error: unrecognized instruction abc incl %eax ^ LLVM ERROR: Error parsing inline asm Only problem seems to be that the parser finalizes OutStreamer at the end of the first inline asm, which isn't what we want. For example: $ cat asm.c int foo(int X) { __asm__ ("incl %0" : "+r" (X)); return X; } $ clang asm.c -S -o - -emit-llvm | llc ... subq $8, %rsp movl %edi, (%rsp) movl %edi, %eax ## InlineAsm Start incl %eax ## InlineAsm End movl %eax, (%rsp) movl %eax, 4(%rsp) addq $8, %rsp ret $ clang asm.c -S -o - -emit-llvm | llc -filetype=obj -o t.o $ otool -tv t.o t.o: (__TEXT,__text) section _foo: 0000000000000000 subq $0x08,%rsp 0000000000000004 movl %edi,(%rsp) 0000000000000007 movl %edi,%eax 0000000000000009 incl %eax $ don't stop at inc! llvm-svn: 100491
* Output floating point representations in DWARF format. This is done by outputingBill Wendling2010-04-051-0/+26
| | | | | | the FP encoding directly as a hex representation. llvm-svn: 100487
* stringref-ize the MemoryBuffer::get apis. This requiresChris Lattner2010-04-051-9/+7
| | | | | | a co-committed clang patch. llvm-svn: 100485
* Add a comment.Dan Gohman2010-04-051-0/+6
| | | | llvm-svn: 100459
* lowering a volatile llvm.memcpy to a libc memcpy is ok.Chris Lattner2010-04-051-1/+0
| | | | | | PR6779 llvm-svn: 100457
* Don't do code sinking on unreachable blocks. It's unprofitable and hazardous.Dan Gohman2010-04-051-0/+5
| | | | llvm-svn: 100455
* remove the now-redundant MMI pointer in SelectionDAG.Chris Lattner2010-04-053-50/+32
| | | | llvm-svn: 100419
* hopefully sate the clang self host build, which is apparently Chris Lattner2010-04-051-0/+1
| | | | | | | | | | | instantiating some folding set stuff that GCC isn't, requiring some types to not be incomplete. I don't know if clang is right or wrong, but unbreaking the bot is goodness. Here's the broken build: http://google1.osuosl.org:8011/builders/clang-x86_64-darwin10-selfhost/builds/1813/steps/compile.llvm.stage2/logs/stdio llvm-svn: 100418
* remove some redundant MMI arguments.Chris Lattner2010-04-052-11/+8
| | | | llvm-svn: 100417
* unthread MMI from FastISelChris Lattner2010-04-052-41/+32
| | | | llvm-svn: 100416
* remove the MMI pointer from MachineFrameInfo.Chris Lattner2010-04-051-6/+0
| | | | llvm-svn: 100415
* enhance MachineFunction to have a MMI pointer.Chris Lattner2010-04-052-3/+4
| | | | llvm-svn: 100414
* privatize more stuff, eliminate vtables.Chris Lattner2010-04-052-28/+28
| | | | llvm-svn: 100410
* reprivatize now that DwarfWriter is gone.Chris Lattner2010-04-052-4/+2
| | | | llvm-svn: 100409
* prune #includes, MMI can never be nullChris Lattner2010-04-052-5/+9
| | | | llvm-svn: 100408
* prune #includes, realize the MMI can never be null.Chris Lattner2010-04-052-20/+34
| | | | llvm-svn: 100407
* finally blast DwarfWriter away.Chris Lattner2010-04-052-83/+0
| | | | llvm-svn: 100406
* change AsmPrinter to use DwarfDebug/DwarfException directlyChris Lattner2010-04-054-25/+33
| | | | | | instead of going through DwarfWriter. llvm-svn: 100405
* trim some spurious references to DwarfWriter. SDIsel really doesn'tChris Lattner2010-04-053-6/+2
| | | | | | need it anymore, so don't addRequire it. llvm-svn: 100400
* eliminate DwarfDebug::shouldEmit, which is the same now as MMI::hasDebugInfoChris Lattner2010-04-052-13/+3
| | | | llvm-svn: 100386
* fix a regression on 2009-08-17-DebugInfo.mChris Lattner2010-04-051-0/+2
| | | | llvm-svn: 100385
* selection dag doesn't need DwarfWriter, remove some tendrils.Chris Lattner2010-04-053-15/+5
| | | | llvm-svn: 100382
* fastisel doesn't need DwarfWriter, remove some tendricles.Chris Lattner2010-04-055-19/+28
| | | | llvm-svn: 100381
* just have all targets create the DwarfWriter.Chris Lattner2010-04-051-0/+1
| | | | llvm-svn: 100377
* nuke DwarfPrinterChris Lattner2010-04-053-121/+0
| | | | llvm-svn: 100375
* make DwarfException not inherit from DwarfPrinter.Chris Lattner2010-04-053-46/+50
| | | | llvm-svn: 100374
* change SizeOf to take AsmPrinter instead of TargetData, Chris Lattner2010-04-053-24/+20
| | | | | | simplifying a bunch of code. llvm-svn: 100373
* 1) make DIE take AsmPrinter instead of DwarfPrinter.Chris Lattner2010-04-056-125/+141
| | | | | | 2) change DwarfDebug to not inherit from DwarfPrinter. llvm-svn: 100372
* Move EmitFrameMoves into AsmPrinter.Chris Lattner2010-04-045-79/+85
| | | | llvm-svn: 100371
* simplify code and reduce indentation.Chris Lattner2010-04-041-33/+30
| | | | llvm-svn: 100369
* now that the magic is dispelled, move EmitSectionOffset to AsmPrinter.Chris Lattner2010-04-044-56/+50
| | | | llvm-svn: 100368
* eliminate the magic AbsoluteDebugSectionOffsets MAI hook,Chris Lattner2010-04-041-2/+4
| | | | | | | | | which is really a property of the section being referenced. Add a predicate to MCSection to replace it. Yay for reduction in magic. llvm-svn: 100367
* only emit section labels if we have debug info, fixing a few Chris Lattner2010-04-041-4/+5
| | | | | | regtest failures. llvm-svn: 100366
* I was wrong, ocaml isn't referencing 'Ldata_begin', so remove it.Chris Lattner2010-04-042-10/+4
| | | | llvm-svn: 100365
* add some assertions to EmitSectionOffset.Chris Lattner2010-04-041-0/+8
| | | | llvm-svn: 100364
* stop emitting some dead L labels.Chris Lattner2010-04-041-9/+12
| | | | llvm-svn: 100363
* Store an use the symbols emitted at the start of the debug Chris Lattner2010-04-042-47/+61
| | | | | | sections instead of magically rematerializing them later. llvm-svn: 100362
* remove the didInitial ivar, rename emitInitial to be moreChris Lattner2010-04-044-29/+30
| | | | | | | descriptive, change EmitSectionOffset back to taking a symbol instead of a string. llvm-svn: 100361
* simplify EmitSectionOffset a little bit, improve comments.Chris Lattner2010-04-043-17/+26
| | | | llvm-svn: 100360
* The "IsSmall" argument to EmitSectionOffset is always true,Chris Lattner2010-04-043-18/+13
| | | | | | constant fold it away. llvm-svn: 100356
* eliminate the "isEH" argument to EmitSectionOffset.Chris Lattner2010-04-043-14/+9
| | | | llvm-svn: 100355
* isAbsoluteEHSectionOffsets always returns false, eliminate it Chris Lattner2010-04-041-1/+1
| | | | | | and substitute false at the one call site. llvm-svn: 100354
* move some more stuff to asmprinter.Chris Lattner2010-04-044-59/+44
| | | | llvm-svn: 100351
OpenPOWER on IntegriCloud