1 ; RUN: llc < %s -mtriple=i386-apple-darwin
5 define i32 @f0(i64 %a, i64 %b) nounwind ssp {
6 %1 = alloca i64, align 4
7 %2 = alloca i64, align 4
8 store i64 %a, i64* %1, align 8
9 store i64 %b, i64* %2, align 8
10 %3 = load i64* %1, align 8
11 %4 = load i64* %2, align 8
12 %5 = call %0 @llvm.smul.with.overflow.i64(i64 %3, i64 %4)
13 %6 = extractvalue %0 %5, 0
14 %7 = extractvalue %0 %5, 1
15 br i1 %7, label %8, label %9
17 ; <label>:8 ; preds = %0
18 call void @llvm.trap()
21 ; <label>:9 ; preds = %0
22 %10 = trunc i64 %6 to i32
26 declare %0 @llvm.smul.with.overflow.i64(i64, i64) nounwind readnone
28 declare void @llvm.trap() nounwind