From b97f5e55cb8ae23139099d8691fb4ebb5909d782 Mon Sep 17 00:00:00 2001 From: Maximilian Bergbauer Date: Mon, 22 Jan 2024 18:26:49 +0100 Subject: [PATCH] Force inlining in release mode --- .../matrix_free/evaluation_kernels_face.h | 76 ++++++++++++------- 1 file changed, 47 insertions(+), 29 deletions(-) diff --git a/include/deal.II/matrix_free/evaluation_kernels_face.h b/include/deal.II/matrix_free/evaluation_kernels_face.h index bc1fcd49d2..4783698838 100644 --- a/include/deal.II/matrix_free/evaluation_kernels_face.h +++ b/include/deal.II/matrix_free/evaluation_kernels_face.h @@ -1522,14 +1522,17 @@ namespace internal } template - static void - project_to_face(const unsigned int n_components, - const EvaluationFlags::EvaluationFlags evaluation_flag, - const Number *values_dofs, - FEEvaluationData &fe_eval, - const bool use_vectorization, - Number *temp, - Number *scratch_data) +#ifndef DEBUG + DEAL_II_ALWAYS_INLINE +#endif + static void + project_to_face(const unsigned int n_components, + const EvaluationFlags::EvaluationFlags evaluation_flag, + const Number *values_dofs, + FEEvaluationData &fe_eval, + const bool use_vectorization, + Number *temp, + Number *scratch_data) { const auto &shape_info = fe_eval.get_shape_info(); @@ -1579,12 +1582,15 @@ namespace internal template - static void - evaluate_in_face(const unsigned int n_components, - const EvaluationFlags::EvaluationFlags evaluation_flag, - FEEvaluationData &fe_eval, - Number *temp, - Number *scratch_data) +#ifndef DEBUG + DEAL_II_ALWAYS_INLINE +#endif + static void + evaluate_in_face(const unsigned int n_components, + const EvaluationFlags::EvaluationFlags evaluation_flag, + FEEvaluationData &fe_eval, + Number *temp, + Number *scratch_data) { const auto &shape_info = fe_eval.get_shape_info(); const auto &shape_data = shape_info.data.front(); @@ -1643,6 +1649,9 @@ namespace internal subface_index); } +#ifndef DEBUG + DEAL_II_ALWAYS_INLINE +#endif static void adjust_quadrature_for_face_orientation( const unsigned int n_components, @@ -1932,6 +1941,9 @@ namespace internal return true; } +#ifndef DEBUG + DEAL_II_ALWAYS_INLINE +#endif static void adjust_quadrature_for_face_orientation( const unsigned int n_components, @@ -1984,12 +1996,15 @@ namespace internal } template - static void - integrate_in_face(const unsigned int n_components, - const EvaluationFlags::EvaluationFlags integration_flag, - FEEvaluationData &fe_eval, - Number *temp, - Number *scratch_data) +#ifndef DEBUG + DEAL_II_ALWAYS_INLINE +#endif + static void + integrate_in_face(const unsigned int n_components, + const EvaluationFlags::EvaluationFlags integration_flag, + FEEvaluationData &fe_eval, + Number *temp, + Number *scratch_data) { const auto &shape_info = fe_eval.get_shape_info(); const auto &shape_data = shape_info.data.front(); @@ -2050,15 +2065,18 @@ namespace internal } template - static void - collect_from_face(const unsigned int n_components, - const EvaluationFlags::EvaluationFlags integration_flag, - Number *values_dofs, - FEEvaluationData &fe_eval, - const bool use_vectorization, - const Number *temp, - Number *scratch_data, - const bool sum_into_values) +#ifndef DEBUG + DEAL_II_ALWAYS_INLINE +#endif + static void + collect_from_face(const unsigned int n_components, + const EvaluationFlags::EvaluationFlags integration_flag, + Number *values_dofs, + FEEvaluationData &fe_eval, + const bool use_vectorization, + const Number *temp, + Number *scratch_data, + const bool sum_into_values) { const auto &shape_info = fe_eval.get_shape_info(); const auto &shape_data = shape_info.data.front(); -- 2.39.5