-
Notifications
You must be signed in to change notification settings - Fork 60
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
Restrict console output for methods and types with QUIET passed #328
base: main
Are you sure you want to change the base?
Conversation
In addition, if JitDisasm is set skip methods which do not have the method name. This avoids compiling all methods when there is only one that is intended to be dumped.
@BruceForstall please route as necessary |
/cc @sandreenko |
also @AndyAyersMS |
The JitDisasm changes worry me, as they're a bit of a hack: they don't parse using the same syntax as the JIT. E.g., they don't handle The verbose changes to DriveAll seem reasonable, but I haven't been able to successfully run DriveAll locally to see what the current behavior is, so I need to investigate that first. |
This is correct, anything with the wildcard will currently fail. Adding logic for that, would be a bit annoying but seems required. |
I've wanted something like this for a while, though generally I'd prefer to specify the pattern via command line args instead of env vars (which I realize is awkward because pmi's command line parsing is lame). So maybe (in verbose) mode indicate that the results are filtered? |
I am fine with changing this to be passed in via command line arguments. Seems to somewhat diverge from current expectations; however, seems like the correct direction. As for the filtered indications, sounds like printing method ------ is skipped.
I found pretty quickly it is necessary for large assemblies. Between the disk usage and just the time to dasm a large assembly makes this change a requirement for viewing dasm for a particular method in most assemblies. |
Thank you for the initial comments, I will work on the feedback. This is no where near my highest priority, so my guess is I will touch back on this in a week or two. |
fwiw, another workflow could be: superpmi collect a PMI run, then do superpmi replay with asm for a particular function or functions. This would be a one-time hit for the collection, but everything subsequent is really fast. I can give more details if interested. |
I think the larger issue here with relying on SuperPMI is the fact that the assemblies are not snapshots. They change often and recollection is expensive and long. |
In addition, if JitDisasm is set skip methods which do not have the
method name. This avoids compiling all methods when there is only
one that is intended to be dumped.