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 3.3 0203 i386/{i386.c,{i386elf,ptx4-i,sysv4}.h} for UnixWarebuild failure.


Zack, thank you for your quick review.

I believe the patch is needed from this change. Jan seems to be moving to
using
DEFAULT_PCC_STRUCT_RETURN over RETURN_IN_MEMORY.

2003-02-01  Jan Hubicka  <jh@suse.cz>

        PR c/9506
        * i386.c (override_options): Use DEFAULT_PCC_STRUCT_RETURN.

bash-2.05a$ ls $(fgrep -l DEFAULT_PCC_STRUCT_RETURN *)
beos-elf.h      freebsd.h       i386.h          linux64.h       netbsd.h
cygwin.h        i386-interix.h  linux-aout.h    mach.h          openbsd.h
freebsd-aout.h  i386.c          linux.h         netbsd-elf.h
bash-2.05a$ ls $(fgrep -l RETURN_IN_MEMORY *)
i386-interix.h  i386elf.h       sco5.h
i386.h          ptx4-i.h        sysv4.h


.../config/i386/i386.c: In function `override_options':
.../config/i386/i386.c:1024: `DEFAULT_PCC_STRUCT_RETURN' undeclared (first use in this function)




Zack Weinberg <zack@codesourcery.com> on 05/02/2003 05:05:29

To:    rbrown64@csc.com.au
cc:    gcc-patches@gcc.gnu.org
Subject:    Re: PATCH 3.3 0203 i386/{i386.c,{i386elf,ptx4-i,sysv4}.h} for
       UnixWare build failure.


rbrown64@csc.com.au writes:

> i386.h-   Do not use this macro to indicate that structures and unions
> i386.h-   should always be returned in memory.  You should instead use
> i386.h-   `DEFAULT_PCC_STRUCT_RETURN' to indicate this.  */
> i386.h-
> i386.h:#define RETURN_IN_MEMORY(TYPE) \
> i386.h-  ix86_return_in_memory (TYPE)

The comment is misleading.  DEFAULT_PCC_STRUCT_RETURN is obsolete and
should not be used in new ports.

It appears to me that there is nothing wrong with the definition of
RETURN_IN_MEMORY that you deleted; however, ix86_return_in_memory does
the exact same thing when !TARGET_64BIT, so you should be able to
delete all the overrides without further action.  What purpose did
this change serve?

> -      fprintf (file, "\tmovl\t$%sP%d,%%$s\n", LPREFIX, labelno,
> +      fprintf (file, "\tmovl\t$%sP%d,%%%s\n", LPREFIX, labelno,
>              PROFILE_COUNT_REGISTER);

This bit qualifies as an obvious fix; I've checked it in for you on
mainline and the 3.3 branch.

zw




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