This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [Patch] Emit 64-bit bounds on 32-bit hosts with DWARF


On Sat, Sep 26, 2009 at 01:16:32PM -0700, Ian Lance Taylor wrote:
> > 2009-07-11  Eric Botcazou  <ebotcazou@adacore.com>
> >
> > 	* dwarf2out.c (enum dw_val_class): Replace dw_val_class_long_long
> > 	with dw_val_class_const_double.
> > 	(struct dw_long_long_struct): Delete.
> > 	(struct dw_val_struct): Adjust for above change.
> > 	(add_AT_long_long): Rename into...
> > 	(add_AT_double): ...this.
> > 	(print_die): Replace dw_val_class_long_long case with
> > 	dw_val_class_const_double case.
> > 	(attr_checksum): Likewise.
> > 	(same_dw_val_p): Likewise.
> > 	(size_of_die): Likewise.
> > 	(value_format): Likewise.
> > 	(output_die): Likewise.
> > 	(add_const_value_attribute) <CONST_DOUBLE>: Call add_AT_double
> > 	instead of add_AT_long_long.
> > 	(add_bound_info) <INTEGER_CST>: Generate the bound as an unsigned
> > 	value with the precision of its type.
> 
> > -	case dw_val_class_long_long:
> > -	  size += 1 + 2*HOST_BITS_PER_LONG/HOST_BITS_PER_CHAR; /* block */
> > +	case dw_val_class_const_double:
> > +	  size += 2*HOST_BITS_PER_WIDE_INT/HOST_BITS_PER_CHAR;
> > +	  if (HOST_BITS_PER_WIDE_INT >= 64)
> > +	    size++; /* block */
> 
> Please use spaces around operators.
> 
> > -	    dw2_asm_output_data (1,
> > -				 2 * HOST_BITS_PER_LONG / HOST_BITS_PER_CHAR,
> > -				 "%s", name);
> > +	    if (HOST_BITS_PER_WIDE_INT >= 64)
> > +	      dw2_asm_output_data (1,
> > +				   2*HOST_BITS_PER_WIDE_INT/HOST_BITS_PER_CHAR,
> > +				   NULL);
> 
> Here too.
> 
> This is OK with those changes.

This seems like a step backwards, the original patch has been posted before
http://gcc.gnu.org/ml/gcc-patches/2009-07/msg01765.html and what has been
committed reverts the important parts of that patch.  Why are you changing
the union member to double_int from rtx?  That makes it the largest field in
the union...

	Jakub


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]