
; Function Attrs: nounwind
define internal i64 @add_asm(i64 %0, i64 %1) #0 {
entry:
  %alloca = alloca i64, align 8
  store i64 %0, ptr %alloca, align 8
  %allocaN = alloca i64, align 8
  store i64 %1, ptr %allocaN, align 8
  %load = load i64, ptr %alloca, align 8
  %loadN = load i64, ptr %allocaN, align 8
  %asm = call i64 asm "add ${0}, ${1}, ${2}", "=r,r,r"(i64 %load, i64 %loadN)
  ret i64 %asm
}

; Function Attrs: nounwind
define i32 @main() #0 {
entry:
  %call = call i64 @add_asm(i64 40, i64 2)
  %ca.tr = trunc i64 %call to i32
  ret i32 %ca.tr
}
