Commit b3ef2d1a authored by Ben Gamari's avatar Ben Gamari 🐢 Committed by Ben Gamari
Browse files

rts: Introduce debug flag for non-moving GC

parent 6ff29c06
...@@ -150,21 +150,22 @@ data MiscFlags = MiscFlags ...@@ -150,21 +150,22 @@ data MiscFlags = MiscFlags
-- --
-- @since 4.8.0.0 -- @since 4.8.0.0
data DebugFlags = DebugFlags data DebugFlags = DebugFlags
{ scheduler :: Bool -- ^ @s@ { scheduler :: Bool -- ^ @s@
, interpreter :: Bool -- ^ @i@ , interpreter :: Bool -- ^ @i@
, weak :: Bool -- ^ @w@ , weak :: Bool -- ^ @w@
, gccafs :: Bool -- ^ @G@ , gccafs :: Bool -- ^ @G@
, gc :: Bool -- ^ @g@ , gc :: Bool -- ^ @g@
, block_alloc :: Bool -- ^ @b@ , nonmoving_gc :: Bool -- ^ @n@
, sanity :: Bool -- ^ @S@ , block_alloc :: Bool -- ^ @b@
, stable :: Bool -- ^ @t@ , sanity :: Bool -- ^ @S@
, prof :: Bool -- ^ @p@ , stable :: Bool -- ^ @t@
, linker :: Bool -- ^ @l@ the object linker , prof :: Bool -- ^ @p@
, apply :: Bool -- ^ @a@ , linker :: Bool -- ^ @l@ the object linker
, stm :: Bool -- ^ @m@ , apply :: Bool -- ^ @a@
, squeeze :: Bool -- ^ @z@ stack squeezing & lazy blackholing , stm :: Bool -- ^ @m@
, hpc :: Bool -- ^ @c@ coverage , squeeze :: Bool -- ^ @z@ stack squeezing & lazy blackholing
, sparks :: Bool -- ^ @r@ , hpc :: Bool -- ^ @c@ coverage
, sparks :: Bool -- ^ @r@
} deriving ( Show -- ^ @since 4.8.0.0 } deriving ( Show -- ^ @since 4.8.0.0
) )
...@@ -462,6 +463,8 @@ getDebugFlags = do ...@@ -462,6 +463,8 @@ getDebugFlags = do
(#{peek DEBUG_FLAGS, gccafs} ptr :: IO CBool)) (#{peek DEBUG_FLAGS, gccafs} ptr :: IO CBool))
<*> (toBool <$> <*> (toBool <$>
(#{peek DEBUG_FLAGS, gc} ptr :: IO CBool)) (#{peek DEBUG_FLAGS, gc} ptr :: IO CBool))
<*> (toBool <$>
(#{peek DEBUG_FLAGS, nonmoving_gc} ptr :: IO CBool))
<*> (toBool <$> <*> (toBool <$>
(#{peek DEBUG_FLAGS, block_alloc} ptr :: IO CBool)) (#{peek DEBUG_FLAGS, block_alloc} ptr :: IO CBool))
<*> (toBool <$> <*> (toBool <$>
......
...@@ -50,6 +50,7 @@ enum CapsetType { CapsetTypeCustom = CAPSET_TYPE_CUSTOM, ...@@ -50,6 +50,7 @@ enum CapsetType { CapsetTypeCustom = CAPSET_TYPE_CUSTOM,
#define DEBUG_weak RtsFlags.DebugFlags.weak #define DEBUG_weak RtsFlags.DebugFlags.weak
#define DEBUG_gccafs RtsFlags.DebugFlags.gccafs #define DEBUG_gccafs RtsFlags.DebugFlags.gccafs
#define DEBUG_gc RtsFlags.DebugFlags.gc #define DEBUG_gc RtsFlags.DebugFlags.gc
#define DEBUG_nonmoving_gc RtsFlags.DebugFlags.nonmoving_gc
#define DEBUG_block_alloc RtsFlags.DebugFlags.alloc #define DEBUG_block_alloc RtsFlags.DebugFlags.alloc
#define DEBUG_sanity RtsFlags.DebugFlags.sanity #define DEBUG_sanity RtsFlags.DebugFlags.sanity
#define DEBUG_zero_on_gc RtsFlags.DebugFlags.zero_on_gc #define DEBUG_zero_on_gc RtsFlags.DebugFlags.zero_on_gc
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment