Build: Skip AArch32 emitter for vixl on AArch64

This commit is contained in:
Connor McLaughlin 2020-10-18 23:48:56 +10:00
parent 0fca011bd4
commit 11c25c68c5
1 changed files with 64 additions and 46 deletions

View File

@ -1,4 +1,34 @@
set(SRCS
add_library(vixl
include/vixl/assembler-base-vixl.h
include/vixl/code-buffer-vixl.h
include/vixl/code-generation-scopes-vixl.h
include/vixl/compiler-intrinsics-vixl.h
include/vixl/cpu-features.h
include/vixl/globals-vixl.h
include/vixl/invalset-vixl.h
include/vixl/macro-assembler-interface.h
include/vixl/platform-vixl.h
include/vixl/pool-manager-impl.h
include/vixl/pool-manager.h
include/vixl/utils-vixl.h
src/code-buffer-vixl.cc
src/compiler-intrinsics-vixl.cc
src/cpu-features.cc
src/utils-vixl.cc
)
target_include_directories(vixl PUBLIC
${CMAKE_CURRENT_SOURCE_DIR}/include
)
target_include_directories(vixl PRIVATE
${CMAKE_CURRENT_SOURCE_DIR}/include/vixl
)
target_compile_definitions(vixl PUBLIC
VIXL_CODE_BUFFER_MALLOC
)
if(${CPU_ARCH} STREQUAL "arm")
target_sources(vixl PRIVATE
include/vixl/aarch32/assembler-aarch32.h
include/vixl/aarch32/constants-aarch32.h
include/vixl/aarch32/disasm-aarch32.h
@ -6,6 +36,24 @@ set(SRCS
include/vixl/aarch32/location-aarch32.h
include/vixl/aarch32/macro-assembler-aarch32.h
include/vixl/aarch32/operands-aarch32.h
src/aarch32/assembler-aarch32.cc
src/aarch32/constants-aarch32.cc
src/aarch32/disasm-aarch32.cc
src/aarch32/instructions-aarch32.cc
src/aarch32/location-aarch32.cc
src/aarch32/macro-assembler-aarch32.cc
src/aarch32/operands-aarch32.cc
)
target_include_directories(vixl PRIVATE
${CMAKE_CURRENT_SOURCE_DIR}/include/vixl/aarch32
)
target_compile_definitions(vixl PUBLIC
VIXL_INCLUDE_TARGET_AARCH32
)
endif()
if(${CPU_ARCH} STREQUAL "aarch64")
target_sources(vixl PRIVATE
include/vixl/aarch64/abi-aarch64.h
include/vixl/aarch64/assembler-aarch64.h
include/vixl/aarch64/constants-aarch64.h
@ -19,25 +67,6 @@ set(SRCS
include/vixl/aarch64/operands-aarch64.h
include/vixl/aarch64/simulator-aarch64.h
include/vixl/aarch64/simulator-constants-aarch64.h
include/vixl/assembler-base-vixl.h
include/vixl/code-buffer-vixl.h
include/vixl/code-generation-scopes-vixl.h
include/vixl/compiler-intrinsics-vixl.h
include/vixl/cpu-features.h
include/vixl/globals-vixl.h
include/vixl/invalset-vixl.h
include/vixl/macro-assembler-interface.h
include/vixl/platform-vixl.h
include/vixl/pool-manager-impl.h
include/vixl/pool-manager.h
include/vixl/utils-vixl.h
src/aarch32/assembler-aarch32.cc
src/aarch32/constants-aarch32.cc
src/aarch32/disasm-aarch32.cc
src/aarch32/instructions-aarch32.cc
src/aarch32/location-aarch32.cc
src/aarch32/macro-assembler-aarch32.cc
src/aarch32/operands-aarch32.cc
src/aarch64/assembler-aarch64.cc
src/aarch64/cpu-aarch64.cc
src/aarch64/cpu-features-auditor-aarch64.cc
@ -50,24 +79,13 @@ set(SRCS
src/aarch64/operands-aarch64.cc
src/aarch64/pointer-auth-aarch64.cc
src/aarch64/simulator-aarch64.cc
src/code-buffer-vixl.cc
src/compiler-intrinsics-vixl.cc
src/cpu-features.cc
src/utils-vixl.cc
)
add_library(vixl ${SRCS})
target_include_directories(vixl PUBLIC
${CMAKE_CURRENT_SOURCE_DIR}/include
)
target_include_directories(vixl PRIVATE
${CMAKE_CURRENT_SOURCE_DIR}/include/vixl
${CMAKE_CURRENT_SOURCE_DIR}/include/vixl/aarch32
${CMAKE_CURRENT_SOURCE_DIR}/include/vixl/aarch64
)
target_compile_definitions(vixl PUBLIC
VIXL_INCLUDE_TARGET_AARCH32
VIXL_INCLUDE_TARGET_AARCH64
VIXL_CODE_BUFFER_MMAP
)
endif()