Fix part 1 of pr4682. PICADD is a 16-bit instruction even in thumb2 mode.
[llvm/avr.git] / test / CodeGen / Thumb2 / thumb2-mls.ll
blob6d1640f340ae549cd635efe2ac865b82329663e2
1 ; RUN: llvm-as < %s | llc -march=thumb -mattr=+thumb2 | grep {mls\\W*r\[0-9\],\\W*r\[0-9\],\\W*r\[0-9\],\\W*r\[0-9\]} | count 1
3 define i32 @f1(i32 %a, i32 %b, i32 %c) {
4     %tmp1 = mul i32 %a, %b
5     %tmp2 = sub i32 %c, %tmp1
6     ret i32 %tmp2
9 ; sub doesn't commute, so no mls for this one
10 define i32 @f2(i32 %a, i32 %b, i32 %c) {
11     %tmp1 = mul i32 %a, %b
12     %tmp2 = sub i32 %tmp1, %c
13     ret i32 %tmp2