diff options
-rw-r--r-- | .github/workflows/build.yml | 6 | ||||
-rw-r--r-- | src/prebuilt/wasm2c_simd_source_declarations.cc | 4 | ||||
-rw-r--r-- | src/template/wasm2c_simd.declarations.c | 2 |
3 files changed, 9 insertions, 3 deletions
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 331f0108..21604429 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -30,9 +30,9 @@ jobs: runs-on: ${{ matrix.os }} strategy: matrix: - os: [ubuntu-latest, macos-12, windows-latest] + os: [ubuntu-latest, macos-12, macos-14, windows-latest] steps: - - uses: actions/setup-python@v1 + - uses: actions/setup-python@v5 with: python-version: '3.x' - uses: actions/checkout@v1 @@ -43,7 +43,7 @@ jobs: if: matrix.os == 'ubuntu-latest' - name: install ninja (osx) run: brew install ninja - if: matrix.os == 'macos-12' + if: matrix.os == 'macos-12' || matrix.os == 'macos-14' - name: install ninja (win) run: choco install ninja if: matrix.os == 'windows-latest' diff --git a/src/prebuilt/wasm2c_simd_source_declarations.cc b/src/prebuilt/wasm2c_simd_source_declarations.cc index 7c0c9fb4..5b903b26 100644 --- a/src/prebuilt/wasm2c_simd_source_declarations.cc +++ b/src/prebuilt/wasm2c_simd_source_declarations.cc @@ -2,6 +2,10 @@ const char* s_simd_source_declarations = R"w2c_template(#if defined(__GNUC__) && )w2c_template" R"w2c_template(#define SIMD_FORCE_READ(var) __asm__("" ::"x"(var)); )w2c_template" +R"w2c_template(#elif defined(__GNUC__) && defined(__aarch64__) +)w2c_template" +R"w2c_template(#define SIMD_FORCE_READ(var) __asm__("" ::"w"(var)); +)w2c_template" R"w2c_template(#else )w2c_template" R"w2c_template(#define SIMD_FORCE_READ(var) diff --git a/src/template/wasm2c_simd.declarations.c b/src/template/wasm2c_simd.declarations.c index d37631ad..0e2c9511 100644 --- a/src/template/wasm2c_simd.declarations.c +++ b/src/template/wasm2c_simd.declarations.c @@ -1,5 +1,7 @@ #if defined(__GNUC__) && defined(__x86_64__) #define SIMD_FORCE_READ(var) __asm__("" ::"x"(var)); +#elif defined(__GNUC__) && defined(__aarch64__) +#define SIMD_FORCE_READ(var) __asm__("" ::"w"(var)); #else #define SIMD_FORCE_READ(var) #endif |