view src/m/nu.h @ 19703:9fa57c73882d

Include config.h and time.h. Declare extern data and functions. (file_data): Move definition from w32heap.c. (_start): Add debug hook for when profiling. Spoof executable name when using profilers. Invoke sbrk immediately when undumped. (unexec): Print error messages when input and output dump files cannot be opened. Reset header checksum. (open_input_file, open_output_file): Return status instead of aborting. (get_section_size): Handle different linkers. (find_section, rva_to_section): New functions. (get_section_info) [SEPARATE_BSS_SECTION]: Make code for using a separate .bss section conditional. Use my_begbss and my_endbss to determine .bss size by default. Look for Emacs data in EMDATA section.
author Geoff Voelker <voelker@cs.washington.edu>
date Wed, 03 Sep 1997 00:42:10 +0000
parents ee40177f6c68
children 23a1cea22d13
line wrap: on
line source

/* machine description file for TI Nu machines using system V.
   Copyright (C) 1986 Free Software Foundation, Inc.

This file is part of GNU Emacs.

GNU Emacs is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.

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
along with GNU Emacs; see the file COPYING.  If not, write to
the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA.  */


/* The following line tells the configuration script what sort of 
   operating system this machine is likely to run.
   USUAL-OPSYS="usg5-2"  */

/* Define WORDS_BIG_ENDIAN iff lowest-numbered byte in a word
   is the most significant byte.  */

#define WORDS_BIG_ENDIAN

/* XINT must explicitly sign-extend */

#define EXPLICIT_SIGN_EXTEND

/* Use type int rather than a union, to represent Lisp_Object */

#define NO_UNION_TYPE

/* Now define a symbol for the cpu type, if your compiler
   does not define it automatically:
   vax, m68000, ns16000 are the ones defined so far.  */

#ifndef m68000
#define m68000
#endif

#ifndef NU
#define NU
#endif

/* Data type of load average, as read out of kmem.  */
/* These are commented out since it does not really work in uniplus */
  
/* #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) */

/* Change some things to avoid bugs in compiler */

#define SWITCH_ENUM_BUG 1

/* The NU machine has a compiler that can handle long names.  */

#undef SHORTNAMES

/* Specify alignment requirement for start of text and data sections
   in the executable file.  */

#define SECTION_ALIGNMENT pagemask