[Openmp-commits] [PATCH] D21304: Bug fix for 26602: Remove function bodies with KMP_ASSERT(0)
Terry Wilmarth via Openmp-commits
openmp-commits at lists.llvm.org
Mon Jun 13 12:47:11 PDT 2016
tlwilmar created this revision.
tlwilmar added reviewers: jlpeyton, hbae.
tlwilmar added a subscriber: openmp-commits.
tlwilmar set the repository for this revision to rL LLVM.
Fix for bugzilla https://llvm.org/bugs/show_bug.cgi?id=26602.
Removed functions body consisted of the only KMP_ASSERT(0) statement.
Thus possible runtime crash converted to compile-time error, which
looks preferable (faster possible error detection).
TODO: consider C++11 static assert as an alternative, that could
make the diagnostics better.
Patch by Andrey Churbanov
Repository:
rL LLVM
http://reviews.llvm.org/D21304
Files:
runtime/src/kmp_dispatch.cpp
Index: runtime/src/kmp_dispatch.cpp
===================================================================
--- runtime/src/kmp_dispatch.cpp
+++ runtime/src/kmp_dispatch.cpp
@@ -190,7 +190,7 @@
// test_then_add template (general template should NOT be used)
template< typename T >
static __forceinline T
-test_then_add( volatile T *p, T d ) { KMP_ASSERT(0); };
+test_then_add( volatile T *p, T d );
template<>
__forceinline kmp_int32
@@ -213,7 +213,7 @@
// test_then_inc_acq template (general template should NOT be used)
template< typename T >
static __forceinline T
-test_then_inc_acq( volatile T *p ) { KMP_ASSERT(0); };
+test_then_inc_acq( volatile T *p );
template<>
__forceinline kmp_int32
@@ -236,7 +236,7 @@
// test_then_inc template (general template should NOT be used)
template< typename T >
static __forceinline T
-test_then_inc( volatile T *p ) { KMP_ASSERT(0); };
+test_then_inc( volatile T *p );
template<>
__forceinline kmp_int32
@@ -259,7 +259,7 @@
// compare_and_swap template (general template should NOT be used)
template< typename T >
static __forceinline kmp_int32
-compare_and_swap( volatile T *p, T c, T s ) { KMP_ASSERT(0); };
+compare_and_swap( volatile T *p, T c, T s );
template<>
__forceinline kmp_int32
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D21304.60588.patch
Type: text/x-patch
Size: 1257 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/openmp-commits/attachments/20160613/512c9e28/attachment-0001.bin>
More information about the Openmp-commits
mailing list