aboutsummaryrefslogtreecommitdiff
path: root/src/llvm_backend_general.cpp
diff options
context:
space:
mode:
authorA1029384756 <hayden.gray104@gmail.com>2025-10-07 22:58:50 -0400
committerA1029384756 <hayden.gray104@gmail.com>2025-10-07 22:58:50 -0400
commitb55cf5f8f4510e09f090c9bf7e47e3b66b139de5 (patch)
treeb68486d1dc7ce64d8ba047b1b4a159d6c3a227d5 /src/llvm_backend_general.cpp
parent9ed125bcf65745c44c424ea4c86de7bb389c256b (diff)
llvm 14 fixed
Diffstat (limited to 'src/llvm_backend_general.cpp')
-rw-r--r--src/llvm_backend_general.cpp25
1 files changed, 25 insertions, 0 deletions
diff --git a/src/llvm_backend_general.cpp b/src/llvm_backend_general.cpp
index 39cf70a6a..9e3042d5a 100644
--- a/src/llvm_backend_general.cpp
+++ b/src/llvm_backend_general.cpp
@@ -449,6 +449,31 @@ gb_internal LLVMValueRef llvm_const_insert_value(lbModule *m, LLVMValueRef agg,
}
+gb_internal LLVMValueRef llvm_const_shl(lbModule *m, LLVMValueRef a, LLVMValueRef b) {
+ LLVMValueRef res = LLVMBuildShl(m->const_dummy_builder, a, b, "");
+ GB_ASSERT(LLVMIsConstant(res));
+ return res;
+}
+
+gb_internal LLVMValueRef llvm_const_lshr(lbModule *m, LLVMValueRef a, LLVMValueRef b) {
+ LLVMValueRef res = LLVMBuildLShr(m->const_dummy_builder, a, b, "");
+ GB_ASSERT(LLVMIsConstant(res));
+ return res;
+}
+
+gb_internal LLVMValueRef llvm_const_or(lbModule *m, LLVMValueRef a, LLVMValueRef b) {
+ LLVMValueRef res = LLVMBuildOr(m->const_dummy_builder, a, b, "");
+ GB_ASSERT(LLVMIsConstant(res));
+ return res;
+}
+
+gb_internal LLVMValueRef llvm_const_zext(lbModule *m, LLVMValueRef a, LLVMTypeRef b) {
+ LLVMValueRef res = LLVMBuildZExt(m->const_dummy_builder, a, b, "");
+ GB_ASSERT(LLVMIsConstant(res));
+ return res;
+}
+
+
gb_internal LLVMValueRef llvm_cstring(lbModule *m, String const &str) {