From 669d5cb328afa5b3c82949af9d3c5e49f87e341b Mon Sep 17 00:00:00 2001
From: GHC GitLab CI <ghc-ci@gitlab-haskell.org>
Date: Fri, 11 Jun 2021 00:43:43 +0000
Subject: [PATCH] rts: Eliminate redundant branch

Previously we branched unnecessarily on
IF_NONMOVING_WRITE_BARRIER_ENABLED on every trip through the array
barrier push loop.

(cherry picked from commit 30f233fe8a0342abbafa2b785a32615bace9492f)
---
 rts/PrimOps.cmm | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/rts/PrimOps.cmm b/rts/PrimOps.cmm
index 595377b2253d..1bf5b4adaef6 100644
--- a/rts/PrimOps.cmm
+++ b/rts/PrimOps.cmm
@@ -511,9 +511,7 @@ stg_copyArray_barrier ( W_ hdr_size, gcptr dst, W_ dst_off, W_ n)
     end = p + WDS(n);
 
 again:
-    IF_NONMOVING_WRITE_BARRIER_ENABLED {
-        ccall updateRemembSetPushClosure_(BaseReg "ptr", W_[p] "ptr");
-    }
+    ccall updateRemembSetPushClosure_(BaseReg "ptr", W_[p] "ptr");
     p = p + WDS(1);
     if (p < end) {
         goto again;
-- 
GitLab