[Git][cmucl/cmucl][master] 2 commits: Remove scavenging of read-only space.

Raymond Toy gitlab at common-lisp.net
Sun Jan 3 17:55:48 UTC 2021



Raymond Toy pushed to branch master at cmucl / cmucl


Commits:
6af2ad8b by Raymond Toy at 2021-01-03T17:55:43+00:00
Remove scavenging of read-only space.

`*SCAVENGE-READ-ONLY-SPACE*` is always set to `NIL`, and it's highly
unlikely any one ever sets it. I (rtoy) haven't done that in decades
at least.

So, remove this static symbol, and remove the C code that tests for
this to determine if the read-only space should be scavenged.

This requires a very simple cross-compile to remove the symbol.  See
boot-2020-04-1.lisp for very simple instructions.  We currently on do
this for x86 since we can't test on sparc right now.

Update CI to do a cross-compile.

Addresses #89

- - - - -
b334db9f by Raymond Toy at 2021-01-03T17:55:43+00:00
Merge branch 'issue-89-remove-scavenging-of-read-only' into 'master'

Remove scavenging of read-only space.

See merge request cmucl/cmucl!58
- - - - -


4 changed files:

- .gitlab-ci.yml
- src/compiler/sparc/parms.lisp
- src/compiler/x86/parms.lisp
- src/lisp/gencgc.c


Changes:

=====================================
.gitlab-ci.yml
=====================================
@@ -36,7 +36,12 @@ linux:build:
     - job: linux:install
       artifacts: true
   script:
-    - bin/build.sh $bootstrap -R -C "" -o snapshot/bin/lisp
+    # Do cross compile first
+    - bin/create-target.sh xtarget x86_linux_clang
+    - bin/create-target.sh xcross x86_linux_clang
+    - bin/cross-build-world.sh -crl -B boot-2020-04-1 xtarget xcross src/tools/cross-scripts/cross-x86-x86.lisp snapshot/bin/lisp
+    # Regular build using the cross-compiled result
+    - bin/build.sh $bootstrap -R -C "" -o xtarget/lisp/lisp
     - bin/make-dist.sh -I dist linux-4
 
 linux:test:
@@ -102,7 +107,12 @@ osx:build:
     - job: osx:install
       artifacts: true
   script:
-    - bin/build.sh $bootstrap -R -C "" -o snapshot/bin/lisp
+    # Do cross compile first
+    - bin/create-target.sh xtarget x86_darwin
+    - bin/create-target.sh xcross x86_darwin
+    - bin/cross-build-world.sh -crl -B boot-2020-04-1 xtarget xcross src/tools/cross-scripts/cross-x86-x86.lisp snapshot/bin/lisp
+    # Regular build using the cross-compiled result
+    - bin/build.sh $bootstrap -R -C "" -o xtarget/lisp/lisp
     - bin/make-dist.sh -I dist darwin-4
 
 osx:test:


=====================================
src/compiler/sparc/parms.lisp
=====================================
@@ -341,6 +341,9 @@
     ;; address.
     #+gencgc
     *current-region-end-addr*
+
+    ;; TODO(issue #89).  This needs to be removed.  It's harmless to
+    ;; have this, but it should be removed.
     #+gencgc
     *scavenge-read-only-space*
 


=====================================
src/compiler/x86/parms.lisp
=====================================
@@ -363,9 +363,6 @@
       *fp-constant-lg2*
       *fp-constant-ln2*
 
-      ;; Used by gencgc.
-      *scavenge-read-only-space*
-
       ;; Multi-process support.
       *control-stacks*
 


=====================================
src/lisp/gencgc.c
=====================================
@@ -7865,6 +7865,7 @@ garbage_collect_generation(int generation, int raise)
     printf("Done scavenging the scavenger hooks.\n");
 #endif
 
+#if 0
     if (SymbolValue(SCAVENGE_READ_ONLY_SPACE) != NIL) {
 	read_only_space_size =
 	    (lispobj *) SymbolValue(READ_ONLY_SPACE_FREE_POINTER) -
@@ -7873,6 +7874,7 @@ garbage_collect_generation(int generation, int raise)
 		read_only_space_size * sizeof(lispobj));
 	scavenge(read_only_space, read_only_space_size);
     }
+#endif
 
     static_space_size = (lispobj *) SymbolValue(STATIC_SPACE_FREE_POINTER)
 	- static_space;



View it on GitLab: https://gitlab.common-lisp.net/cmucl/cmucl/-/compare/c60c50da55aa3ec4d88b31bbea225c04f87a926b...b334db9faee003375a25f50edf8cfcbf47a79fb3

-- 
View it on GitLab: https://gitlab.common-lisp.net/cmucl/cmucl/-/compare/c60c50da55aa3ec4d88b31bbea225c04f87a926b...b334db9faee003375a25f50edf8cfcbf47a79fb3
You're receiving this email because of your account on gitlab.common-lisp.net.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.common-lisp.net/pipermail/cmucl-cvs/attachments/20210103/bafebd97/attachment-0001.html>


More information about the cmucl-cvs mailing list