-
Notifications
You must be signed in to change notification settings - Fork 257
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
Disassembly view: allow to disable hex by moving it to a separate column #527
Comments
I pushed some improvements for the branch visualization now, which allows a similar compact visualization to what is shown in the screenshot above. more fine grained splitting of the disassembly column would still be appreciated |
The recent additions (AppImage version 201 works, AppImage 211 doesn't) broke the disassembly with I guess that's the effect of different objdump versions?🤔 Side note: Would it be reasonable to include the most recent objdump version into the appImage and use it by default from there? |
can you please upload the raw output from |
I've tried, but there's no useful output in strace when running from the appinfo... while I extract and rerun that, I've created #535 which will help to get there faster in the next time and may also provide useful in general ... extracted appImage didn't help either: $> LD_LIBRARY_PATH=/tmp/squashfs-root/usr/lib64:/tmp/squashfs-root/usr/lib PATH=/tmp/squashfs-root/usr/bin:$PATH strace hotspot 2>&1 | grep objdump
stat("/tmp/squashfs-root/usr/bin/objdump", 0x7fff61f1d470) = -1 ENOENT (No such file or directory)
stat("/usr/local/sbin/objdump", 0x7fff61f1d470) = -1 ENOENT (No such file or directory)
stat("/usr/local/bin/objdump", 0x7fff61f1d470) = -1 ENOENT (No such file or directory)
stat("/usr/sbin/objdump", 0x7fff61f1d470) = -1 ENOENT (No such file or directory)
stat("/usr/bin/objdump", {st_mode=S_IFREG|0755, st_size=464664, ...}) = 0
access("/usr/bin/objdump", X_OK) = 0
read(33, "Usage: /usr/bin/objdump <option("..., 6420) = 6420
stat("/tmp/squashfs-root/usr/bin/objdump", 0x7fff61f1d3d0) = -1 ENOENT (No such file or directory)
stat("/usr/local/sbin/objdump", 0x7fff61f1d3d0) = -1 ENOENT (No such file or directory)
stat("/usr/local/bin/objdump", 0x7fff61f1d3d0) = -1 ENOENT (No such file or directory)
stat("/usr/sbin/objdump", 0x7fff61f1d3d0) = -1 ENOENT (No such file or directory)
stat("/usr/bin/objdump", {st_mode=S_IFREG|0755, st_size=464664, ...}) = 0
access("/usr/bin/objdump", X_OK) = 0 After recognizing that the process path of objdump is resolved first, I've adjusted the PR to use that (so the additional |
Here's a bit of output using the same parameters
|
normally /opt/hotspot/tests/modeltests/disassembly/fib.cpp:2
11cd: /-------> f3 0f 1e fa endbr64
11d1: | 55 push %rbp
11d2: | 48 89 e5 mov %rsp,%rbp
11d5: | 41 54 push %r12
11d7: | 53 push %rbx
11d8: | 48 83 ec 10 sub $0x10,%rsp
11dc: | 89 7d ec mov %edi,-0x14(%rbp)
/opt/hotspot/tests/modeltests/disassembly/fib.cpp:3
11df: | 83 7d ec 00 cmpl $0x0,-0x14(%rbp)
11e3: | /-- 74 06 je 11eb <_Z3fibi+0x1e>
/opt/hotspot/tests/modeltests/disassembly/fib.cpp:3 (discriminator 1)
11e5: | | 83 7d ec 01 cmpl $0x1,-0x14(%rbp)
11e9: | /--|-- 75 0a jne 11f5 <_Z3fibi+0x28>
/opt/hotspot/tests/modeltests/disassembly/fib.cpp:4 |
line 8637 is highlighted which is a comment, that is somewhat strange, since comments don't have a source code reference. Therefor my guess is, that source code and binary are not in sync. |
@GitMensch can you send us the output of |
That's likely the case, still this is different in appimage 201:
I see, because that's the system installed one, not the (outdated) one from the trace. |
Nonetheless, I've derived the binary from what was shown under "Open in Editor"... (which is likely not that easy often, and cumbersome, so I hope for a way to see the binary path somewhere, guess I only missed that so far [the tooltip in caller/callee tab and in the summary "hotspot per file" would be useful]). This seems to be the binary that was disassembled:
As this doesn't visualize the tabs - find the output redirected attached: dump.log. |
|
Thanks for posting the log, this highlighted the tabs which were missing in the output provided above, redid the |
@lievenhey I wonder how that should be visualized, and without a way to show our widget for an arbitrary objdump log file I also don't know how to test the visual rendering - do you have an idea? I only found this marker, which seems to represent both, a jump source and a jump target, in |
No visualization yet as I'm unsure how to replicate that in the real world such that I can inspect the 'X' visually. Relates-To: #527
About testing, we could render into a pixmap and that diff it against a well known working one. |
Follow-up to #516, to allow hiding it like KCachegrind
as originally requested by @milianw in #523 (comment)
The text was updated successfully, but these errors were encountered: