diff options
author | Andreas Klebinger <klebinger.andreas@gmx.at> | 2020-01-22 15:24:08 +0100 |
---|---|---|
committer | Ömer Sinan Ağacan <omeragacan@gmail.com> | 2020-01-31 12:21:10 +0300 |
commit | 2a87a565365d1724a83cd0d5c5fc3b696210c4f2 (patch) | |
tree | 648ae769b299abab942ebaca5a8ba54da798284e /compiler/GHC/Cmm/CLabel.hs | |
parent | c846618ae0f8601515683a4c7677c20c3272a50f (diff) | |
download | haskell-2a87a565365d1724a83cd0d5c5fc3b696210c4f2.tar.gz |
A few optimizations in STG and Cmm parts:
(Guided by the profiler output)
- Add a few bang patterns, INLINABLE annotations, and a seqList in a few
places in Cmm and STG parts.
- Do not add external variables as dependencies in STG dependency
analysis (GHC.Stg.DepAnal).
Diffstat (limited to 'compiler/GHC/Cmm/CLabel.hs')
-rw-r--r-- | compiler/GHC/Cmm/CLabel.hs | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/compiler/GHC/Cmm/CLabel.hs b/compiler/GHC/Cmm/CLabel.hs index c83dba8f39..8cac0aa5dd 100644 --- a/compiler/GHC/Cmm/CLabel.hs +++ b/compiler/GHC/Cmm/CLabel.hs @@ -7,6 +7,7 @@ ----------------------------------------------------------------------------- {-# LANGUAGE CPP #-} +{-# LANGUAGE BangPatterns #-} module GHC.Cmm.CLabel ( CLabel, -- abstract type @@ -468,7 +469,7 @@ mkRednCountsLabel name = mkLocalClosureLabel :: Name -> CafInfo -> CLabel mkLocalInfoTableLabel :: Name -> CafInfo -> CLabel mkLocalClosureTableLabel :: Name -> CafInfo -> CLabel -mkLocalClosureLabel name c = IdLabel name c Closure +mkLocalClosureLabel !name !c = IdLabel name c Closure mkLocalInfoTableLabel name c = IdLabel name c LocalInfoTable mkLocalClosureTableLabel name c = IdLabel name c ClosureTable |