• Main Page
  • Related Pages
  • Modules
  • Data Structures
  • Files
  • File List
  • Globals

sst/elements/genericProc/FE/ppcFrontEnd/osx_headers/architecture/ppc/cframe.h

00001 /*
00002  * Copyright (c) 1999-2004 Apple Computer, Inc. All rights reserved.
00003  *
00004  * @APPLE_LICENSE_HEADER_START@
00005  * 
00006  * "Portions Copyright (c) 1999 Apple Computer, Inc.  All Rights
00007  * Reserved.  This file contains Original Code and/or Modifications of
00008  * Original Code as defined in and that are subject to the Apple Public
00009  * Source License Version 1.0 (the 'License').  You may not use this file
00010  * except in compliance with the License.  Please obtain a copy of the
00011  * License at http://www.apple.com/publicsource and read it before using
00012  * this file.
00013  * 
00014  * The Original Code and all software distributed under the License are
00015  * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
00016  * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
00017  * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
00018  * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT.  Please see the
00019  * License for the specific language governing rights and limitations
00020  * under the License."
00021  * 
00022  * @APPLE_LICENSE_HEADER_END@
00023  */
00024 /* Copyright (c) 1991 NeXT Software, Inc.  All rights reserved.
00025  *
00026  *      File:   architecture/ppc/cframe.h
00027  *      Author: Mike DeMoney, NeXT Software, Inc.
00028  *
00029  *      This include file defines C calling sequence defines
00030  *      for ppc port.
00031  *
00032  * HISTORY
00033  * 20-May-97  Umesh Vaishampayan  (umeshv@apple.com)
00034  *      Added C_RED_ZONE.
00035  * 29-Dec-96  Umesh Vaishampayan  (umeshv@NeXT.com)
00036  *      Ported from m98k.
00037  * 11-June-91  Mike DeMoney (mike@next.com)
00038  *      Created.
00039  */
00040 
00041 #ifndef _ARCH_PPC_CFRAME_H_
00042 #define _ARCH_PPC_CFRAME_H_
00043 
00044 /* Note that these values are copies of the somewhat more authoritative
00045  * values in <architecture/ppc/mode_independent_asm.h>.  We do not
00046  * include that file to avoid breaking legacy clients due to name
00047  * collisions.
00048  *
00049  * Note also that C_ARGSAVE_LEN isn't well defined or useful in PPC.
00050  * Most legacy uses of it are assuming it is the minimum stack frame
00051  * size, which is what we define it to be.
00052  */
00053 #if defined (__ppc64__)
00054 #define C_ARGSAVE_LEN   64      /* "minimum arg save area" (but see above) */
00055 #define C_STACK_ALIGN   32      /* stack must be 32 byte aligned */
00056 #define C_RED_ZONE      320     /* 320 bytes to skip over saved registers */
00057 #else
00058 #define C_ARGSAVE_LEN   32      /* "minimum arg save area" (but see above) */
00059 #define C_STACK_ALIGN   16      /* stack must be 16 byte aligned */
00060 #define C_RED_ZONE      224     /* 224 bytes to skip over saved registers */
00061 #endif
00062 
00063 #endif  /* _ARCH_PPC_CFRAME_H_ */

Generated on Fri Oct 22 2010 11:02:21 for SST by  doxygen 1.7.1