mirror of
https://gitlab.kitware.com/vtk/vtk-m
synced 2024-09-16 17:22:55 +00:00
Remove 64-bits to 128-bits multiplication
This commit is contained in:
parent
46813d4e90
commit
32d9d04ae7
@ -26,19 +26,6 @@ VTKM_EXEC_CONT vtkm::Vec<vtkm::UInt32, 2> mulhilo(vtkm::UInt32 a, vtkm::UInt32 b
|
||||
return { lo, hi };
|
||||
}
|
||||
|
||||
VTKM_EXEC_CONT vtkm::Vec<vtkm::UInt64, 2> mulhilo(vtkm::UInt64 a, vtkm::UInt64 b)
|
||||
{
|
||||
#ifdef VTKM_CUDA
|
||||
vtkm::UInt64 lo = a * b;
|
||||
vtkm::UInt64 hi = __umul64hi(a, b);
|
||||
#else
|
||||
__uint128_t r = static_cast<__uint128_t>(a) * static_cast<__uint128_t>(b);
|
||||
vtkm::UInt64 lo = static_cast<vtkm::UInt64>(r);
|
||||
vtkm::UInt64 hi = r >> 64;
|
||||
#endif
|
||||
return { lo, hi };
|
||||
}
|
||||
|
||||
template <typename UIntType, std::size_t N, UIntType... consts>
|
||||
struct philox_parameters;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user