From 9a665b5684c839130a2de3f5558a9f6c2c746e40 Mon Sep 17 00:00:00 2001 From: "Jonathan R. Madsen" Date: Wed, 15 Feb 2023 12:37:53 -0600 Subject: [PATCH] Fix internal gcc compiler error for GCC 7 (#243) - Error: internal compiler error: output_operand: '%&' used without any local dynamic TLS references - location: kokkosp.cpp --- source/lib/omnitrace/library/kokkosp.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/source/lib/omnitrace/library/kokkosp.cpp b/source/lib/omnitrace/library/kokkosp.cpp index 7bedef33ef..55d2a215bf 100644 --- a/source/lib/omnitrace/library/kokkosp.cpp +++ b/source/lib/omnitrace/library/kokkosp.cpp @@ -35,7 +35,9 @@ #include #include #include +#include #include +#include #include #include @@ -504,7 +506,8 @@ extern "C" _data.back().audit(dst_handle, dst_name, dst_ptr, src_handle, src_name, src_ptr, size); _data.back().start(); - _data.back().store(std::plus{}, size); + _data.back().store(tim::mpl::piecewise_select{}, + std::plus{}, size); } void kokkosp_end_deep_copy() @@ -514,7 +517,8 @@ extern "C" kokkosp::logger_t{}.mark(-1, __FUNCTION__); auto& _data = kokkosp::get_profiler_stack(); if(_data.empty()) return; - _data.back().store(std::minus{}, 0); + _data.back().store(tim::mpl::piecewise_select{}, + std::minus{}, 0); _data.back().stop(); _data.pop_back(); }