aaronpuchert added inline comments.

================
Comment at: lib/CodeGen/BackendUtil.cpp:1345
   Conf.RemarksPasses = CGOpts.OptRecordPasses;
-  Conf.DwoPath = CGOpts.SplitDwarfFile;
+  Conf.DwoPath = CGOpts.SplitDwarfOutput;
   switch (Action) {
----------------
tejohnson wrote:
> aaronpuchert wrote:
> > aaronpuchert wrote:
> > > @pcc Your documentation for `DwoPath` suggests that this should be the 
> > > actual output filename. However, the test that you added together with 
> > > this line in rC333677 doesn't fail whatever garbage I write into that 
> > > field here. What can I add to that so that it fails when we don't do the 
> > > right thing here?
> > @pcc Could you (or perhaps @tejohnson) comment on what the intended 
> > behavior is here, and how I can change the test so that it fails when I do 
> > the wrong thing? Is this the name of the file we write the split debug info 
> > to, or is it the value we use for the DW_AT_[GNU_]dwo_name attribute in the 
> > skeleton CU?
> It is the name of the file the split debug info is written to. If you test by 
> changing the file name given to the -split-dwarf-file option in 
> test/CodeGen/thinlto-split-dwarf.c, make sure you clean up the old one in 
> your test output directory. When I tested it just now, it initially still 
> passed because I had an old one sitting in the output directory from a prior 
> run. Once I removed that it failed with the new name (without changing the 
> corresponding llvm-readobj invocation).
Thanks, I didn't consider that. I wasn't even aware that test output is 
persisted.

It seems `DwoPath` is used both as output filename and as value for 
`DW_AT_[GNU_]dwo_name` in the skeleton CU. `llc` has separate options for both: 
`-split-dwarf-file` for the attribute and `-split-dwarf-output` for the output 
filename. I want to do the same for Clang. Then we should probably separate 
them for LTO, too.

What is the use case for `-split-dwarf-file` with an individual thin backend? 
Is that used for distributed/remote builds? Also is there any non-cc1 way to 
use it? There is `--plugin-opt=dwo_dir=...` for the LTO linker plugin, but that 
seems to go a different route.


Repository:
  rC Clang

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D59673/new/

https://reviews.llvm.org/D59673



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to