0.5.3: Single-module not respected. Fix issue with compiler defined types. Fix optimization levels for projects. Use GEP i8 on offsets. Optimize foreach on len 1 arrays. Move panic blocks last. Fix generic module wildcard imports. Deprecate init_temp / init_new. Fix issue with macro vaarg and untyped lists. Fix extern const globals.

This commit is contained in:
Christoffer Lerno
2023-12-27 00:43:37 +01:00
committed by Christoffer Lerno
parent e91f6e268e
commit deb4cc7c4b
208 changed files with 9555 additions and 9369 deletions

View File

@@ -17,16 +17,15 @@ entry:
store ptr null, ptr %x, align 8
%0 = load ptr, ptr %x, align 8
%checknull = icmp eq ptr %0, null
br i1 %checknull, label %panic, label %checkok
panic: ; preds = %entry
%1 = load ptr, ptr @std.core.builtin.panic, align 8
call void %1(ptr @.panic_msg, i64 42, ptr @.file, i64 8, ptr @.func, i64 4, i32 6)
unreachable
%1 = call i1 @llvm.expect.i1(i1 %checknull, i1 false)
br i1 %1, label %panic, label %checkok
checkok: ; preds = %entry
%2 = load i32, ptr %0, align 4
store i32 %2, ptr %y, align 4
ret void
panic: ; preds = %entry
%3 = load ptr, ptr @std.core.builtin.panic, align 8
call void %3(ptr @.panic_msg, i64 42, ptr @.file, i64 8, ptr @.func, i64 4, i32 6)
unreachable
}