-
Notifications
You must be signed in to change notification settings - Fork 256
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Better disassembly #390
Better disassembly #390
Conversation
This is marvelous! I'd really like to see that integrated. |
b0d7b18
to
5e68c7a
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
please share code between the two models, maybe even extract the whole highlighting and color scheme into a shared single class and then reuse that instead of duplicating it.
b7f7137
to
7c7a861
Compare
closes #9 |
Note: for GitHub to recognize this please edit the first post and add the information there |
7d426d8
to
2b6edde
Compare
45e078e
to
4c406f3
Compare
tests/modeltests/vector_static_gcc/vector_static_gcc_v9.1.0.expected.txt
Show resolved
Hide resolved
99d0c44
to
b7536d4
Compare
b7536d4
to
3d20c66
Compare
3d20c66
to
72fec27
Compare
@lievenhey moin, this is looking good and we could merge it as-is as it's an improvement. But we definitely need to handle inlining better, see 72fec27 for some easy work from towards that direction. Could you look into improving this further based on the
note how the code is basically all within inlined code, so currently we show 0% cost everywhere which is super misleading |
this patch writes the source code in a QTextDocument and attaches a KSyntaxHighlighter to it Then it exposes the QTextLine to a custom delegate to render the colored text tst_models now requires a QCoreApplication, since QTextDocument wants to read font files
When we use disassembly on the frame for `std::__detail::_Mod<...>::__calc(...)` in `cpp-inlining` then we would get `cpp-inlining/main.cpp` as main source file, but also quite a few disassembly lines from other files that got inlined from the libstdc++ library. These then polluted the disassembly view, as it only showed the source lines from `main.cpp` and definitely doesn't have 3k lines of code. Eventually, it would be great if we could show all encountered files, in a kind of tree view instead of just skipping these source lines.
72fec27
to
88e29ae
Compare
This is really cool! The CI builds don't provide an AppImage, do they? 'd love to test the new annotation and disassembly. |
Not yet, no - I'll build one manually next week (and do a proper new release too 🤞) But note that there's still some work left to do in the disassembly wrt inline frames |
Just rechecking @milianw, does this mean we can expect Hotspot 1.4.0 "soonish"? |
A rewrite of the disassembly view
closes #9