Add debugger testing support#776
Merged
ben-clayton merged 7 commits intogoogle:masterfrom Jan 31, 2020
Merged
Conversation
Contributor
Author
|
Looking into presubmit failures now. |
dj2
reviewed
Jan 29, 2020
ben-clayton
commented
Jan 29, 2020
Contributor
Author
ben-clayton
left a comment
There was a problem hiding this comment.
Thanks for the extremely thorougher review. I've tried to address everything you commented on.
dj2
reviewed
Jan 30, 2020
Collaborator
|
This is pretty much lgtm once the bots are fixed. If you could add the comments about step_in, etc to the markdown file and the bug for the parsing bit. The only thing I see is the leak of the debugger if Connect fails. |
059776d to
7788698
Compare
dj2
approved these changes
Jan 30, 2020
This namespace holds the types used to describe the tests to perform on a shader debugger. `debug.cc` implements the `amber::debug::Script` class, which is a simple record-and-replay implementation of the debugger interfaces. This is used to hold the parsed debugger instructions, and can be replayed onto the real debugger when the commands are executed. The parser for generating the debug scripts along with the debugger itself come in later changes.
The parsed `amber::debug::Script` is assigned to the `amber::Command`, but is currently unused.
Add the new third_party dependencies: • github.com/google/cppdap • github.com/nlohmann/json (required by cppdap) Add the `AMBER_ENABLE_VK_DEBUGGING` option to CMake. This builds and links `cppdap`, but is not currrently referenced in code. Rolled SwiftShader forward, and passed required CMake debugger build flags down.
Contributor
Author
|
(Did another push to try to fix the kokoro flakes) |
cd04a3a to
d68ad72
Compare
This is an initial, rough version, but implements enough to perform single line stepping, and verifying location and local values. See docs/debugger.md for details.
One for SPIR-V debugging, one for HLSL debugging using `OpenCL.DebugInfo.100`.
Remove the need for callbacks, which unnecessarily compilated the parsing.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
An overview of the functionality and design can be found in the
docs/debugger.mdfile, which is part of this change.Note that this is all rather WIP, but this PR gives us something that we can start playing with.