After a long break to wait for the atomic spec to settle, this completes the library part of <atomic>. It currently won't even parse as it depends on the existence of the intrinsics specified at http://libcxx.llvm.org/atomic_design_a.html. Everything has been tested using fake intrinsics which have now been removed. As the intrinsics come online, the ATOMIC_* macros will need to be adjusted to reflect which operations are lock-free. These macros will probably need to be #ifdef'd for each supported platform.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@121267 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
		
							
								
								
									
										19
									
								
								test/atomics/atomics.fences/atomic_signal_fence.pass.cpp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								test/atomics/atomics.fences/atomic_signal_fence.pass.cpp
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,19 @@ | ||||
| //===----------------------------------------------------------------------===// | ||||
| // | ||||
| //                     The LLVM Compiler Infrastructure | ||||
| // | ||||
| // This file is dual licensed under the MIT and the University of Illinois Open | ||||
| // Source Licenses. See LICENSE.TXT for details. | ||||
| // | ||||
| //===----------------------------------------------------------------------===// | ||||
|  | ||||
| // <atomic> | ||||
|  | ||||
| // void atomic_signal_fence(memory_order m); | ||||
|  | ||||
| #include <atomic> | ||||
|  | ||||
| int main() | ||||
| { | ||||
|     std::atomic_signal_fence(std::memory_order_seq_cst); | ||||
| } | ||||
		Reference in New Issue
	
	Block a user
	 Howard Hinnant
					Howard Hinnant