https://github.com/nickdesaulniers commented:

> Q) Why have three modes?
A) Fully re-purposing the debug info architecture for inline tracing requires 
at least -gline-directives-only (I believe.) which is probably not something 
everyone wants by default. A heuristic approach is the middle ground and of 
course none matches the current clang behavior without this PR.

Hmm...I think we can improve the ergonomics here a little bit.  I feel like it 
should be possible to have 2 modes instead of three.  Like in CGCall if 
`-gline-directives-only` or higher is set, then we can elide the `srcloc`. Then 
when a dontcall is triggered we scan for (possibly absent) debug info. If that 
doesn't exist, fall back to looking for `srcloc`.  idk, something just feels 
off about a ternary flag, with a second flag required to use of the the three 
states.  Most flags are binary, and perhaps the tacked on note binary that says 
"enable debug info for additional information" is palatable and simpler for 
users?

https://github.com/llvm/llvm-project/pull/174892
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to