summaryrefslogtreecommitdiffstats
path: root/llvm/lib/MC/MCAsmStreamer.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Next step: Only pad debug_line when the target is darwin. Add a FIXME to avoidRafael Espindola2010-12-041-2/+1
| | | | | | | | | | | doing that if the target is darwin10 or newer. This fixes *) Direct object emission was producing objects without the workaround on darwin9. *) Assembly printing was producing objects with the workaround on linux. llvm-svn: 120866
* Make EmitIntValue more efficient and more like what we do for leb128. TheRafael Espindola2010-12-031-0/+7
| | | | | | difference is much smaller (about 0.3s) but significant. llvm-svn: 120787
* Do with uleb the same trick we now do with dwarf line/address advances. ThisRafael Espindola2010-12-031-8/+2
| | | | | | avoids creating leb128 fragments and speeds up the test in PR8711 to 33s. llvm-svn: 120774
* Try to resolve symbol differences early, and if successful create a plainRafael Espindola2010-12-031-4/+12
| | | | | | | data fragment. This reduces the time to assemble the test in 8711 from 60s to 54s. llvm-svn: 120767
* It may not be an option to skip .debug_line if there are file reference in ↵Devang Patel2010-12-031-2/+2
| | | | | | already emitted debug info. So, for now, emit dummy line table entry to make older linker and assemblers happy. This is not a new behavior, original AsmPrinter emitted similar line table entries. llvm-svn: 120760
* Use set directive for StartMinusEndExpr.Devang Patel2010-12-021-2/+11
| | | | | | This is a fix for llvm-gcc-i386-darwin9 buildbot failure. llvm-svn: 120742
* If tehre are not any line entry then do not try to emit .debug_line section.Devang Patel2010-12-021-1/+1
| | | | llvm-svn: 120637
* Make EmitIntValue non virtual.Rafael Espindola2010-11-281-27/+9
| | | | llvm-svn: 120271
* Add basic CFI methods to the streamer interface.Rafael Espindola2010-11-221-0/+78
| | | | llvm-svn: 119972
* Added support for the Mach-O .symbol_resolver directive. rdar://8673046Kevin Enderby2010-11-191-0/+1
| | | | llvm-svn: 119816
* Fix llvm-gcc boostrap on OS X by avoiding printing sleb and uleb whenRafael Espindola2010-11-191-0/+16
| | | | | | possible. llvm-svn: 119785
* Change some methods in MCDwarf.cpp to be able to handle an arbitraryRafael Espindola2010-11-191-8/+40
| | | | | | | | | | | | MCStreamer instead of just MCObjectStreamer. Address changes cannot be as efficient as we have to use DW_LNE_set_addres, but at least most of the logic is shared. This will be used so that, with CodeGen still using EmitDwarfLocDirective, llvm-gcc is able to produce debug_line sections without needing an assembler that supports .loc. llvm-svn: 119777
* Add .loc methods to the streamer.Rafael Espindola2010-11-161-2/+37
| | | | | | | Next: Add support for the !HasDotLocAndDotFile case to the MCAsmStreamer and then switch codegen to use it. llvm-svn: 119384
* correct the fixup comment printer to work on big endian platforms.Chris Lattner2010-11-151-1/+8
| | | | llvm-svn: 119122
* Fix warning and add support for printing gnu_unique_object.Rafael Espindola2010-11-131-0/+2
| | | | llvm-svn: 118981
* Add '.code 32' assembler directive to MC streamers.Jim Grosbach2010-11-051-0/+1
| | | | llvm-svn: 118309
* MC'ize the '.code 16' and '.thumb_func' ARM directives.Jim Grosbach2010-11-051-0/+11
| | | | llvm-svn: 118301
* Add 118023 back, but with proper spelling for .uleb128/.sleb128.Rafael Espindola2010-11-041-2/+4
| | | | llvm-svn: 118254
* Add support for expressions in .sleb/.uleb directives.Rafael Espindola2010-11-021-0/+16
| | | | llvm-svn: 118023
* Implement .weakref.Rafael Espindola2010-11-011-0/+6
| | | | llvm-svn: 117911
* Tiny patch for proof-of-concept cleanup of ARMAsmPrinter::EmitStartOfAsmFile()Jason W Kim2010-09-301-0/+1
| | | | | | | Small test for sanity check of resulting ARM .s file. Tested against -r115129. llvm-svn: 115133
* allow target-specific label suffixes, patch by Yuri Gribov!Chris Lattner2010-09-221-1/+1
| | | | llvm-svn: 114592
* grammar tweakageJim Grosbach2010-09-221-2/+2
| | | | llvm-svn: 114561
* remove trailing whitespaceJim Grosbach2010-09-221-31/+31
| | | | llvm-svn: 114560
* Add a InitSections method to the streamer interface.Rafael Espindola2010-09-151-0/+8
| | | | | | | | | | | | | | The ELF implementation now creates text, data and bss to match the gnu as behavior. The text streamer still has the old MachO specific behavior since the testsuite checks that it will error when a directive is given before a setting the current section for example. A nice benefit is that -n is not required anymore when producing ELF files. llvm-svn: 114027
* Add AsmParser support for the ELF .previous directive. Patch by Roman Divacky.Benjamin Kramer2010-09-021-0/+1
| | | | llvm-svn: 112849
* Plug the remaining MC leaks by giving MCObjectStreamer/MCAsmStreamer ↵Benjamin Kramer2010-07-291-1/+1
| | | | | | ownership of the TargetAsmBackend and the MCCodeEmitter. llvm-svn: 109767
* Added the darwin .weak_def_can_be_hidden directive.Kevin Enderby2010-07-081-0/+1
| | | | llvm-svn: 107886
* "This is just a cosmetic change in MCAsmStreamer.cpp/EmitSymbolAttribute: ↵Chris Lattner2010-06-211-11/+11
| | | | | | | | | | | all attributes have now a \t before and after, as done for '.type'. This makes the output look consistent, as well as help some third party assemblers expecting the attributes to be in the second column." Patch by Arnaud de Grandmaison! llvm-svn: 106469
* Don't call flush() at a library level which isn't checking for errorsDan Gohman2010-06-011-1/+0
| | | | | | and doesn't know where the output is going. llvm-svn: 105274
* MC: Change MCInst::dump_pretty to not include a trailing newline.Daniel Dunbar2010-05-261-2/+4
| | | | llvm-svn: 104696
* Make EmitTBSSSymbol take a section argument so that we can find it later.Eric Christopher2010-05-181-6/+9
| | | | | | Fix up callers and users. llvm-svn: 104057
* Assume that we'll handle mangling the symbols earlier and just put theEric Christopher2010-05-171-5/+4
| | | | | | symbol to the file as we have it. Simplifies out tbss handling. llvm-svn: 103928
* Add AsmParser support for darwin tbss directive.Eric Christopher2010-05-141-0/+18
| | | | | | Nothing uses this yet. llvm-svn: 103757
* break coff symbol definition stuff out into proper MCStreamer callbacks,Chris Lattner2010-05-081-1/+24
| | | | | | patch by Nathan Jeffords! llvm-svn: 103346
* MC/Mach-O: Mark absolute variable's appropriately, and add Mach-O support forDaniel Dunbar2010-05-051-1/+0
| | | | | | | writing them. - <rdar://problem/7885351> integrated assembler broken for i386 objc code llvm-svn: 103112
* MC: Reject attempts to define a variable symbol.Daniel Dunbar2010-05-051-4/+1
| | | | llvm-svn: 103111
* MC: Rename MCSymbol::{g,s}etValue -> MCSymbol::{g,s}etVariableValue.Daniel Dunbar2010-05-051-1/+1
| | | | llvm-svn: 103095
* fix an ugly wart in the MCInstPrinter api where theChris Lattner2010-04-041-1/+1
| | | | | | | | raw_ostream to print an instruction to had to be specified at MCInstPrinter construction time instead of being able to pick at each call to printInstruction. llvm-svn: 100307
* allow attaching comments to raw text.Chris Lattner2010-04-031-6/+3
| | | | llvm-svn: 100292
* add a new EmitInlineAsm function to asmprinter to handle inline asm.Chris Lattner2010-04-031-1/+21
| | | | | | | If we have an MCAsmStreamer, we continue to emit asm textually, otherwise we (currently) emit an error to errs and ignore it. llvm-svn: 100289
* MCInst: Add ::dump_pretty.Daniel Dunbar2010-03-221-17/+3
| | | | llvm-svn: 99216
* fix an MCInstPrinter leak that jyasskin pointed out:Chris Lattner2010-03-191-1/+2
| | | | | | createAsmStreamer now takes ownership of the instprinter. llvm-svn: 98939
* remove MAI argument from createAsmStreamer since itChris Lattner2010-03-121-5/+4
| | | | | | can get it from the context now. llvm-svn: 98361
* genericize MCAsmStreamer::EmitCodeAlignment to support other targetsChris Lattner2010-02-231-2/+3
| | | | | | so that it doesn't break them when the code generator starts using it. llvm-svn: 96966
* This is the first patch to put the needed bits in place to eventually allow codeKevin Enderby2010-02-231-0/+9
| | | | | | | | | | | to be aligned with optimal nops. This patch does not change any functionality and when the compiler is changed to use EmitCodeAlignment() it should also not change the resulting output. Once the compiler change is made and everything looks good the next patch with the table of optimal X86 nops will be added to WriteNopData() changing the output. There are many FIXMEs in this patch which will be removed when we have better target hooks (coming soon I hear). llvm-svn: 96963
* add a new MCInstPrinter::getOpcodeName interface, when it is Chris Lattner2010-02-111-0/+6
| | | | | | | implemented, llvm-mc --show-inst now uses it to print the instruction opcode as well as the number. llvm-svn: 95929
* make getFixupKindInfo return a const reference, allowingChris Lattner2010-02-111-2/+2
| | | | | | | the tables to be const. Teach MCCodeEmitter to handle the target-indep kinds so that we don't crash on them. llvm-svn: 95924
* MC: Switch MCFixup to just hold an MCExpr pointer instead of index into theDaniel Dunbar2010-02-101-1/+1
| | | | | | MCInst it came from. llvm-svn: 95767
* llvm-mc: Remove --show-fixups and always show as part of --show-encoding.Daniel Dunbar2010-02-101-19/+6
| | | | | | Also, fix a silly memory leak. llvm-svn: 95752
OpenPOWER on IntegriCloud