vtk-m/vtkm/cont/internal
Robert Maynard e28244f345 Re-implement DeviceAdapterRuntimeDetector to avoid ODR violations.
The previous implementation of DeviceAdapterRuntimeDetector caused
multiple differing definitions of the same class to exist and
was causing the runtime device tracker to report CUDA as disabled
when it actually was enabled.

The ODR was caused by having a default implementation for
DeviceAdapterRuntimeDetector and a specific specialization for
CUDA. If a library had both CUDA and C++ sources it would pick up
both implementations and would have undefined behavior. In general
it would think the CUDA backend was disabled.

To avoid this kind of situation in the future I have reworked VTK-m
so that each device adapter must implement DeviceAdapterRuntimeDetector
for that device.
2018-05-15 13:08:34 -04:00
..
testing Switch over from static const to static constexpr where possible. 2018-03-10 11:39:58 -05:00
ArrayExportMacros.h Update copyright for Sandia 2017-09-20 15:33:44 -06:00
ArrayHandleBasicImpl.cxx Fix warnings 2018-05-08 15:03:10 -04:00
ArrayHandleBasicImpl.h VTK-m ArrayHandle can now take ownership of a user allocated memory location 2018-04-04 11:28:25 -04:00
ArrayHandleBasicImpl.hxx VTK-m ArrayHandle can now take ownership of a user allocated memory location 2018-04-04 11:28:25 -04:00
ArrayHandleExecutionManager.h Remove ArrayHandle CopyInto 2017-10-27 17:28:59 -04:00
ArrayManagerExecution.h Misc. typos 2018-01-30 06:51:47 -05:00
ArrayManagerExecutionShareWithControl.cxx Refactor vtk-m storage basic to generate less code 2018-02-16 09:59:19 -05:00
ArrayManagerExecutionShareWithControl.h Refactor vtk-m storage basic to generate less code 2018-02-16 09:59:19 -05:00
ArrayPortalFromIterators.h Update copyright for Sandia 2017-09-20 15:33:44 -06:00
ArrayPortalShrink.h Update copyright for Sandia 2017-09-20 15:33:44 -06:00
ArrayTransfer.h Remove ArrayHandle CopyInto 2017-10-27 17:28:59 -04:00
CMakeLists.txt Make ForEachValidDevice internal 2018-01-09 17:23:26 -05:00
ConnectivityExplicitInternals.h Update copyright for Sandia 2017-09-20 15:33:44 -06:00
DeviceAdapterAlgorithmGeneral.h Merge branch 'master' into vtk-m-cmake_refactor 2018-03-29 22:51:26 -04:00
DeviceAdapterDefaultSelection.h Update copyright for Sandia 2017-09-20 15:33:44 -06:00
DeviceAdapterError.h Re-implement DeviceAdapterRuntimeDetector to avoid ODR violations. 2018-05-15 13:08:34 -04:00
DeviceAdapterListHelpers.h Make ForEachValidDevice internal 2018-01-09 17:23:26 -05:00
DeviceAdapterTag.h Switch over from static const to static constexpr where possible. 2018-03-10 11:39:58 -05:00
DynamicTransform.h add vtkm::cont::ConditionalCastAndCall 2018-03-06 15:54:46 -05:00
FunctorsGeneral.h Generalize and documentation for DeviceAdapterAlgorithm::Transform 2018-01-16 14:43:31 -07:00
IteratorFromArrayPortal.h Update copyright for Sandia 2017-09-20 15:33:44 -06:00
SimplePolymorphicContainer.cxx Update copyright for Sandia 2017-09-20 15:33:44 -06:00
SimplePolymorphicContainer.h Update copyright for Sandia 2017-09-20 15:33:44 -06:00
StorageError.h Update copyright for Sandia 2017-09-20 15:33:44 -06:00
VirtualObjectTransfer.h Switch from faux to true virtuals 2017-11-06 15:25:29 -05:00
VirtualObjectTransferShareWithControl.h Switch from faux to true virtuals 2017-11-06 15:25:29 -05:00