mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-10-22 20:43:44 +02:00
0c1aee0b16
As a follow-up to r246098, require `DISubprogram` definitions (`isDefinition: true`) to be 'distinct'. Specifically, add an assembler check, a verifier check, and bitcode upgrading logic to combat testcase bitrot after the `DIBuilder` change. While working on the testcases, I realized that test/Linker/subprogram-linkonce-weak-odr.ll isn't relevant anymore. Its purpose was to check for a corner case in PR22792 where two subprogram definitions match exactly and share the same metadata node. The new verifier check, requiring that subprogram definitions are 'distinct', precludes that possibility. I updated almost all the IR with the following script: git grep -l -E -e '= !DISubprogram\(.* isDefinition: true' | grep -v test/Bitcode | xargs sed -i '' -e 's/= \(!DISubprogram(.*, isDefinition: true\)/= distinct \1/' Likely some variant of would work for out-of-tree testcases. llvm-svn: 246327 |
||
---|---|---|
.. | ||
apple-version | ||
2003-01-30-LinkerRename.ll | ||
2003-05-31-LinkerRename.ll | ||
alias.ll | ||
alignment.ll | ||
basiclink.a.ll | ||
basiclink.b.ll | ||
comdat2.ll | ||
comdat3.ll | ||
comdat4.ll | ||
comdat5.ll | ||
comdat8.ll | ||
comdat.ll | ||
ConstantGlobals.ll | ||
constructor-comdat.ll | ||
ctors.ll | ||
datalayout-a.ll | ||
datalayout-b.ll | ||
distinct.ll | ||
drop-debug.bc | ||
ident.a.ll | ||
ident.b.ll | ||
linkage2.ll | ||
linkage.a.ll | ||
linkage.b.ll | ||
mdlocation.ll | ||
metadata-function.ll | ||
module-flags-dont-change-others.ll | ||
module-flags-pic-1-b.ll | ||
module-flags-pic-2-b.ll | ||
old_global_ctors.3.4.bc | ||
opaque.ll | ||
override-different-linkage.ll | ||
override-with-internal-linkage-2.ll | ||
override-with-internal-linkage.ll | ||
override.ll | ||
pr21374.ll | ||
pr22807-1.ll | ||
pr22807-2.ll | ||
PR8300.a.ll | ||
PR8300.b.ll | ||
PR11464.a.ll | ||
PR11464.b.ll | ||
redefinition.ll | ||
replaced-function-matches-first-subprogram.ll | ||
subprogram-linkonce-weak.ll | ||
targettriple-a.ll | ||
targettriple-b.ll | ||
targettriple-c.ll | ||
testlink.ll | ||
type-unique-alias.ll | ||
type-unique-dst-types2.ll | ||
type-unique-dst-types3.ll | ||
type-unique-inheritance-a.ll | ||
type-unique-inheritance-b.ll | ||
type-unique-name.ll | ||
type-unique-opaque.ll | ||
type-unique-simple2-a.ll | ||
type-unique-simple2-b.ll | ||
type-unique-unrelated2.ll | ||
type-unique-unrelated3.ll | ||
unique-fwd-decl-b.ll | ||
unique-fwd-decl-order.ll | ||
visibility.ll |