require llvm 6

This commit is contained in:
gnzlbg 2018-03-22 14:48:58 +01:00
parent d2cd57c8ff
commit 066c2ec9ba
2 changed files with 17 additions and 2 deletions

View File

@ -920,13 +920,17 @@ impl<'a, 'tcx> Builder<'a, 'tcx> {
pub fn minnum(&self, lhs: ValueRef, rhs: ValueRef) -> ValueRef {
self.count_insn("minnum");
unsafe {
llvm::LLVMRustBuildMinNum(self.llbuilder, lhs, rhs)
let instr = llvm::LLVMRustBuildMinNum(self.llbuilder, lhs, rhs);
bug!("LLVMRustBuildMinNum is not available in LLVM version < 6.0");
instr
}
}
pub fn maxnum(&self, lhs: ValueRef, rhs: ValueRef) -> ValueRef {
self.count_insn("maxnum");
unsafe {
llvm::LLVMRustBuildMaxNum(self.llbuilder, lhs, rhs)
let instr = llvm::LLVMRustBuildMaxNum(self.llbuilder, lhs, rhs);
bug!("LLVMRustBuildMaxNum is not available in LLVM version < 6.0");
instr
}
}

View File

@ -1501,6 +1501,7 @@ LLVMBuildExactUDiv(LLVMBuilderRef B, LLVMValueRef LHS,
}
#endif
#if LLVM_VERSION_GE(6, 0)
extern "C" LLVMValueRef
LLVMRustBuildMinNum(LLVMBuilderRef B, LLVMValueRef LHS, LLVMValueRef RHS) {
return wrap(unwrap(B)->CreateMinNum(unwrap(LHS),unwrap(RHS)));
@ -1509,3 +1510,13 @@ extern "C" LLVMValueRef
LLVMRustBuildMaxNum(LLVMBuilderRef B, LLVMValueRef LHS, LLVMValueRef RHS) {
return wrap(unwrap(B)->CreateMaxNum(unwrap(LHS),unwrap(RHS)));
}
#else
extern "C" LLVMValueRef
LLVMRustBuildMinNum(LLVMBuilderRef, LLVMValueRef, LLVMValueRef) {
return nullptr;
}
extern "C" LLVMValueRef
LLVMRustBuildMaxNum(LLVMBuilderRef, LLVMValueRef, LLVMValueRef) {
return nullptr;
}
#endif