1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-22 18:54:02 +01:00
llvm-mirror/test/DebugInfo/Generic
Pavel Labath e53b6af8c1 [CodeGen/AccelTable]: Don't emit accelerator entries for functions with no names
Summary:
We were emitting accelerator entries for functions with no name, which
is contrary to the DWARF v5 spec: "All other (i.e., *not*
DW_TAG_namespace) debugging information entries without a DW_AT_name
attribute are excluded." Besides that, a name table entry with an empty
string as a key is fairly useless.

We can sometimes end up with functions which have a DW_AT_linkage_name but no
DW_AT_name. One such example is the global-constructor-initialization functions,
which C++ compilers synthesize for each compilation unit with global
constructors.
A very strict reading of the DWARF v5 spec would suggest that we should not even
emit the accelerator entry for the linkage name in this case, but I don't think
we should go that far.

I found this when running the dwarf verifier over llvm codebase compiled
with DWARF v5 accelerator tables.

Reviewers: JDevlieghere, aprantl, dblaikie

Subscribers: vleschuk, clayborg, echristo, probinson, llvm-commits

Differential Revision: https://reviews.llvm.org/D45367

llvm-svn: 329552
2018-04-09 08:41:57 +00:00
..
2009-10-16-Phi.ll
2009-11-03-InsertExtractValue.ll
2009-11-05-DeadGlobalVariable.ll Canonicalize the representation of empty an expression in DIGlobalVariableExpression 2017-08-30 18:06:51 +00:00
2009-11-06-NamelessGlobalVariable.ll Canonicalize the representation of empty an expression in DIGlobalVariableExpression 2017-08-30 18:06:51 +00:00
2009-11-10-CurrentFn.ll Remove the obsolete offset parameter from @llvm.dbg.value 2017-07-28 20:21:02 +00:00
2010-01-05-DbgScope.ll
2010-03-12-llc-crash.ll
2010-03-19-DbgDeclare.ll
2010-03-24-MemberFn.ll
2010-04-06-NestedFnDbgInfo.ll llvm-dwarfdump: Make -brief the default and add a -verbose option instead. 2017-09-11 23:05:20 +00:00
2010-04-19-FramePtr.ll
2010-05-03-DisableFramePtr.ll
2010-05-03-OriginDIE.ll Remove the obsolete offset parameter from @llvm.dbg.value 2017-07-28 20:21:02 +00:00
2010-05-10-MultipleCU.ll llvm-dwarfdump: Replace -debug-dump=sect option with individual options. 2017-09-11 22:59:45 +00:00
2010-06-29-InlinedFnLocalVar.ll Canonicalize the representation of empty an expression in DIGlobalVariableExpression 2017-08-30 18:06:51 +00:00
2010-10-01-crash.ll Remove alignment argument from memcpy/memmove/memset in favour of alignment attributes (Step 1) 2018-01-19 17:13:12 +00:00
accel-table-hash-collisions.ll Re-commit r329179 after fixing build&test issues 2018-04-04 14:42:14 +00:00
array.ll
block-asan.ll ASAN: Provide reliable debug info for local variables at -O0. 2017-12-11 20:43:21 +00:00
bug_null_debuginfo.ll
constant-pointers.ll llvm-dwarfdump: Make -brief the default and add a -verbose option instead. 2017-09-11 23:05:20 +00:00
constant-sdnodes-have-dbg-location.ll
constantfp-sdnodes-have-dbg-location.ll
containing-type-extension.ll Let replaceVTableHolder accept any type. 2017-11-08 22:04:43 +00:00
cross-cu-inlining.ll Re-commit r329179 after fixing build&test issues 2018-04-04 14:42:14 +00:00
cross-cu-linkonce-distinct.ll llvm-dwarfdump: Make -brief the default and add a -verbose option instead. 2017-09-11 23:05:20 +00:00
cross-cu-linkonce.ll llvm-dwarfdump: Make -brief the default and add a -verbose option instead. 2017-09-11 23:05:20 +00:00
cu-range-hole.ll
cu-ranges.ll llvm-dwarfdump: Make -brief the default and add a -verbose option instead. 2017-09-11 23:05:20 +00:00
dbg-at-specficiation.ll Canonicalize the representation of empty an expression in DIGlobalVariableExpression 2017-08-30 18:06:51 +00:00
dead-argument-order.ll llvm-dwarfdump: Make -brief the default and add a -verbose option instead. 2017-09-11 23:05:20 +00:00
debug-info-always-inline.ll
debug-info-enum.ll [DebugInfo] Accept enumeration types without underlying integer type present in 2018-02-15 13:29:33 +00:00
debug-info-qualifiers.ll llvm-dwarfdump: Make -brief the default and add a -verbose option instead. 2017-09-11 23:05:20 +00:00
debug-names-empty-name.ll [CodeGen/AccelTable]: Don't emit accelerator entries for functions with no names 2018-04-09 08:41:57 +00:00
debug-names-hash-collisions.ll Re-commit r329179 after fixing build&test issues 2018-04-04 14:42:14 +00:00
debug-names-many-cu.ll Re-commit r329179 after fixing build&test issues 2018-04-04 14:42:14 +00:00
debug-names-name-collisions.ll Re-commit r329179 after fixing build&test issues 2018-04-04 14:42:14 +00:00
debug-names-one-cu.ll Re-commit r329179 after fixing build&test issues 2018-04-04 14:42:14 +00:00
debug-names-two-cu.ll Re-commit r329179 after fixing build&test issues 2018-04-04 14:42:14 +00:00
debuginfofinder-forward-declaration.ll Canonicalize the representation of empty an expression in DIGlobalVariableExpression 2017-08-30 18:06:51 +00:00
debuginfofinder-inlined-cu.ll
debuginfofinder-multiple-cu.ll
def-line.ll llvm-dwarfdump: Replace -debug-dump=sect option with individual options. 2017-09-11 22:59:45 +00:00
discriminated-union.ll Add DWARF for discriminated unions 2018-02-06 23:45:59 +00:00
discriminator.ll llvm-dwarfdump: Replace -debug-dump=sect option with individual options. 2017-09-11 22:59:45 +00:00
disubrange_vla_no_dbgvalue.ll [DebugInfo] Removed assert on missing CountVarDIE 2018-02-17 11:06:53 +00:00
disubrange_vla.ll [DebugInfo] Removed assert on missing CountVarDIE 2018-02-17 11:06:53 +00:00
dwarf-public-names.ll Remove -generate-dwarf-pub-sections flag. 2017-09-12 21:50:55 +00:00
empty.ll [DWARF] Emit a split line table only if there are split type units. 2018-03-01 00:12:35 +00:00
enum-types.ll Re-land "[llvm-dwarfdump] Print type names in DW_AT_type DIEs" 2017-10-10 14:15:25 +00:00
enum.ll llvm-dwarfdump: Make -brief the default and add a -verbose option instead. 2017-09-11 23:05:20 +00:00
extended-loc-directive.ll [DEBUGINFO] Add option that allows to disable emission of flags in .loc directives. 2018-04-03 17:28:55 +00:00
global-sra-array.ll Canonicalize the representation of empty an expression in DIGlobalVariableExpression 2017-08-30 18:06:51 +00:00
global-sra-single-member.ll Don't add a fragment expression when GlobalSRA splits up a single-member struct 2017-08-31 00:06:18 +00:00
global-sra-struct.ll [GlobalOpt] Emit fragments using field offsets from struct layout 2018-01-25 10:09:26 +00:00
global.ll Canonicalize the representation of empty an expression in DIGlobalVariableExpression 2017-08-30 18:06:51 +00:00
gmlt_profiling.ll llvm-dwarfdump: Make -brief the default and add a -verbose option instead. 2017-09-11 23:05:20 +00:00
gmlt.test Update testcases that are XFAILed on Darwin for llvm-dwarfdump changes. 2017-09-11 23:40:44 +00:00
gvn.ll Canonicalize the representation of empty an expression in DIGlobalVariableExpression 2017-08-30 18:06:51 +00:00
imported-name-inlined.ll DebugInfo: Remove unneeded attributes from test/DebugInfo/Generic/imported-name-inlined.ll 2017-09-20 15:59:57 +00:00
incorrect-variable-debugloc1.ll [dwarfdump] Pretty print location expressions and location lists 2017-08-29 21:41:21 +00:00
incorrect-variable-debugloc.ll llvm-dwarfdump: Make -brief the default and add a -verbose option instead. 2017-09-11 23:05:20 +00:00
indvar-discriminator.ll
inheritance.ll
inline-debug-info-multiret.ll
inline-debug-info.ll
inline-debug-loc.ll
inline-no-debug-info.ll
inline-scopes.ll llvm-dwarfdump: Replace -debug-dump=sect option with individual options. 2017-09-11 22:59:45 +00:00
inlined-arguments.ll Remove the obsolete offset parameter from @llvm.dbg.value 2017-07-28 20:21:02 +00:00
inlined-strings.ll [DEBUGINFO] Add support for emission of the inlined strings. 2018-02-20 15:28:08 +00:00
inlined-vars.ll Remove the obsolete offset parameter from @llvm.dbg.value 2017-07-28 20:21:02 +00:00
instcombine-phi.ll
invalid.ll Move the stripping of invalid debug info from the Verifier to AutoUpgrade. 2017-10-02 18:31:29 +00:00
licm-hoist-debug-loc.ll
linear-dbg-value.ll Move generic test to the Generic directory 2018-03-09 16:42:05 +00:00
linkage-name-abstract.ll llvm-dwarfdump: Make -brief the default and add a -verbose option instead. 2017-09-11 23:05:20 +00:00
lit.local.cfg
location-verifier.ll [Verifier] Remove the -verify-debug-info cl::opt 2017-11-02 23:44:20 +00:00
lto-comp-dir.ll [DebugInfo] Support DWARF v5 source code embedding extension 2018-02-23 23:01:06 +00:00
mainsubprogram.ll llvm-dwarfdump: Make -brief the default and add a -verbose option instead. 2017-09-11 23:05:20 +00:00
member-order.ll llvm-dwarfdump: Make -brief the default and add a -verbose option instead. 2017-09-11 23:05:20 +00:00
member-pointers.ll Re-land "[llvm-dwarfdump] Print type names in DW_AT_type DIEs" 2017-10-10 14:15:25 +00:00
missing-abstract-variable.ll Un-XFAIL a test after the bugfix in r317702. 2017-11-08 19:18:20 +00:00
multiline.ll llvm-dwarfdump: Replace -debug-dump=sect option with individual options. 2017-09-11 22:59:45 +00:00
namespace_function_definition.ll llvm-dwarfdump: Make -brief the default and add a -verbose option instead. 2017-09-11 23:05:20 +00:00
namespace_inline_function_definition.ll llvm-dwarfdump: Make -brief the default and add a -verbose option instead. 2017-09-11 23:05:20 +00:00
namespace.ll llvm-dwarfdump: Make -brief the default and add a -verbose option instead. 2017-09-11 23:05:20 +00:00
noscopes.ll
pass-by-value.ll add 'REQUIRES: object-emission' to test 2018-01-05 16:31:22 +00:00
piece-verifier.ll Move the stripping of invalid debug info from the Verifier to AutoUpgrade. 2017-10-02 18:31:29 +00:00
PR20038.ll llvm-dwarfdump: Make -brief the default and add a -verbose option instead. 2017-09-11 23:05:20 +00:00
ptrsize.ll llvm-dwarfdump: Make -brief the default and add a -verbose option instead. 2017-09-11 23:05:20 +00:00
recursive_inlining.ll llvm-dwarfdump: Make -brief the default and add a -verbose option instead. 2017-09-11 23:05:20 +00:00
restrict.ll llvm-dwarfdump: Make -brief the default and add a -verbose option instead. 2017-09-11 23:05:20 +00:00
simplifycfg_sink_last_inst.ll [SimplifyCFG] don't sink common insts too soon (PR34603) 2017-12-14 22:05:20 +00:00
skeletoncu.ll llvm-dwarfdump: Replace -debug-dump=sect option with individual options. 2017-09-11 22:59:45 +00:00
sroa-larger.ll SROA: Don't create variable fragments that are outside of the variable. 2017-11-28 21:30:38 +00:00
sroa-samesize.ll SROA: Avoid creating a fragment expression that covers the entire variable. 2017-11-28 00:57:53 +00:00
store-tail-merge.ll
string-offsets-form.ll [DWARF] Generate DWARF v5 string offsets tables along with strx* index forms. 2018-01-26 18:52:58 +00:00
sugared-constants.ll llvm-dwarfdump: Make -brief the default and add a -verbose option instead. 2017-09-11 23:05:20 +00:00
sunk-compare.ll
template-recursive-void.ll llvm-dwarfdump: Make -brief the default and add a -verbose option instead. 2017-09-11 23:05:20 +00:00
thrownTypes.ll llvm-dwarfdump: Make -brief the default and add a -verbose option instead. 2017-09-11 23:05:20 +00:00
tu-composite.ll Re-land "[llvm-dwarfdump] Print type names in DW_AT_type DIEs" 2017-10-10 14:15:25 +00:00
tu-member-pointer.ll Re-land "[llvm-dwarfdump] Print type names in DW_AT_type DIEs" 2017-10-10 14:15:25 +00:00
two-cus-from-same-file.ll llvm-dwarfdump: Replace -debug-dump=sect option with individual options. 2017-09-11 22:59:45 +00:00
typedef.ll llvm-dwarfdump: Replace -debug-dump=sect option with individual options. 2017-09-11 22:59:45 +00:00
unconditional-branch.ll [dwarfdump] Add verbose output for .debug-line section 2017-09-21 20:15:30 +00:00
univariant-discriminated-union.ll Add DWARF for discriminated unions 2018-02-06 23:45:59 +00:00
varargs.ll llvm-dwarfdump: Make -brief the default and add a -verbose option instead. 2017-09-11 23:05:20 +00:00
version.ll
virtual-index.ll llvm-dwarfdump: Make -brief the default and add a -verbose option instead. 2017-09-11 23:05:20 +00:00
volatile-alloca.ll LowerDbgDeclare: ignore dbg.declares for allocas with volatile access 2018-03-09 00:45:04 +00:00