From 09fed25a07287d12ba74ec5f00b479fe1a9b56b7 Mon Sep 17 00:00:00 2001 From: Dale Johannesen Date: Tue, 13 Oct 2009 21:56:55 +0000 Subject: Documentation for the new msasm flag, which is no 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 | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) (limited to 'docs/LangRef.html') diff --git a/docs/LangRef.html b/docs/LangRef.html index c590579181..236538d3e4 100644 --- a/docs/LangRef.html +++ b/docs/LangRef.html @@ -2338,8 +2338,10 @@ has undefined behavior.

to Module-Level Inline Assembly) 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:

+ 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:

@@ -2367,6 +2369,18 @@ call void asm sideeffect "eieio", ""()
 
+

Inline asms derived from asm blocks are similarly marked with the + 'msasm' keyword:

+ +
+
+call void asm msasm "eieio", ""()
+
+
+ +

If both keywords appear the 'sideeffect' keyword must come + first.

+

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 -- cgit v1.2.3-18-g5258