OSDN Git Service

* gcc.target/xstormy16: New test directory.
[pf3gnuchains/gcc-fork.git] / gcc / testsuite / gcc.target / xstormy16 / bp.c
1 /* { dg-do compile } */
2 /* { dg-options "-O2" } */
3 /* { dg-final { scan-assembler "bp " } } */
4
5 #define a_val (*((volatile unsigned char *) 0x7f14))
6 #define b_val (*((volatile unsigned char *) 0x7f10))
7
8 unsigned char * a_ptr = (unsigned char *) 0x7f14;
9 unsigned char * b_ptr = (unsigned char *) 0x7f10;
10
11 int
12 foo (void)
13 {
14   if (a_val & 0x08)
15     {
16       if (b_val & 0x08)
17         return -1;
18
19       return 0;
20     }
21
22   return -1;
23 }
24
25 int
26 bar (void)
27 {
28   *a_ptr = 0x08;
29   *b_ptr = 0xf7;
30
31   return foo ();
32 }
33
34