fix powerpc toolchain build failure on x86_64 hosts

SVN-Revision: 14036
v19.07.3_mercusys_ac12_duma
Gabor Juhos 16 years ago
parent ab0a7b81ed
commit 65f21ce0d3

@ -19382,136 +19382,6 @@ diff -Nur gcc-4.1.2/gcc/expr.c gcc-4.1.2-owrt/gcc/expr.c
dest = gen_rtx_MEM (mode, dest_addr);
if (type != 0)
diff -Nur gcc-4.1.2/gcc/genemit.c gcc-4.1.2-owrt/gcc/genemit.c
--- gcc-4.1.2/gcc/genemit.c 2005-06-25 04:02:01.000000000 +0200
+++ gcc-4.1.2-owrt/gcc/genemit.c 2007-05-24 12:03:28.000000000 +0200
@@ -122,6 +122,24 @@
}
static void
+gen_vararg_prologue(int operands)
+{
+ int i;
+
+ if (operands > 1)
+ {
+ for (i = 1; i < operands; i++)
+ printf(" rtx operand%d ATTRIBUTE_UNUSED;\n", i);
+
+ printf(" va_list args;\n\n");
+ printf(" va_start(args, operand0);\n");
+ for (i = 1; i < operands; i++)
+ printf(" operand%d = va_arg(args, rtx);\n", i);
+ printf(" va_end(args);\n\n");
+ }
+}
+
+static void
print_code (RTX_CODE code)
{
const char *p1;
@@ -406,18 +424,16 @@
fatal ("match_dup operand number has no match_operand");
/* Output the function name and argument declarations. */
- printf ("rtx\ngen_%s (", XSTR (insn, 0));
+ printf ("rtx\ngen_%s ", XSTR (insn, 0));
+
if (operands)
- for (i = 0; i < operands; i++)
- if (i)
- printf (",\n\trtx operand%d ATTRIBUTE_UNUSED", i);
- else
- printf ("rtx operand%d ATTRIBUTE_UNUSED", i);
+ printf("(rtx operand0 ATTRIBUTE_UNUSED, ...)\n");
else
- printf ("void");
- printf (")\n");
+ printf("(void)\n");
printf ("{\n");
+ gen_vararg_prologue(operands);
+
/* Output code to construct and return the rtl for the instruction body. */
if (XVECLEN (insn, 1) == 1)
@@ -457,16 +473,12 @@
operands = max_operand_vec (expand, 1);
/* Output the function name and argument declarations. */
- printf ("rtx\ngen_%s (", XSTR (expand, 0));
+ printf ("rtx\ngen_%s ", XSTR (expand, 0));
if (operands)
- for (i = 0; i < operands; i++)
- if (i)
- printf (",\n\trtx operand%d", i);
- else
- printf ("rtx operand%d", i);
+ printf("(rtx operand0 ATTRIBUTE_UNUSED, ...)\n");
else
- printf ("void");
- printf (")\n");
+ printf("(void)\n");
+
printf ("{\n");
/* If we don't have any C code to write, only one insn is being written,
@@ -476,6 +488,8 @@
&& operands > max_dup_opno
&& XVECLEN (expand, 1) == 1)
{
+ gen_vararg_prologue(operands);
+
printf (" return ");
gen_exp (XVECEXP (expand, 1, 0), DEFINE_EXPAND, NULL);
printf (";\n}\n\n");
@@ -489,6 +503,7 @@
for (; i <= max_scratch_opno; i++)
printf (" rtx operand%d ATTRIBUTE_UNUSED;\n", i);
printf (" rtx _val = 0;\n");
+ gen_vararg_prologue(operands);
printf (" start_sequence ();\n");
/* The fourth operand of DEFINE_EXPAND is some code to be executed
diff -Nur gcc-4.1.2/gcc/genflags.c gcc-4.1.2-owrt/gcc/genflags.c
--- gcc-4.1.2/gcc/genflags.c 2005-06-25 04:02:01.000000000 +0200
+++ gcc-4.1.2-owrt/gcc/genflags.c 2007-05-24 12:03:28.000000000 +0200
@@ -128,7 +128,6 @@
gen_proto (rtx insn)
{
int num = num_operands (insn);
- int i;
const char *name = XSTR (insn, 0);
int truth = maybe_eval_c_test (XSTR (insn, 2));
@@ -159,12 +158,7 @@
if (num == 0)
fputs ("void", stdout);
else
- {
- for (i = 1; i < num; i++)
- fputs ("rtx, ", stdout);
-
- fputs ("rtx", stdout);
- }
+ fputs("rtx, ...", stdout);
puts (");");
@@ -174,12 +168,7 @@
{
printf ("static inline rtx\ngen_%s", name);
if (num > 0)
- {
- putchar ('(');
- for (i = 0; i < num-1; i++)
- printf ("rtx ARG_UNUSED (%c), ", 'a' + i);
- printf ("rtx ARG_UNUSED (%c))\n", 'a' + i);
- }
+ puts("(rtx ARG_UNUSED(a), ...)");
else
puts ("(void)");
puts ("{\n return 0;\n}");
diff -Nur gcc-4.1.2/gcc/genoutput.c gcc-4.1.2-owrt/gcc/genoutput.c
--- gcc-4.1.2/gcc/genoutput.c 2005-06-25 04:02:01.000000000 +0200
+++ gcc-4.1.2-owrt/gcc/genoutput.c 2007-05-24 12:03:28.000000000 +0200
@ -19567,18 +19437,6 @@ diff -Nur gcc-4.1.2/gcc/longlong.h gcc-4.1.2-owrt/gcc/longlong.h
#if defined (__hppa) && W_TYPE_SIZE == 32
#define add_ssaaaa(sh, sl, ah, al, bh, bl) \
__asm__ ("add %4,%5,%1\n\taddc %2,%3,%0" \
diff -Nur gcc-4.1.2/gcc/optabs.h gcc-4.1.2-owrt/gcc/optabs.h
--- gcc-4.1.2/gcc/optabs.h 2005-08-19 23:20:02.000000000 +0200
+++ gcc-4.1.2-owrt/gcc/optabs.h 2007-05-24 12:03:28.000000000 +0200
@@ -415,7 +415,7 @@
extern GTY(()) optab code_to_optab[NUM_RTX_CODE + 1];
-typedef rtx (*rtxfun) (rtx);
+typedef rtx (*rtxfun) (rtx, ...);
/* Indexed by the rtx-code for a conditional (e.g. EQ, LT,...)
gives the gen_function to make a branch to test that condition. */
diff -Nur gcc-4.1.2/libstdc++-v3/acinclude.m4 gcc-4.1.2-owrt/libstdc++-v3/acinclude.m4
--- gcc-4.1.2/libstdc++-v3/acinclude.m4 2007-01-29 11:51:01.000000000 +0100
+++ gcc-4.1.2-owrt/libstdc++-v3/acinclude.m4 2007-05-24 12:03:28.000000000 +0200

@ -21943,145 +21943,6 @@
{
int save_tree_used;
--- a/gcc/genemit.c
+++ b/gcc/genemit.c
@@ -121,6 +121,24 @@ max_operand_vec (rtx insn, int arg)
}
static void
+gen_vararg_prologue(int operands)
+{
+ int i;
+
+ if (operands > 1)
+ {
+ for (i = 1; i < operands; i++)
+ printf(" rtx operand%d ATTRIBUTE_UNUSED;\n", i);
+
+ printf(" va_list args;\n\n");
+ printf(" va_start(args, operand0);\n");
+ for (i = 1; i < operands; i++)
+ printf(" operand%d = va_arg(args, rtx);\n", i);
+ printf(" va_end(args);\n\n");
+ }
+}
+
+static void
print_code (RTX_CODE code)
{
const char *p1;
@@ -405,18 +423,16 @@ gen_insn (rtx insn, int lineno)
fatal ("match_dup operand number has no match_operand");
/* Output the function name and argument declarations. */
- printf ("rtx\ngen_%s (", XSTR (insn, 0));
+ printf ("rtx\ngen_%s ", XSTR (insn, 0));
+
if (operands)
- for (i = 0; i < operands; i++)
- if (i)
- printf (",\n\trtx operand%d ATTRIBUTE_UNUSED", i);
- else
- printf ("rtx operand%d ATTRIBUTE_UNUSED", i);
+ printf("(rtx operand0 ATTRIBUTE_UNUSED, ...)\n");
else
- printf ("void");
- printf (")\n");
+ printf("(void)\n");
printf ("{\n");
+ gen_vararg_prologue(operands);
+
/* Output code to construct and return the rtl for the instruction body. */
if (XVECLEN (insn, 1) == 1)
@@ -456,16 +472,12 @@ gen_expand (rtx expand)
operands = max_operand_vec (expand, 1);
/* Output the function name and argument declarations. */
- printf ("rtx\ngen_%s (", XSTR (expand, 0));
+ printf ("rtx\ngen_%s ", XSTR (expand, 0));
if (operands)
- for (i = 0; i < operands; i++)
- if (i)
- printf (",\n\trtx operand%d", i);
- else
- printf ("rtx operand%d", i);
+ printf("(rtx operand0 ATTRIBUTE_UNUSED, ...)\n");
else
- printf ("void");
- printf (")\n");
+ printf("(void)\n");
+
printf ("{\n");
/* If we don't have any C code to write, only one insn is being written,
@@ -475,6 +487,8 @@ gen_expand (rtx expand)
&& operands > max_dup_opno
&& XVECLEN (expand, 1) == 1)
{
+ gen_vararg_prologue(operands);
+
printf (" return ");
gen_exp (XVECEXP (expand, 1, 0), DEFINE_EXPAND, NULL);
printf (";\n}\n\n");
@@ -488,6 +502,7 @@ gen_expand (rtx expand)
for (; i <= max_scratch_opno; i++)
printf (" rtx operand%d ATTRIBUTE_UNUSED;\n", i);
printf (" rtx _val = 0;\n");
+ gen_vararg_prologue(operands);
printf (" start_sequence ();\n");
/* The fourth operand of DEFINE_EXPAND is some code to be executed
--- a/gcc/genflags.c
+++ b/gcc/genflags.c
@@ -127,7 +127,6 @@ static void
gen_proto (rtx insn)
{
int num = num_operands (insn);
- int i;
const char *name = XSTR (insn, 0);
int truth = maybe_eval_c_test (XSTR (insn, 2));
@@ -158,12 +157,7 @@ gen_proto (rtx insn)
if (num == 0)
fputs ("void", stdout);
else
- {
- for (i = 1; i < num; i++)
- fputs ("rtx, ", stdout);
-
- fputs ("rtx", stdout);
- }
+ fputs("rtx, ...", stdout);
puts (");");
@@ -173,12 +167,7 @@ gen_proto (rtx insn)
{
printf ("static inline rtx\ngen_%s", name);
if (num > 0)
- {
- putchar ('(');
- for (i = 0; i < num-1; i++)
- printf ("rtx ARG_UNUSED (%c), ", 'a' + i);
- printf ("rtx ARG_UNUSED (%c))\n", 'a' + i);
- }
+ puts("(rtx ARG_UNUSED(a), ...)");
else
puts ("(void)");
puts ("{\n return 0;\n}");
--- a/gcc/genoutput.c
+++ b/gcc/genoutput.c
@@ -386,7 +386,7 @@ output_insn_data (void)
}
if (d->name && d->name[0] != '*')
- printf (" (insn_gen_fn) gen_%s,\n", d->name);
+ printf (" gen_%s,\n", d->name);
else
printf (" 0,\n");
--- a/gcc/ifcvt.c
+++ b/gcc/ifcvt.c
@@ -77,7 +77,7 @@ static int num_possible_if_blocks;
@ -22231,17 +22092,6 @@
#if defined (__hppa) && W_TYPE_SIZE == 32
#define add_ssaaaa(sh, sl, ah, al, bh, bl) \
__asm__ ("add %4,%5,%1\n\taddc %2,%3,%0" \
--- a/gcc/optabs.h
+++ b/gcc/optabs.h
@@ -431,7 +431,7 @@ extern enum insn_code reload_out_optab[N
extern GTY(()) optab code_to_optab[NUM_RTX_CODE + 1];
-typedef rtx (*rtxfun) (rtx);
+typedef rtx (*rtxfun) (rtx, ...);
/* Indexed by the rtx-code for a conditional (e.g. EQ, LT,...)
gives the gen_function to make a branch to test that condition. */
--- a/gcc/regrename.c
+++ b/gcc/regrename.c
@@ -1592,6 +1592,9 @@ copyprop_hardreg_forward_1 (basic_block

Loading…
Cancel
Save