further enable the Sparc LLVM backend

This commit is contained in:
Jonathan A. Kollasch 2016-12-03 10:53:31 -06:00 committed by Jorge Aparicio
parent e7c788af75
commit 982849535d
3 changed files with 10 additions and 3 deletions

2
configure vendored
View File

@ -1821,7 +1821,7 @@ do
CMAKE_ARGS="$CMAKE_ARGS -DLLVM_ENABLE_ASSERTIONS=ON" CMAKE_ARGS="$CMAKE_ARGS -DLLVM_ENABLE_ASSERTIONS=ON"
fi fi
CMAKE_ARGS="$CMAKE_ARGS -DLLVM_TARGETS_TO_BUILD='X86;ARM;AArch64;Mips;PowerPC;SystemZ;JSBackend;MSP430'" CMAKE_ARGS="$CMAKE_ARGS -DLLVM_TARGETS_TO_BUILD='X86;ARM;AArch64;Mips;PowerPC;SystemZ;JSBackend;MSP430;Sparc'"
CMAKE_ARGS="$CMAKE_ARGS -G '$CFG_CMAKE_GENERATOR'" CMAKE_ARGS="$CMAKE_ARGS -G '$CFG_CMAKE_GENERATOR'"
CMAKE_ARGS="$CMAKE_ARGS $CFG_LLVM_SRC_DIR" CMAKE_ARGS="$CMAKE_ARGS $CFG_LLVM_SRC_DIR"

View File

@ -285,7 +285,7 @@ endif
# LLVM macros # LLVM macros
###################################################################### ######################################################################
LLVM_OPTIONAL_COMPONENTS=x86 arm aarch64 mips powerpc pnacl systemz jsbackend msp430 LLVM_OPTIONAL_COMPONENTS=x86 arm aarch64 mips powerpc pnacl systemz jsbackend msp430 sparc
LLVM_REQUIRED_COMPONENTS=ipo bitreader bitwriter linker asmparser mcjit \ LLVM_REQUIRED_COMPONENTS=ipo bitreader bitwriter linker asmparser mcjit \
interpreter instrumentation interpreter instrumentation

View File

@ -146,6 +146,12 @@ LLVMRustAddPass(LLVMPassManagerRef PM, LLVMPassRef rust_pass) {
#define SUBTARGET_MSP430 #define SUBTARGET_MSP430
#endif #endif
#ifdef LLVM_COMPONENT_SPARC
#define SUBTARGET_SPARC SUBTARGET(Sparc)
#else
#define SUBTARGET_SPARC
#endif
#define GEN_SUBTARGETS \ #define GEN_SUBTARGETS \
SUBTARGET_X86 \ SUBTARGET_X86 \
SUBTARGET_ARM \ SUBTARGET_ARM \
@ -153,7 +159,8 @@ LLVMRustAddPass(LLVMPassManagerRef PM, LLVMPassRef rust_pass) {
SUBTARGET_MIPS \ SUBTARGET_MIPS \
SUBTARGET_PPC \ SUBTARGET_PPC \
SUBTARGET_SYSTEMZ \ SUBTARGET_SYSTEMZ \
SUBTARGET_MSP430 SUBTARGET_MSP430 \
SUBTARGET_SPARC
#define SUBTARGET(x) namespace llvm { \ #define SUBTARGET(x) namespace llvm { \
extern const SubtargetFeatureKV x##FeatureKV[]; \ extern const SubtargetFeatureKV x##FeatureKV[]; \