Mercurial > emacs
annotate src/mem-limits.h @ 67418:28264c86d408
Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-668
Merge from gnus--rel--5.10
Patches applied:
* gnus--rel--5.10 (patch 157-168)
- Merge from emacs--cvs-trunk--0
- Update from CVS
- Update from CVS: texi/message.texi: Fix default values.
2005-12-08 Reiner Steib <Reiner.Steib@gmx.de>
* lisp/gnus/mm-decode.el (mm-discouraged-alternatives): Fix custom type.
Suggest image/.* in the doc string.
2005-12-07 Katsumi Yamaoka <yamaoka@jpl.org>
* lisp/gnus/mm-decode.el (mm-display-external): Use nametemplate (defined in
RFC1524) if it is in mailcap or add a suffix according to
mailcap-mime-extensions when generating a temp filename; postpone
deleting a temp file for 2 seconds for some wrappers, shell
scripts, and so on, which might exit right after having started a
viewer command as a background job.
2005-12-06 Reiner Steib <Reiner.Steib@gmx.de>
* lisp/gnus/gnus-art.el (gnus-default-article-saver): Add user-defined
`function' to custom type.
2005-12-02 ARISAWA Akihiro <ari@mbf.ocn.ne.jp> (tiny change)
* lisp/gnus/mm-view.el (mm-inline-text-html-render-with-w3m): Fix misplaced
parens.
2005-11-29 Reiner Steib <Reiner.Steib@gmx.de>
* lisp/gnus/gnus-cache.el (gnus-cache-rename-group): Wrap doc strings and
long lines.
(gnus-cache-delete-group): Wrap doc strings.
* lisp/gnus/gnus-agent.el (gnus-agent-rename-group)
(gnus-agent-delete-group): Wrap doc strings.
2005-11-24 Pascal Rigaux <pixel@mandriva.com> (tiny change)
* lisp/gnus/rfc2231.el (rfc2231-parse-string): Support non-ascii chars.
2005-11-22 Katsumi Yamaoka <yamaoka@jpl.org>
* lisp/gnus/nnmail.el (nnmail-fancy-expiry-target): Use current-time instead
of current-time-string.
2005-11-20 Stefan Schimanski <schimmi@debian.org> (tiny change)
* lisp/gnus/nnmail.el (nnmail-fancy-expiry-target): Protect against invalid
date header.
2005-11-16 Boris Samorodov <bsam@ipt.ru> (tiny patch)
* lisp/gnus/imap.el (imap-kerberos4-open): Ignore SSL stuff.
2005-11-14 Kevin Greiner <kevin.greiner@compsol.cc>
* lisp/gnus/gnus-agent.el (gnus-agent-article-alist-save-format): Changed
internal variable to a custom variable. Changed default value
from compressed(2) to uncompressed(1).
(gnus-agent-read-agentview): Reversed revision 7.8 to restore
support for uncompressed agentview files. Taken together, reading
the agentview file should now be 6-7 times faster.
(gnus-agent-long-article,
gnus-agent-short-article, gnus-agent-score): Renamed category
keywords to match gnus-cus.
(gnus-agent-summary-fetch-series): Modified to protect against
gnus-agent-summary-fetch-group clearing processable flags.
(gnus-agent-synchronize-group-flags): Update live group buffer as
synchronization may occur due to the user toggling the plugged
status.
(gnus-agent-braid-nov): Now tests new nov entries
for duplicates which are removed. The invalid sort check then
triggers a rescan after the sort as sorting may have moved
duplicate entries such that they can be cheaply detected.
(gnus-agent-read-local): Trivial fix to format of
error message to display actual error condition.
(gnus-agent-save-local): Avoid saving symbols that are bound to
nil as they simply result in a warning message in
gnus-agent-read-local.
(gnus-agent-fetch-group-1): Clear downloadable flag when article
successfully downloaded.
(gnus-agent-regenerate-group): Use
gnus-agent-synchronize-group-flags to reset read status in both
gnus and server.
* lisp/gnus/nntp.el (nntp-end-of-line): Doc fix.
(nntp-authinfo-rejected): New error condition.
(nntp-wait-for): Use new error condition to signal authentication
error.
(nntp-retrieve-data): Rethrow new error condition to break out of
recursive call to nntp-send-authinfo.
2005-11-13 Katsumi Yamaoka <yamaoka@jpl.org>
* lisp/gnus/gnus-start.el (gnus-dribble-read-file): Use make-local-variable
rather than make-variable-buffer-local for file-precious-flag.
2005-11-13 Katsumi Yamaoka <yamaoka@jpl.org>
* lisp/gnus/gnus-start.el (gnus-dribble-read-file): Quote file-precious-flag.
2005-11-11 Jan Nieuwenhuizen <janneke@gnu.org>
* lisp/gnus/gnus-start.el (gnus-dribble-read-file): Set file-precious-flag,
as a buffer-local variable. This avoids creating truncated
dribble files as a result of a hang up, eg.
2005-11-04 Ken Manheimer <ken.manheimer@gmail.com>
* lisp/gnus/pgg-pgp.el (pgg-pgp-encrypt-region, pgg-pgp-decrypt-region)
(pgg-pgp-encrypt-symmetric-region, pgg-pgp-encrypt-symmetric)
(pgg-pgp-encrypt, pgg-pgp-decrypt-region, pgg-pgp-decrypt)
(pgg-pgp-sign-region, pgg-pgp-sign): Add optional 'passphrase'
argument to all these routines, so the passphrase can be managed
externally and passed in to the system.
(pgg-pgp-decrypt-region, pgg-pgp-sign-region): Use new name for
pgg-add-passphrase-to-cache function.
* lisp/gnus/pgg-pgp5.el (pgg-pgp5-encrypt-region, pgg-pgp5-decrypt-region)
(pgg-pgp5-encrypt-symmetric-region, pgg-pgp5-encrypt-symmetric)
(pgg-pgp5-encrypt, pgg-pgp5-decrypt-region, pgg-pgp5-decrypt)
(pgg-pgp5-sign-region, pgg-pgp5-sign): Add optional 'passphrase'
argument to all these routines, so the passphrase can be managed
externally and passed in to the system.
(pgg-pgp5-sign-region): Use new name of pgg-add-passphrase-to-cache
function.
2005-10-30 Chong Yidong <cyd@stupidchicken.com>
* lisp/gnus/imap.el (imap-open): Handle case where buffer is a buffer
object.
2005-10-29 Ken Manheimer <ken.manheimer@gmail.com>
* lisp/gnus/pgg-gpg.el (pgg-gpg-select-matching-key): Fix: look at the right
part of the decoded armor to find the key-identifier.
(pgg-gpg-lookup-key-owner): New function to return the
human-readable identifier of a key owner.
(pgg-gpg-lookup-id-from-key-owner): Make it easy to identify the
key itself.
(pgg-gpg-decrypt-region): Prompt with the key owner (rather than
the key value) if we have a key and can match it against a secret
key. Also, added a note pointing out fact that the prompt only
indicates the first matching key.
* lisp/gnus/pgg.el (pgg-decrypt): Passing along 'passphrase' in call to
pgg-decrypt-region.
(pgg-pending-timers): A new hash for tracking the passphrase cache
timers, so that new ones supercede old ones.
(pgg-add-passphrase-to-cache): Rename from
`pgg-add-passphrase-cache' to reduce confusion (all callers
changed). Modified to cancel old timers when new ones are added.
(pgg-remove-passphrase-from-cache): Rename from
`pgg-remove-passphrase-cache' to reduce confusion (all callers
changed). Modified to cancel old timers when their keys are
removed from the cache.
(pgg-cancel-timer): In Emacs, an alias for cancel-timer; in
XEmacs, an indirection to delete-itimer.
(pgg-read-passphrase-from-cache, pgg-read-passphrase):
Extract pgg-read-passphrase-from-cache from pgg-read-passphrase so
users can only check cache without risk of prompting. Correct bug in
notruncate behavior.
(pgg-read-passphrase-from-cache, pgg-read-passphrase)
(pgg-add-passphrase-cache, pgg-remove-passphrase-cache):
Add informative docstrings.
(pgg-decrypt): Convey provided passphrase in subordinate call to
pgg-decrypt-region.
2005-10-20 Ken Manheimer <ken.manheimer+emacs@gmail.com>
* lisp/gnus/pgg.el (pgg-encrypt-region, pgg-encrypt-symmetric-region)
(pgg-encrypt-symmetric, pgg-encrypt, pgg-decrypt-region)
(pgg-decrypt, pgg-sign-region, pgg-sign): Add optional
'passphrase' argument, so the passphrase can be managed externally
and then passed in to the system.
* lisp/gnus/pgg.el (pgg-read-passphrase, pgg-add-passphrase-cache)
(pgg-remove-passphrase-cache): Add optional 'notruncate' argument,
so the passphrase cache can be used reliably with identifiers
besides a pgp packet's key id.
* lisp/gnus/pgg-gpg.el (pgg-pgp-encrypt-region)
(pgg-pgp-encrypt-symmetric-region, pgg-pgp-encrypt-symmetric)
(pgg-pgp-encrypt, pgg-pgp-decrypt-region, pgg-pgp-decrypt)
(pgg-pgp-sign-region, pgg-pgp-sign): Add optional 'passphrase'
argument to all these routines, so the passphrase can be managed
externally and passed in to the system.
* lisp/gnus/pgg-gpg.el (pgg-gpg-possibly-cache-passphrase): Add optional
'notruncate' argument, so the passphrase cache can be used
reliably with identifiers besides a pgp packet's key id.
2005-10-29 Sascha Wilde <swilde@sha-bang.de>
* lisp/gnus/pgg-gpg.el (pgg-gpg-encrypt-symmetric-region): New function for
symmetric encryption.
(pgg-gpg-symmetric-key-p): New function to check for an symmetric
encrypted session key.
(pgg-gpg-decrypt-region): When decrypting a symmetric encrypted
message ask for the passphrase in a proper way.
* lisp/gnus/pgg.el (pgg-encrypt-symmetric, pgg-encrypt-symmetric-region):
New user commands for symmetric encryption.
2005-12-05 Katsumi Yamaoka <yamaoka@jpl.org>
* man/pgg.texi (User Commands): Fix description of pgg-verify-region.
(Selecting an implementation): Fix descriptions.
2005-11-30 Katsumi Yamaoka <yamaoka@jpl.org>
* man/message.texi (Various Message Variables): Addition.
2005-11-29 Katsumi Yamaoka <yamaoka@jpl.org>
* man/message.texi: Fix default values.
2005-11-25 Katsumi Yamaoka <yamaoka@jpl.org>
* man/message.texi (Header Commands): Clarify descriptions of
message-cross-post-followup-to, message-reduce-to-to-cc, and
message-insert-wide-reply.
(Various Commands): Fix kindex for message-kill-to-signature;
clarify description of message-tab.
2005-11-22 Katsumi Yamaoka <yamaoka@jpl.org>
* man/message.texi (Mailing Lists): Fix description about MFT.
* man/gnus.texi (Emacs Lisp): Use ~/.gnus.el instead of ~/.emacs.
2005-11-17 Katsumi Yamaoka <yamaoka@jpl.org>
* man/gnus.texi (Slow Terminal Connection): Replace old description
with new one.
2005-11-16 Katsumi Yamaoka <yamaoka@jpl.org>
* man/gnus.texi (Oort Gnus): Use ~/.gnus.el instead of ~/.emacs;
replace X-Draft-Headers with X-Draft-From.
2005-11-14 Katsumi Yamaoka <yamaoka@jpl.org>
* man/gnus.texi (Various Various): Fix the default value of
nnheader-max-head-length.
(Gnus Versions): Fix typo.
author | Miles Bader <miles@gnu.org> |
---|---|
date | Fri, 09 Dec 2005 08:57:58 +0000 |
parents | a0d1312ede66 |
children | 3bd95f4f2941 2d92f5c9d6ae |
rev | line source |
---|---|
486 | 1 /* Includes for memory limit warnings. |
64770
a0d1312ede66
Update years in copyright notice; nfc.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents:
64084
diff
changeset
|
2 Copyright (C) 1990, 1993, 1994, 1995, 1996, 2002, 2003, 2004, |
a0d1312ede66
Update years in copyright notice; nfc.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents:
64084
diff
changeset
|
3 2005 Free Software Foundation, Inc. |
486 | 4 |
5 This file is part of GNU Emacs. | |
6 | |
7 GNU Emacs is free software; you can redistribute it and/or modify | |
8 it under the terms of the GNU General Public License as published by | |
3370
2df248d76c58
[__bsdi__]: Define BSD4_2.
Richard M. Stallman <rms@gnu.org>
parents:
3055
diff
changeset
|
9 the Free Software Foundation; either version 2, or (at your option) |
486 | 10 any later version. |
11 | |
12 GNU Emacs is distributed in the hope that it will be useful, | |
13 but WITHOUT ANY WARRANTY; without even the implied warranty of | |
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
15 GNU General Public License for more details. | |
16 | |
17 You should have received a copy of the GNU General Public License | |
18 along with GNU Emacs; see the file COPYING. If not, write to | |
64084 | 19 the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, |
20 Boston, MA 02110-1301, USA. */ | |
486 | 21 |
5497
525a2027ec95
[MSDOS] (get_lim_data): Use go32 call.
Richard M. Stallman <rms@gnu.org>
parents:
4254
diff
changeset
|
22 #ifdef MSDOS |
525a2027ec95
[MSDOS] (get_lim_data): Use go32 call.
Richard M. Stallman <rms@gnu.org>
parents:
4254
diff
changeset
|
23 #include <dpmi.h> |
46950 | 24 extern int etext; |
5497
525a2027ec95
[MSDOS] (get_lim_data): Use go32 call.
Richard M. Stallman <rms@gnu.org>
parents:
4254
diff
changeset
|
25 #endif |
525a2027ec95
[MSDOS] (get_lim_data): Use go32 call.
Richard M. Stallman <rms@gnu.org>
parents:
4254
diff
changeset
|
26 |
5547
261bf09dc10a
Include <sys/types.h> before <sys/resource.h>.
Roland McGrath <roland@gnu.org>
parents:
5497
diff
changeset
|
27 /* Some systems need this before <sys/resource.h>. */ |
261bf09dc10a
Include <sys/types.h> before <sys/resource.h>.
Roland McGrath <roland@gnu.org>
parents:
5497
diff
changeset
|
28 #include <sys/types.h> |
261bf09dc10a
Include <sys/types.h> before <sys/resource.h>.
Roland McGrath <roland@gnu.org>
parents:
5497
diff
changeset
|
29 |
4229
edf8c9e14e02
[_LIBC]: Just include <sys/resource.h>, and skip hairy #ifdef mess.
Roland McGrath <roland@gnu.org>
parents:
3370
diff
changeset
|
30 #ifdef _LIBC |
edf8c9e14e02
[_LIBC]: Just include <sys/resource.h>, and skip hairy #ifdef mess.
Roland McGrath <roland@gnu.org>
parents:
3370
diff
changeset
|
31 |
edf8c9e14e02
[_LIBC]: Just include <sys/resource.h>, and skip hairy #ifdef mess.
Roland McGrath <roland@gnu.org>
parents:
3370
diff
changeset
|
32 #include <sys/resource.h> |
4254 | 33 #define BSD4_2 /* Tell code below to use getrlimit. */ |
4229
edf8c9e14e02
[_LIBC]: Just include <sys/resource.h>, and skip hairy #ifdef mess.
Roland McGrath <roland@gnu.org>
parents:
3370
diff
changeset
|
34 |
13563
c011026c071d
[_LIBC] (start_of_data): Use weak ref to __data_start; use &etext if not
Roland McGrath <roland@gnu.org>
parents:
12216
diff
changeset
|
35 /* Old Linux startup code won't define __data_start. */ |
15634
08bcd5d2c8ab
[_LIBC]: Use weak_extern instead of weak_symbol for __data_start.
Roland McGrath <roland@gnu.org>
parents:
14186
diff
changeset
|
36 extern int etext, __data_start; weak_extern (__data_start) |
13563
c011026c071d
[_LIBC] (start_of_data): Use weak ref to __data_start; use &etext if not
Roland McGrath <roland@gnu.org>
parents:
12216
diff
changeset
|
37 #define start_of_data() (&__data_start ?: &etext) |
12197
9cba6f0d9cd7
[_LIBC] (start_of_data): Define to &__data_start for GNU libc.
Roland McGrath <roland@gnu.org>
parents:
9791
diff
changeset
|
38 |
12216 | 39 #else /* not _LIBC */ |
4229
edf8c9e14e02
[_LIBC]: Just include <sys/resource.h>, and skip hairy #ifdef mess.
Roland McGrath <roland@gnu.org>
parents:
3370
diff
changeset
|
40 |
51399
c2c7a2898903
Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
Dave Love <fx@gnu.org>
parents:
49549
diff
changeset
|
41 #ifdef HAVE_SYS_RESOURCE_H |
c2c7a2898903
Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
Dave Love <fx@gnu.org>
parents:
49549
diff
changeset
|
42 # include <sys/time.h> |
c2c7a2898903
Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
Dave Love <fx@gnu.org>
parents:
49549
diff
changeset
|
43 # include <sys/resource.h> |
c2c7a2898903
Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
Dave Love <fx@gnu.org>
parents:
49549
diff
changeset
|
44 #else |
c2c7a2898903
Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
Dave Love <fx@gnu.org>
parents:
49549
diff
changeset
|
45 # if HAVE_SYS_VLIMIT_H |
c2c7a2898903
Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
Dave Love <fx@gnu.org>
parents:
49549
diff
changeset
|
46 # include <sys/vlimit.h> /* Obsolete, says glibc */ |
c2c7a2898903
Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
Dave Love <fx@gnu.org>
parents:
49549
diff
changeset
|
47 # endif |
3055 | 48 #endif |
49 | |
3370
2df248d76c58
[__bsdi__]: Define BSD4_2.
Richard M. Stallman <rms@gnu.org>
parents:
3055
diff
changeset
|
50 #ifdef __bsdi__ |
2df248d76c58
[__bsdi__]: Define BSD4_2.
Richard M. Stallman <rms@gnu.org>
parents:
3055
diff
changeset
|
51 #define BSD4_2 |
2df248d76c58
[__bsdi__]: Define BSD4_2.
Richard M. Stallman <rms@gnu.org>
parents:
3055
diff
changeset
|
52 #endif |
2df248d76c58
[__bsdi__]: Define BSD4_2.
Richard M. Stallman <rms@gnu.org>
parents:
3055
diff
changeset
|
53 |
49549
99be3a1e2589
Cygwin support patch.
Juanma Barranquero <lekktu@gmail.com>
parents:
46950
diff
changeset
|
54 #ifdef CYGWIN |
99be3a1e2589
Cygwin support patch.
Juanma Barranquero <lekktu@gmail.com>
parents:
46950
diff
changeset
|
55 #define BSD4_2 |
99be3a1e2589
Cygwin support patch.
Juanma Barranquero <lekktu@gmail.com>
parents:
46950
diff
changeset
|
56 #endif |
99be3a1e2589
Cygwin support patch.
Juanma Barranquero <lekktu@gmail.com>
parents:
46950
diff
changeset
|
57 |
486 | 58 #ifndef BSD4_2 |
59 #ifndef USG | |
5497
525a2027ec95
[MSDOS] (get_lim_data): Use go32 call.
Richard M. Stallman <rms@gnu.org>
parents:
4254
diff
changeset
|
60 #ifndef MSDOS |
9791
068c89ed6765
[WINDOWSNT]: Don't include vlimit.h.
Richard M. Stallman <rms@gnu.org>
parents:
8830
diff
changeset
|
61 #ifndef WINDOWSNT |
486 | 62 #include <sys/vlimit.h> |
9791
068c89ed6765
[WINDOWSNT]: Don't include vlimit.h.
Richard M. Stallman <rms@gnu.org>
parents:
8830
diff
changeset
|
63 #endif /* not WINDOWSNT */ |
5497
525a2027ec95
[MSDOS] (get_lim_data): Use go32 call.
Richard M. Stallman <rms@gnu.org>
parents:
4254
diff
changeset
|
64 #endif /* not MSDOS */ |
486 | 65 #endif /* not USG */ |
66 #else /* if BSD4_2 */ | |
67 #include <sys/time.h> | |
68 #include <sys/resource.h> | |
69 #endif /* BSD4_2 */ | |
70 | |
1393
d2ae5897e43c
[!emacs]: Don't define POINTER, SIZE or NULL.
Richard M. Stallman <rms@gnu.org>
parents:
734
diff
changeset
|
71 #ifdef emacs |
575 | 72 /* The important properties of this type are that 1) it's a pointer, and |
73 2) arithmetic on it should work as if the size of the object pointed | |
74 to has a size of 1. */ | |
28055 | 75 typedef POINTER_TYPE *POINTER; |
486 | 76 |
77 typedef unsigned long SIZE; | |
78 | |
79 #ifdef NULL | |
80 #undef NULL | |
81 #endif | |
82 #define NULL ((POINTER) 0) | |
83 | |
84 extern POINTER start_of_data (); | |
55875
65f0675acb04
(EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
85 #if defined USE_LSB_TAG |
65f0675acb04
(EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
86 #define EXCEEDS_LISP_PTR(ptr) 0 |
65f0675acb04
(EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
87 #elif defined DATA_SEG_BITS |
1592
613783a3f00c
* mem-limits.h [DATA_SEG_BITS] (EXCEEDS_LISP_PTR): Remember to
Jim Blandy <jimb@redhat.com>
parents:
1450
diff
changeset
|
88 #define EXCEEDS_LISP_PTR(ptr) \ |
8830
3f019f2a13f9
Check for __alpha, in __osf__ conditional.
Richard M. Stallman <rms@gnu.org>
parents:
7010
diff
changeset
|
89 (((EMACS_UINT) (ptr) & ~DATA_SEG_BITS) >> VALBITS) |
1592
613783a3f00c
* mem-limits.h [DATA_SEG_BITS] (EXCEEDS_LISP_PTR): Remember to
Jim Blandy <jimb@redhat.com>
parents:
1450
diff
changeset
|
90 #else |
8830
3f019f2a13f9
Check for __alpha, in __osf__ conditional.
Richard M. Stallman <rms@gnu.org>
parents:
7010
diff
changeset
|
91 #define EXCEEDS_LISP_PTR(ptr) ((EMACS_UINT) (ptr) >> VALBITS) |
1592
613783a3f00c
* mem-limits.h [DATA_SEG_BITS] (EXCEEDS_LISP_PTR): Remember to
Jim Blandy <jimb@redhat.com>
parents:
1450
diff
changeset
|
92 #endif |
486 | 93 |
46652
243b781b4ba5
(start_of_data): If DATA_START is defined, prefer
Ken Raeburn <raeburn@raeburn.org>
parents:
41969
diff
changeset
|
94 #ifdef DATA_START |
243b781b4ba5
(start_of_data): If DATA_START is defined, prefer
Ken Raeburn <raeburn@raeburn.org>
parents:
41969
diff
changeset
|
95 #define start_of_data() ((char *)DATA_START) |
243b781b4ba5
(start_of_data): If DATA_START is defined, prefer
Ken Raeburn <raeburn@raeburn.org>
parents:
41969
diff
changeset
|
96 #endif |
243b781b4ba5
(start_of_data): If DATA_START is defined, prefer
Ken Raeburn <raeburn@raeburn.org>
parents:
41969
diff
changeset
|
97 |
16220
02044b05d8e0
Replaced symbol BSD with BSD_SYSTEM.
Karl Heuer <kwzh@gnu.org>
parents:
15643
diff
changeset
|
98 #ifdef BSD_SYSTEM |
486 | 99 #ifndef DATA_SEG_BITS |
46652
243b781b4ba5
(start_of_data): If DATA_START is defined, prefer
Ken Raeburn <raeburn@raeburn.org>
parents:
41969
diff
changeset
|
100 #ifndef DATA_START |
734 | 101 extern char etext; |
486 | 102 #define start_of_data() &etext |
103 #endif | |
104 #endif | |
46652
243b781b4ba5
(start_of_data): If DATA_START is defined, prefer
Ken Raeburn <raeburn@raeburn.org>
parents:
41969
diff
changeset
|
105 #endif |
486 | 106 |
13563
c011026c071d
[_LIBC] (start_of_data): Use weak ref to __data_start; use &etext if not
Roland McGrath <roland@gnu.org>
parents:
12216
diff
changeset
|
107 #else /* not emacs */ |
734 | 108 extern char etext; |
486 | 109 #define start_of_data() &etext |
12216 | 110 #endif /* not emacs */ |
486 | 111 |
12216 | 112 #endif /* not _LIBC */ |
12197
9cba6f0d9cd7
[_LIBC] (start_of_data): Define to &__data_start for GNU libc.
Roland McGrath <roland@gnu.org>
parents:
9791
diff
changeset
|
113 |
486 | 114 |
115 /* start of data space; can be changed by calling malloc_init */ | |
116 static POINTER data_space_start; | |
117 | |
118 /* Number of bytes of writable memory we can expect to be able to get */ | |
15643
3c6865102f3d
(lim_data): Make this an unsigned long.
Karl Heuer <kwzh@gnu.org>
parents:
15634
diff
changeset
|
119 static unsigned long lim_data; |
486 | 120 |
7010
34c91bb33ed0
(get_lim_data): Handle NO_LIM_DATA.
Richard M. Stallman <rms@gnu.org>
parents:
5547
diff
changeset
|
121 #ifdef NO_LIM_DATA |
34c91bb33ed0
(get_lim_data): Handle NO_LIM_DATA.
Richard M. Stallman <rms@gnu.org>
parents:
5547
diff
changeset
|
122 static void |
34c91bb33ed0
(get_lim_data): Handle NO_LIM_DATA.
Richard M. Stallman <rms@gnu.org>
parents:
5547
diff
changeset
|
123 get_lim_data () |
34c91bb33ed0
(get_lim_data): Handle NO_LIM_DATA.
Richard M. Stallman <rms@gnu.org>
parents:
5547
diff
changeset
|
124 { |
34c91bb33ed0
(get_lim_data): Handle NO_LIM_DATA.
Richard M. Stallman <rms@gnu.org>
parents:
5547
diff
changeset
|
125 lim_data = -1; |
34c91bb33ed0
(get_lim_data): Handle NO_LIM_DATA.
Richard M. Stallman <rms@gnu.org>
parents:
5547
diff
changeset
|
126 } |
34c91bb33ed0
(get_lim_data): Handle NO_LIM_DATA.
Richard M. Stallman <rms@gnu.org>
parents:
5547
diff
changeset
|
127 #else /* not NO_LIM_DATA */ |
34c91bb33ed0
(get_lim_data): Handle NO_LIM_DATA.
Richard M. Stallman <rms@gnu.org>
parents:
5547
diff
changeset
|
128 |
486 | 129 #ifdef USG |
130 | |
1450
a321ed0fa3ae
(get_lim_data): Make it static.
Richard M. Stallman <rms@gnu.org>
parents:
1399
diff
changeset
|
131 static void |
486 | 132 get_lim_data () |
133 { | |
134 extern long ulimit (); | |
2917
725698689fbd
Some more changes from Michael K. Johnson for Linux.
Jim Blandy <jimb@redhat.com>
parents:
1592
diff
changeset
|
135 |
725698689fbd
Some more changes from Michael K. Johnson for Linux.
Jim Blandy <jimb@redhat.com>
parents:
1592
diff
changeset
|
136 lim_data = -1; |
725698689fbd
Some more changes from Michael K. Johnson for Linux.
Jim Blandy <jimb@redhat.com>
parents:
1592
diff
changeset
|
137 |
725698689fbd
Some more changes from Michael K. Johnson for Linux.
Jim Blandy <jimb@redhat.com>
parents:
1592
diff
changeset
|
138 /* Use the ulimit call, if we seem to have it. */ |
41969
e669966d496e
Test GNU_LINUX, not LINUX.
Richard M. Stallman <rms@gnu.org>
parents:
28055
diff
changeset
|
139 #if !defined (ULIMIT_BREAK_VALUE) || defined (GNU_LINUX) |
2917
725698689fbd
Some more changes from Michael K. Johnson for Linux.
Jim Blandy <jimb@redhat.com>
parents:
1592
diff
changeset
|
140 lim_data = ulimit (3, 0); |
725698689fbd
Some more changes from Michael K. Johnson for Linux.
Jim Blandy <jimb@redhat.com>
parents:
1592
diff
changeset
|
141 #endif |
725698689fbd
Some more changes from Michael K. Johnson for Linux.
Jim Blandy <jimb@redhat.com>
parents:
1592
diff
changeset
|
142 |
725698689fbd
Some more changes from Michael K. Johnson for Linux.
Jim Blandy <jimb@redhat.com>
parents:
1592
diff
changeset
|
143 /* If that didn't work, just use the macro's value. */ |
486 | 144 #ifdef ULIMIT_BREAK_VALUE |
2917
725698689fbd
Some more changes from Michael K. Johnson for Linux.
Jim Blandy <jimb@redhat.com>
parents:
1592
diff
changeset
|
145 if (lim_data == -1) |
725698689fbd
Some more changes from Michael K. Johnson for Linux.
Jim Blandy <jimb@redhat.com>
parents:
1592
diff
changeset
|
146 lim_data = ULIMIT_BREAK_VALUE; |
486 | 147 #endif |
148 | |
149 lim_data -= (long) data_space_start; | |
150 } | |
151 | |
152 #else /* not USG */ | |
9791
068c89ed6765
[WINDOWSNT]: Don't include vlimit.h.
Richard M. Stallman <rms@gnu.org>
parents:
8830
diff
changeset
|
153 #ifdef WINDOWSNT |
068c89ed6765
[WINDOWSNT]: Don't include vlimit.h.
Richard M. Stallman <rms@gnu.org>
parents:
8830
diff
changeset
|
154 |
068c89ed6765
[WINDOWSNT]: Don't include vlimit.h.
Richard M. Stallman <rms@gnu.org>
parents:
8830
diff
changeset
|
155 static void |
068c89ed6765
[WINDOWSNT]: Don't include vlimit.h.
Richard M. Stallman <rms@gnu.org>
parents:
8830
diff
changeset
|
156 get_lim_data () |
068c89ed6765
[WINDOWSNT]: Don't include vlimit.h.
Richard M. Stallman <rms@gnu.org>
parents:
8830
diff
changeset
|
157 { |
24101
95829fe50ff7
(get_lim_data): Use reserved_heap_size instead of
Andrew Innes <andrewi@gnu.org>
parents:
16220
diff
changeset
|
158 extern unsigned long reserved_heap_size; |
95829fe50ff7
(get_lim_data): Use reserved_heap_size instead of
Andrew Innes <andrewi@gnu.org>
parents:
16220
diff
changeset
|
159 lim_data = reserved_heap_size; |
9791
068c89ed6765
[WINDOWSNT]: Don't include vlimit.h.
Richard M. Stallman <rms@gnu.org>
parents:
8830
diff
changeset
|
160 } |
068c89ed6765
[WINDOWSNT]: Don't include vlimit.h.
Richard M. Stallman <rms@gnu.org>
parents:
8830
diff
changeset
|
161 |
068c89ed6765
[WINDOWSNT]: Don't include vlimit.h.
Richard M. Stallman <rms@gnu.org>
parents:
8830
diff
changeset
|
162 #else |
5497
525a2027ec95
[MSDOS] (get_lim_data): Use go32 call.
Richard M. Stallman <rms@gnu.org>
parents:
4254
diff
changeset
|
163 #if !defined (BSD4_2) && !defined (__osf__) |
486 | 164 |
5497
525a2027ec95
[MSDOS] (get_lim_data): Use go32 call.
Richard M. Stallman <rms@gnu.org>
parents:
4254
diff
changeset
|
165 #ifdef MSDOS |
525a2027ec95
[MSDOS] (get_lim_data): Use go32 call.
Richard M. Stallman <rms@gnu.org>
parents:
4254
diff
changeset
|
166 void |
525a2027ec95
[MSDOS] (get_lim_data): Use go32 call.
Richard M. Stallman <rms@gnu.org>
parents:
4254
diff
changeset
|
167 get_lim_data () |
525a2027ec95
[MSDOS] (get_lim_data): Use go32 call.
Richard M. Stallman <rms@gnu.org>
parents:
4254
diff
changeset
|
168 { |
525a2027ec95
[MSDOS] (get_lim_data): Use go32 call.
Richard M. Stallman <rms@gnu.org>
parents:
4254
diff
changeset
|
169 _go32_dpmi_meminfo info; |
525a2027ec95
[MSDOS] (get_lim_data): Use go32 call.
Richard M. Stallman <rms@gnu.org>
parents:
4254
diff
changeset
|
170 |
525a2027ec95
[MSDOS] (get_lim_data): Use go32 call.
Richard M. Stallman <rms@gnu.org>
parents:
4254
diff
changeset
|
171 _go32_dpmi_get_free_memory_information (&info); |
525a2027ec95
[MSDOS] (get_lim_data): Use go32 call.
Richard M. Stallman <rms@gnu.org>
parents:
4254
diff
changeset
|
172 lim_data = info.available_memory; |
525a2027ec95
[MSDOS] (get_lim_data): Use go32 call.
Richard M. Stallman <rms@gnu.org>
parents:
4254
diff
changeset
|
173 } |
525a2027ec95
[MSDOS] (get_lim_data): Use go32 call.
Richard M. Stallman <rms@gnu.org>
parents:
4254
diff
changeset
|
174 #else /* not MSDOS */ |
1450
a321ed0fa3ae
(get_lim_data): Make it static.
Richard M. Stallman <rms@gnu.org>
parents:
1399
diff
changeset
|
175 static void |
486 | 176 get_lim_data () |
177 { | |
178 lim_data = vlimit (LIM_DATA, -1); | |
179 } | |
5497
525a2027ec95
[MSDOS] (get_lim_data): Use go32 call.
Richard M. Stallman <rms@gnu.org>
parents:
4254
diff
changeset
|
180 #endif /* not MSDOS */ |
486 | 181 |
182 #else /* BSD4_2 */ | |
183 | |
1450
a321ed0fa3ae
(get_lim_data): Make it static.
Richard M. Stallman <rms@gnu.org>
parents:
1399
diff
changeset
|
184 static void |
486 | 185 get_lim_data () |
186 { | |
187 struct rlimit XXrlimit; | |
188 | |
189 getrlimit (RLIMIT_DATA, &XXrlimit); | |
190 #ifdef RLIM_INFINITY | |
191 lim_data = XXrlimit.rlim_cur & RLIM_INFINITY; /* soft limit */ | |
192 #else | |
193 lim_data = XXrlimit.rlim_cur; /* soft limit */ | |
194 #endif | |
195 } | |
196 #endif /* BSD4_2 */ | |
9791
068c89ed6765
[WINDOWSNT]: Don't include vlimit.h.
Richard M. Stallman <rms@gnu.org>
parents:
8830
diff
changeset
|
197 #endif /* not WINDOWSNT */ |
486 | 198 #endif /* not USG */ |
7010
34c91bb33ed0
(get_lim_data): Handle NO_LIM_DATA.
Richard M. Stallman <rms@gnu.org>
parents:
5547
diff
changeset
|
199 #endif /* not NO_LIM_DATA */ |
52401 | 200 |
201 /* arch-tag: fe39244e-e54f-4208-b7aa-02556f7841c5 | |
202 (do not change this comment) */ |