From c3f30a7fc6a166910d4b674301e9108f537daf3c Mon Sep 17 00:00:00 2001 From: David Blaikie Date: Fri, 21 Dec 2018 22:25:01 +0000 Subject: Reapply: DebugInfo: Assume an absence of ranges or high_pc on a CU means the CU is empty (devoid of code addresses) Originally committed in r349333, reverted in r349353. GCC emitted these unconditionally on/before 4.4/March 2012 Clang emitted these unconditionally on/before 3.5/March 2014 This improves performance when parsing CUs (especially those using split DWARF) that contain no code ranges (such as the mini CUs that may be created by ThinLTO importing - though generally they should be/are avoided, especially for Split DWARF because it produces a lot of very small CUs, which don't scale well in a bunch of other ways too (including size)). The revert was due to a (Google internal) test that had some checked in old object files missing DW_AT_ranges. That's since been fixed. llvm-svn: 349968 --- .../test/DebugInfo/Inputs/dwarfdump-test.elf-x86-64 | Bin 9640 -> 17864 bytes .../Inputs/dwarfdump-test.elf-x86-64.debuglink | Bin 8668 -> 16288 bytes .../Inputs/llvm-symbolizer-test.elf-x86-64 | Bin 10693 -> 17200 bytes llvm/test/DebugInfo/Inputs/test-inline.o | Bin 6040 -> 2968 bytes llvm/test/DebugInfo/Inputs/test-parameters.o | Bin 5792 -> 2352 bytes 5 files changed, 0 insertions(+), 0 deletions(-) (limited to 'llvm/test/DebugInfo/Inputs') diff --git a/llvm/test/DebugInfo/Inputs/dwarfdump-test.elf-x86-64 b/llvm/test/DebugInfo/Inputs/dwarfdump-test.elf-x86-64 index 455dd1ce4fc..e3afa0f4288 100755 Binary files a/llvm/test/DebugInfo/Inputs/dwarfdump-test.elf-x86-64 and b/llvm/test/DebugInfo/Inputs/dwarfdump-test.elf-x86-64 differ diff --git a/llvm/test/DebugInfo/Inputs/dwarfdump-test.elf-x86-64.debuglink b/llvm/test/DebugInfo/Inputs/dwarfdump-test.elf-x86-64.debuglink index 8c08037ea37..9b513215f2b 100755 Binary files a/llvm/test/DebugInfo/Inputs/dwarfdump-test.elf-x86-64.debuglink and b/llvm/test/DebugInfo/Inputs/dwarfdump-test.elf-x86-64.debuglink differ diff --git a/llvm/test/DebugInfo/Inputs/llvm-symbolizer-test.elf-x86-64 b/llvm/test/DebugInfo/Inputs/llvm-symbolizer-test.elf-x86-64 index 99a448a7778..c952cff13de 100755 Binary files a/llvm/test/DebugInfo/Inputs/llvm-symbolizer-test.elf-x86-64 and b/llvm/test/DebugInfo/Inputs/llvm-symbolizer-test.elf-x86-64 differ diff --git a/llvm/test/DebugInfo/Inputs/test-inline.o b/llvm/test/DebugInfo/Inputs/test-inline.o index a650c91725d..93073a19c52 100644 Binary files a/llvm/test/DebugInfo/Inputs/test-inline.o and b/llvm/test/DebugInfo/Inputs/test-inline.o differ diff --git a/llvm/test/DebugInfo/Inputs/test-parameters.o b/llvm/test/DebugInfo/Inputs/test-parameters.o index 7f4b6702df2..3b887c45640 100644 Binary files a/llvm/test/DebugInfo/Inputs/test-parameters.o and b/llvm/test/DebugInfo/Inputs/test-parameters.o differ -- cgit v1.2.3