; NOTE: Assertions have been autogenerated by utils/update_llubi_test_checks.py UTC_ARGS: --version 6 ; RUN: llubi --verbose < %s 2>&1 | FileCheck %s declare ptr @malloc(i64) declare ptr @calloc(i64, i64) declare void @free(ptr) define i32 @main() { entry: %ptr1 = call ptr @malloc(i64 4) store i32 100, ptr %ptr1 %ptr2 = call ptr @calloc(i64 1, i64 4) %val1 = load i32, ptr %ptr1 %val2 = load i32, ptr %ptr2 call void @free(ptr %ptr1) call void @free(ptr %ptr2) ret i32 0 } ; CHECK: Entering function: main ; CHECK-NEXT: %ptr1 = call ptr @malloc(i64 4) => ptr 0x10 [ptr1] ; CHECK-NEXT: store i32 100, ptr %ptr1, align 4 ; CHECK-NEXT: %ptr2 = call ptr @calloc(i64 1, i64 4) => ptr 0x20 [ptr2] ; CHECK-NEXT: %val1 = load i32, ptr %ptr1, align 4 => i32 100 ; CHECK-NEXT: %val2 = load i32, ptr %ptr2, align 4 => i32 0 ; CHECK-NEXT: call void @free(ptr %ptr1) ; CHECK-NEXT: call void @free(ptr %ptr2) ; CHECK-NEXT: ret i32 0 ; CHECK-NEXT: Exiting function: main