| ; NOTE: Assertions have been autogenerated by utils/update_llubi_test_checks.py UTC_ARGS: --version 6 |
| ; RUN: llubi --verbose < %s 2>&1 | FileCheck %s |
| |
| target datalayout = "e-p:64:64:64:32" |
| |
| %struct = type { i64, [2 x i32], i64 } |
| |
| define i32 @count() { |
| ret i32 4 |
| } |
| |
| define ptr @stack_address() { |
| %alloc = alloca i32 |
| ret ptr %alloc |
| } |
| |
| define void @main() { |
| %alloc = alloca i32 |
| %alloc_large_align = alloca i32, align 64 |
| %count = call i32 @count() |
| %alloc_dyn = alloca i32, i32 %count |
| %alloc_struct = alloca %struct |
| %ptr = call ptr @stack_address() |
| ret void |
| } |
| ; CHECK: Entering function: main |
| ; CHECK-NEXT: %alloc = alloca i32, align 4 => ptr 0x8 [alloc] |
| ; CHECK-NEXT: %alloc_large_align = alloca i32, align 64 => ptr 0x40 [alloc_large_align] |
| ; CHECK-NEXT: Entering function: count |
| ; CHECK-NEXT: ret i32 4 |
| ; CHECK-NEXT: Exiting function: count |
| ; CHECK-NEXT: %count = call i32 @count() => i32 4 |
| ; CHECK-NEXT: %alloc_dyn = alloca i32, i32 %count, align 4 => ptr 0x44 [alloc_dyn] |
| ; CHECK-NEXT: %alloc_struct = alloca %struct, align 8 => ptr 0x58 [alloc_struct] |
| ; CHECK-NEXT: Entering function: stack_address |
| ; CHECK-NEXT: %alloc = alloca i32, align 4 => ptr 0x70 [alloc] |
| ; CHECK-NEXT: ret ptr %alloc |
| ; CHECK-NEXT: Exiting function: stack_address |
| ; CHECK-NEXT: %ptr = call ptr @stack_address() => ptr 0x70 [dangling] |
| ; CHECK-NEXT: ret void |
| ; CHECK-NEXT: Exiting function: main |