1 /* { dg-do compile } */
2 /* { dg-options "-finline-functions" } */
3 
4 int k1, k2, k3, k4, k5, k6, k7, k8;
5 
6 void set_first_insn (int);
7 void set_last_insn (void);
8 
make_insn_raw(void)9 static int make_insn_raw (void)
10 {
11   set_first_insn (0);
12   set_last_insn ();
13   return k1;
14 }
15 
add_insn_after(void)16 static void add_insn_after (void)
17 {
18   if (k2)
19     k3 = k4;
20 
21   if (k5)
22     k6 = k7;
23 }
24 
emit_pattern_after_noloc(int (make_raw)(void))25 void emit_pattern_after_noloc (int (make_raw) (void))
26 {
27   if (k8)
28     {
29       make_raw ();
30       add_insn_after ();
31     }
32 }
33 
emit_insn_after_noloc(void)34 void emit_insn_after_noloc (void)
35 {
36   emit_pattern_after_noloc (make_insn_raw);
37 }
38 
emit_debug_insn_before_setloc(int k9)39 void emit_debug_insn_before_setloc (int k9)
40 {
41   if (k9)
42     make_insn_raw ();
43 }
44