diff options
author | Rafael Espindola <rafael.espindola@gmail.com> | 2013-10-09 02:05:08 +0000 |
---|---|---|
committer | Rafael Espindola <rafael.espindola@gmail.com> | 2013-10-09 02:05:08 +0000 |
commit | c52566d2226aa744935c682c0073529002d4eb4d (patch) | |
tree | 0d0dc28bab61ad5b12f99155013bbc14032ff196 | |
parent | 8bb2a23a1d61de55a5e5d334ca3a60baba410745 (diff) | |
download | external_llvm-c52566d2226aa744935c682c0073529002d4eb4d.zip external_llvm-c52566d2226aa744935c682c0073529002d4eb4d.tar.gz external_llvm-c52566d2226aa744935c682c0073529002d4eb4d.tar.bz2 |
Add a paragraph about MCTargetStreamer.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@192265 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | docs/CodeGenerator.rst | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/docs/CodeGenerator.rst b/docs/CodeGenerator.rst index a1fec81..4b99288 100644 --- a/docs/CodeGenerator.rst +++ b/docs/CodeGenerator.rst @@ -636,6 +636,13 @@ file (MCObjectStreamer). MCAsmStreamer is a straight-forward implementation that prints out a directive for each method (e.g. ``EmitValue -> .byte``), but MCObjectStreamer implements a full assembler. +For target specific directives, the MCStreamer has a MCTargetStreamer instance. +Each target that needs it defines a class that inherits from it and is a lot +like MCStreamer itself: It has one method per directive and two classes that +inherit from it, a target object streamer and a target asm streamer. The target +asm streamer just prints it (``emitFnStart -> .fnstrart``), and the object +streamer implement the assembler logic for it. + The ``MCContext`` class ----------------------- |