GHCi: support inlining breakpoints (#24712)
When a breakpoint is inlined, its context may change (e.g. tyvars in scope). We must take this into account and not used the breakpoint tick index as its sole identifier. Each instance of a breakpoint (even with the same tick index) now gets a different "info" index. We also need to distinguish modules: - tick module: module with the break array (tick counters, status, etc.) - info module: module having the CgBreakInfo (info at occurrence site)
Showing
- compiler/GHC.hs 3 additions, 3 deletionscompiler/GHC.hs
- compiler/GHC/ByteCode/Asm.hs 9 additions, 4 deletionscompiler/GHC/ByteCode/Asm.hs
- compiler/GHC/ByteCode/Instr.hs 10 additions, 3 deletionscompiler/GHC/ByteCode/Instr.hs
- compiler/GHC/Runtime/Eval.hs 62 additions, 56 deletionscompiler/GHC/Runtime/Eval.hs
- compiler/GHC/Runtime/Eval/Types.hs 11 additions, 13 deletionscompiler/GHC/Runtime/Eval/Types.hs
- compiler/GHC/Runtime/Interpreter.hs 21 additions, 20 deletionscompiler/GHC/Runtime/Interpreter.hs
- compiler/GHC/StgToByteCode.hs 45 additions, 22 deletionscompiler/GHC/StgToByteCode.hs
- compiler/GHC/Types/BreakInfo.hs 0 additions, 12 deletionscompiler/GHC/Types/BreakInfo.hs
- compiler/GHC/Types/Breakpoint.hs 53 additions, 0 deletionscompiler/GHC/Types/Breakpoint.hs
- compiler/ghc.cabal.in 1 addition, 1 deletioncompiler/ghc.cabal.in
- ghc/GHCi/UI.hs 17 additions, 19 deletionsghc/GHCi/UI.hs
- libraries/ghci/GHCi/Message.hs 6 additions, 4 deletionslibraries/ghci/GHCi/Message.hs
- libraries/ghci/GHCi/Run.hs 10 additions, 7 deletionslibraries/ghci/GHCi/Run.hs
- rts/Exception.cmm 13 additions, 9 deletionsrts/Exception.cmm
- rts/Interpreter.c 26 additions, 18 deletionsrts/Interpreter.c
- testsuite/tests/ghci.debugger/scripts/T24712.hs 2 additions, 0 deletionstestsuite/tests/ghci.debugger/scripts/T24712.hs
- testsuite/tests/ghci.debugger/scripts/T24712.script 3 additions, 0 deletionstestsuite/tests/ghci.debugger/scripts/T24712.script
- testsuite/tests/ghci.debugger/scripts/T24712.stdout 4 additions, 0 deletionstestsuite/tests/ghci.debugger/scripts/T24712.stdout
- testsuite/tests/ghci.debugger/scripts/all.T 1 addition, 0 deletionstestsuite/tests/ghci.debugger/scripts/all.T
- testsuite/tests/ghci.debugger/scripts/break021.stdout 8 additions, 8 deletionstestsuite/tests/ghci.debugger/scripts/break021.stdout
Loading
Please register or sign in to comment