File tree Expand file tree Collapse file tree 4 files changed +37
-0
lines changed
HeterogeneousCore/AlpakaInterface/interface
RecoTracker/PixelSeeding/plugins/alpaka
RecoVertex/PixelVertexFinding/plugins/alpaka Expand file tree Collapse file tree 4 files changed +37
-0
lines changed Original file line number Diff line number Diff line change 1+ #ifndef HeterogeneousCore_AlpakaInterface_interface_debug_h
2+ #define HeterogeneousCore_AlpakaInterface_interface_debug_h
3+
4+ #include " HeterogeneousCore/AlpakaInterface/interface/config.h"
5+
6+ namespace ALPAKA_ACCELERATOR_NAMESPACE ::debug {
7+
8+ [[nodiscard]] ALPAKA_FN_ACC inline bool always_true () {
9+ volatile const bool flag = true ;
10+ return flag;
11+ }
12+
13+ [[nodiscard]] ALPAKA_FN_ACC inline bool always_false () {
14+ volatile const bool flag = false ;
15+ return flag;
16+ }
17+
18+ ALPAKA_FN_ACC inline void do_not_optimise (const auto & arg) {
19+ volatile const auto * ptr = &arg;
20+ (void )*ptr;
21+ }
22+
23+ } // namespace ALPAKA_ACCELERATOR_NAMESPACE::debug
24+
25+ #endif // HeterogeneousCore_AlpakaInterface_interface_debug_h
Original file line number Diff line number Diff line change 77
88#include " DataFormats/TrackingRecHitSoA/interface/TrackingRecHitsSoA.h"
99#include " HeterogeneousCore/AlpakaInterface/interface/config.h"
10+ #include " HeterogeneousCore/AlpakaInterface/interface/debug.h"
1011#include " RecoLocalTracker/SiPixelRecHits/interface/pixelCPEforDevice.h"
1112#include " RecoTracker/PixelTrackFitting/interface/alpaka/BrokenLine.h"
1213
@@ -182,6 +183,9 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE {
182183 double *__restrict__ phits,
183184 float *__restrict__ phits_ge,
184185 double *__restrict__ pfast_fit) const {
186+ // workaround for #47808
187+ debug::do_not_optimise (results_view);
188+
185189 ALPAKA_ASSERT_ACC (results_view.pt ());
186190 ALPAKA_ASSERT_ACC (results_view.eta ());
187191 ALPAKA_ASSERT_ACC (results_view.chi2 ());
Original file line number Diff line number Diff line change 1010#include " DataFormats/VertexSoA/interface/ZVertexSoA.h"
1111#include " HeterogeneousCore/AlpakaInterface/interface/HistoContainer.h"
1212#include " HeterogeneousCore/AlpakaInterface/interface/config.h"
13+ #include " HeterogeneousCore/AlpakaInterface/interface/debug.h"
1314#include " HeterogeneousCore/AlpakaInterface/interface/warpsize.h"
1415#include " HeterogeneousCore/AlpakaInterface/interface/workdivision.h"
1516#include " RecoVertex/PixelVertexFinding/interface/PixelVertexWorkSpaceLayout.h"
@@ -31,6 +32,9 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE::vertexFinder {
3132 float errmax, // max error to be "seed"
3233 float chi2max // max normalized distance to cluster
3334 ) {
35+ // workaround for #47808
36+ debug::do_not_optimise (ws);
37+
3438 constexpr bool verbose = false ;
3539
3640 if constexpr (verbose) {
Original file line number Diff line number Diff line change 1010#include " DataFormats/VertexSoA/interface/ZVertexSoA.h"
1111#include " HeterogeneousCore/AlpakaInterface/interface/HistoContainer.h"
1212#include " HeterogeneousCore/AlpakaInterface/interface/config.h"
13+ #include " HeterogeneousCore/AlpakaInterface/interface/debug.h"
1314#include " HeterogeneousCore/AlpakaInterface/interface/workdivision.h"
1415#include " RecoVertex/PixelVertexFinding/interface/PixelVertexWorkSpaceLayout.h"
1516
@@ -30,6 +31,9 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE::vertexFinder {
3031 float errmax, // max error to be "seed"
3132 float chi2max // max normalized distance to cluster
3233 ) const {
34+ // workaround for #47808
35+ debug::do_not_optimise (ws);
36+
3337 constexpr bool verbose = false ;
3438
3539 if constexpr (verbose) {
You can’t perform that action at this time.
0 commit comments