aboutsummaryrefslogtreecommitdiffstats
path: root/include/llvm/MC/MCStreamer.h
Commit message (Collapse)AuthorAgeFilesLines
* MC: Add default value for AddrSpace argument to EmitValue.Daniel Dunbar2010-08-061-3/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110475 91177308-0d34-0410-b5e6-96231b3b80d8
* Add relax all support to the COFF object streamer.Michael J. Spencer2010-07-311-1/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109947 91177308-0d34-0410-b5e6-96231b3b80d8
* Plug the remaining MC leaks by giving MCObjectStreamer/MCAsmStreamer ↵Benjamin Kramer2010-07-291-1/+5
| | | | | | ownership of the TargetAsmBackend and the MCCodeEmitter. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109767 91177308-0d34-0410-b5e6-96231b3b80d8
* introduce WinCOFFStreamer.cpp, patch by Michael Spencer!Chris Lattner2010-07-111-0/+6
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108102 91177308-0d34-0410-b5e6-96231b3b80d8
* Don't call flush() at a library level which isn't checking for errorsDan Gohman2010-06-011-1/+1
| | | | | | | and doesn't know where the output is going. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@105274 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a typo in a comment.Dan Gohman2010-06-011-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@105272 91177308-0d34-0410-b5e6-96231b3b80d8
* MC: Add an MCLoggingStreamer, for use in debugging integrated-as mismatches.Daniel Dunbar2010-05-231-1/+7
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@104463 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix comment and whitespace.Eric Christopher2010-05-211-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@104392 91177308-0d34-0410-b5e6-96231b3b80d8
* Make EmitTBSSSymbol take a section argument so that we can find it later.Eric Christopher2010-05-181-2/+3
| | | | | | | Fix up callers and users. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@104057 91177308-0d34-0410-b5e6-96231b3b80d8
* Add AsmParser support for darwin tbss directive.Eric Christopher2010-05-141-0/+8
| | | | | | | Nothing uses this yet. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103757 91177308-0d34-0410-b5e6-96231b3b80d8
* break coff symbol definition stuff out into proper MCStreamer callbacks,Chris Lattner2010-05-081-2/+19
| | | | | | | patch by Nathan Jeffords! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103346 91177308-0d34-0410-b5e6-96231b3b80d8
* add a twine form of MCStreamer::EmitRawText, and mc'izeChris Lattner2010-04-031-0/+1
| | | | | | | a few more things in AsmPrinter.cpp. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100294 91177308-0d34-0410-b5e6-96231b3b80d8
* add a new EmitInlineAsm function to asmprinter to handle inline asm.Chris Lattner2010-04-031-2/+11
| | | | | | | | If we have an MCAsmStreamer, we continue to emit asm textually, otherwise we (currently) emit an error to errs and ignore it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100289 91177308-0d34-0410-b5e6-96231b3b80d8
* llvm-mc: Add a -mc-relax-all option, which relaxes every fixup. We always needDaniel Dunbar2010-03-251-1/+2
| | | | | | | exactly two passes in that case, and don't ever need to recompute any layout, so this is a nice baseline for relaxation performance. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99563 91177308-0d34-0410-b5e6-96231b3b80d8
* Docuemntation corrections from John Myers.Dan Gohman2010-03-251-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99454 91177308-0d34-0410-b5e6-96231b3b80d8
* fix an MCInstPrinter leak that jyasskin pointed out:Chris Lattner2010-03-191-1/+2
| | | | | | | createAsmStreamer now takes ownership of the instprinter. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98939 91177308-0d34-0410-b5e6-96231b3b80d8
* remove MAI argument from createAsmStreamer since itChris Lattner2010-03-121-2/+1
| | | | | | | can get it from the context now. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98361 91177308-0d34-0410-b5e6-96231b3b80d8
* MC: Provide MCAssembler with a TargetAsmBackend.Daniel Dunbar2010-03-111-10/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98222 91177308-0d34-0410-b5e6-96231b3b80d8
* add a EmitSymbolValue convenience method to MCStreamer.Chris Lattner2010-03-091-0/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98017 91177308-0d34-0410-b5e6-96231b3b80d8
* This is the first patch to put the needed bits in place to eventually allow codeKevin Enderby2010-02-231-0/+14
| | | | | | | | | | | | 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). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96963 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix various doxygen warnings.Dan Gohman2010-02-221-17/+17
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96779 91177308-0d34-0410-b5e6-96231b3b80d8
* llvm-mc: Remove --show-fixups and always show as part of --show-encoding.Daniel Dunbar2010-02-101-4/+1
| | | | | | Also, fix a silly memory leak. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95752 91177308-0d34-0410-b5e6-96231b3b80d8
* llvm-mc: Add --show-fixups option, for displaying the instruction fixup ↵Daniel Dunbar2010-02-091-1/+4
| | | | | | information in the asm comments. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95710 91177308-0d34-0410-b5e6-96231b3b80d8
* llvm-mc: Add --show-inst option, for showing the MCInst inline with the assemblyDaniel Dunbar2010-02-031-1/+11
| | | | | | output. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95227 91177308-0d34-0410-b5e6-96231b3b80d8
* Hook up -filetype=obj through the MachO streamer. Here's a demo:Chris Lattner2010-02-021-1/+1
| | | | | | | | | | | | | | | $ cat t.ll @g = global i32 42 $ llc t.ll -o t.o -filetype=obj $ nm t.o 00000000 D _g There is still a ton of work left. Instructions are not being encoded yet apparently. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95162 91177308-0d34-0410-b5e6-96231b3b80d8
* refactor code so that LLVMTargetMachine creates the asmstreamer and Chris Lattner2010-02-021-0/+4
| | | | | | | | mccontext instead of having AsmPrinter do it. This allows other types of MCStreamer's to be passed in. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95155 91177308-0d34-0410-b5e6-96231b3b80d8
* mcstreamerize gprel32 emission.Chris Lattner2010-01-251-0/+7
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94452 91177308-0d34-0410-b5e6-96231b3b80d8
* mcstreamerize .file and .file. This also fixes an issue where theChris Lattner2010-01-251-0/+9
| | | | | | | | normal form of .file would fail if the filename had a weird character in it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94437 91177308-0d34-0410-b5e6-96231b3b80d8
* emit the .size directive for global variables on ELF throughChris Lattner2010-01-251-0/+8
| | | | | | | mcstreamer. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94416 91177308-0d34-0410-b5e6-96231b3b80d8
* mcize lcomm, simplify .comm, extend both to support 64-bit sizes.Chris Lattner2010-01-231-3/+9
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94299 91177308-0d34-0410-b5e6-96231b3b80d8
* move the various directive enums out of the MCStreamer classChris Lattner2010-01-231-27/+3
| | | | | | | into a new MCDirectives.h file. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94294 91177308-0d34-0410-b5e6-96231b3b80d8
* mcize jump table and constant pool entry labels, .local on elf,Chris Lattner2010-01-231-0/+1
| | | | | | | and some .weak directives. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94284 91177308-0d34-0410-b5e6-96231b3b80d8
* Convert some more random-comment-printing stuff to use Chris Lattner2010-01-221-0/+8
| | | | | | | | AddComment and GetCommentOS. Add a blank line between globals (even in non-verbose mode) to make the assembly more readable. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94202 91177308-0d34-0410-b5e6-96231b3b80d8
* add a new MCAsmStreamer::GetCommentOS method to simplify stuffChris Lattner2010-01-221-0/+5
| | | | | | | that doesn't want to use twines. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94199 91177308-0d34-0410-b5e6-96231b3b80d8
* rename addComment -> AddComment for consistency.Chris Lattner2010-01-221-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94190 91177308-0d34-0410-b5e6-96231b3b80d8
* Add the ability for MCStreamer to emit comments on the same line as directives.Chris Lattner2010-01-221-1/+12
| | | | | | | | | | | | | | Switch over the asm-verbose comment for double values to use it. We now get: _x: .long 343597384 ## double 1.231200e+02 .long 1079953326 For example, note that the comment is on the same line as the .long. Woo. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94166 91177308-0d34-0410-b5e6-96231b3b80d8
* pass "-fasm-verbose" into createAsmStreamer.Chris Lattner2010-01-221-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94165 91177308-0d34-0410-b5e6-96231b3b80d8
* give createAsmStreamer an 'isLittleEndian' argument.Chris Lattner2010-01-201-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93986 91177308-0d34-0410-b5e6-96231b3b80d8
* add a new EmitIntValue method that MCStreamer impls can optionally defineChris Lattner2010-01-191-0/+4
| | | | | | | and that clients can use. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93923 91177308-0d34-0410-b5e6-96231b3b80d8
* eliminate AsmPrinter::EmitZeros: just use MCStreamer directly.Chris Lattner2010-01-191-0/+6
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93918 91177308-0d34-0410-b5e6-96231b3b80d8
* Generalize mcasmstreamer data emission APIs to take an address spaceChris Lattner2010-01-191-3/+5
| | | | | | | identifier. There is no way to work around it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93896 91177308-0d34-0410-b5e6-96231b3b80d8
* add a "MCStreamer::EmitFill" method, and move the default implementationChris Lattner2010-01-191-0/+5
| | | | | | | (which just iteratively emits bytes) to MCStreamer. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93888 91177308-0d34-0410-b5e6-96231b3b80d8
* Pass StringRef by value.Daniel Dunbar2009-11-061-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86251 91177308-0d34-0410-b5e6-96231b3b80d8
* Move DataTypes.h to include/llvm/System, update all users. This breaks the lastChandler Carruth2009-10-261-1/+1
| | | | | | | direct inclusion edge from System to Support. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85086 91177308-0d34-0410-b5e6-96231b3b80d8
* Change MCAsmStreamer to take an MCInstPrinter instead of a Chris Lattner2009-09-141-4/+3
| | | | | | | | | | | | | full AsmPrinter, and change TargetRegistry to keep track of registered MCInstPrinters. llvm-mc is still linking in the entire target foo to get the code emitter stuff, but this is an important step in the right direction. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81754 91177308-0d34-0410-b5e6-96231b3b80d8
* llvm-mc: Pass values to MCStreamer as MCExprs, not MCValues.Daniel Dunbar2009-08-311-4/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80578 91177308-0d34-0410-b5e6-96231b3b80d8
* llvm-mc: Simplify EmitAssignment ('.set' is identical to '=').Daniel Dunbar2009-08-311-5/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80577 91177308-0d34-0410-b5e6-96231b3b80d8
* Tweak comment.Daniel Dunbar2009-08-301-3/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80516 91177308-0d34-0410-b5e6-96231b3b80d8
* llvm-mc: MCStreamer cleanups. - Remove EmitLocalSymbol, this is unsupported ↵Daniel Dunbar2009-08-301-30/+15
| | | | | | | | for now. - Switch Emit{CommonSymbol,Zerofill} to take alignment in bytes (for consistency). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80484 91177308-0d34-0410-b5e6-96231b3b80d8
* llvm-mc: Emit .lcomm as .zerofill.Daniel Dunbar2009-08-281-2/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80343 91177308-0d34-0410-b5e6-96231b3b80d8