X-Git-Url: http://git.sourceforge.jp/view?a=blobdiff_plain;f=gcc%2Fgenattrtab.c;h=1a9ebd22eaf313f8318d1018a41eb55b1502ade1;hb=933b10c65ef30c7ad6d743a451953289b00a4215;hp=def9a694a0e87d19c4ab7d5630d7069da95b6177;hpb=cd819d2fba06ad666e2e6b80340bafcb6bc38a1b;p=pf3gnuchains%2Fgcc-fork.git diff --git a/gcc/genattrtab.c b/gcc/genattrtab.c index def9a694a0e..1a9ebd22eaf 100644 --- a/gcc/genattrtab.c +++ b/gcc/genattrtab.c @@ -319,7 +319,7 @@ static struct attr_hash *attr_hash_table[RTL_HASH_SIZE]; /* Here is how primitive or already-shared RTL's hash codes are made. */ -#define RTL_HASH(RTL) ((long) (RTL) & 0777777) +#define RTL_HASH(RTL) ((intptr_t) (RTL) & 0777777) /* Add an entry to the hash table for RTL with hash code HASHCODE. */ @@ -1941,22 +1941,22 @@ evaluate_eq_attr (rtx exp, rtx value, int insn_code, int insn_index) else newexp = false_rtx; break; - + case SYMBOL_REF: { char *p; char string[256]; - + gcc_assert (GET_CODE (exp) == EQ_ATTR); gcc_assert (strlen (XSTR (exp, 0)) + strlen (XSTR (exp, 1)) + 2 <= 256); - + strcpy (string, XSTR (exp, 0)); strcat (string, "_"); strcat (string, XSTR (exp, 1)); for (p = string; *p; p++) *p = TOUPPER (*p); - + newexp = attr_rtx (EQ, value, attr_rtx (SYMBOL_REF, DEF_ATTR_STRING (string))); @@ -1967,12 +1967,12 @@ evaluate_eq_attr (rtx exp, rtx value, int insn_code, int insn_index) /* We construct an IOR of all the cases for which the requested attribute value is present. Since we start with FALSE, if it is not present, FALSE will be returned. - + Each case is the AND of the NOT's of the previous conditions with the current condition; in the default case the current condition is TRUE. - + For each possible COND value, call ourselves recursively. - + The extra TRUE and FALSE expressions will be eliminated by another call to the simplification routine. */ @@ -2108,7 +2108,7 @@ simplify_and_tree (rtx exp, rtx *pterm, int insn_code, int insn_index) if (attr_alt_subset_p (exp, *pterm)) *pterm = true_rtx; - + return exp; } @@ -3323,7 +3323,7 @@ write_test_expr (rtx exp, int flags) } else { - printf ("%s((1 << which_alternative) & 0x%x)", + printf ("%s((1 << which_alternative) & %#x)", XINT (exp, 1) ? "!" : "", set); } } @@ -3894,7 +3894,7 @@ write_attr_valueq (struct attr_desc *attr, const char *s) printf ("%d", num); if (num > 9 || num < 0) - printf (" /* 0x%x */", num); + printf (" /* %#x */", num); } else { @@ -4307,7 +4307,7 @@ gen_insn_reserv (rtx def) decl->insn_num = n_insn_reservs; decl->bypassed = false; decl->next = 0; - + *last_insn_reserv_p = decl; last_insn_reserv_p = &decl->next; n_insn_reservs++; @@ -4392,7 +4392,7 @@ make_automaton_attrs (void) code_exp = rtx_alloc (COND); lats_exp = rtx_alloc (COND); - + XVEC (code_exp, 0) = rtvec_alloc (n_insn_reservs * 2); XVEC (lats_exp, 0) = rtvec_alloc (n_insn_reservs * 2); @@ -4405,7 +4405,7 @@ make_automaton_attrs (void) { XVECEXP (code_exp, 0, i) = decl->condexp; XVECEXP (lats_exp, 0, i) = decl->condexp; - + XVECEXP (code_exp, 0, i+1) = make_numeric_value (decl->insn_num); XVECEXP (lats_exp, 0, i+1) = make_numeric_value (decl->default_latency); } @@ -4537,7 +4537,6 @@ from the machine description file `md'. */\n\n"); printf ("#include \"insn-config.h\"\n"); printf ("#include \"recog.h\"\n"); printf ("#include \"regs.h\"\n"); - printf ("#include \"real.h\"\n"); printf ("#include \"output.h\"\n"); printf ("#include \"toplev.h\"\n"); printf ("#include \"flags.h\"\n");