- Mar 27, 2024
-
-
Matthew Pickering authored
-
Matthew Pickering authored
-
- Mar 21, 2024
-
-
Matthew Pickering authored
-
Matthew Pickering authored
-
Matthew Pickering authored
-
- Mar 20, 2024
-
-
Matthew Pickering authored
-
Matthew Pickering authored
-
- Mar 04, 2024
-
-
Hannes Siebenhandl authored
Some Filters can't be reasonably applied if the debuggee is in the wrong profiling mode. For example, eras profiling requires the debuggee to be run with `-he`. We reflect this in ghc-debug-brick by disabling certain filters if their profiling mode requirements are not met.
-
Hannes Siebenhandl authored
-
Hannes Siebenhandl authored
-
Adds two new requests if the debuggee program has been compiled with profiling: * Request CCS_MAIN location * Dereference IndexTable Package `ghc-debug-client` adds utility functions to find CCSPtrs given a cost centre id, either including all transitive CCS children or only CCS parts that reference a specific cost centre. Add UI Filter to `ghc-debug-brick` allowing to list closures that have been allocated under a specific cost centre.
-
Hannes Siebenhandl authored
When thunks are evaluated, the thunk closure is replaced with an `IndClosure`. To make sure we don't miss parts of the string, we also expand `IndClosure` types.
-
- Feb 28, 2024
-
-
Hannes Siebenhandl authored
-
- Feb 12, 2024
-
-
Matthew Pickering authored
515eb33d4fcc9382032a9e6b1757b9e2b00a145c changes the order and type of these two fields. Therefore we have to update the decoding logic.
-
Matthew Pickering authored
In particular we make sure to race all the appropiate threads against each other, so that if any of them fail the tests just fail rather than hang forever.
-
- Jan 26, 2024
-
-
-
Hannes Siebenhandl authored
`viewport` is unreasonably inefficient for our usecase when the IOTree grows, as it decides what to display once it rendered to full `IOTree`. Especially while scrolling, this inefficiency became apparent. Unfortunately, brick doesn't have any builtin way to improve this, see https://github.com/jtdaugherty/brick/issues/264 We take `drawListElement` as an inspiration, and only render up to `heightOfBox * 2` elements of the `IOTree`, including expanded tree nodes. This speeds up the view noticeably, giving the user a responsive experience. In particular, we decouple rendering metadata computation from the actual rendering to decide which rows to render.
-
- Jan 23, 2024
-
-
Matthew Pickering authored
-
Matthew Pickering authored
-
Matthew Pickering authored
-
Matthew Pickering authored
-
Matthew Pickering authored
We now display a "flat" cost centre stack rather than forcing the user to expand it at each level.
-
Matthew Pickering authored
We should never attempt to dereference a null pointer, any null pointers should be captured at the point of creation.
-
Matthew Pickering authored
-
Matthew Pickering authored
These are no longer used
-
- Jan 18, 2024
-
-
Inside an hBox if there are multiple greedy widgets they are allocated equal space. This meant the commands and number display were allocated the same number of columns which led to a lot of whitespace. (cherry picked from commit 7a1fdab5)
-
(cherry picked from commit d0250893)
-
(cherry picked from commit 865dd6a4)
-
* Add find retainer by address, precisely find retainers of a specific closure address. * Add ArrWords count analysis which performs a census of the ArrWords closures. * Generalise display pane, to allow displaying trees of different types (not just ClosureDetails) (used by the arr words census) * Allow commands to not have key bindings (and just appear in command picker) * Cleanup: Remove "Analysis" modes such as dominator and size analysis. (cherry picked from commit 349760d0)