in the target. This pretty much relies on the compiler taking heed
of requests for values to be stored in registers. */
-static char
+/* NOTE: carlton/2002-12-05: These functions were all static, but for
+ whatever reason that caused GCC 3.1 to optimize away some of the
+ function calls within main even when no optimization flags were
+ passed. */
+
+char
add_char (register char u, register char v)
{
return u + v;
}
-static short
+short
add_short (register short u, register short v)
{
return u + v;
}
-static int
+int
add_int (register int u, register int v)
{
return u + v;
}
-static long
+long
add_long (register long u, register long v)
{
return u + v;
}
-static float
+float
add_float (register float u, register float v)
{
return u + v;
}
-static double
+double
add_double (register double u, register double v)
{
return u + v;
/* */
-static char
+char
wack_char (register char u, register char v)
{
register char l = u;
return l;
}
-static short
+short
wack_short (register short u, register short v)
{
register short l = u;
return l;
}
-static int
+int
wack_int (register int u, register int v)
{
register int l = u;
return l;
}
-static long
+long
wack_long (register long u, register long v)
{
register long l = u;
return l;
}
-static float
+float
wack_float (register float u, register float v)
{
register float l = u;
return l;
}
-static double
+double
wack_double (register double u, register double v)
{
register double l = u;
struct s_3 { short s[3]; } z_3, s_3;
struct s_4 { short s[4]; } z_4, s_4;
-static struct s_1
+struct s_1
add_struct_1 (struct s_1 s)
{
int i;
return s;
}
-static struct s_2
+struct s_2
add_struct_2 (struct s_2 s)
{
int i;
return s;
}
-static struct s_3
+struct s_3
add_struct_3 (struct s_3 s)
{
int i;
return s;
}
-static struct s_4
+struct s_4
add_struct_4 (struct s_4 s)
{
int i;
return s;
}
-static struct s_1
+struct s_1
wack_struct_1 (void)
{
int i; register struct s_1 u = z_1;
return u;
}
-static struct s_2
+struct s_2
wack_struct_2 (void)
{
int i; register struct s_2 u = z_2;
return u;
}
-static struct s_3
+struct s_3
wack_struct_3 (void)
{
int i; register struct s_3 u = z_3;
return u;
}
-static struct s_4
+struct s_4
wack_struct_4 (void)
{
int i; register struct s_4 u = z_4;
struct f_3 {unsigned i:3;unsigned j:3;unsigned k:3; } f_3 = {1,1,1}, F_3;
struct f_4 {unsigned i:4;unsigned j:4;unsigned k:4; } f_4 = {1,1,1}, F_4;
-static struct f_1
+struct f_1
wack_field_1 (void)
{
register struct f_1 u = f_1;
return u;
}
-static struct f_2
+struct f_2
wack_field_2 (void)
{
register struct f_2 u = f_2;
return u;
}
-static struct f_3
+struct f_3
wack_field_3 (void)
{
register struct f_3 u = f_3;
return u;
}
-static struct f_4
+struct f_4
wack_field_4 (void)
{
register struct f_4 u = f_4;