Matthew Pickering pushed to branch wip/gbc-files at Glasgow Haskell Compiler / GHC

Commits:

4 changed files:

Changes:

  • compiler/GHC/Driver/Backpack.hs
    ... ... @@ -575,7 +575,7 @@ mkBackpackMsg = do
    575 575
               showMsg msg reason =
    
    576 576
                 backpackProgressMsg level logger $ pprWithUnitState state $
    
    577 577
                     showModuleIndex mod_index <>
    
    578
    -                msg <> showModMsg dflags (recompileRequired recomp) node
    
    578
    +                msg <> showModMsg dflags node
    
    579 579
                         <> reason
    
    580 580
           in case node of
    
    581 581
             InstantiationNode _ _ ->
    

  • compiler/GHC/Driver/Messager.hs
    ... ... @@ -48,7 +48,7 @@ batchMsgWith extra hsc_env_start mod_index recomp node =
    48 48
             showMsg msg reason =
    
    49 49
                 compilationProgressMsg logger $
    
    50 50
                 (showModuleIndex mod_index <>
    
    51
    -            msg <+> showModMsg dflags (recompileRequired recomp) node)
    
    51
    +            msg <+> showModMsg dflags node)
    
    52 52
                     <> extra hsc_env mod_index recomp node
    
    53 53
                     <> reason
    
    54 54
     
    

  • compiler/GHC/Runtime/Eval.hs
    ... ... @@ -1304,11 +1304,7 @@ showModule mni = do
    1304 1304
         let mod = moduleNodeInfoModule mni
    
    1305 1305
         withSession $ \hsc_env -> do
    
    1306 1306
             let dflags = hsc_dflags hsc_env
    
    1307
    -        interpreted <- liftIO $
    
    1308
    -          HUG.lookupHug (hsc_HUG hsc_env) (moduleUnitId mod) (moduleName mod) >>= pure . \case
    
    1309
    -            Nothing       -> panic "missing linkable"
    
    1310
    -            Just mod_info -> isJust (homeModInfoByteCode mod_info)  && isNothing (homeModInfoObject mod_info)
    
    1311
    -        return (showSDoc dflags $ showModMsg dflags interpreted (ModuleNode [] mni))
    
    1307
    +        return (showSDoc dflags $ showModMsg dflags (ModuleNode [] mni))
    
    1312 1308
     
    
    1313 1309
     moduleIsBootOrNotObjectLinkable :: GhcMonad m => Module -> m Bool
    
    1314 1310
     moduleIsBootOrNotObjectLinkable mod = withSession $ \hsc_env -> liftIO $
    

  • compiler/GHC/Unit/Module/Graph.hs
    ... ... @@ -785,8 +785,8 @@ summaryNodeSummary = node_payload
    785 785
     -- * Misc utilities
    
    786 786
     --------------------------------------------------------------------------------
    
    787 787
     
    
    788
    -showModMsg :: DynFlags -> Bool -> ModuleGraphNode -> SDoc
    
    789
    -showModMsg dflags _ (LinkNode {}) =
    
    788
    +showModMsg :: DynFlags -> ModuleGraphNode -> SDoc
    
    789
    +showModMsg dflags (LinkNode {}) =
    
    790 790
           let staticLink = case ghcLink dflags of
    
    791 791
                               LinkStaticLib -> True
    
    792 792
                               _ -> False
    
    ... ... @@ -795,35 +795,36 @@ showModMsg dflags _ (LinkNode {}) =
    795 795
               arch_os   = platformArchOS platform
    
    796 796
               exe_file  = exeFileName arch_os staticLink (outputFile_ dflags)
    
    797 797
           in text exe_file
    
    798
    -showModMsg _ _ (UnitNode _deps uid) = ppr uid
    
    799
    -showModMsg _ _ (InstantiationNode _uid indef_unit) =
    
    798
    +showModMsg _ (UnitNode _deps uid) = ppr uid
    
    799
    +showModMsg _ (InstantiationNode _uid indef_unit) =
    
    800 800
       ppr $ instUnitInstanceOf indef_unit
    
    801
    -showModMsg dflags recomp (ModuleNode _ mni) =
    
    801
    +showModMsg dflags (ModuleNode _ mni) =
    
    802 802
       if gopt Opt_HideSourcePaths dflags
    
    803 803
           then text mod_str
    
    804 804
           else hsep $
    
    805 805
              [ text (mod_str ++ replicate (max 0 (16 - length mod_str)) ' ')
    
    806 806
              , char '('
    
    807 807
              , text (moduleNodeInfoSource mni) <> char ','
    
    808
    -         , moduleNodeInfoExtraMessage dflags recomp mni, char ')' ]
    
    808
    +         , moduleNodeInfoExtraMessage mni, char ')' ]
    
    809 809
       where
    
    810 810
         mod_str  = moduleNameString (moduleName (moduleNodeInfoModule mni)) ++
    
    811 811
                    moduleNodeInfoBootString mni
    
    812 812
     
    
    813 813
     -- | Extra information about a 'ModuleNodeInfo' to display in the progress message.
    
    814
    -moduleNodeInfoExtraMessage :: DynFlags -> Bool -> ModuleNodeInfo -> SDoc
    
    815
    -moduleNodeInfoExtraMessage dflags _recomp (ModuleNodeCompile mod_summary) =
    
    814
    +moduleNodeInfoExtraMessage :: ModuleNodeInfo -> SDoc
    
    815
    +moduleNodeInfoExtraMessage (ModuleNodeCompile mod_summary) =
    
    816 816
         let dyn_file = normalise $ msDynObjFilePath mod_summary
    
    817 817
             obj_file = normalise $ msObjFilePath mod_summary
    
    818 818
             bc_file  = normalise $ msBytecodeFilePath mod_summary
    
    819
    +        dflags   = ms_hspp_opts mod_summary
    
    819 820
             bc_message = if gopt Opt_WriteByteCode dflags then bc_file else "interpreted"
    
    820 821
             files    = [ obj_file | backendWritesFiles (backend dflags) ]
    
    821 822
                        ++ [ dyn_file | backendWritesFiles (backend dflags) && gopt Opt_BuildDynamicToo dflags ]
    
    822 823
                        ++ [ bc_message | (backendWritesFiles (backend dflags) && gopt Opt_ByteCodeAndObjectCode dflags) || backendWritesBytecodeFiles (backend dflags) ]
    
    823 824
         in case files of
    
    824 825
              [] -> text "nothing"
    
    825
    -         _  -> sep $ punctuate comma (map text files)
    
    826
    -moduleNodeInfoExtraMessage _ _ (ModuleNodeFixed {}) = text "fixed"
    
    826
    +         _  -> hsep $ punctuate comma (map text files)
    
    827
    +moduleNodeInfoExtraMessage (ModuleNodeFixed {}) = text "fixed"
    
    827 828
     
    
    828 829
     
    
    829 830
     -- | The source location of the module node to show to the user.