Back to index

cell-binutils  2.17cvs20070401
sh2.c
Go to the documentation of this file.
00001 int global;
00002 
00003 extern void trap (int, int);
00004 static void quit (int);
00005 static int foo (int);
00006 
00007 int
00008 main ()
00009 {
00010   if (foo (0) != 0 || global != 0)
00011     quit (1);
00012   if (foo (1) != 1 || global != 1)
00013     quit (1);
00014   if (foo (2) != 2 || global != 2)
00015     quit (1);
00016   if (foo (3) != 3 || global != 3)
00017     quit (1);
00018   if (foo (4) != 4 || global != 4)
00019     quit (1);
00020   if (foo (5) != 5 || global != 5)
00021     quit (1);
00022   if (foo (6) != 6 || global != 6)
00023     quit (1);
00024   if (foo (7) != 7 || global != 7)
00025     quit (1);
00026   if (foo (8) != 8 || global != 8)
00027     quit (1);
00028   quit (0);
00029 }
00030 
00031 void
00032 __main ()
00033 {
00034 }
00035 
00036 static void
00037 quit (int status)
00038 {
00039   trap (1, status);
00040 }
00041 
00042 int
00043 bar (int i)
00044 {
00045   global = i;
00046   return i;
00047 }
00048 
00049 int
00050 bar0 (int i)
00051 {
00052   global = 0;
00053   return i;
00054 }
00055 
00056 int
00057 bar1 (int i)
00058 {
00059   global = 1;
00060   return i;
00061 }
00062 
00063 int
00064 bar2 (int i)
00065 {
00066   global = 2;
00067   return i;
00068 }
00069 
00070 int
00071 bar3 (int i)
00072 {
00073   global = 3;
00074   return i;
00075 }
00076 
00077 int
00078 bar4 (int i)
00079 {
00080   global = 4;
00081   return i;
00082 }
00083 
00084 int
00085 bar5 (int i)
00086 {
00087   global = 5;
00088   return i;
00089 }
00090 
00091 int
00092 bar6 (int i)
00093 {
00094   global = 6;
00095   return i;
00096 }
00097 
00098 int
00099 bar7 (int i)
00100 {
00101   global = 7;
00102   return i;
00103 }
00104 
00105 int
00106 foo (int i)
00107 {
00108   switch (i)
00109     {
00110     case 0: bar0 (0); return 0;
00111     case 1: bar1 (1); return 1;
00112     case 2: bar2 (2); return 2;
00113     case 3: bar3 (3); return 3;
00114     case 4: bar4 (4); return 4;
00115     case 5: bar5 (5); return 5;
00116     case 6: bar6 (6); return 6;
00117     case 7: bar7 (7); return 7;
00118     default: return bar (i);
00119     }
00120 }