llvm-project/llvm/test/DebugInfo/COFF
Jeremy Morse 12a2f7494e [DebugInfo][InstrRef] Prefer stack locations for variables
This patch adjusts what location is picked for a known variable value --
preferring to leave locations on the stack, even when a value is re-loaded
into a register. The benefit is reduced location list entropy, on a
clang-3.4 build I found that .debug_loclists reduces in size by 6%, from
29Mb down to 27Mb.

Testing: a few tests need the stack slot to be written to explicitly, to
force LiveDebugValues into restoring the variable location to a register.
I've added an explicit test for the desired behaviour in
livedebugvalues_recover_clobbers.mir .

Differential Revision: https://reviews.llvm.org/D120732
2022-03-17 14:26:15 +00:00
..
AArch64
ARMNT [clang-cl] Support the /HOTPATCH flag 2022-01-20 12:57:19 -05:00
anonymous-struct.ll
array-odr-violation.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
asan-module-ctor.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
asan-module-without-functions.ll
asm.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
big-type.ll
bitfields.ll
build-info.ll Re-land [CodeView] Add full repro to LF_BUILDINFO record 2022-01-19 19:44:37 -05:00
class-options-common.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
comdat.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
compiler-version-overflow.ll [CodeView] Match any backend version in the new test 2022-02-11 10:20:10 -08:00
const-unnamed-member.ll
cpp-mangling.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
defer-complete-type.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
dlang.ll
empty-globals-subsection.ll [CodeView] Avoid emitting empty debug globals subsection. 2020-11-25 16:13:32 -08:00
enum-co.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
enum.ll
fortran-basic.ll [CodeView] Fortran debug info emission in Code View. 2021-11-02 15:06:21 -04:00
fortran-contained-proc.ll [CodeView] Properly handle a DISubprogram in getScopeIndex. 2021-11-09 13:18:07 -05:00
fp-stack.ll [DebugInfo][InstrRef] "final final" test cleanups for x86 tests 2021-11-30 10:43:06 +00:00
fpo-argsize.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
fpo-csrs.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
fpo-funclet.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
fpo-realign-alloca.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
fpo-realign-vframe.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
fpo-shrink-wrap.ll [DebugInfo][InstrRef][NFC] "Final" x86 test cleanup 2021-11-29 22:56:09 +00:00
fpo-stack-protect.ll [DebugInfo][InstrRef][NFC] "Final" x86 test cleanup 2021-11-29 22:56:09 +00:00
frameproc-flags.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
function-options.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
global-constants.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
global-dllimport.ll
global-type-hashes.ll Re-land [CodeView] Add full repro to LF_BUILDINFO record 2022-01-19 19:44:37 -05:00
global_visibility.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
globals-discarded.ll
globals.ll Reland - [CodeView] Emit S_OBJNAME record 2021-12-21 19:02:14 -05:00
inheritance.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
inlining-files.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
inlining-header.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
inlining-levels.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
inlining-padding.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
inlining-same-name.ll
inlining.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
int8-char-type.ll
integer-128.ll [CodeView] Saturate values bigger than supported by APInt. 2021-07-26 22:15:26 +02:00
lambda.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
language.ll Add Rust to CodeView SourceLanguage (CV_CFL_LANG) enum 2022-01-06 14:27:08 -08:00
lexicalblock.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
line-zero.ll
lines-bb-start.ll [FastISel] Flush local value map on every instruction 2021-01-11 08:32:36 -08:00
lines-difile.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
lit.local.cfg
local-constant.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
local-variable-gap.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
local-variables.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
long-name.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
long-type-name.ll [CodeView] Truncate Long Type Names With An MD5 Hash 2021-05-04 10:51:21 -04:00
multifile.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
multifunction.ll Reland - [CodeView] Emit S_OBJNAME record 2021-12-21 19:02:14 -05:00
nested-types.ll
no-cus.ll
nrvo.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
parameter-order.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
parent-type-scopes.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
pgo.ll [CodeView] Add CodeView support for PGO debug information 2021-04-21 15:29:19 -07:00
pieces.ll [DebugInfo][InstrRef] Prefer stack locations for variables 2022-03-17 14:26:15 +00:00
pr28747.ll Reland - [CodeView] Emit S_OBJNAME record 2021-12-21 19:02:14 -05:00
pr37492.ll
purge-typedef-udts.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
register-variables.ll [DebugInfo] Adjust x86 location-list tests for instruction referencing 2021-11-24 12:30:55 +00:00
retained-types.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
rust.ll Add Rust to CodeView SourceLanguage (CV_CFL_LANG) enum 2022-01-06 14:27:08 -08:00
scopes.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
simple.ll Reland - [CodeView] Emit S_OBJNAME record 2021-12-21 19:02:14 -05:00
static-methods.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
swift.ll
synthetic.ll
tail-call-without-lexical-scopes.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
thunk.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
type-quals.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
typedef.ll
types-array-advanced.ll [DebugInfo][InstrRef][NFC] "Final" x86 test cleanup 2021-11-29 22:56:09 +00:00
types-array-unsized.ll Recommit "[CodeView] Emit static data members as S_CONSTANTs." 2020-10-28 16:35:59 -07:00
types-array.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
types-basic.ll Re-land [CodeView] Add full repro to LF_BUILDINFO record 2022-01-19 19:44:37 -05:00
types-calling-conv.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
types-cvarargs.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
types-data-members.ll Re-land [CodeView] Add full repro to LF_BUILDINFO record 2022-01-19 19:44:37 -05:00
types-empty-member-fn.ll
types-integer-old.ll DebugInfo: Use clang's preferred names for integer types 2021-10-06 16:02:34 -07:00
types-method-ref-qualifiers.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
types-nested-class.ll
types-non-virtual-methods.ll
types-ptr-to-member.ll
types-recursive-struct.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
types-recursive-unnamed.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
types-std-nullptr-t.ll
types-this-not-ptr.ll
udts-complete.ll
udts-fixpoint.ll
udts.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
unnamed-nested.ll
unnamed.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
vframe-csr.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
vframe-fpo.ll Reland - [CodeView] Emit S_OBJNAME record 2021-12-21 19:02:14 -05:00
vftables.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
virtual-method-kinds.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
virtual-methods.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
vtable-optzn-array.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
x87-registers.ll [X86] [CodeView] Add codeview mappings for registers ST0-ST7 2022-01-25 10:09:06 +02:00