define CFG_MAKE_TOOLCHAIN
# Prepend the tools with their prefix if cross compiling
ifneq ($(CFG_BUILD),$(1))
- CC_$(1)=$(CROSS_PREFIX_$(1))$(CC_$(1))
- CXX_$(1)=$(CROSS_PREFIX_$(1))$(CXX_$(1))
- CPP_$(1)=$(CROSS_PREFIX_$(1))$(CPP_$(1))
- AR_$(1)=$(CROSS_PREFIX_$(1))$(AR_$(1))
- RUSTC_CROSS_FLAGS_$(1)=-C linker=$$(call FIND_COMPILER,$$(CC_$(1))) \
- -C ar=$$(call FIND_COMPILER,$$(AR_$(1))) $(RUSTC_CROSS_FLAGS_$(1))
-
- RUSTC_FLAGS_$(1)=$$(RUSTC_CROSS_FLAGS_$(1)) $(RUSTC_FLAGS_$(1))
+ CC_$(1)=$(CROSS_PREFIX_$(1))$(CC_$(1))
+ CXX_$(1)=$(CROSS_PREFIX_$(1))$(CXX_$(1))
+ CPP_$(1)=$(CROSS_PREFIX_$(1))$(CPP_$(1))
+ AR_$(1)=$(CROSS_PREFIX_$(1))$(AR_$(1))
+ RUSTC_CROSS_FLAGS_$(1)=-C linker=$$(call FIND_COMPILER,$$(CC_$(1))) \
+ -C ar=$$(call FIND_COMPILER,$$(AR_$(1))) $(RUSTC_CROSS_FLAGS_$(1))
+
+ RUSTC_FLAGS_$(1)=$$(RUSTC_CROSS_FLAGS_$(1)) $(RUSTC_FLAGS_$(1))
endif
CFG_COMPILE_C_$(1) = $$(CC_$(1)) \
# For the ARM, AARCH64, MIPS and POWER crosses, use the toolchain assembler
# FIXME: We should be able to use the LLVM assembler
CFG_ASSEMBLE_$(1)=$$(CC_$(1)) $$(CFG_GCCISH_CFLAGS_$(1)) \
- $$(CFG_DEPEND_FLAGS) $$(2) -c -o $$(1)
+ $$(CFG_DEPEND_FLAGS) $$(2) -c -o $$(1)
endif
asm!("movq $0, %fs:32" :: "r"(limit) :: "volatile")
}
- #[cfg(target_os = "bitrig")]
- #[inline(always)]
- unsafe fn target_record_sp_limit(_: uint) {
- // segmented stacks are disabled
- }
-
// x86
#[cfg(all(target_arch = "x86",
any(target_os = "macos", target_os = "ios")))]
#[cfg(any(target_arch = "aarch64",
target_arch = "powerpc",
all(target_arch = "arm", target_os = "ios"),
+ target_os = "bitrig",
target_os = "openbsd"))]
unsafe fn target_record_sp_limit(_: uint) {
}
asm!("movq %fs:32, $0" : "=r"(limit) ::: "volatile");
return limit;
}
- #[cfg(target_os = "bitrig")]
- #[inline(always)]
- unsafe fn target_get_sp_limit() -> uint {
- return 2048;
- }
-
// x86
#[cfg(all(target_arch = "x86",
#[cfg(any(target_arch = "aarch64",
target_arch = "powerpc",
all(target_arch = "arm", target_os = "ios"),
+ target_os = "bitrig",
target_os = "openbsd"))]
#[inline(always)]
unsafe fn target_get_sp_limit() -> uint {