-
Notifications
You must be signed in to change notification settings - Fork 13.4k
session: stabilize split debuginfo on linux #98051
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
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,6 @@ | ||
use crate::spec::crt_objects::{self, LinkSelfContainedDefault}; | ||
use crate::spec::{cvs, LinkerFlavor, TargetOptions}; | ||
use crate::spec::{cvs, DebuginfoKind, LinkerFlavor, SplitDebuginfo, TargetOptions}; | ||
use std::borrow::Cow; | ||
|
||
pub fn opts() -> TargetOptions { | ||
let mut pre_link_args = TargetOptions::link_args( | ||
|
@@ -86,6 +87,10 @@ pub fn opts() -> TargetOptions { | |
emit_debug_gdb_scripts: false, | ||
requires_uwtable: true, | ||
eh_frame_header: false, | ||
// FIXME(davidtwco): Support Split DWARF on Windows GNU - may require LLVM changes to | ||
// output DWO, despite using DWARF, doesn't use ELF.. | ||
debuginfo_kind: DebuginfoKind::Pdb, | ||
supported_split_debuginfo: Cow::Borrowed(&[SplitDebuginfo::Off]), | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. @wesleywiser is this correct? We spoke about Split DWARF technically being possible on Windows GNU before, but I find that if I say There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I'm not super familiar with Eg:
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Right, when I set
..which makes sense when your output shows..
..so it looks like Split DWARF would technically be possible on Windows GNU, but LLVM would need to support DWARF objects on PEI first, and then I would need to extend There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Reading Appendix F in the DWARF 5 spec, I don't see why an ELF binary would be required. It seems like the appropriate sections could be placed in the PE file the same way the DWARF is but I could be missing something. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Yeah, I don't think it is required by DWARF, just seems like a LLVM limitation. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. On an unrelated note, I think we could probably support |
||
..Default::default() | ||
} | ||
} |
Uh oh!
There was an error while loading. Please reload this page.