iface: Store flags in interface files
When reporting the reason why a module is recompiled (using `-dump-hi-diffs`), it is much more informative to inform the user about which flag exactly has changed, rather than just an opaque reference to a hash. Now, when the user enables `-fwrite-if-self-recomp-flags` there is a difference the precise part of the flags is reported: ``` codegen flags changed: before: [Opt_NoTypeableBinds, Opt_OmitYields] after: [Opt_NoTypeableBinds, Opt_OmitYields, Opt_DictsStrict] ``` Fixes #25571
Showing
- compiler/GHC/Core/Opt/CallerCC/Types.hs 9 additions, 0 deletionscompiler/GHC/Core/Opt/CallerCC/Types.hs
- compiler/GHC/Driver/DynFlags.hs 1 addition, 38 deletionscompiler/GHC/Driver/DynFlags.hs
- compiler/GHC/Driver/Flags.hs 1 addition, 0 deletionscompiler/GHC/Driver/Flags.hs
- compiler/GHC/Driver/IncludeSpecs.hs 48 additions, 0 deletionscompiler/GHC/Driver/IncludeSpecs.hs
- compiler/GHC/Driver/Session.hs 2 additions, 1 deletioncompiler/GHC/Driver/Session.hs
- compiler/GHC/Iface/Env.hs 8 additions, 2 deletionscompiler/GHC/Iface/Env.hs
- compiler/GHC/Iface/Flags.hs 200 additions, 0 deletionscompiler/GHC/Iface/Flags.hs
- compiler/GHC/Iface/Load.hs 3 additions, 1 deletioncompiler/GHC/Iface/Load.hs
- compiler/GHC/Iface/Recomp.hs 58 additions, 13 deletionscompiler/GHC/Iface/Recomp.hs
- compiler/GHC/Iface/Recomp/Flags.hs 31 additions, 20 deletionscompiler/GHC/Iface/Recomp/Flags.hs
- compiler/GHC/Iface/Recomp/Types.hs 9 additions, 4 deletionscompiler/GHC/Iface/Recomp/Types.hs
- compiler/GHC/Types/ProfAuto.hs 1 addition, 1 deletioncompiler/GHC/Types/ProfAuto.hs
- compiler/GHC/Types/SafeHaskell.hs 14 additions, 0 deletionscompiler/GHC/Types/SafeHaskell.hs
- compiler/GHC/Unit/Module/ModIface.hs 2 additions, 2 deletionscompiler/GHC/Unit/Module/ModIface.hs
- compiler/ghc.cabal.in 2 additions, 0 deletionscompiler/ghc.cabal.in
- docs/users_guide/phases.rst 8 additions, 1 deletiondocs/users_guide/phases.rst
- testsuite/tests/count-deps/CountDepsAst.stdout 2 additions, 0 deletionstestsuite/tests/count-deps/CountDepsAst.stdout
- testsuite/tests/count-deps/CountDepsParser.stdout 2 additions, 0 deletionstestsuite/tests/count-deps/CountDepsParser.stdout
Loading
Please register or sign in to comment