-
Notifications
You must be signed in to change notification settings - Fork 4.8k
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
Remove --flat from default dsymutil options #89358
Conversation
--flat is a diagnostic-only option and not fully supported. It can still be specified if necessary through the DsymUtilOptions property and NativeSymbolExt property, but it will no longer be the default.
Tagging subscribers to this area: @agocke, @MichalStrehovsky, @jkotas Issue Details--flat is a diagnostic-only option and not fully supported. It can still be specified if necessary through the DsymUtilOptions property and NativeSymbolExt property, but it will no longer be the default.
|
I assume that this is related to #86734. Are we going to need a follow up change to upload symbols in the dsym format for AOT compiled binaries in the official builds? We have been using runtime/eng/native/functions.cmake Line 419 in d40ca00
--flat option for the unmanaged binaries as well?
|
There's a tracking issue for that - #88286. I would be happy if this PR goes in since it makes debugging apps much easier but there's always the concern about SymStore and related utilities that are not able to handle dSYM yet. |
Yeah, we can either set the As for native builds, I think they should also use the dsym bundle eventually, but it matters slightly less since it's only for debugging coreclr itself, which is a more uncommon user scenario. In this case, debugging Mac-compiled Native AOT apps is a first-class scenario, so we should use the Apple-preferred thing by default. |
Well, I looked in the crossgen2 symbols package and I actually don't see the |
No, that'd break postmortem of crossgen. There's several problems. Right now the easiest one is telling the SDK that dsym is a symbol file, after you need to teach the uploaders how to index dsyms. |
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.
This change looks good on its own. It would be nice to have the follow up plan figured out before merging.
@hoyosjs can the symbol uploader index .dwarf files today? Also, |
I thought it was an archive. Don't know of prior art in symbol packages, need to check |
OK, looking into it, I'm pretty sure the existing system is not working for collecting ILC symbols. But, to avoid any regressions, I've special-cased crossgen2 to have the old behavior. Long-term, I don't see any fundamental restrictions to using .dsym files everywhere. We should just make sure that things up the chain are happy with it. |
--flat is a diagnostic-only option and not fully supported. It can still be specified if necessary through the DsymUtilOptions property and NativeSymbolExt property, but it will no longer be the default.