| Index: include/llvm/IR/NaClAtomicIntrinsics.h | 
| diff --git a/include/llvm/IR/NaClAtomicIntrinsics.h b/include/llvm/IR/NaClAtomicIntrinsics.h | 
| index 680c6440249210d2d1d043b5bd6e5df31d077dd2..5a8352a57d8a304a1b7b92226ac641f31f1ec833 100644 | 
| --- a/include/llvm/IR/NaClAtomicIntrinsics.h | 
| +++ b/include/llvm/IR/NaClAtomicIntrinsics.h | 
| @@ -100,6 +100,14 @@ enum MemoryOrder { | 
| MemoryOrderRelease, | 
| MemoryOrderAcquireRelease, | 
| MemoryOrderSequentiallyConsistent, | 
| +  // The following memory order is specific to PNaCl and is used to | 
| +  // support non-C11/C++11 legacy code which uses the __sync_synchronize | 
| +  // GCC-style builtin and the asm("":::"memory") compiler fence | 
| +  // idiom. It's equivalent to MemoryOrderSequentiallyConsistent | 
| +  // surrounded by compiler barriers, which means that in practice is | 
| +  // should prevent reordering of memory accesses to objects which may | 
| +  // escape. | 
| +  MemoryOrderSequentiallyConsistentAll, | 
| MemoryOrderNum // Invalid, keep last. | 
| }; | 
|  | 
|  |