|
|
1.1 ! root 1: /* ! 2: * Copyright (c) 2000 Apple Computer, Inc. All rights reserved. ! 3: * ! 4: * @APPLE_LICENSE_HEADER_START@ ! 5: * ! 6: * The contents of this file constitute Original Code as defined in and ! 7: * are subject to the Apple Public Source License Version 1.1 (the ! 8: * "License"). You may not use this file except in compliance with the ! 9: * License. Please obtain a copy of the License at ! 10: * http://www.apple.com/publicsource and read it before using this file. ! 11: * ! 12: * This Original Code and all software distributed under the License are ! 13: * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER ! 14: * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, ! 15: * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, ! 16: * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT. Please see the ! 17: * License for the specific language governing rights and limitations ! 18: * under the License. ! 19: * ! 20: * @APPLE_LICENSE_HEADER_END@ ! 21: */ ! 22: /* ! 23: * @OSF_COPYRIGHT@ ! 24: */ ! 25: ! 26: #ifndef _PPC_SETJMP_H_ ! 27: #define _PPC_SETJMP_H_ ! 28: ! 29: /* ! 30: * We save the following registers (marked as non-volatile in the ELF spec) ! 31: * ! 32: * r1 - stack pointer ! 33: * r13 - small data area pointer ! 34: * r14-r30 - local variables ! 35: * r31 - local variable/environment pointer ! 36: * ! 37: * cr - condition register ! 38: * lr - link register (to know where to jump back to) ! 39: * xer - fixed point exception register ! 40: * ! 41: * fpscr - floating point status and control ! 42: * f14-f31 - local variables ! 43: * ! 44: * which comes to 57 words. We round up to 64 for good measure. ! 45: */ ! 46: ! 47: typedef struct jmp_buf { ! 48: int jmp_buf[64]; ! 49: } jmp_buf_t; ! 50: ! 51: #endif /* _PPC_SETJMP_H_ */
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.