Owen Anderson | c004eec | 2010-09-21 18:41:19 +0000 | [diff] [blame^] | 1 | ; RUN: llc < %s -march=x86 | FileCheck %s |
2 | ; <rdar://problem/8449754> | ||||
3 | |||||
4 | define i32 @add32carry(i32 %sum, i32 %x) nounwind readnone ssp { | ||||
5 | entry: | ||||
6 | ; CHECK: sbbl %ecx, %ecx | ||||
7 | ; CHECK-NOT: addl | ||||
8 | ; CHECK: subl %ecx, %eax | ||||
9 | %add4 = add i32 %x, %sum | ||||
10 | %cmp = icmp ult i32 %add4, %x | ||||
11 | %inc = zext i1 %cmp to i32 | ||||
12 | %z.0 = add i32 %add4, %inc | ||||
13 | ret i32 %z.0 | ||||
14 | } |