This is the mail archive of the gcc@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]

builtin_args_info and darwin


hi stan.

i just noticed these definitions in darwin's /usr/include/va-ppc.h:

#define __va_gwords             __builtin_args_info (0)
#define __va_fregno             __builtin_args_info (1)
#define __va_nargs              __builtin_args_info (2)
#define __va_orig_nargs         __builtin_args_info (3)
#define __va_varargs_offset     __builtin_args_info (4)

just an fyi, but the altivec implementation added "vregno" to the
CUMULATIVE_ARGS definition:

typedef struct rs6000_args
{
  int words;                    /* # words used for passing GP registers */
  int fregno;                   /* next available FP register */
  int vregno;     <-----        /* next available AltiVec register */
  int nargs_prototype;          /* # args left in the current prototype */
  int orig_nargs;               /* Original value of nargs_prototype */
  int prototype;                /* Whether a prototype was defined */
  int call_cookie;              /* Do special things for this call */
  int sysv_gregno;              /* next available GP register */
} CUMULATIVE_ARGS;

so va-ppc.h, and an assortment of other .h files in /usr/include in darwin,
will now get the wrong info.

if y'all haven't changed the system's header files for the next revision
of macosx, we need to move vregno down.

??

aldy


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