1 /* Check for thumb1 far jump. Shouldn't save lr for small leaf functions
2 * even with a branch in it. */
3 /* { dg-options "-Os" } */
4 /* { dg-skip-if "" { ! { arm_thumb1 } } } */
5
6 void f()
7 {
8 for (;;);
9 }
10
11 volatile int g;
12 void f2(int i)
13 {
14 if (i) g=0;
15 }
16
17 void f3(int i)
18 {
19 if (i) {
20 g=0;
21 g=1;
22 g=2;
23 g=3;
24 g=4;
25 g=5;
26 g=6;
27 g=7;
28 g=8;
29 g=9;
30 }
31 }
32
33 /* { dg-final { scan-assembler-not "push.*lr" } } */
34