llvm-project/llvm/test/DebugInfo
Martin Storsjö 36c64af9d7 [CodeGen] [WinException] Only produce handler data at the end of the function if needed
If we are going to write handler data (that is written as variable
length data following after the unwind info in .xdata), we need to
emit the handler data immediately, but for cases where no such
info is going to be written, skip emitting it right away. (Unwind
info for all remaining functions that hasn't gotten it emitted
directly is emitted at the end.)

This does slightly change the ordering of sections (triggering a
bunch of updates to DebugInfo/COFF tests), but the change should be
benign.

This also matches GCC's assembly output, which doesn't output
.seh_handlerdata unless it actually is needed.

For ARM64, the unwind info can be packed into the runtime function
entry itself (leaving no data in the .xdata section at all), but
that can only be done if there's no follow-on data in the .xdata
section. If emission of the unwind info is triggered via
EmitWinEHHandlerData (or the .seh_handlerdata directive), which
implicitly switches to the .xdata section, there's a chance of the
caller wanting to pass further data there, so the packed format
can't be used in that case.

Differential Revision: https://reviews.llvm.org/D87448
2020-09-21 23:42:59 +03:00
..
AArch64 Reapply Revert "RegAllocFast: Rewrite and improve" 2020-09-21 15:45:27 -04:00
AMDGPU [AMDGPU] Add Scratch Wave Offset to Scratch Buffer Descriptor in entry functions 2020-03-19 15:35:16 -04:00
ARM Reapply Revert "RegAllocFast: Rewrite and improve" 2020-09-21 15:45:27 -04:00
BPF [DebugInfo] Fix assertion for extern void type 2020-06-08 13:43:18 -07:00
COFF [CodeGen] [WinException] Only produce handler data at the end of the function if needed 2020-09-21 23:42:59 +03:00
Generic [EarlyCSE] Verify hash code in regression tests 2020-09-04 10:40:35 -04:00
Inputs [DebugInfo] Explicitly permit addr_size = 0x02 when parsing DWARF data 2020-06-22 13:11:55 +03:00
Lanai
MIR [LiveDebugValues][NFC] Add additional tests 2020-09-11 15:34:37 +01:00
MSP430 Attempt to unbreak the test introduced in 359fae6eb0 on Windows 2020-06-22 14:41:55 +03:00
Mips Reapply Revert "RegAllocFast: Rewrite and improve" 2020-09-21 15:45:27 -04:00
NVPTX [MC,NVPTX] Add MCAsmPrinter support for unsigned-only data directives. 2020-07-20 16:24:41 -07:00
PDB [test] Use yaml2obj -o %t instead of > %t 2020-01-21 17:20:18 -08:00
PowerPC [DebugInfo] Respect relocations when decoding DW_EH_PE_sdata4 & DW_EH_PE_sdata8 and support R_ARM_REL32 2020-07-18 09:00:50 -07:00
RISCV [llvm-readobj] Update tests because of changes in llvm-readobj behavior 2020-07-20 10:39:04 +01:00
Sparc [DebugInfo] Do not emit entry values for composite locations 2020-07-01 10:50:55 +02:00
SystemZ [lit] Delete empty lines at the end of lit.local.cfg NFC 2019-06-17 09:51:07 +00:00
WebAssembly Support dwarf fission for wasm object files 2020-09-17 14:42:41 -07:00
X86 Reapply Revert "RegAllocFast: Rewrite and improve" 2020-09-21 15:45:27 -04:00
arange-overlap.test
arm-relocs.test
cDefaultLower.ll [DebugInfo] Upgrade DISubrange to support Fortran dynamic arrays 2020-05-28 13:46:41 +05:30
check-debugify-preserves-analyses.ll [FunctionAttrs] Rename functionattrs -> function-attrs 2020-07-28 09:09:13 -07:00
cross-cu-inlining.test
cross-cu-scope.ll
debug-frame-cie-pointer-reloc.test [DebugInfo] Read CIE pointer as a relocatable value. 2020-02-20 09:12:05 +07:00
debugify-bogus-dbg-value.ll
debugify-each.ll [Debugify] Strip added metadata in the -debugify-each pipeline 2020-04-13 10:55:17 -07:00
debugify-export.ll
debugify-report-missing-locs-only.ll [debugify] Demote an error about empty locations to a warning 2020-06-26 14:55:02 -07:00
debugify.ll [debugify] Demote an error about empty locations to a warning 2020-06-26 14:55:02 -07:00
debuglineinfo-macho.test
debuglineinfo-path.ll [llvm-symbolizer] Switch command line parsing from llvm::cl to OptTable 2020-08-04 08:53:15 -07:00
debuglineinfo.test
debugmacinfo-dwo.test [DebugInfo] Support for debug_macinfo.dwo section in llvm and llvm-dwarfdump. 2019-12-03 08:54:12 +05:30
debugmacinfo.test
duplicate_dbgvalue.ll [DebugInfo] Avoid generating duplicate llvm.dbg.value 2020-03-03 09:56:45 +05:30
dwarfdump-16bit-addr.test [DebugInfo] Explicitly permit addr_size = 0x02 when parsing DWARF data 2020-06-22 13:11:55 +03:00
dwarfdump-accel.test
dwarfdump-bad-lookup-address.test [DWARF] check whether the DIE is valid before querying for information 2019-04-03 17:13:45 +00:00
dwarfdump-dataLocationExp.ll Fixed arm build bot failure after 4042ada1c1 2020-05-15 23:30:05 +05:30
dwarfdump-dataLocationVar.ll Fixed arm build bot failure after 4042ada1c1 2020-05-15 23:30:05 +05:30
dwarfdump-debug-frame-simple.test
dwarfdump-decompression-corrupt.test llvm-dwarfdump: Return non-zero on error 2020-04-09 20:53:58 -07:00
dwarfdump-decompression-error.test llvm-dwarfdump: Return non-zero on error 2020-04-09 20:53:58 -07:00
dwarfdump-dump-flags.test
dwarfdump-dump-gdbindex.test [llvm-dwarfdump] --gdb-index: fix uninitialized TuListOffset 2019-06-19 13:51:29 +00:00
dwarfdump-dwp.test llvm-dwarfdump: Include unit count in DWP index header dumping 2020-06-12 12:40:02 -07:00
dwarfdump-implicit-const.test
dwarfdump-invalid.test
dwarfdump-macho-relocs.test
dwarfdump-macho-universal.test
dwarfdump-objc.test
dwarfdump-pubnames.test [DebugInfo] Report the format of tables in .debug_pub* sections [8/10] 2020-06-02 17:55:31 +07:00
dwarfdump-pushobjectaddress.ll Fixed arm build bot failure after ab699d78a2 2020-05-15 23:14:56 +05:30
dwarfdump-ranges.test
dwarfdump-type-units.test [DebugInfo] Separate fields with commas in headers of type units (3/3). 2020-06-01 17:40:28 +07:00
dwarfdump-zlib.test [DebugInfo] Report the format of compilation units [3/10] 2020-06-02 17:55:30 +07:00
dwo.ll
fortran-string-type.ll [DebugInfo][flang]Added support for representing Fortran assumed length strings 2020-08-22 10:13:40 +05:30
fortranDefaultLower.ll [DebugInfo] Upgrade DISubrange to support Fortran dynamic arrays 2020-05-28 13:46:41 +05:30
fortranSubrangeExpr.ll [DebugInfo] Upgrade DISubrange to support Fortran dynamic arrays 2020-05-28 13:46:41 +05:30
fortranSubrangeInt.ll [DebugInfo] Upgrade DISubrange to support Fortran dynamic arrays 2020-05-28 13:46:41 +05:30
fortranSubrangeVar.ll Fixed bot failure after d20bf5a725 2020-05-28 18:01:38 +05:30
gcc-local-mem-func.test
high-pc-constant.test
invalid-relocations.test [test] Use yaml2obj -o %t instead of > %t 2020-01-21 17:20:18 -08:00
macro_link.ll
member-pointers.o
missing-abstract-variable.o
omit-empty.ll
pr34186.ll
pr34672.ll
pr37964.ll [Transforms][Debugify] Ignore PHI nodes when checking for DebugLocs 2020-02-27 16:14:11 +00:00
precomp.test [test] Use yaml2obj -o %t instead of > %t 2020-01-21 17:20:18 -08:00
salvage-cast-debug-info.ll [EarlyCSE] Verify hash code in regression tests 2020-09-04 10:40:35 -04:00
simplify-cfg-preserve-dbg-values.ll [SimplifyCFG] Remap rewritten debug intrinsic operands. 2020-05-08 11:10:25 -07:00
skeletoncu.ll
strip-DIGlobalVariable.ll
strip-loop-metadata.ll
strip-module-flags.ll
symbolize-64bit-address.test [DebugInfo][llvm-symbolizer]Add some tests for edge cases when symbolizing 2019-02-06 10:13:14 +00:00
symbolize-absolute-path-in-debug-line.s [DebugInfo][llvm-symbolizer]Add some tests for edge cases when symbolizing 2019-02-06 10:13:14 +00:00
symbolize-build-id-error.test [Symbolize] Handle error after the notes loop 2020-01-27 11:00:27 -08:00
symbolize-build-id.test [llvm-symbolizer] Support debug file lookup using build ID 2019-12-04 15:07:56 -08:00
symbolize-demangling.s
symbolize-directory.s Fix more Windows bots after r360015. 2019-05-06 19:12:25 +00:00
symbolize-gnu-debuglink-fallback.test [DebugInfo] Fix /usr/lib/debug llvm-symbolizer lookup with relative paths 2019-02-11 18:05:48 +00:00
symbolize-gnu-debuglink-no-realpath.test [DebugInfo] Fix mkdir use in test 2019-02-01 21:14:21 +00:00
symbolize-gnu-debuglink.test
symbolize-inlined.test [test][tools] Add missing and improve testing 2019-12-09 12:24:23 +00:00
symbolize-macho-universal-unknown-arch.test
symbolize-macho-universal.test
symbolize-missing-file.test
symbolize-no-debug-str.test [DebugInfo][llvm-symbolizer]Add some tests for edge cases when symbolizing 2019-02-06 10:13:14 +00:00
symbolize-paths.s attempt to fix symbolize-paths.s everywhere after cd68f4 2020-01-29 14:26:50 -05:00
symbolize-shared-abbrev.s [DebugInfo][llvm-symbolizer]Add some tests for edge cases when symbolizing 2019-02-06 10:13:14 +00:00
symbolize-split-dwarf-empty.test [llvm-symbolizer][test] Rename and tweak tests using llvm-symbolizer 2019-02-01 10:24:55 +00:00
symbolize-split-dwarf-no-skel-address.test [llvm-symbolizer][test] Rename and tweak tests using llvm-symbolizer 2019-02-01 10:24:55 +00:00
symbolize-stripped-sections.test [DebugInfo][llvm-symbolizer]Add some tests for edge cases when symbolizing 2019-02-06 10:13:14 +00:00
symbolize-stripped.test
symbolize-tu.test [llvm-symbolizer][test] Rename and tweak tests using llvm-symbolizer 2019-02-01 10:24:55 +00:00
symbolize-zlib.test [llvm-symbolizer][test] Rename and tweak tests using llvm-symbolizer 2019-02-01 10:24:55 +00:00
symbolize.test [llvm-symbolizer][test] Rename and tweak tests using llvm-symbolizer 2019-02-01 10:24:55 +00:00
typeunit-header.test [DebugInfo] Report the format of type units [10/10] 2020-06-02 17:55:31 +07:00
unrolled-loop-remainder.ll