[Git][ghc/ghc][wip/T18281] 2 commits: gitlab-ci: Ensure that workaround for #18280 applies to bindisttest

Ben Gamari gitlab at gitlab.haskell.org
Tue Jun 2 18:32:54 UTC 2020



Ben Gamari pushed to branch wip/T18281 at Glasgow Haskell Compiler / GHC


Commits:
d6279ff0 by Ben Gamari at 2020-06-02T13:03:30-04:00
gitlab-ci: Ensure that workaround for #18280 applies to bindisttest

We need to ensure that the `configure` flags working around #18280 are
propagated to the bindisttest `configure` as well.

- - - - -
b38c1438 by Ben Gamari at 2020-06-02T14:32:52-04:00
rts: Add --copying-gc flag to reverse effect of --nonmoving-gc

Fixes #18281.

- - - - -


3 changed files:

- .gitlab-ci.yml
- docs/users_guide/runtime_control.rst
- rts/RtsFlags.c


Changes:

=====================================
.gitlab-ci.yml
=====================================
@@ -482,9 +482,11 @@ nightly-aarch64-linux-deb9:
   variables:
     TEST_ENV: "armv7-linux-deb9"
     BIN_DIST_PREP_TAR_COMP: "ghc-armv7-linux-deb9.tar.xz"
+    CONFIGURE_ARGS: "--host=armv7-linux-gnueabihf --build=armv7-linux-gnueabihf --target=armv7-linux-gnueabihf"
     # N.B. We disable ld.lld explicitly here because it appears to fail
     # non-deterministically on ARMv7. See #18280.
-    CONFIGURE_ARGS: "--host=armv7-linux-gnueabihf --build=armv7-linux-gnueabihf --target=armv7-linux-gnueabihf LD=ld.gold GccUseLdOpt=-fuse-ld=gold"
+    LD: "ld.gold"
+    GccUseLdOpt: "-fuse-ld=gold"
   cache:
     key: linux-armv7-deb9
   tags:


=====================================
docs/users_guide/runtime_control.rst
=====================================
@@ -373,10 +373,19 @@ collection. Hopefully, you won't need any of these in normal operation,
 but there are several things that can be tweaked for maximum
 performance.
 
+.. rts-flag:: --copying-gc
+    :default: on
+    :since: 8.10.2
+    :reverse: --nonmoving-gc
+
+    Uses the generational copying garbage collector for all generations.
+    This is the default.
+
 .. rts-flag:: --nonmoving-gc
 
     :default: off
     :since: 8.10.1
+    :reverse: --copying-gc
 
     .. index::
        single: concurrent mark and sweep


=====================================
rts/RtsFlags.c
=====================================
@@ -292,6 +292,12 @@ usage_text[] = {
 "  -?       Prints this message and exits; the program is not executed",
 "  --info   Print information about the RTS used by this program",
 "",
+"  --nonmoving-gc",
+"            Selects the non-moving mark-and-sweep garbage collector to",
+"            manage the oldest generation.",
+"  --copying-gc",
+"            Selects the copying garbage collector to manage all generations.",
+"",
 "  -K<size>  Sets the maximum stack size (default: 80% of the heap)",
 "            Egs: -K32k -K512k -K8M",
 "  -ki<size> Sets the initial thread stack size (default 1k)  Egs: -ki4k -ki2m",
@@ -939,6 +945,11 @@ error = true;
                       printRtsInfo(rtsConfig);
                       stg_exit(0);
                   }
+                  else if (strequal("copying-gc",
+                               &rts_argv[arg][2])) {
+                      OPTION_SAFE;
+                      RtsFlags.GcFlags.useNonmoving = false;
+                  }
                   else if (strequal("nonmoving-gc",
                                &rts_argv[arg][2])) {
                       OPTION_SAFE;



View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/d58e1edb779001863b3f85d96b472bf77a80ebed...b38c1438521f8efb0b3498859b1592117bf1d4bc

-- 
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/d58e1edb779001863b3f85d96b472bf77a80ebed...b38c1438521f8efb0b3498859b1592117bf1d4bc
You're receiving this email because of your account on gitlab.haskell.org.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/ghc-commits/attachments/20200602/6efd2ca7/attachment-0001.html>


More information about the ghc-commits mailing list