diff --git a/src/mono/CMakeLists.txt b/src/mono/CMakeLists.txt index 7cf602f7d3c4a7..22cf849b4460f2 100644 --- a/src/mono/CMakeLists.txt +++ b/src/mono/CMakeLists.txt @@ -361,6 +361,8 @@ elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL "arm64") set(HOST_ARM64 1) elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "arm") set(HOST_ARM 1) + # fixme: use separate defines for host/target + set(NO_UNALIGNED_ACCESS 1) elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL "s390x") set(HOST_S390X 1) elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL "wasm") @@ -413,6 +415,8 @@ elseif(TARGET_ARCH MATCHES "arm") add_definitions("-DARM_FPU_VFP=1") set(TARGET_SIZEOF_VOID_P 4) set(SIZEOF_REGISTER 4) + # fixme: use separate defines for host/target + set(NO_UNALIGNED_ACCESS 1) elseif(TARGET_ARCH STREQUAL "s390x") set(TARGET_S390X 1) set(MONO_ARCHITECTURE "\"s390x\"") diff --git a/src/mono/cmake/config.h.in b/src/mono/cmake/config.h.in index 4fe9f54caf7d10..d49cbd3b9a9d53 100644 --- a/src/mono/cmake/config.h.in +++ b/src/mono/cmake/config.h.in @@ -911,6 +911,9 @@ /* size of target machine integer registers */ #define SIZEOF_REGISTER @SIZEOF_REGISTER@ +/* host or target doesn't allow unaligned memory access */ +#cmakedefine NO_UNALIGNED_ACCESS 1 + /* Support for the visibility ("hidden") attribute */ #cmakedefine HAVE_VISIBILITY_HIDDEN 1