Make using an unsupported CAS size a hard error on Windows.
authorOwen Anderson <resistor@mac.com>
Tue, 19 May 2009 01:08:36 +0000 (01:08 +0000)
committerOwen Anderson <resistor@mac.com>
Tue, 19 May 2009 01:08:36 +0000 (01:08 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72088 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/System/Atomic.h

index 5bdbaffe023493d2c196a081c4c803a3e9830bf1..5830b37083b56986f82b0799a566f36c7aa2b60d 100644 (file)
@@ -68,8 +68,10 @@ namespace llvm {
                            T old_value) {
       if (sizeof(T) == 4)
        return InterlockedCompareExchange(ptr, new_value, old_value);
-      else
+      else if (sizeof(T) == 8)
        return InterlockedCompareExchange64(ptr, new_value, old_value);
+      else
+       assert(0 && "Unsupported compare-and-swap size!");
     }
     
     template<typename T>