[ARM] Split large truncating MVE stores
[llvm-complete.git] / test / CodeGen / AVR / software-mul.ll
blob9a4d28127eb876a3247b3e410ec187f1709149b0
1 ; RUN: llc -mattr=avr6,-mul < %s -march=avr | FileCheck %s
2 ; RUN: llc -mcpu=attiny85 < %s -march=avr | FileCheck %s
3 ; RUN: llc -mcpu=ata5272 < %s -march=avr | FileCheck %s
4 ; RUN: llc -mcpu=attiny861a < %s -march=avr | FileCheck %s
5 ; RUN: llc -mcpu=at90usb82 < %s -march=avr | FileCheck %s
7 ; Tests lowering of multiplication to compiler support routines.
9 ; CHECK-LABEL: mul8:
10 define i8 @mul8(i8 %a, i8 %b) {
11 ; CHECK: mov  r25, r24
12 ; CHECK: mov  r24, r22
13 ; CHECK: mov  r22, r25
14 ; CHECK: call __mulqi3
15   %mul = mul i8 %b, %a
16   ret i8 %mul
19 ; CHECK-LABEL: mul16:
20 define i16 @mul16(i16 %a, i16 %b) {
21 ; CHECK: movw  r18, r24
22 ; CHECK: movw  r24, r22
23 ; CHECK: movw  r22, r18
24 ; CHECK: call  __mulhi3
25   %mul = mul nsw i16 %b, %a
26   ret i16 %mul