view src/m/arm.h @ 38536:09aca87f88ce

Overall speedup when using many buffers. (uniquify-fix-item-base, uniquify-fix-item-filename, uniquify-fix-item-buffer): Changed defmacro to defalias (cosmetic change). (uniquify-fix-item-unrationalized-buffer): Deleted: was the fourth place in the item, but waas never used. (uniquify-fix-item-min-proposed): New defalias: the fourth place in the item is now used as cache for the proposed name. (uniquify-rationalize-file-buffer-names): Move computation made on newbuffile out of the loop, in the newbuffile-nd local var. Use dolist (cosmetic change). Compute the proposed name for the most common case and cache it in the fourth place in the item. (uniquify-rationalize-file-buffer-names): Used to return a list of flags indicating renamed buffers, but that return value was never used. (uniquify-item-lessp): Replaces uniquify-filename-lessp, works on the cached proposed name, does much less consing and is quicker. (uniquify-filename-lessp): Deleted. (uniquify-rationalize-a-list): Use dolist (cosmetic change). Do not bind locally the uniquify-possibly-resolvable flag. Use the cached proposed name if possible. (uniquify-get-proposed-name): Arguments changed, callers changed. (uniquify-rationalize-conflicting-sublist): Explicitely reset the uniquify-possibly-resolvable flag, which is no more bound locally. (uniquify-rename-buffer): Do not set the unrationalised-buffer flag, which is replaced by the cached proposed name.
author Francesco Potortì <pot@gnu.org>
date Tue, 24 Jul 2001 10:39:09 +0000
parents 705ff8a9d6dd
children 4be8406ebef9
line wrap: on
line source

/* Machine description file for ARM-based non-RISCiX machines.
   Copyright (C) 1994 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.  */



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

#undef WORDS_BIG_ENDIAN

/* Define NO_ARG_ARRAY if you cannot take the address of the first of a
 * group of arguments and treat it as an array of the arguments.  We can't
 * do this on the arm with gcc, since the first 4 args are in registers.  */

#ifdef __GNUC__
#define NO_ARG_ARRAY
#else
#undef NO_ARG_ARRAY
#endif

/* Define WORD_MACHINE if addresses and such have
 * to be corrected before they can be used as byte counts.  */

#undef WORD_MACHINE

/* Define how to take a char and sign-extend into an int.
   On machines where char is signed, this is a no-op.  */

#define SIGN_EXTEND_CHAR(c) (((int)(c) << 24) >> 24)

#define NO_UNION_TYPE

#ifdef __GNUC__

/* Use builtin alloca. Also be sure that no other ones are tried out. */
#define alloca __builtin_alloca
#define HAVE_ALLOCA

#else
#define C_ALLOCA
#undef HAVE_ALLOCA
#endif  /* __GNUC__ */

#define NO_REMAP

#define STACK_DIRECTION -1