[llvm-commits] CVS: llvm/www/docs/LangRef.html
Chris Lattner
lattner at cs.uiuc.edu
Mon Sep 8 13:29:02 PDT 2003
Changes in directory llvm/www/docs:
LangRef.html updated: 1.30 -> 1.31
---
Log message:
Add info about volatile loads/stores
---
Diffs of the changes:
Index: llvm/www/docs/LangRef.html
diff -u llvm/www/docs/LangRef.html:1.30 llvm/www/docs/LangRef.html:1.31
--- llvm/www/docs/LangRef.html:1.30 Tue Sep 2 23:20:13 2003
+++ llvm/www/docs/LangRef.html Mon Sep 8 13:27:49 2003
@@ -1405,6 +1405,7 @@
<h5>Syntax:</h5>
<pre>
<result> = load <ty>* <pointer>
+ <result> = volatile load <ty>* <pointer>
</pre>
<h5>Overview:</h5>
@@ -1412,7 +1413,12 @@
<h5>Arguments:</h5>
-The argument to the '<tt>load</tt>' instruction specifies the memory address to load from. The pointer must point to a <a href="t_firstclass">first class</a> type.<p>
+The argument to the '<tt>load</tt>' instruction specifies the memory address to
+load from. The pointer must point to a <a href="t_firstclass">first class</a>
+type. If the <tt>load</tt> is marked as <tt>volatile</tt> then the optimizer is
+not allowed to modify the number or order of execution of this <tt>load</tt>
+with other volatile <tt>load</tt> and <tt><a href="#i_store">store</a></tt>
+instructions. <p>
<h5>Semantics:</h5>
@@ -1434,6 +1440,7 @@
<h5>Syntax:</h5>
<pre>
store <ty> <value>, <ty>* <pointer> <i>; yields {void}</i>
+ volatile store <ty> <value>, <ty>* <pointer> <i>; yields {void}</i>
</pre>
<h5>Overview:</h5>
@@ -1443,8 +1450,11 @@
There are two arguments to the '<tt>store</tt>' instruction: a value to store
and an address to store it into. The type of the '<tt><pointer></tt>'
-operand must be a pointer to the type of the '<tt><value></tt>'
-operand.<p>
+operand must be a pointer to the type of the '<tt><value></tt>' operand.
+If the <tt>store</tt> is marked as <tt>volatile</tt> then the optimizer is not
+allowed to modify the number or order of execution of this <tt>store</tt> with
+other volatile <tt>load</tt> and <tt><a href="#i_store">store</a></tt>
+instructions.<p>
<h5>Semantics:</h5> The contents of memory are updated to contain
'<tt><value></tt>' at the location specified by the
@@ -1895,7 +1905,7 @@
<address><a href="mailto:sabre at nondot.org">Chris Lattner</a></address>
<!-- Created: Tue Jan 23 15:19:28 CST 2001 -->
<!-- hhmts start -->
-Last modified: Tue Sep 2 19:41:01 CDT 2003
+Last modified: Mon Sep 8 13:27:14 CDT 2003
<!-- hhmts end -->
</font>
</body></html>
More information about the llvm-commits
mailing list