diff --git a/docs/LangRef.html b/docs/LangRef.html index c1788ada2b9..fb3420785e2 100644 --- a/docs/LangRef.html +++ b/docs/LangRef.html @@ -50,6 +50,7 @@
Certain memory accesses, such as loads, stores, and llvm.memcpys may be marked volatile. +The optimizers must not change the number of volatile operations or change their +order of execution relative to other volatile operations. The optimizers +may change the order of volatile operations relative to non-volatile +operations. This is not Java's "volatile" and has no cross-thread +synchronization behavior.
+ +The optional constant align argument specifies the alignment of the operation (that is, the alignment of the memory address). A value of 0 or an @@ -4257,11 +4275,10 @@ Instruction and an address at which to store it. The type of the '<pointer>' operand must be a pointer to the first class 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.
+ '<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 operations.The optional constant "align" argument specifies the alignment of the operation (that is, the alignment of the memory address). A value of 0 or an @@ -5962,8 +5979,10 @@ LLVM.
then the caller guarantees that both the source and destination pointers are aligned to that boundary. -Volatile accesses should not be deleted if dead, but the access behavior is - not very cleanly specified and it is unwise to depend on it.
+If the isvolatile parameter is true, the + llvm.memcpy call is a volatile operation. + The detailed access behavior is not very cleanly specified and it is unwise + to depend on it.
Volatile accesses should not be deleted if dead, but the access behavior is - not very cleanly specified and it is unwise to depend on it.
+If the isvolatile parameter is true, the + llvm.memmove call is a volatile operation. + The detailed access behavior is not very cleanly specified and it is unwise + to depend on it.
Volatile accesses should not be deleted if dead, but the access behavior is - not very cleanly specified and it is unwise to depend on it.
+If the isvolatile parameter is true, the + llvm.memset call is a volatile operation. + The detailed access behavior is not very cleanly specified and it is unwise + to depend on it.
The 'llvm.memset.*' intrinsics fill "len" bytes of memory starting