[ARM] Adjust how NEON shifts are lowered
[llvm-core.git] / test / CodeGen / ARM / favor-low-reg-for-Osize.ll
blob0ebdca3dbdaeeb20c8f4a2a4c6f08ba28ffd8be8
1 ; REQUIRES: asserts
2 ; RUN: llc -debug-only=regalloc < %s 2>%t | FileCheck %s --check-prefix=CHECK
3 ; RUN: FileCheck %s < %t --check-prefix=DEBUG
5 target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n8:16:32-S64"
6 target triple = "thumbv7m--linux-gnueabi"
9 ; DEBUG:         AllocationOrder(GPR) = [ $r0 $r1 $r2 $r3 $r4 $r5 $r6 $r7 $r12 $lr $r8 $r9 $r10 $r11 ]
11 define i32 @test_minsize(i32 %x) optsize minsize {
12 ; CHECK-LABEL: test_minsize:
13 entry:
14 ; CHECK: mov     r4, r0
15   tail call void asm sideeffect "", "~{r0},~{r1},~{r2},~{r3}"()
16 ; CHECK: mov     r0, r4
17   ret i32 %x
20 ; DEBUG: AllocationOrder(GPR) = [ $r0 $r1 $r2 $r3 $r12 $lr $r4 $r5 $r6 $r7 $r8 $r9 $r10 $r11 ]
22 define i32 @test_optsize(i32 %x) optsize {
23 ; CHECK-LABEL: test_optsize:
24 entry:
25 ; CHECK: mov     r12, r0
26   tail call void asm sideeffect "", "~{r0},~{r1},~{r2},~{r3}"()
27 ; CHECK: mov     r0, r12
28   ret i32 %x