[DebugInfo] Move flag for instr-ref to LLVM option, from TargetOptions
authorJeremy Morse <jeremy.morse@sony.com>
Wed, 12 Jan 2022 12:35:36 +0000 (12:35 +0000)
committerJeremy Morse <jeremy.morse@sony.com>
Wed, 12 Jan 2022 13:28:01 +0000 (13:28 +0000)
commit6a605b97a2006bd391f129a606483656b7c6fb28
treea8bf0a3c46640f3524c2fa11d8a1ab82de2bb5a1
parent23e8a4d16018076e6eed4aa821c020b7fe348c69
[DebugInfo] Move flag for instr-ref to LLVM option, from TargetOptions

This feature was previously controlled by a TargetOptions flag, and I
figured that codegen::InitTargetOptionsFromCodeGenFlags would default it
to "on" for all frontends. Enabling by default was discussed here:

  https://lists.llvm.org/pipermail/llvm-dev/2021-November/153653.html

and originally supposed to happen in 3c045070882f3, but it didn't actually
take effect, as it turns out frontends initialize TargetOptions themselves.
This patch moves the flag from a TargetOptions flag to a global flag to
CodeGen, where it isn't immediately affected by the frontend being used.
Hopefully this will actually cause instr-ref to be on by default on x86_64
now!

This patch is easily reverted, and chances of turbulence are moderately
high. If you need to revert, please consider instead commenting out the
'return true' part of llvm::debuginfoShouldUseDebugInstrRef to turn the
feature off, and dropping me an email.

Differential Revision: https://reviews.llvm.org/D116821
llvm/lib/CodeGen/CommandFlags.cpp
llvm/lib/CodeGen/LiveDebugValues/LiveDebugValues.cpp
llvm/lib/CodeGen/LiveDebugValues/LiveDebugValues.h
llvm/lib/CodeGen/MachineFunction.cpp