20 #ifndef RAJA_pattern_launch_simd_HPP
21 #define RAJA_pattern_launch_simd_HPP
29 template<
typename SEGMENT>
33 template<
typename BODY>
38 const int len = segment.end() - segment.begin();
40 for (
int i = 0; i < len; i++)
42 body(*(segment.begin() + i));
46 template<
typename LaunchContextPolicy,
typename BODY>
49 SEGMENT
const& segment,
53 const int len = segment.end() - segment.begin();
55 for (
int i = 0; i < len; i++)
57 body(*(segment.begin() + i));
62 template<
typename SEGMENT>
66 template<
typename BODY>
71 const int len = segment.end() - segment.begin();
73 for (
int i = 0; i < len; i++)
75 body(*(segment.begin() + i), i);
79 template<
typename LaunchContextPolicy,
typename BODY>
82 SEGMENT
const& segment,
86 const int len = segment.end() - segment.begin();
88 for (
int i = 0; i < len; i++)
90 body(*(segment.begin() + i), i);
Definition: launch_context_policy.hpp:30
RAJA header file containing the core components of RAJA::launch.
#define RAJA_HOST_DEVICE
Definition: macros.hpp:65
#define RAJA_UNUSED_ARG(x)
Definition: macros.hpp:97
Definition: AlignedRangeIndexSetBuilders.cpp:35
LaunchContextType ctx
Definition: launch.hpp:185
auto & body
Definition: launch.hpp:177
Header file containing RAJA simd policy definitions.
static RAJA_INLINE RAJA_HOST_DEVICE void exec(LaunchContextT< LaunchContextPolicy > const RAJA_UNUSED_ARG(&ctx), SEGMENT const &segment, BODY const &body)
Definition: launch.hpp:47
static RAJA_INLINE RAJA_HOST_DEVICE void exec(SEGMENT const &segment, BODY const &body)
Definition: launch.hpp:34
Definition: launch_core.hpp:480
static RAJA_INLINE RAJA_HOST_DEVICE void exec(LaunchContextT< LaunchContextPolicy > const RAJA_UNUSED_ARG(&ctx), SEGMENT const &segment, BODY const &body)
Definition: launch.hpp:80
static RAJA_INLINE RAJA_HOST_DEVICE void exec(SEGMENT const &segment, BODY const &body)
Definition: launch.hpp:67
Definition: launch_core.hpp:483
Definition: policy.hpp:47