Tim Northover | 44600d7 | 2012-05-17 13:12:13 +0000 | [diff] [blame] | 1 | ; RUN: llc < %s -march=arm -mcpu=cortex-a8 | FileCheck %s |
2 | define i32 @f(i32 %a, i32 %b, i32 %c) nounwind readnone ssp { | ||||
3 | entry: | ||||
4 | ; CHECK-NOT: smmls | ||||
5 | %conv4 = zext i32 %a to i64 | ||||
6 | %conv1 = sext i32 %b to i64 | ||||
7 | %conv2 = sext i32 %c to i64 | ||||
8 | %mul = mul nsw i64 %conv2, %conv1 | ||||
9 | %shr5 = lshr i64 %mul, 32 | ||||
10 | %sub = sub nsw i64 %conv4, %shr5 | ||||
11 | %conv3 = trunc i64 %sub to i32 | ||||
12 | ret i32 %conv3 | ||||
13 | } |