PATCH: Fix for compile/20010605-1.c on PA

law@redhat.com law@redhat.com
Mon Aug 20 09:57:00 GMT 2001


  In message < 200108171556.f7HFukQp026658@hiauly1.hia.nrc.ca >you write:
  > The enclosed patch fixes the failure of compile/20010605-1.c on the PA.
  > The RETURN_IN_MEMORY macro wasn't correctly testing for the case where
  > int_size_in_bytes returns -1.  This can happen when TYPE is a SAVE_EXPR
  > with variable size.
  > 
  > The are probably other places in pa.c and pa.h where similar tests
  > should be done with the return of int_size_in_bytes.  However, passing
  > a SAVE_EXPR to a nested function seems to be seriously broken, so I
  > haven't been able to fully test a similar change for function parameters.
  > 
  > Bootstrap tested with no regressions on both main and branch on
  > hppa1.1-hp-hpux10.20.
  > 
  > Dave
  > -- 
  > J. David Anglin                                  dave.anglin@nrc.ca
  > National Research Council of Canada              (613) 990-0752 (FAX: 952-6
  > 605)
  > 
  > 2001-08-10  John David Anglin  <dave@hiauly1.hia.nrc.ca>
  > 
  > 	* pa.h (RETURN_IN_MEMORY): Return types with a size that is varable
  > 	or larger than an integer in memory.
Basically OK.  Though the Changelog and comment are a little ambiguous.
I'd use something like:

Note, int_size_in_bytes can return -1 if the size is variable or if the size
can not be expressed with a HOST_WIDE_INT.

jeff



More information about the Gcc-patches mailing list