[ARM] Cortex-M4 schedule additions
[llvm-complete.git] / test / CodeGen / ARM / 2010-10-25-ifcvt-ldm.ll
blobe7e0580179c47dba135d0e6506fcc1eb22d9ff6c
1 ; RUN: llc < %s -mtriple=armv6-apple-darwin -mcpu=arm1136jf-s -arm-atomic-cfg-tidy=0 | FileCheck %s
2 ; Radar 8589805: Counting the number of microcoded operations, such as for an
3 ; LDM instruction, was causing an assertion failure because the microop count
4 ; was being treated as an instruction count.
6 ; CHECK: push
7 ; CHECK: pop
8 ; CHECK: pop
9 ; CHECK: pop
11 define i32 @test(i32 %x) {
12 entry:
13   %0 = tail call signext i16 undef(i32* undef)
14   switch i32 %x, label %bb3 [
15     i32 0, label %bb4
16     i32 1, label %bb1
17     i32 2, label %bb2
18   ]
20 bb1:
21   ret i32 1
23 bb2:
24   ret i32 2
26 bb3:
27   ret i32 1
29 bb4:
30   ret i32 3