[mips][micromips] Use call instructions with short delay slots
[oota-llvm.git] / test / CodeGen / Mips / micromips-delay-slot.ll
1 ; RUN: llc -march=mipsel -mcpu=mips32r2 -mattr=+micromips \
2 ; RUN:   -relocation-model=static -O2 < %s | FileCheck %s
3
4 ; Function Attrs: nounwind
5 define i32 @foo(i32 signext %a) #0 {
6 entry:
7   %a.addr = alloca i32, align 4
8   store i32 %a, i32* %a.addr, align 4
9   %0 = load i32* %a.addr, align 4
10   %shl = shl i32 %0, 2
11   %call = call i32 @bar(i32 signext %shl)
12   ret i32 %call
13 }
14
15 declare i32 @bar(i32 signext) #1
16
17 ; CHECK:      jals
18 ; CHECK-NEXT: sll16