Browse Source

Ignore `store undef` calls

gingerBill 1 year ago
parent
commit
d589914956
1 changed files with 5 additions and 1 deletions
  1. 5 1
      src/llvm_backend_general.cpp

+ 5 - 1
src/llvm_backend_general.cpp

@@ -962,8 +962,12 @@ gb_internal bool lb_is_type_proc_recursive(Type *t) {
 
 gb_internal void lb_emit_store(lbProcedure *p, lbValue ptr, lbValue value) {
 	GB_ASSERT(value.value != nullptr);
-	Type *a = type_deref(ptr.type);
 
+	if (LLVMIsUndef(value.value)) {
+		return;
+	}
+
+	Type *a = type_deref(ptr.type);
 	if (LLVMIsNull(value.value)) {
 		LLVMTypeRef src_t = llvm_addr_type(p->module, ptr);
 		if (is_type_proc(a)) {