Wolfgang Jeltsch pushed to branch wip/jeltsch/textual-bytecode-output at Glasgow Haskell Compiler / GHC

Commits:

1 changed file:

Changes:

  • compiler/GHC/ByteCode/Show.hs
    ... ... @@ -64,7 +64,7 @@ import GHC.ByteCode.Types
    64 64
                BCONPtr (..),
    
    65 65
                BCOPtr (..),
    
    66 66
                UnlinkedBCO (..),
    
    67
    -           ByteCodeHpcInfo,
    
    67
    +           ByteCodeHpcInfo (..),
    
    68 68
                CompiledByteCode (..)
    
    69 69
            )
    
    70 70
     import GHC.ByteCode.Breakpoints
    
    ... ... @@ -95,14 +95,14 @@ pprOnDiskModuleByteCode :: OnDiskModuleByteCode -> SDoc
    95 95
     pprOnDiskModuleByteCode OnDiskModuleByteCode {..}
    
    96 96
         = entry (text "module" <+> ppr odgbc_module) $
    
    97 97
           vcat [
    
    98
    -               pprHash                          $ odgbc_hash,
    
    98
    +               pprOnDiskModuleByteCodeHash      $ odgbc_hash,
    
    99 99
                    pprCompiledByteCode odgbc_module $ odgbc_compiled_byte_code,
    
    100 100
                    pprObjectFileContents            $ odgbc_foreign
    
    101 101
                ]
    
    102 102
     
    
    103 103
     -- | […]
    
    104
    -pprHash :: Fingerprint -> SDoc
    
    105
    -pprHash = entry (text "hash:") . ppr
    
    104
    +pprOnDiskModuleByteCodeHash :: Fingerprint -> SDoc
    
    105
    +pprOnDiskModuleByteCodeHash = entry (text "hash:") . ppr
    
    106 106
     
    
    107 107
     -- | […]
    
    108 108
     pprCompiledByteCode :: Module -> CompiledByteCode -> SDoc
    
    ... ... @@ -473,7 +473,34 @@ pprHPCInfo = entry (text "HPC information:") .
    473 473
     
    
    474 474
     -- | […]
    
    475 475
     pprHPCInfoData :: ByteCodeHpcInfo -> SDoc
    
    476
    -pprHPCInfoData = pprHPCInfoData
    
    476
    +pprHPCInfoData ByteCodeHpcInfo {..}
    
    477
    +    = vcat [
    
    478
    +               pprHPCInfoHash $ bchi_hash,
    
    479
    +               pprModuleName  $ bchi_module_name,
    
    480
    +               pprTickBoxName $ bchi_tickbox_name,
    
    481
    +               pprTickCount   $ bchi_tick_count
    
    482
    +           ]
    
    483
    +    where
    
    484
    +
    
    485
    +-- | […]
    
    486
    +pprHPCInfoHash :: Int -> SDoc
    
    487
    +pprHPCInfoHash = entry (text "hash:") . pprFixedSizeNatural
    
    488
    +
    
    489
    +-- | […]
    
    490
    +pprModuleName :: ShortByteString -> SDoc
    
    491
    +pprModuleName = entry (text "module name:") .
    
    492
    +                text                        .
    
    493
    +                utf8DecodeShortByteString
    
    494
    +
    
    495
    +-- | […]
    
    496
    +pprTickBoxName :: ShortByteString -> SDoc
    
    497
    +pprTickBoxName = entry (text "tick box name:") .
    
    498
    +                 text                          .
    
    499
    +                 utf8DecodeShortByteString
    
    500
    +
    
    501
    +-- | […]
    
    502
    +pprTickCount :: Int -> SDoc
    
    503
    +pprTickCount = entry (text "number of ticks:") . ppr
    
    477 504
     
    
    478 505
     -- | […]
    
    479 506
     pprObjectFileContents :: [ByteString] -> SDoc