aboutsummaryrefslogtreecommitdiff
path: root/src/zig_llvm.cpp
diff options
context:
space:
mode:
authorAndrew Kelley <andrew@ziglang.org>2020-11-01 14:39:56 -0700
committerAndrew Kelley <andrew@ziglang.org>2020-11-01 14:39:56 -0700
commit2e1cef75086a0b606fd8f1f7a0cda4ab2f0b7a49 (patch)
treef7c21db843acab17d344a7dfa2bf4be21d5facb1 /src/zig_llvm.cpp
parentd530e7f9c7e19b2c9d9117c3120cd75855f4023b (diff)
parentf4ed5d7d480db29d5b3142bacb9d0b98eee0fa2b (diff)
downloadzig-2e1cef75086a0b606fd8f1f7a0cda4ab2f0b7a49.tar.gz
zig-2e1cef75086a0b606fd8f1f7a0cda4ab2f0b7a49.zip
Merge branch 'LemonBoy-morereduce'
Diffstat (limited to 'src/zig_llvm.cpp')
-rw-r--r--src/zig_llvm.cpp16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/zig_llvm.cpp b/src/zig_llvm.cpp
index ac45932e0a..1a81cf33ef 100644
--- a/src/zig_llvm.cpp
+++ b/src/zig_llvm.cpp
@@ -1156,6 +1156,22 @@ LLVMValueRef ZigLLVMBuildFPMinReduce(LLVMBuilderRef B, LLVMValueRef Val) {
return wrap(unwrap(B)->CreateFPMinReduce(unwrap(Val)));
}
+LLVMValueRef ZigLLVMBuildAddReduce(LLVMBuilderRef B, LLVMValueRef Val) {
+ return wrap(unwrap(B)->CreateAddReduce(unwrap(Val)));
+}
+
+LLVMValueRef ZigLLVMBuildMulReduce(LLVMBuilderRef B, LLVMValueRef Val) {
+ return wrap(unwrap(B)->CreateMulReduce(unwrap(Val)));
+}
+
+LLVMValueRef ZigLLVMBuildFPAddReduce(LLVMBuilderRef B, LLVMValueRef Acc, LLVMValueRef Val) {
+ return wrap(unwrap(B)->CreateFAddReduce(unwrap(Acc), unwrap(Val)));
+}
+
+LLVMValueRef ZigLLVMBuildFPMulReduce(LLVMBuilderRef B, LLVMValueRef Acc, LLVMValueRef Val) {
+ return wrap(unwrap(B)->CreateFMulReduce(unwrap(Acc), unwrap(Val)));
+}
+
static_assert((Triple::ArchType)ZigLLVM_UnknownArch == Triple::UnknownArch, "");
static_assert((Triple::ArchType)ZigLLVM_arm == Triple::arm, "");
static_assert((Triple::ArchType)ZigLLVM_armeb == Triple::armeb, "");