--- /dev/null
+; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
+; RUN: llc -mtriple=x86_64-- -O0 < %s | FileCheck %s
+
+; FIXME: This is currently miscompiled due to an eflags clobber.
+define i64 @adder(i64 %lhs, i64 %rhs) {
+; CHECK-LABEL: adder:
+; CHECK: # %bb.0:
+; CHECK-NEXT: addq %rsi, %rdi
+; CHECK-NEXT: seto %al
+; CHECK-NEXT: xorl %eax, %eax
+; CHECK-NEXT: # kill: def $rax killed $eax
+; CHECK-NEXT: movl $148, %ecx
+; CHECK-NEXT: cmovoq %rcx, %rax
+; CHECK-NEXT: retq
+ %res = call { i64, i1 } @llvm.sadd.with.overflow.i64(i64 %lhs, i64 %rhs)
+ %errorbit = extractvalue { i64, i1 } %res, 1
+ %errorval = select i1 %errorbit, i64 148, i64 0
+ ret i64 %errorval
+}
+
+declare { i64, i1 } @llvm.sadd.with.overflow.i64(i64 %a, i64 %b)