diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index b1db3844..83f5df2b 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -11,7 +11,7 @@ env: jobs: shellcheck: - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v4 - name: shellcheck @@ -19,7 +19,7 @@ jobs: build: strategy: matrix: - os: [ubuntu-22.04, macos-12] + os: [ubuntu-24.04, macos-13, macos-14] fortran: [fortran-off, fortran-on] shared: [shared-off, shared-on] @@ -41,12 +41,12 @@ jobs: -DCMAKE_INSTALL_PREFIX=$HOME/mpitrampoline ;; macOS) - # Use GCC-12 from Homebrew + # Use GCC-14 from Homebrew cmake -B ${{github.workspace}}/build \ -DENABLE_FORTRAN=${fortran} \ - -DCMAKE_C_COMPILER=gcc-12 \ - -DCMAKE_CXX_COMPILER=g++-12 \ - -DCMAKE_Fortran_COMPILER=gfortran-12 \ + -DCMAKE_C_COMPILER=gcc-14 \ + -DCMAKE_CXX_COMPILER=g++-14 \ + -DCMAKE_Fortran_COMPILER=gfortran-14 \ -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} \ -DBUILD_SHARED_LIBS=${shared} \ -DCMAKE_INSTALL_PREFIX=$HOME/mpitrampoline diff --git a/CITATION.cff b/CITATION.cff index 8e2f3f77..9a17b2a2 100644 --- a/CITATION.cff +++ b/CITATION.cff @@ -5,6 +5,6 @@ authors: given-names: Erik orcid: https://orcid.org/0000-0002-4518-9017 title: MPItrampoline -version: v5.4.0 +version: v5.4.1 doi: 10.5281/zenodo.6174408 -date-released: 2023-06-16 +date-released: 2024-08-29 diff --git a/CMakeLists.txt b/CMakeLists.txt index 9369d6e2..84eccc5c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,6 +1,6 @@ cmake_minimum_required(VERSION 3.12...3.20) project( - MPItrampoline VERSION 5.4.0 + MPItrampoline VERSION 5.4.1 DESCRIPTION "MPI trampoline" HOMEPAGE_URL "https://github.com/eschnett/MPItrampoline" LANGUAGES NONE diff --git a/src/mpi.c b/src/mpi.c index ef3e9dc7..031a536c 100644 --- a/src/mpi.c +++ b/src/mpi.c @@ -230,21 +230,21 @@ int PMPI_Pcontrol(int level, ...) { return MPI_SUCCESS; } // Sentinel values -char **mpiabi_argv_null_ptr_; -char ***mpiabi_argvs_null_ptr_; +char **mpiabi_argv_null_ptr_ __attribute__((__aligned__(64))) = 0; +char ***mpiabi_argvs_null_ptr_ __attribute__((__aligned__(64))) = 0; -MPI_Fint *mpiabi_bottom_ptr_; +MPI_Fint *mpiabi_bottom_ptr_ __attribute__((__aligned__(64))) = 0; -MPI_Fint *mpiabi_errcodes_ignore_ptr_; +MPI_Fint *mpiabi_errcodes_ignore_ptr_ __attribute__((__aligned__(64))) = 0; -MPI_Fint *mpiabi_in_place_ptr_; +MPI_Fint *mpiabi_in_place_ptr_ __attribute__((__aligned__(64))) = 0; -MPI_Fint *mpiabi_status_ignore_ptr_; -MPI_Fint *mpiabi_statuses_ignore_ptr_; +MPI_Fint *mpiabi_status_ignore_ptr_ __attribute__((__aligned__(64))) = 0; +MPI_Fint *mpiabi_statuses_ignore_ptr_ __attribute__((__aligned__(64))) = 0; -MPI_Fint *mpiabi_unweighted_ptr_; +MPI_Fint *mpiabi_unweighted_ptr_ __attribute__((__aligned__(64))) = 0; -MPI_Fint *mpiabi_weights_empty_ptr_; +MPI_Fint *mpiabi_weights_empty_ptr_ __attribute__((__aligned__(64))) = 0; #include "mpi_defn_constants_fortran.h" #include "mpi_defn_functions_fortran.h"