Make using an unsupported CAS size a hard error on Windows.
[oota-llvm.git] / 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>