The only data we have is that where .o files go, .dwo files go beside them.
How to generalize this to other situations isn't really obvious to me -
even for a.out (do you put all the .dwo files next to a.out? in the same
directory? if the names collide, where then? etc).

Interestingly GCC for "g++ foo.cpp" puts the foo.dwo file right where it
would go by default (next to foo.cpp, even though there's no foo.o).  Oh,
LLVM does that too. Huh. I'm not sure that's a terribly helpful default to
extrapolate to ThinLTO for, though.



On Thu, Mar 22, 2018 at 1:57 PM Paul Robinson via Phabricator <
revi...@reviews.llvm.org> wrote:

> probinson added a comment.
>
> In https://reviews.llvm.org/D44788#1046093, @dblaikie wrote:
>
> > In implicit ThinLTO, the object files are only temporary.
> >
> > Sort of similar to using -gsplit-dwarf when compiling straight to an
> >  executable (without using -c): "clang++ x.cpp y.cpp -o a.out" - where
> >  should the .dwo files go then? If they go where the .o files go, then
> >  they'll be in /tmp/ and get deleted either when the ocmpiler ends after
> it
> >  runs the linker, or perhaps at some uncertain point in the future when
> the
> >  temp space is reclaimed.
>
>
> I think that the .dwo files generally go where the user-specified final
> output goes.  So in your example they would go where a.out goes, not where
> the intermediate/temporary .o files go.
> Being able to override that is fine, but being required to specify a
> directory in order to get fission in the first place is not.
>
>
> Repository:
>   rC Clang
>
> https://reviews.llvm.org/D44788
>
>
>
>
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to