1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
2; RUN: llc < %s -mtriple=arm-- -mcpu=cortex-a8 | FileCheck %s
3
4; Check that the peepholer removes dead instructions:
5;
6;   vmov s0, r0
7;   vmov r0, s0
8
9define void @t(float %x) nounwind ssp {
10; CHECK-LABEL: t:
11; CHECK:       @ %bb.0: @ %entry
12; CHECK-NEXT:    movw r1, #65534
13; CHECK-NEXT:    movt r1, #32639
14; CHECK-NEXT:    cmp r0, r1
15; CHECK-NEXT:    bxhi lr
16; CHECK-NEXT:  .LBB0_1: @ %if.then
17; CHECK-NEXT:    b doSomething
18entry:
19  %0 = bitcast float %x to i32
20  %cmp = icmp ult i32 %0, 2139095039
21  br i1 %cmp, label %if.then, label %if.end
22
23if.then:                                          ; preds = %entry
24  tail call void @doSomething(float %x) nounwind
25  br label %if.end
26
27if.end:                                           ; preds = %if.then, %entry
28  ret void
29}
30
31declare void @doSomething(float)
32