diff options
Diffstat (limited to 'compiler/ghci/GHCi.hs')
-rw-r--r-- | compiler/ghci/GHCi.hs | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/compiler/ghci/GHCi.hs b/compiler/ghci/GHCi.hs index d9c26c1d47..b7e0eb33f5 100644 --- a/compiler/ghci/GHCi.hs +++ b/compiler/ghci/GHCi.hs @@ -13,6 +13,8 @@ module GHCi , evalString , evalStringToIOString , mallocData + , mkCostCentre + , costCentreStackInfo -- * The object-code linker , initObjLinker @@ -207,7 +209,7 @@ handleEvalStatus :: HscEnv -> EvalStatus [HValueRef] -> IO (EvalStatus [ForeignHValue]) handleEvalStatus hsc_env status = case status of - EvalBreak a b c d -> return (EvalBreak a b c d) + EvalBreak a b c d e -> return (EvalBreak a b c d e) EvalComplete alloc res -> EvalComplete alloc <$> addFinalizer res where @@ -239,6 +241,16 @@ evalStringToIOString hsc_env fhv str = do mallocData :: HscEnv -> ByteString -> IO (Ptr ()) mallocData hsc_env bs = fromRemotePtr <$> iservCmd hsc_env (MallocData bs) +mkCostCentre + :: HscEnv -> RemotePtr {- CChar -} -> String -> String + -> IO RemotePtr {- CCostCentre -} +mkCostCentre hsc_env c_module name src = + iservCmd hsc_env (MkCostCentre c_module name src) + + +costCentreStackInfo :: HscEnv -> RemotePtr {- CCostCentreStack -} -> IO [String] +costCentreStackInfo hsc_env ccs = + iservCmd hsc_env (CostCentreStackInfo ccs) -- ----------------------------------------------------------------------------- -- Interface to the object-code linker |