; Function Attrs: nounwind define internal i64 @compute() #0 { entry: %alloca = alloca i64, align 8 store i64 0, ptr %alloca, align 8 %asm = call { i64, i64 } asm sideeffect " mov ${0}, #5\0A mov ${1}, #37\0A", "=r,=r"() %asm.out = extractvalue { i64, i64 } %asm, 0 %asm.out1 = extractvalue { i64, i64 } %asm, 1 store i64 %asm.out1, ptr %alloca, align 8 %allocaN = alloca i64, align 8 store i64 %asm.out, ptr %allocaN, align 8 %load = load i64, ptr %allocaN, align 8 %loadN = load i64, ptr %alloca, align 8 %add = add i64 %load, %loadN ret i64 %add } ; Function Attrs: nounwind define i32 @main() #0 { entry: %call = call i64 @compute() %ca.tr = trunc i64 %call to i32 ret i32 %ca.tr }