From e22d6d569fcbcf960261d71f67d554a7859fdfeb Mon Sep 17 00:00:00 2001 From: Ulrik Sverdrup Date: Sat, 19 Mar 2016 22:02:33 +0100 Subject: [PATCH] Fix LLVMRustSetHasUnsafeAlgebra to only have effect on instructions --- src/rustllvm/RustWrapper.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/rustllvm/RustWrapper.cpp b/src/rustllvm/RustWrapper.cpp index f488a517b23..33174c1e9df 100644 --- a/src/rustllvm/RustWrapper.cpp +++ b/src/rustllvm/RustWrapper.cpp @@ -165,8 +165,10 @@ extern "C" void LLVMRemoveFunctionAttrString(LLVMValueRef fn, unsigned index, co } // enable fpmath flag UnsafeAlgebra -extern "C" void LLVMRustSetHasUnsafeAlgebra(LLVMValueRef Instr) { - unwrap(Instr)->setHasUnsafeAlgebra(true); +extern "C" void LLVMRustSetHasUnsafeAlgebra(LLVMValueRef V) { + if (auto I = dyn_cast(unwrap(V))) { + I->setHasUnsafeAlgebra(true); + } } extern "C" LLVMValueRef LLVMBuildAtomicLoad(LLVMBuilderRef B,