aboutsummaryrefslogtreecommitdiff
path: root/src/llvm_backend.cpp
diff options
context:
space:
mode:
authorgingerBill <bill@gingerbill.org>2024-06-11 12:30:24 +0100
committergingerBill <bill@gingerbill.org>2024-06-11 12:30:24 +0100
commit1dc90103bd9e4c7783222d34cd16a2237a7dc377 (patch)
tree7da1908b94e8a6751034b5105807f0e0c57dcb04 /src/llvm_backend.cpp
parent0b02c67cdf316d55232f0433d51f6ea781d74a22 (diff)
Make verification ignorable with a define flag
Diffstat (limited to 'src/llvm_backend.cpp')
-rw-r--r--src/llvm_backend.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/llvm_backend.cpp b/src/llvm_backend.cpp
index 81de2c224..04c4ce244 100644
--- a/src/llvm_backend.cpp
+++ b/src/llvm_backend.cpp
@@ -9,6 +9,11 @@
#endif
+#ifndef LLVM_IGNORE_VERIFICATION
+#define LLVM_IGNORE_VERIFICATION 0
+#endif
+
+
#include "llvm_backend.hpp"
#include "llvm_abi.cpp"
#include "llvm_backend_opt.cpp"
@@ -1126,6 +1131,10 @@ gb_internal void lb_finalize_objc_names(lbProcedure *p) {
}
gb_internal void lb_verify_function(lbModule *m, lbProcedure *p, bool dump_ll=false) {
+ if (LLVM_IGNORE_VERIFICATION) {
+ return;
+ }
+
if (!m->debug_builder && LLVMVerifyFunction(p->value, LLVMReturnStatusAction)) {
char *llvm_error = nullptr;
@@ -2579,6 +2588,10 @@ gb_internal String lb_filepath_obj_for_module(lbModule *m) {
gb_internal bool lb_llvm_module_verification(lbGenerator *gen, bool do_threading) {
+ if (LLVM_IGNORE_VERIFICATION) {
+ return true;
+ }
+
if (do_threading) {
for (auto const &entry : gen->modules) {
lbModule *m = entry.value;