view src/m/7300.h @ 88382:5e3e1d9d514f

(enum pvec_type): New member PVEC_SUB_CHAR_TABLE. (XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros. (CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS, SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS): Deleted. (CHAR_TABLE_REF, CHAR_TABLE_SET): Adjusted for the new char table structure. (CHAR_TABLE_TRANSLATE): Just call char_table_translate. (CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2, CHARTAB_SIZE_BITS_3): New macros. (chartab_size): Extern it. (struct Lisp_Char_Table): Re-designed. (struct Lisp_Sub_Char_Table): New structure. (HASH_KEY, HASH_VALUE): Moved from fns.c. (CHARACTERBITS): Defined as 22. (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjusted for the above change. (SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE. (GC_SUB_CHAR_TABLE_P): New macro. (Fencode_coding_string, Fdecode_coding_string): EXFUN Updated. (code_convert_string_norecord): Extern deleted. (init_character_once, syms_of_character, init_charset, syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them.
author Kenichi Handa <handa@m17n.org>
date Fri, 01 Mar 2002 01:44:13 +0000
parents ee40177f6c68
children 4be8406ebef9
line wrap: on
line source

/* machine description file for AT&T UNIX PC model 7300
   Copyright (C) 1986 Free Software Foundation, Inc.
   Modified for this machine by mtxinu!rtech!gonzo!daveb

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-2"  */

/* Supposedly now these machines have flexnames.

/* # define SHORTNAMES */


/* 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 mc68k
# define mc68k
# endif
#ifndef m68k
#define m68k
#endif

/* Cause crt0.c to define errno.  */

#define NEED_ERRNO

/* Data type of load average, as read out of kmem.  */
/* These are commented out since it is not supported by this machine.  */
  
/* #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) */

#ifdef __GNUC__

#define HAVE_ALLOCA

#else

#define SWITCH_ENUM_BUG
#define C_ALLOCA
#define STACK_DIRECTION -1

#endif

/* If you have the PD pty driver installed, uncomment the following line.  */
/* #define HAVE_PTYS */

#define HAVE_SYSVIPC

/* We don't have memmove.  */
#define memmove(d, s, n) safe_bcopy (s, d, n)

/* These three lines were new in 18.50.  They were said to permit
   a demand-paged executable, but someone else says they don't work.
   Someone else says they do.  They didn't work because errno was an
   initialized variable in crt0.c, and because of %splimit (also therein),
   both of which have been fixed now. */
#define SECTION_ALIGNMENT 0x03ff
#define SEGMENT_MASK 0xffff
#define LD_SWITCH_MACHINE -z

/* Insist on using cc when compiling this.  GCC may have been
   configured to use GAS syntax, which causes problems.  */
#define CRT0_COMPILE cc -c -O -Demacs