OSDN Git Service

Documentation for the new msasm flag, which is no
authorDale Johannesen <dalej@apple.com>
Tue, 13 Oct 2009 21:56:55 +0000 (21:56 +0000)
committerDale Johannesen <dalej@apple.com>
Tue, 13 Oct 2009 21:56:55 +0000 (21:56 +0000)
worse than the rest of the asm documentation.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84037 91177308-0d34-0410-b5e6-96231b3b80d8

docs/LangRef.html

index c590579..236538d 100644 (file)
@@ -2338,8 +2338,10 @@ has undefined behavior.</p>
    to <a href="#moduleasm"> Module-Level Inline Assembly</a>) through the use of
    a special value.  This value represents the inline assembler as a string
    (containing the instructions to emit), a list of operand constraints (stored
-   as a string), and a flag that indicates whether or not the inline asm
-   expression has side effects.  An example inline assembler expression is:</p>
+   as a string), a flag that indicates whether or not the inline asm
+   expression has side effects, and a flag indicating whether the asm came
+   originally from an asm block.  An example inline assembler
+   expression is:</p>
 
 <div class="doc_code">
 <pre>
@@ -2367,6 +2369,18 @@ call void asm sideeffect "eieio", ""()
 </pre>
 </div>
 
+<p>Inline asms derived from asm blocks are similarly marked with the
+   '<tt>msasm</tt>' keyword:</p>
+
+<div class="doc_code">
+<pre>
+call void asm msasm "eieio", ""()
+</pre>
+</div>
+
+<p>If both keywords appear the '<tt>sideeffect</tt>' keyword must come
+   first.</p>
+
 <p>TODO: The format of the asm and constraints string still need to be
    documented here.  Constraints on what can be done (e.g. duplication, moving,
    etc need to be documented).  This is probably best done by reference to