[InstCombine] Signed saturation patterns
[llvm-core.git] / test / CodeGen / MSP430 / callee-saved.ll
blob76db4dcdfe886724e5c1a222a577d86d51773a70
1 ; RUN: llc < %s | FileCheck %s
3 target datalayout = "e-m:e-p:16:16-i32:16-i64:16-f32:16-f64:16-a:8-n8:16-S16"
4 target triple = "msp430-generic-generic"
6 ; Test the r4-r10 callee-saved registers (MSP430 EABI p. 3.2.2).
8 @g = global float 0.0
10 define void @foo() {
11 ; CHECK-LABEL: foo:
12 ; CHECK-NOT: push       r15
13 ; CHECK-NOT: push       r14
14 ; CHECK-NOT: push       r13
15 ; CHECK-NOT: push       r12
16 ; CHECK-NOT: push       r11
17 ; CHECK: push   r10
18 ; CHECK: push   r9
19 ; CHECK: push   r8
20 ; CHECK: push   r7
21 ; CHECK: push   r6
22 ; CHECK: push   r5
23 ; CHECK: push   r4
24   %t1 = load volatile float, float* @g
25   %t2 = load volatile float, float* @g
26   %t3 = load volatile float, float* @g
27   %t4 = load volatile float, float* @g
28   %t5 = load volatile float, float* @g
29   %t6 = load volatile float, float* @g
30   %t7 = load volatile float, float* @g
31   store volatile float %t1, float* @g
32   store volatile float %t2, float* @g
33   store volatile float %t3, float* @g
34   store volatile float %t4, float* @g
35   store volatile float %t5, float* @g
36   store volatile float %t6, float* @g
37   ret void