[clang] ea22fdd - [Clang][DebugInfo] Cease turning instruction-referencing off by default

David Blaikie via cfe-commits cfe-commits at lists.llvm.org
Wed Dec 22 08:34:13 PST 2021


Is there a way to turn this off now, if it's broken for some user/use case?
I guess using an -mllvm flag, instead of an -Xclang flag?

Generally I think for a significant change like this the process would be
to add it under a flag, off by default, encourage people to test it by
opting in via the flag, eventually change the default for the flag (letting
people know they can opt-out using the flag if they see problems & to
report them to you so they can be fixed & hopefully they can stop opting
out) & then remove the flag when it's stable. Reverting a patch to disable
a newly-on-by-default feature is a bit heavyweight and it can be nice to
have a flag to control it while it's getting more exposure/experience.

On Wed, Dec 22, 2021 at 11:31 AM Jeremy Morse via cfe-commits <
cfe-commits at lists.llvm.org> wrote:

>
> Author: Jeremy Morse
> Date: 2021-12-22T16:30:05Z
> New Revision: ea22fdd120aeb1bbb9ea96670d70193dc02b2c5f
>
> URL:
> https://github.com/llvm/llvm-project/commit/ea22fdd120aeb1bbb9ea96670d70193dc02b2c5f
> DIFF:
> https://github.com/llvm/llvm-project/commit/ea22fdd120aeb1bbb9ea96670d70193dc02b2c5f.diff
>
> LOG: [Clang][DebugInfo] Cease turning instruction-referencing off by
> default
>
> Over in D114631 I turned this debug-info feature on by default, for x86_64
> only. I'd previously stripped out the clang cc1 option that controlled it
> in 651122fc4ac, unfortunately that turned out to not be completely
> effective, and the two things deleted in this patch continued to keep it
> off-by-default.  Oooff.
>
> As a follow-up, this patch removes the last few things to do with
> ValueTrackingVariableLocations from clang, which was the original purpose
> of D114631. In an ideal world, if this patch causes you trouble you'd
> revert 3c045070882f instead, which was where this behaviour was supposed
> to start being the default, although that might not be practical any more.
>
> Added:
>
>
> Modified:
>     clang/include/clang/Basic/CodeGenOptions.def
>     clang/lib/CodeGen/BackendUtil.cpp
>
> Removed:
>
>
>
>
> ################################################################################
> diff  --git a/clang/include/clang/Basic/CodeGenOptions.def
> b/clang/include/clang/Basic/CodeGenOptions.def
> index 94b3003a9c33c..723302f108e20 100644
> --- a/clang/include/clang/Basic/CodeGenOptions.def
> +++ b/clang/include/clang/Basic/CodeGenOptions.def
> @@ -368,9 +368,6 @@ ENUM_CODEGENOPT(DebuggerTuning, llvm::DebuggerKind, 3,
>  /// emitted.
>  VALUE_CODEGENOPT(DwarfVersion, 3, 0)
>
> -/// Whether to use experimental new variable location tracking.
> -CODEGENOPT(ValueTrackingVariableLocations, 1, 0)
> -
>  /// Whether we should emit CodeView debug information. It's possible to
> emit
>  /// CodeView and DWARF into the same object.
>  CODEGENOPT(EmitCodeView, 1, 0)
>
> diff  --git a/clang/lib/CodeGen/BackendUtil.cpp
> b/clang/lib/CodeGen/BackendUtil.cpp
> index 5e16d3525b383..bacac0a20d4d5 100644
> --- a/clang/lib/CodeGen/BackendUtil.cpp
> +++ b/clang/lib/CodeGen/BackendUtil.cpp
> @@ -603,8 +603,6 @@ static bool initTargetOptions(DiagnosticsEngine &Diags,
>    Options.ForceDwarfFrameSection = CodeGenOpts.ForceDwarfFrameSection;
>    Options.EmitCallSiteInfo = CodeGenOpts.EmitCallSiteInfo;
>    Options.EnableAIXExtendedAltivecABI =
> CodeGenOpts.EnableAIXExtendedAltivecABI;
> -  Options.ValueTrackingVariableLocations =
> -      CodeGenOpts.ValueTrackingVariableLocations;
>    Options.XRayOmitFunctionIndex = CodeGenOpts.XRayOmitFunctionIndex;
>    Options.LoopAlignment = CodeGenOpts.LoopAlignment;
>
>
>
>
> _______________________________________________
> cfe-commits mailing list
> cfe-commits at lists.llvm.org
> https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20211222/1905f2d3/attachment-0001.html>


More information about the cfe-commits mailing list