From f065107bacd3045ba238f15e70b5c6a2915efe0f Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Mon, 8 Sep 2003 18:27:49 +0000 Subject: Add info about volatile loads/stores git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8403 91177308-0d34-0410-b5e6-96231b3b80d8 --- docs/LangRef.html | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) (limited to 'docs/LangRef.html') diff --git a/docs/LangRef.html b/docs/LangRef.html index 02b7640..06cb68d 100644 --- a/docs/LangRef.html +++ b/docs/LangRef.html @@ -1405,6 +1405,7 @@ instructions), the memory is reclaimed.

Syntax:
   <result> = load <ty>* <pointer>
+  <result> = volatile load <ty>* <pointer>
 
Overview:
@@ -1412,7 +1413,12 @@ The 'load' instruction is used to read from memory.

Arguments:
-The argument to the 'load' instruction specifies the memory address to load from. The pointer must point to a first class type.

+The argument to the 'load' instruction specifies the memory address to +load from. The pointer must point to a first class +type. If the load is marked as volatile then the optimizer is +not allowed to modify the number or order of execution of this load +with other volatile load and store +instructions.

Semantics:
@@ -1434,6 +1440,7 @@ The location of memory pointed to is loaded.
Syntax:
   store <ty> <value>, <ty>* <pointer>                   ; yields {void}
+  volatile store <ty> <value>, <ty>* <pointer>                   ; yields {void}
 
Overview:
@@ -1443,8 +1450,11 @@ The 'store' instruction is used to write to memory.

There are two arguments to the 'store' instruction: a value to store and an address to store it into. The type of the '<pointer>' -operand must be a pointer to the type of the '<value>' -operand.

+operand must be a pointer to the type of the '<value>' operand. +If the store is marked as volatile then the optimizer is not +allowed to modify the number or order of execution of this store with +other volatile load and store +instructions.

Semantics:
The contents of memory are updated to contain '<value>' at the location specified by the @@ -1895,7 +1905,7 @@ arbitrarily complex and require memory allocation, for example.

Chris Lattner
-Last modified: Tue Sep 2 19:41:01 CDT 2003 +Last modified: Mon Sep 8 13:27:14 CDT 2003 -- cgit v1.1