Annotation of OpenXM_contrib/pari-2.2/src/headers/parisys.h, Revision 1.1
1.1 ! noro 1: /* $Id: parisys.h,v 1.3 2000/11/03 21:00:25 karim Exp $
! 2:
! 3: Copyright (C) 2000 The PARI group.
! 4:
! 5: This file is part of the PARI/GP package.
! 6:
! 7: PARI/GP is free software; you can redistribute it and/or modify it under the
! 8: terms of the GNU General Public License as published by the Free Software
! 9: Foundation. It is distributed in the hope that it will be useful, but WITHOUT
! 10: ANY WARRANTY WHATSOEVER.
! 11:
! 12: Check the License for details. You should have received a copy of it, along
! 13: with the package; see the file 'COPYING'. If not, write to the Free Software
! 14: Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
! 15:
! 16: /* This files contains macros depending on system and compiler */
! 17:
! 18: #ifndef LITTLE_ENDIAN_64
! 19: # define LITTLE_ENDIAN_64 12345678
! 20: #endif
! 21: #ifndef BIG_ENDIAN_64
! 22: # define BIG_ENDIAN_64 87654321
! 23: #endif
! 24: #ifndef LITTLE_ENDIAN
! 25: # define LITTLE_ENDIAN 1234
! 26: #endif
! 27: #ifndef BIG_ENDIAN
! 28: # define BIG_ENDIAN 4321
! 29: #endif
! 30: #ifndef PDP_ENDIAN
! 31: # define PDP_ENDIAN 3412
! 32: #endif
! 33:
! 34: #ifdef __cplusplus
! 35: # define ANYARG ...
! 36: # define BEGINEXTERN extern "C" {
! 37: # define ENDEXTERN }
! 38: # define INLINE inline
! 39: # ifdef __GNUC__
! 40: # define ASMINLINE
! 41: # define VOLATILE volatile
! 42: # else
! 43: # define VOLATILE
! 44: # endif
! 45: #else
! 46: # define ANYARG
! 47: # define BEGINEXTERN
! 48: # define ENDEXTERN
! 49: # ifdef __GNUC__
! 50: # define ASMINLINE
! 51: # define VOLATILE __volatile__
! 52: # ifdef GCC_INLINE
! 53: # ifndef __OPTIMIZE__
! 54: # error "no inlining without -O. Put back -O or remove -DGCC_INLINE"
! 55: # else
! 56: # define INLINE __inline__ static
! 57: # endif
! 58: # endif
! 59: # else
! 60: # define VOLATILE
! 61:
! 62: # endif
! 63: #endif
! 64: #ifdef _WIN32
! 65: /* ANSI C does not allow to longjmp() out of a signal handler, in particular,
! 66: * the SIGINT handler. On Win32, the handler is executed in another thread, and
! 67: * longjmp'ing into another thread's stack will utterly confuse the system.
! 68: * Instead, we check whether win32ctrlc is set in new_chunk().
! 69: */
! 70: extern int win32ctrlc;
! 71: void dowin32ctrlc();
! 72: #endif
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>