jmorse accepted this revision.
jmorse added a comment.

In D106084#2887702 <https://reviews.llvm.org/D106084#2887702>, @dblaikie wrote:

> It'd be preferable not to split these two cases (current "limited" versus 
> "ctor" homing) - because they rely on the same assumption, that the whole 
> program is built with debug info (hence the renaming of "limited" a long time 
> ago to "standalone-debug" to create a policy/philosophy around what goes in 
> each category).
>
> Wouldn't the current "limited" behavior have problems for this shared 
> libraries situation too? Sounds like in that case -fstandalone-debug should 
> be used.

I had a dig into what "limited" currently does -- and I think Windows most 
closely matches our setup. Many portions don't have the source available, the 
debugger behaves similarly, and the default debug-info mode there is "Limited". 
I think what saves our bacon is the import/export clause [0, 1], if a class is 
used between libraries then neither Limited or Constructor debug-info will 
suppress its class definition.

With that in mind, I suppose we'll be alright with constructor homing on by 
default. The interfaces between libraries will still have type information 
emitted in Constructor mode, and it's not excessive for those who want to dig 
deeper to run with standalone-debug.

[0] 
https://github.com/llvm/llvm-project/blob/4a30a5c8d9f0fa8a4b6ebd7c82d5335ae7a77521/clang/lib/CodeGen/CGDebugInfo.cpp#L2391
[1] 
https://github.com/llvm/llvm-project/blob/4a30a5c8d9f0fa8a4b6ebd7c82d5335ae7a77521/clang/lib/CodeGen/CGDebugInfo.cpp#L2346


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D106084

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

Reply via email to