summaryrefslogtreecommitdiff
path: root/rts/Compact.cmm
diff options
context:
space:
mode:
authorklebinger.andreas@gmx.at <klebinger.andreas@gmx.at>2018-01-29 18:25:00 -0500
committerBen Gamari <ben@smart-cactus.org>2018-01-29 18:25:00 -0500
commit1205629228064537545a0be9c2e9a995aa2dcd03 (patch)
tree58b17898f7ac63f140bc6fb25ef68e94681ff763 /rts/Compact.cmm
parent96d2eb27eb86540796944253ce47b2bcd6a2df1c (diff)
downloadhaskell-1205629228064537545a0be9c2e9a995aa2dcd03.tar.gz
Add likely annotation to cmm files in a few obvious places.
Provide information about paths more likely to be taken in the cmm files used by the rts. This leads to slightly better assembly being generated. Reviewers: bgamari, erikd, simonmar Subscribers: alexbiehl, rwbarton, thomie, carter GHC Trac Issues: #14672 Differential Revision: https://phabricator.haskell.org/D4324
Diffstat (limited to 'rts/Compact.cmm')
-rw-r--r--rts/Compact.cmm6
1 files changed, 3 insertions, 3 deletions
diff --git a/rts/Compact.cmm b/rts/Compact.cmm
index 174444db40..719dac87f1 100644
--- a/rts/Compact.cmm
+++ b/rts/Compact.cmm
@@ -174,7 +174,7 @@ eval:
prim %memcpy(to + cards, p + cards , size - cards, 1);
i = 0;
loop0:
- if (i < ptrs) {
+ if (i < ptrs) ( likely: True ) {
W_ q;
q = to + SIZEOF_StgMutArrPtrs + WDS(i);
call stg_compactAddWorkerzh(
@@ -200,7 +200,7 @@ eval:
prim %memcpy(to, p, size, 1);
i = 0;
loop0:
- if (i < ptrs) {
+ if (i < ptrs) ( likely: True ) {
W_ q;
q = to + SIZEOF_StgSmallMutArrPtrs + WDS(i);
call stg_compactAddWorkerzh(
@@ -241,7 +241,7 @@ eval:
loop1:
StgClosure_payload(to,i) = StgClosure_payload(p,i);
i = i + 1;
- if (i < ptrs + nptrs) goto loop1;
+ if (i < ptrs + nptrs) ( likely: True ) goto loop1;
}
// Next, recursively compact and copy the pointers