diff options
author | klebinger.andreas@gmx.at <klebinger.andreas@gmx.at> | 2018-01-29 18:25:00 -0500 |
---|---|---|
committer | Ben Gamari <ben@smart-cactus.org> | 2018-01-29 18:25:00 -0500 |
commit | 1205629228064537545a0be9c2e9a995aa2dcd03 (patch) | |
tree | 58b17898f7ac63f140bc6fb25ef68e94681ff763 /rts/Compact.cmm | |
parent | 96d2eb27eb86540796944253ce47b2bcd6a2df1c (diff) | |
download | haskell-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.cmm | 6 |
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 |