Allow to build without SSE optimizations, letting simde fake it

Signed-off-by: falkTX <falktx@falktx.com>
This commit is contained in:
falkTX 2022-12-28 14:31:27 +00:00
parent dd29816464
commit 2ad135551e
No known key found for this signature in database
GPG key ID: CDBAA37ABC74FBA0
10 changed files with 20 additions and 23 deletions

View file

@ -877,7 +877,7 @@ jobs:
run: |
source ~/emsdk/emsdk_env.sh
make features
make CIBUILD=true NOPLUGINS=true STATIC_BUILD=true USE_GLES2=true -j $(nproc)
make CIBUILD=true NOPLUGINS=true NOOPT=true STATIC_BUILD=true USE_GLES2=true -j $(nproc)
- name: Make wasm versioned and compress
run: |
VERSION=$(cat Makefile | awk 'sub("VERSION = ","")')

2
dpf

@ -1 +1 @@
Subproject commit 79948069d581c64bd19bc454234550de88b459a2
Subproject commit c9e9fe3d5959cce389014b84f0c1e365f6112507

View file

@ -17,7 +17,7 @@
#pragma once
#if defined(__i386__) || defined(__x86_64__) || defined(__EMSCRIPTEN__)
#if (defined(__i386__) || defined(__x86_64__) || defined(__EMSCRIPTEN__)) && !defined(CARDINAL_NOOPT)
# include_next <emmintrin.h>
#else
# define SIMDE_ENABLE_NATIVE_ALIASES

View file

@ -17,7 +17,7 @@
#pragma once
#if defined(__i386__) || defined(__x86_64__) || defined(__EMSCRIPTEN__)
#if (defined(__i386__) || defined(__x86_64__) || defined(__EMSCRIPTEN__)) && !defined(CARDINAL_NOOPT)
# include_next <immintrin.h>
#else
# define SIMDE_ENABLE_NATIVE_ALIASES

View file

@ -17,9 +17,9 @@
#pragma once
#if defined(__i386__) || defined(__x86_64__)
#if (defined(__i386__) || defined(__x86_64__)) && !defined(CARDINAL_NOOPT)
# include_next <mmintrin.h>
#elif defined(__EMSCRIPTEN__)
#elif defined(__EMSCRIPTEN__) && !defined(CARDINAL_NOOPT)
# include <wasm_simd128.h>
#else
# define SIMDE_ENABLE_NATIVE_ALIASES

View file

@ -17,7 +17,7 @@
#pragma once
#if defined(__i386__) || defined(__x86_64__)
#if (defined(__i386__) || defined(__x86_64__)) && !defined(CARDINAL_NOOPT)
# include_next <pmmintrin.h>
// bring in extra SSE3 support via simde
@ -40,7 +40,7 @@
# undef _WIN32_WAS_DEFINED
# endif
#elif defined(__EMSCRIPTEN__)
#elif defined(__EMSCRIPTEN__) && !defined(CARDINAL_NOOPT)
# include_next <pmmintrin.h>
static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))

View file

@ -17,7 +17,7 @@
#pragma once
#if defined(__i386__) || defined(__x86_64__) || defined(__EMSCRIPTEN__)
#if (defined(__i386__) || defined(__x86_64__) || defined(__EMSCRIPTEN__)) && !defined(CARDINAL_NOOPT)
# include_next <xmmintrin.h>
#else
# define SIMDE_ENABLE_NATIVE_ALIASES

View file

@ -1179,23 +1179,16 @@ BASE_FLAGS += -I../src/Rack/dep/nanosvg/src
BASE_FLAGS += -I../src/Rack/dep/oui-blendish
BASE_FLAGS += -I../src/Rack/dep/pffft
# SSE must always be enabled, even in debug builds
ifeq ($(CPU_I386_OR_X86_64),true)
BASE_FLAGS += -msse -msse2
ifeq ($(WASM),true)
BASE_FLAGS += -msse3 -msimd128
endif
endif
ifeq ($(DEBUG),true)
BASE_FLAGS += -UDEBUG
endif
ifeq ($(HEADLESS),true)
BASE_FLAGS += -DHEADLESS
ifeq ($(WITH_LTO),true)
BASE_FLAGS += -ffat-lto-objects
endif
ifneq (,$(findstring true,$(DEBUG)$(NOOPT)))
BASE_FLAGS += -DCARDINAL_NOOPT
endif
ifeq ($(BSD)$(WASM),true)

View file

@ -73,10 +73,6 @@ endif
ifeq ($(DEBUG),true)
BASE_FLAGS += -UDEBUG
ifeq ($(WASM),true)
# SSE must always be enabled on wasm, even in debug builds
BASE_FLAGS += -msse -msse2 -msse3 -msimd128
endif
endif
ifeq ($(HAVE_LIBLO),true)
@ -87,6 +83,10 @@ ifeq ($(HEADLESS),true)
BASE_FLAGS += -DHEADLESS
endif
ifneq (,$(findstring true,$(DEBUG)$(NOOPT)))
BASE_FLAGS += -DCARDINAL_NOOPT
endif
ifeq ($(BSD),true)
BASE_FLAGS += -DCLOCK_MONOTONIC_RAW=CLOCK_MONOTONIC_PRECISE
endif

View file

@ -298,6 +298,10 @@ ifeq ($(HEADLESS),true)
BASE_FLAGS += -DHEADLESS
endif
ifneq (,$(findstring true,$(DEBUG)$(NOOPT)))
BASE_FLAGS += -DCARDINAL_NOOPT
endif
ifeq ($(MOD_BUILD),true)
BASE_FLAGS += -DDISTRHO_PLUGIN_USES_MODGUI=1 -DDISTRHO_PLUGIN_MINIMUM_BUFFER_SIZE=0xffff
endif