diff options
| author | zack <zack@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-07-29 18:30:27 +0000 | 
|---|---|---|
| committer | zack <zack@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-07-29 18:30:27 +0000 | 
| commit | c496a16f18d269c8f07532e601d0e00e0dabfb41 (patch) | |
| tree | 076951f7e32f369ccb99540ea16b945c0cf4c7e8 | |
| parent | 1bf559e5a38dee2afe6a557f03cb61ae7d5b0c73 (diff) | |
| download | ppe42-gcc-c496a16f18d269c8f07532e601d0e00e0dabfb41.tar.gz ppe42-gcc-c496a16f18d269c8f07532e601d0e00e0dabfb41.zip  | |
	* config/ia64/ia64.c (setjmp_operand): Delete, unused.
	(got_symbolic_operand): Remove unreachable code.
	* config/ia64/ia64.h (PREDICATE_CODES): Remove entry for
	setjmp_operand; add entry for tls_symbolic_operand.
	* config/ia64/ia64-protos.h: Remove all prototypes of
	predicate functions.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85311 138bc75d-0d04-0410-961f-82ee72b054a4
| -rw-r--r-- | gcc/ChangeLog | 11 | ||||
| -rw-r--r-- | gcc/config/ia64/ia64-protos.h | 41 | ||||
| -rw-r--r-- | gcc/config/ia64/ia64.c | 65 | ||||
| -rw-r--r-- | gcc/config/ia64/ia64.h | 2 | 
4 files changed, 12 insertions, 107 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 1a6e4e130d3..72b7576dbc4 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,12 @@ +2004-07-29  Zack Weinberg  <zack@codesourcery.com> + +	* config/ia64/ia64.c (setjmp_operand): Delete, unused. +	(got_symbolic_operand): Remove unreachable code. +	* config/ia64/ia64.h (PREDICATE_CODES): Remove entry for +	setjmp_operand; add entry for tls_symbolic_operand. +	* config/ia64/ia64-protos.h: Remove all prototypes of +	predicate functions. +  2004-07-29  Mark Mitchell  <mark@codesourcery.com>  	* c-common.h (lang_post_pch_load): New variable. @@ -162,7 +171,7 @@  	* config/rs6000/darwin.h (BOOL_TYPE_SIZE): Conditionalize on  	value of darwin_one_byte_bool.  	* doc/invoke.texi: Document -mone-byte-bool flag. -	 +  2004-07-28  Eric Christopher  <echristo@redhat.com>  	* c-common.c (c_common_unsafe_for_reeval): Delete. diff --git a/gcc/config/ia64/ia64-protos.h b/gcc/config/ia64/ia64-protos.h index e59dff5afbe..19e1335b17e 100644 --- a/gcc/config/ia64/ia64-protos.h +++ b/gcc/config/ia64/ia64-protos.h @@ -33,47 +33,6 @@ extern int bundling_p;  extern int ia64_st_address_bypass_p (rtx, rtx);  extern int ia64_ld_address_bypass_p (rtx, rtx);  extern int ia64_produce_address_p (rtx); -extern int call_operand (rtx, enum machine_mode); -extern int sdata_symbolic_operand (rtx, enum machine_mode); -extern int got_symbolic_operand (rtx, enum machine_mode); -extern int symbolic_operand (rtx, enum machine_mode); -extern int tls_symbolic_operand (rtx, enum machine_mode); -extern int function_operand (rtx, enum machine_mode); -extern int setjmp_operand (rtx, enum machine_mode); -extern int move_operand (rtx, enum machine_mode); -extern int gr_register_operand (rtx, enum machine_mode); -extern int fr_register_operand (rtx, enum machine_mode); -extern int grfr_register_operand (rtx, enum machine_mode); -extern int gr_nonimmediate_operand (rtx, enum machine_mode); -extern int fr_nonimmediate_operand (rtx, enum machine_mode); -extern int grfr_nonimmediate_operand (rtx, enum machine_mode); -extern int gr_reg_or_0_operand (rtx, enum machine_mode); -extern int gr_reg_or_5bit_operand (rtx, enum machine_mode); -extern int gr_reg_or_6bit_operand (rtx, enum machine_mode); -extern int gr_reg_or_8bit_operand (rtx, enum machine_mode); -extern int grfr_reg_or_8bit_operand (rtx, enum machine_mode); -extern int gr_reg_or_8bit_adjusted_operand (rtx, enum machine_mode); -extern int gr_reg_or_8bit_and_adjusted_operand (rtx, enum machine_mode); -extern int gr_reg_or_14bit_operand (rtx, enum machine_mode); -extern int gr_reg_or_22bit_operand (rtx, enum machine_mode); -extern int shift_count_operand (rtx, enum machine_mode); -extern int shift_32bit_count_operand (rtx, enum machine_mode); -extern int shladd_operand (rtx, enum machine_mode); -extern int fetchadd_operand (rtx, enum machine_mode); -extern int fr_reg_or_fp01_operand (rtx, enum machine_mode); -extern int normal_comparison_operator (rtx, enum machine_mode); -extern int adjusted_comparison_operator (rtx, enum machine_mode); -extern int signed_inequality_operator (rtx, enum machine_mode); -extern int destination_operand (rtx, enum machine_mode); -extern int not_postinc_memory_operand (rtx, enum machine_mode); -extern int predicate_operator (rtx, enum machine_mode); -extern int ar_lc_reg_operand (rtx, enum machine_mode); -extern int ar_ccv_reg_operand (rtx, enum machine_mode); -extern int ar_pfs_reg_operand (rtx, enum machine_mode); -extern int general_xfmode_operand (rtx, enum machine_mode); -extern int destination_xfmode_operand (rtx, enum machine_mode); -extern int xfreg_or_fp01_operand (rtx, enum machine_mode); -extern int basereg_operand (rtx, enum machine_mode);  extern rtx ia64_expand_move (rtx, rtx);  extern int ia64_move_ok (rtx, rtx); diff --git a/gcc/config/ia64/ia64.c b/gcc/config/ia64/ia64.c index aa0dc20c268..1053447b499 100644 --- a/gcc/config/ia64/ia64.c +++ b/gcc/config/ia64/ia64.c @@ -479,22 +479,7 @@ got_symbolic_operand (rtx op, enum machine_mode mode ATTRIBUTE_UNUSED)        op = XEXP (op, 1);        if (GET_CODE (op) != CONST_INT)  	return 0; - -	return 1; - -      /* Ok if we're not using GOT entries at all.  */ -      if (TARGET_NO_PIC || TARGET_AUTO_PIC) -	return 1; - -      /* "Ok" while emitting rtl, since otherwise we won't be provided -	 with the entire offset during emission, which makes it very -	 hard to split the offset into high and low parts.  */ -      if (currently_expanding_to_rtl) -	return 1; - -      /* Force the low 14 bits of the constant to zero so that we do not -	 use up so many GOT entries.  */ -      return (INTVAL (op) & 0x3fff) == 0; +      return 1;      case SYMBOL_REF:        if (SYMBOL_REF_SMALL_ADDR_P (op)) @@ -548,54 +533,6 @@ function_operand (rtx op, enum machine_mode mode ATTRIBUTE_UNUSED)      return 0;  } -/* Return 1 if OP is setjmp or a similar function.  */ - -/* ??? This is an unsatisfying solution.  Should rethink.  */ - -int -setjmp_operand (rtx op, enum machine_mode mode ATTRIBUTE_UNUSED) -{ -  const char *name; -  int retval = 0; - -  if (GET_CODE (op) != SYMBOL_REF) -    return 0; - -  name = XSTR (op, 0); - -  /* The following code is borrowed from special_function_p in calls.c.  */ - -  /* Disregard prefix _, __ or __x.  */ -  if (name[0] == '_') -    { -      if (name[1] == '_' && name[2] == 'x') -	name += 3; -      else if (name[1] == '_') -	name += 2; -      else -	name += 1; -    } - -  if (name[0] == 's') -    { -      retval -	= ((name[1] == 'e' -	    && (! strcmp (name, "setjmp") -		|| ! strcmp (name, "setjmp_syscall"))) -	   || (name[1] == 'i' -	       && ! strcmp (name, "sigsetjmp")) -	   || (name[1] == 'a' -	       && ! strcmp (name, "savectx"))); -    } -  else if ((name[0] == 'q' && name[1] == 's' -	    && ! strcmp (name, "qsetjmp")) -	   || (name[0] == 'v' && name[1] == 'f' -	       && ! strcmp (name, "vfork"))) -    retval = 1; - -  return retval; -} -  /* Return 1 if OP is a general operand, excluding tls symbolic operands.  */  int diff --git a/gcc/config/ia64/ia64.h b/gcc/config/ia64/ia64.h index 8bc4e3ba3b7..96b559b4d12 100644 --- a/gcc/config/ia64/ia64.h +++ b/gcc/config/ia64/ia64.h @@ -2150,8 +2150,8 @@ do {									\  { "sdata_symbolic_operand", {SYMBOL_REF, CONST}},			\  { "small_addr_symbolic_operand", {SYMBOL_REF}},				\  { "symbolic_operand", {SYMBOL_REF, CONST, LABEL_REF}},			\ +{ "tls_symbolic_operand", {SYMBOL_REF}},				\  { "function_operand", {SYMBOL_REF}},					\ -{ "setjmp_operand", {SYMBOL_REF}},					\  { "destination_operand", {SUBREG, REG, MEM}},				\  { "not_postinc_memory_operand", {MEM}},					\  { "move_operand", {SUBREG, REG, MEM, CONST_INT, CONST_DOUBLE,		\  | 

