aboutsummaryrefslogtreecommitdiff
path: root/src/llvm_backend_const.cpp
diff options
context:
space:
mode:
authorgingerBill <gingerBill@users.noreply.github.com>2024-07-02 22:16:49 +0100
committerGitHub <noreply@github.com>2024-07-02 22:16:49 +0100
commit7e6acdf800a3811a561a5e942bb69c173c1c1868 (patch)
tree8d0d0f8f02865e10c8b8944c15d2ab0f684b3d81 /src/llvm_backend_const.cpp
parent8b49549fd3cc7c7dc73dc79566b24c514392b4aa (diff)
parent723314909679b89e159cb4cb05d250d12ac64436 (diff)
Merge pull request #3855 from laytan/master
Fix two LLVM assertion failures
Diffstat (limited to 'src/llvm_backend_const.cpp')
-rw-r--r--src/llvm_backend_const.cpp4
1 files changed, 1 insertions, 3 deletions
diff --git a/src/llvm_backend_const.cpp b/src/llvm_backend_const.cpp
index 3ed8d72d9..81fe624ff 100644
--- a/src/llvm_backend_const.cpp
+++ b/src/llvm_backend_const.cpp
@@ -94,9 +94,6 @@ gb_internal LLVMValueRef llvm_const_cast(LLVMValueRef val, LLVMTypeRef dst) {
LLVMTypeKind kind = LLVMGetTypeKind(dst);
switch (kind) {
case LLVMPointerTypeKind:
- if (LB_USE_NEW_PASS_SYSTEM) {
- return val;
- }
return LLVMConstPointerCast(val, dst);
case LLVMStructTypeKind:
// GB_PANIC("%s -> %s", LLVMPrintValueToString(val), LLVMPrintTypeToString(dst));
@@ -179,6 +176,7 @@ gb_internal LLVMValueRef llvm_const_named_struct_internal(LLVMTypeRef t, LLVMVal
for (unsigned i = 0; i < elem_count; i++) {
LLVMTypeRef elem_type = LLVMStructGetTypeAtIndex(t, i);
values[i] = llvm_const_cast(values[i], elem_type);
+ GB_ASSERT_MSG(elem_type == LLVMTypeOf(values[i]), "%s != %s", LLVMPrintTypeToString(LLVMTypeOf(values[i])), LLVMPrintTypeToString(elem_type));
}
return LLVMConstNamedStruct(t, values, value_count);
}