Artifact e9774ef3930b018ab756299c82905786ebde4f5751433e02ea574332cd4a2e01:
- File
psl-1983/3-1/util/20/get-heap-bounds.sl
— part of check-in
[eb17ceb7f6]
at
2020-04-21 19:40:01
on branch master
— Add Reduce 3.0 to the historical section of the archive, and some more
files relating to version sof PSL from the early 1980s. Thanks are due to
Paul McJones and Nelson Beebe for these, as well as to all the original
authors.git-svn-id: https://svn.code.sf.net/p/reduce-algebra/code/historical@5328 2bfe0521-f11c-4a00-b80e-6202646ff360 (user: arthurcnorman@users.sourceforge.net, size: 857) [annotate] [blame] [check-ins using] [more...]
%%%% GET-HEAP-BOUNDS - looks up the addresses of the Syslisp variables %%% HeapLast and HeapLowerBound and makes it so that the Lisp function %%% HeapLast() returns the value of the variable HeapLast and the %%% Lisp function HeapLowerBound() returns the value of the variable %%% HeapLowerBound. Dec-20 only. (compiletime (load if-system syslisp)) % This depends on exactly the code generated for the CONS function % on the Dec-20. Very, very brittle code! (fluid '(!%heaplast-address)) (if_system PDP10 (de get-heap-bounds () (setq !%heaplast-address (inf (wgetv (getfcodepointer 'cons) 2))))) (de heaplast () (getmem !%heaplast-address)) % This depends on the order of declarations in PI:ALLOCATORS.RED and the % way storage is assigned for Syslisp variables. (de heaplowerbound () (wgetv !%heaplast-address 2)) (get-heap-bounds)