Annotation of 43BSDReno/contrib/emacs-18.55/src/m-sparc.h, revision 1.1.1.1

1.1       root        1: /* m- file for Sun 4 SPARC.
                      2:    Copyright (C) 1987 Free Software Foundation, Inc.
                      3: 
                      4: This file is part of GNU Emacs.
                      5: 
                      6: GNU Emacs is distributed in the hope that it will be useful,
                      7: but WITHOUT ANY WARRANTY.  No author or distributor
                      8: accepts responsibility to anyone for the consequences of using it
                      9: or for whether it serves any particular purpose or works at all,
                     10: unless he says so in writing.  Refer to the GNU Emacs General Public
                     11: License for full details.
                     12: 
                     13: Everyone is granted permission to copy, modify and redistribute
                     14: GNU Emacs, but only under the conditions described in the
                     15: GNU Emacs General Public License.   A copy of this license is
                     16: supposed to have been given to you along with GNU Emacs so you
                     17: can know your rights and responsibilities.  It should be in a
                     18: file named COPYING.  Among other things, the copyright notice
                     19: and this notice must be preserved on all copies.  */
                     20: 
                     21: 
                     22: /* The following three symbols give information on
                     23:  the size of various data types.  */
                     24: 
                     25: #define SHORTBITS 16           /* Number of bits in a short */
                     26: 
                     27: #define INTBITS 32             /* Number of bits in an int */
                     28: 
                     29: #define LONGBITS 32            /* Number of bits in a long */
                     30: 
                     31: /* SPARC has lowest-numbered byte as most significant */
                     32: 
                     33: #define BIG_ENDIAN
                     34: 
                     35: /* Define NO_ARG_ARRAY if you cannot take the address of the first of a
                     36:  * group of arguments and treat it as an array of the arguments.  */
                     37: 
                     38: #define NO_ARG_ARRAY
                     39: 
                     40: /* Define how to take a char and sign-extend into an int.
                     41:    On machines where char is signed, this is a no-op.  */
                     42: 
                     43: #define SIGN_EXTEND_CHAR(c) (c)
                     44: 
                     45: /* Say this machine is a sparc */
                     46: 
                     47: #ifndef sparc
                     48: #define sparc
                     49: #endif
                     50: 
                     51: /* This level of optimization is reported to work.  */
                     52: 
                     53: #define C_OPTIMIZE_SWITCH -O2
                     54: 
                     55: /* Use type int rather than a union, to represent Lisp_Object */
                     56: 
                     57: #define NO_UNION_TYPE
                     58: 
                     59: /* XINT must explicitly sign-extend */
                     60: 
                     61: #define EXPLICIT_SIGN_EXTEND
                     62: 
                     63: /* Data type of load average, as read out of kmem.  */
                     64: 
                     65: #define LOAD_AVE_TYPE long
                     66: 
                     67: /* Convert that into an integer that is 100 for a load average of 1.0  */
                     68: 
                     69: #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE)
                     70: 
                     71: /* Define C_ALLOCA if this machine does not support a true alloca
                     72:    and the one written in C should be used instead.
                     73:    Define HAVE_ALLOCA to say that the system provides a properly
                     74:    working alloca function and it should be used.
                     75:    Define neither one if an assembler-language alloca
                     76:    in the file alloca.s should be used.  */
                     77: 
                     78: #define HAVE_ALLOCA
                     79: #include <alloca.h>
                     80: 
                     81: /* Must use the system's termcap.  It does special things.  */
                     82: 
                     83: #define LIBS_TERMCAP -ltermcap
                     84: 
                     85: /* Mask for address bits within a memory segment */
                     86: 
                     87: #define SEGMENT_MASK (SEGSIZ - 1)
                     88: 
                     89: /* Arrange to link with sun windows, if requested.  */
                     90: /* For details on emacstool and sunfns, see etc/SUN-SUPPORT */
                     91: /* These programs require Sun UNIX 4.2 Release 3.2 or greater */
                     92: 
                     93: #ifdef HAVE_SUN_WINDOWS
                     94: #define OTHER_FILES  ${etcdir}emacstool
                     95: #define LIBS_MACHINE -lsuntool -lsunwindow -lpixrect
                     96: #define OBJECTS_MACHINE sunfns.o
                     97: #define SYMS_MACHINE syms_of_sunfns ()
                     98: #define PURESIZE 130000
                     99: #endif
                    100: 
                    101: /* Say that the text segment of a.out includes the header;
                    102:    the header actually occupies the first few bytes of the text segment
                    103:    and is counted in hdr.a_text.  */
                    104: 
                    105: #define A_TEXT_OFFSET(HDR) sizeof (HDR)

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.