Merge topic 'correct_clang_as_cuda_compiler_warnings'
58884a729 Fix warnings found when cuda is the cuda host compiler Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1630
This commit is contained in:
commit
68bf5b6153
@ -143,16 +143,70 @@ T aligned_reinterpret_cast(U u);
|
||||
} \
|
||||
struct SwallowSemicolon
|
||||
|
||||
#define ALIGN_RE_VEC(RT, N) \
|
||||
#define ALIGN_RE_VEC(RT) \
|
||||
template <> \
|
||||
inline __host__ __device__ vtkm::Vec<RT, N>* aligned_reinterpret_cast(void* u) \
|
||||
inline __host__ __device__ vtkm::Vec<RT, 2>* aligned_reinterpret_cast(void* u) \
|
||||
{ \
|
||||
return reinterpret_cast<vtkm::Vec<RT, N>*>(reinterpret_cast<void*>(u)); \
|
||||
return reinterpret_cast<vtkm::Vec<RT, 2>*>(reinterpret_cast<void*>(u)); \
|
||||
} \
|
||||
template <> \
|
||||
inline __host__ __device__ vtkm::Vec<RT, N>* aligned_reinterpret_cast(vtkm::UInt8* u) \
|
||||
inline __host__ __device__ vtkm::Vec<RT, 3>* aligned_reinterpret_cast(void* u) \
|
||||
{ \
|
||||
return reinterpret_cast<vtkm::Vec<RT, N>*>(reinterpret_cast<void*>(u)); \
|
||||
return reinterpret_cast<vtkm::Vec<RT, 3>*>(reinterpret_cast<void*>(u)); \
|
||||
} \
|
||||
template <> \
|
||||
inline __host__ __device__ vtkm::Vec<RT, 4>* aligned_reinterpret_cast(void* u) \
|
||||
{ \
|
||||
return reinterpret_cast<vtkm::Vec<RT, 4>*>(reinterpret_cast<void*>(u)); \
|
||||
} \
|
||||
template <> \
|
||||
inline __host__ __device__ vtkm::Vec<vtkm::Vec<RT, 3>, 2>* aligned_reinterpret_cast(void* u) \
|
||||
{ \
|
||||
return reinterpret_cast<vtkm::Vec<vtkm::Vec<RT, 3>, 2>*>(reinterpret_cast<void*>(u)); \
|
||||
} \
|
||||
template <> \
|
||||
inline __host__ __device__ vtkm::Vec<vtkm::Vec<RT, 9>, 2>* aligned_reinterpret_cast(void* u) \
|
||||
{ \
|
||||
return reinterpret_cast<vtkm::Vec<vtkm::Vec<RT, 9>, 2>*>(reinterpret_cast<void*>(u)); \
|
||||
} \
|
||||
template <> \
|
||||
inline __host__ __device__ vtkm::Vec<RT, 2>* aligned_reinterpret_cast(vtkm::UInt8* u) \
|
||||
{ \
|
||||
return reinterpret_cast<vtkm::Vec<RT, 2>*>(reinterpret_cast<void*>(u)); \
|
||||
} \
|
||||
template <> \
|
||||
inline __host__ __device__ vtkm::Vec<RT, 3>* aligned_reinterpret_cast(vtkm::UInt8* u) \
|
||||
{ \
|
||||
return reinterpret_cast<vtkm::Vec<RT, 3>*>(reinterpret_cast<void*>(u)); \
|
||||
} \
|
||||
template <> \
|
||||
inline __host__ __device__ vtkm::Vec<RT, 4>* aligned_reinterpret_cast(vtkm::UInt8* u) \
|
||||
{ \
|
||||
return reinterpret_cast<vtkm::Vec<RT, 4>*>(reinterpret_cast<void*>(u)); \
|
||||
} \
|
||||
template <> \
|
||||
inline __host__ __device__ vtkm::Vec<vtkm::Vec<RT, 2>, 2>* aligned_reinterpret_cast( \
|
||||
vtkm::UInt8* u) \
|
||||
{ \
|
||||
return reinterpret_cast<vtkm::Vec<vtkm::Vec<RT, 2>, 2>*>(reinterpret_cast<void*>(u)); \
|
||||
} \
|
||||
template <> \
|
||||
inline __host__ __device__ vtkm::Vec<vtkm::Vec<RT, 3>, 2>* aligned_reinterpret_cast( \
|
||||
vtkm::UInt8* u) \
|
||||
{ \
|
||||
return reinterpret_cast<vtkm::Vec<vtkm::Vec<RT, 3>, 2>*>(reinterpret_cast<void*>(u)); \
|
||||
} \
|
||||
template <> \
|
||||
inline __host__ __device__ vtkm::Vec<vtkm::Vec<RT, 4>, 2>* aligned_reinterpret_cast( \
|
||||
vtkm::UInt8* u) \
|
||||
{ \
|
||||
return reinterpret_cast<vtkm::Vec<vtkm::Vec<RT, 4>, 2>*>(reinterpret_cast<void*>(u)); \
|
||||
} \
|
||||
template <> \
|
||||
inline __host__ __device__ vtkm::Vec<vtkm::Vec<RT, 9>, 2>* aligned_reinterpret_cast( \
|
||||
vtkm::UInt8* u) \
|
||||
{ \
|
||||
return reinterpret_cast<vtkm::Vec<vtkm::Vec<RT, 9>, 2>*>(reinterpret_cast<void*>(u)); \
|
||||
} \
|
||||
struct SwallowSemicolon
|
||||
|
||||
@ -170,6 +224,7 @@ T aligned_reinterpret_cast(U u);
|
||||
struct SwallowSemicolon
|
||||
|
||||
#ifndef VTKM_DONT_FIX_THRUST
|
||||
ALIGN_RE_T(bool);
|
||||
ALIGN_RE_T(char);
|
||||
ALIGN_RE_T(vtkm::Int8);
|
||||
ALIGN_RE_T(vtkm::UInt8);
|
||||
@ -183,18 +238,25 @@ ALIGN_RE_T(vtkm::Float32);
|
||||
ALIGN_RE_T(vtkm::Float64);
|
||||
#endif
|
||||
|
||||
ALIGN_RE_VEC(vtkm::UInt8, 3);
|
||||
ALIGN_RE_VEC(vtkm::Int32, 3);
|
||||
ALIGN_RE_VEC(vtkm::Int64, 3);
|
||||
ALIGN_RE_VEC(vtkm::Float32, 3);
|
||||
ALIGN_RE_VEC(vtkm::Float64, 3);
|
||||
|
||||
ALIGN_RE_VEC(vtkm::UInt8, 4);
|
||||
ALIGN_RE_VEC(vtkm::Float32, 4);
|
||||
ALIGN_RE_VEC(vtkm::Float64, 4);
|
||||
ALIGN_RE_VEC(char);
|
||||
ALIGN_RE_VEC(vtkm::Int8);
|
||||
ALIGN_RE_VEC(vtkm::UInt8);
|
||||
ALIGN_RE_VEC(vtkm::Int16);
|
||||
ALIGN_RE_VEC(vtkm::UInt16);
|
||||
ALIGN_RE_VEC(vtkm::Int32);
|
||||
ALIGN_RE_VEC(vtkm::UInt32);
|
||||
ALIGN_RE_VEC(vtkm::Int64);
|
||||
ALIGN_RE_VEC(vtkm::UInt64);
|
||||
ALIGN_RE_VEC(vtkm::Float32);
|
||||
ALIGN_RE_VEC(vtkm::Float64);
|
||||
|
||||
ALIGN_RE_PAIR(vtkm::Int32, vtkm::Int32);
|
||||
ALIGN_RE_PAIR(vtkm::Int32, vtkm::Int64);
|
||||
ALIGN_RE_PAIR(vtkm::Int32, vtkm::Float32);
|
||||
ALIGN_RE_PAIR(vtkm::Int32, vtkm::Float64);
|
||||
|
||||
ALIGN_RE_PAIR(vtkm::Int64, vtkm::Int32);
|
||||
ALIGN_RE_PAIR(vtkm::Int64, vtkm::Int64);
|
||||
ALIGN_RE_PAIR(vtkm::Int64, vtkm::Float32);
|
||||
ALIGN_RE_PAIR(vtkm::Int64, vtkm::Float64);
|
||||
|
||||
|
@ -127,6 +127,11 @@ void TryOperatorsInt(vtkm::Id index,
|
||||
VTKM_TEST_ASSERT(ref || expected);
|
||||
VTKM_TEST_ASSERT(expected || ref);
|
||||
|
||||
#if defined(VTKM_CLANG) && __clang_major__ >= 7
|
||||
#pragma clang diagnostic push
|
||||
#pragma clang diagnostic ignored "-Wcovered-switch-default"
|
||||
#endif
|
||||
|
||||
ref &= ref;
|
||||
expected &= expected;
|
||||
VTKM_TEST_ASSERT(ref == expected);
|
||||
@ -161,6 +166,10 @@ void TryOperatorsInt(vtkm::Id index,
|
||||
ref ^= operand;
|
||||
expected ^= operand;
|
||||
VTKM_TEST_ASSERT(ref == expected);
|
||||
|
||||
#if defined(VTKM_CLANG) && __clang_major__ >= 7
|
||||
#pragma clang diagnostic pop
|
||||
#endif
|
||||
}
|
||||
|
||||
template <typename ArrayPortalType, typename DimTag, typename NumericTag>
|
||||
|
Loading…
Reference in New Issue
Block a user