ia64.h 2.16 KB
Newer Older
Gerd Moellmann's avatar
Gerd Moellmann committed
1
/* machine description file for the IA-64 architecture.
2 3 4 5 6

Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008,
  2009, 2010  Free Software Foundation, Inc.

Contributed by David Mosberger <davidm@hpl.hp.com>
Gerd Moellmann's avatar
Gerd Moellmann committed
7 8 9

This file is part of GNU Emacs.

10
GNU Emacs is free software: you can redistribute it and/or modify
Gerd Moellmann's avatar
Gerd Moellmann committed
11
it under the terms of the GNU General Public License as published by
12 13
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
Gerd Moellmann's avatar
Gerd Moellmann committed
14 15 16 17 18 19 20

GNU Emacs is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
21
along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
Gerd Moellmann's avatar
Gerd Moellmann committed
22 23 24 25

#define BITS_PER_LONG		64
#define BITS_PER_EMACS_INT	64

Glenn Morris's avatar
Glenn Morris committed
26
/* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word
Gerd Moellmann's avatar
Gerd Moellmann committed
27 28 29 30
   is the most significant byte.  */
#undef WORDS_BIG_ENDIAN

/* Now define a symbol for the cpu type, if your compiler
31
   does not define it automatically.  */
Gerd Moellmann's avatar
Gerd Moellmann committed
32 33 34 35 36 37 38 39 40 41
/* __ia64__ defined automatically */

/* Define the type to use.  */
#define EMACS_INT		long
#define EMACS_UINT		unsigned long

/* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend
   the 24-bit bit field into an int.  In other words, if bit fields
   are always unsigned.

Dan Nicolaescu's avatar
Dan Nicolaescu committed
42
   This flag only matters if you use USE_LISP_UNION_TYPE.  */
Gerd Moellmann's avatar
Gerd Moellmann committed
43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61
#define EXPLICIT_SIGN_EXTEND

/* Data type of load average, as read out of kmem.  */
#define LOAD_AVE_TYPE		long

/* Convert that into an integer that is 100 for a load average of 1.0  */
#define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE)

#ifdef REL_ALLOC
#ifndef _MALLOC_INTERNAL
/* "char *" because ralloc.c defines it that way.  gmalloc.c thinks it
   is allowed to prototype these as "void *" so we don't prototype in
   that case.  You're right: it stinks!  */
extern char *r_alloc (), *r_re_alloc ();
extern void r_alloc_free ();
#endif /* not _MALLOC_INTERNAL */
#endif /* REL_ALLOC */

#define HAVE_TEXT_START
Miles Bader's avatar
Miles Bader committed
62 63 64

/* arch-tag: 9b8e9fb2-2e49-4c22-b68f-11a488e77c66
   (do not change this comment) */