Mercurial > hg > xemacs-beta
view src/m/ibmrt-aix.h @ 2775:05d62157e048
[xemacs-hg @ 2005-05-15 16:37:52 by crestani]
New allocator improvements
lisp/ChangeLog addition:
2005-05-15 Marcus Crestani <crestani@xemacs.org>
* diagnose.el: Lrecord and string data statistics.
* diagnose.el (show-memory-usage): Add output for additional
lrecord statistics (currently only string data).
* diagnose.el (show-lrecord-stats): New. Print detailed lrecord
statistics.
src/ChangeLog addition:
2005-05-15 Marcus Crestani <crestani@xemacs.org>
* alloc.c: Add string data statistics.
* alloc.c (dec_lrecord_stats): Use size of lrecord for statistics
and cons counter bookkeeping.
* alloc.c (finalize_string): Add string data statistics.
* alloc.c (make_uninit_string): Add string data statistics.
* alloc.c (make_string_nocopy): Add string data statistics.
* alloc.c (kkcc_marking): Move break out of #ifdef.
* alloc.c (Flrecord_stats): New. Collect lrecord statistics.
* alloc.c (Fgarbage_collect): Use Flrecord_stats.
* alloc.c (syms_of_alloc): Add Flrecord_stats.
* dumper.c: Fix hash table.
* dumper.c (pdump_make_hash): Fix hash table.
* dumper.c (pdump_get_mc_addr): Fix hash table.
* dumper.c (pdump_put_mc_addr): Fix hash table.
* dumper.c (pdump_reloc_one_mc): Fix indentation.
* dumper.c (pdump_load_finish): Add lrecord statistics
bookkeeping.
* lrecord.h: Add string data statistics.
* mc-alloc.c (remove_cell): Lrecord statistics, fix indentation.
* mule-charset.c: Marking through *_unicode_description not
needed.
* symbols.c (init_symbols_once_early): Bump lrecord statistics.
* window.c: Marking through line_start_cache not needed.
* xemacs.def.in.in: Fix typo.
author | crestani |
---|---|
date | Sun, 15 May 2005 16:38:14 +0000 |
parents | ecf1ebac70d8 |
children |
line wrap: on
line source
/* RTPC AIX machine/system dependent defines Copyright (C) 1988 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 XEmacs; see the file COPYING. If not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ /* Synched up with: FSF 19.31. */ /* The following line tells the configuration script what sort of operating system this machine is likely to run. USUAL-OPSYS="usg5-2-2" */ /* Now define a symbol for the cpu type, if your compiler does not define it automatically. */ #ifndef IBMAIX #define IBMAIX #endif /* No load average information appears in the AIX kernel. VRM has this info, and if anyone desires they should fix fns.c to get it out of VRM */ /* Define addresses, macros, change some setup for dump */ #undef COFF #define NO_REMAP #define TEXT_START 0x10000000 #define DATA_START 0x20000000 #define N_BADMAG(x) BADMAG(x) #define N_TXTOFF(x) A_TEXTPOS(x) #define N_SYMOFF(x) A_SYMPOS(x) #define A_TEXT_OFFSET(HDR) sizeof(HDR) #define ADJUST_EXEC_HEADER \ unexec_text_start += sizeof(hdr); \ unexec_data_start = ohdr.a_dbase #undef ADDR_CORRECT #define ADDR_CORRECT(x) ((int)(x)) /* This is the offset of the executable's text, from the start of the file. */ #define A_TEXT_SEEK(HDR) (N_TXTOFF (hdr) + sizeof (hdr)) /* AIX has PTYs, so define here, along with macros needed to make them work. */ #define PTY_ITERATION for (i=0; i<256; i++) #define PTY_NAME_SPRINTF sprintf (ptyname, "/dev/ptc%d", i); #define PTY_TTY_NAME_SPRINTF \ { /* Check that server side not already open */ \ if ((ioctl (*ptyv, PTYSTATUS, 0) & 0xFFFF) != 0) \ { \ close (*ptyv); \ continue; \ } \ /* And finally to be sure we can open it later */ \ sprintf (ptyname, "/dev/pts%d", i); \ signal (SIGHUP,SIG_IGN); \ } /* ignore hangup at process end */ /* TIOCNOTTY doesn't occur on AIX, but the rest of the conditionalized code in process.c does the right thing if we fake this out. */ #define TIOCNOTTY IOCTYPE /* #define SKTPAIR */ /* SKTPAIR works, but what is advantage over pipes? */ /* Specify the font for X to use. */ #define X_DEFAULT_FONT "Rom14.500" /* Here override various assumptions in ymakefile */ /* On AIX 2.2.1, use these definitions instead #define C_SWITCH_MACHINE "-I/usr/include -Nn2000" #define LIBS_MACHINE "-lX -lrts" */ #define C_SWITCH_MACHINE "-I/usr/include -I/usr/include/bsd -Nn2000" #define LIBS_MACHINE "-lXMenu -lX -lsock -lbsd -lrts" #define OBJECTS_MACHINE "hftctl.o" #define START_FILES "/lib/crt0.o" /* -lXMenu, -lX must precede -lsock, -lbsd */ #define LD_SWITCH_MACHINE "-n -T0x10000000 -K -e start" #if 0 /* I refuse to promulgate a recommendation that would make users unable to debug - RMS. */ /* delete the following line to foil optimization, enable debugging */ #define C_DEBUG_SWITCH "-O" #endif /* Setup to do some things BSD way - these won't work previous to AIX 2.1.2 */ #include </usr/include/bsd/BSDtoAIX.h> /* AIX utimes allegedly causes SIGSEGV. */ #undef HAVE_UTIMES /* override configuration decision */ /* rocky@watson.ibm.com says this is needed. */ #define HAVE_FTIME