hugr-llvm 0.26.0

A general and extensible crate for lowering HUGRs into LLVM IR
---
source: hugr-llvm/src/extension/prelude.rs
expression: mod_str
---
; ModuleID = 'test_context'
source_filename = "test_context"

@0 = private unnamed_addr constant [6 x i8] c"PANIC\00", align 1
@prelude.panic_template = private unnamed_addr constant [34 x i8] c"Program panicked (signal %i): %s\0A\00", align 1

define internal { i16, i16 } @_hl.main.1(i16 %0, i16 %1) {
alloca_block:
  br label %entry_block

entry_block:                                      ; preds = %alloca_block
  %2 = extractvalue { i32, ptr } { i32 42, ptr @0 }, 0
  %3 = extractvalue { i32, ptr } { i32 42, ptr @0 }, 1
  %4 = call i32 (ptr, ...) @printf(ptr @prelude.panic_template, i32 %2, ptr %3)
  call void @abort()
  %mrv = insertvalue { i16, i16 } poison, i16 0, 0
  %mrv8 = insertvalue { i16, i16 } %mrv, i16 0, 1
  ret { i16, i16 } %mrv8
}

declare i32 @printf(ptr, ...)

declare void @abort()