[PATCH] D73462: [dwarf-5] Support DebugInfo for Defaulted parameters for C++ templates
David Blaikie via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Mon Feb 3 16:40:53 PST 2020
dblaikie added a comment.
Might be easier in smaller patches - Bitcode & IR support, then LLVM/codegen emission and Clang/IR gen.
> I have to update dityperefs-3.8.ll and dityperefs-3.8.ll.bc because they are no longer compatible with this patch.
The bitcode files in test/Bitcode generally shouldn't be updated - they're there to test backwards compatibility with older bitcode.
================
Comment at: llvm/lib/IR/AsmWriter.cpp:2074-2075
Printer.printMetadata("type", N->getRawType(), /* ShouldSkipNull */ false);
+ if (Context->getDwarfVersion() >= 5)
+ Printer.printBool("defaulted", N->isDefault());
Out << ")";
----------------
Remove this condition & emit defaulted unconditionally.
Include the "default" value of false as the 3rd argument to printBool so we don't add this textual element to every DITemplateTypeParameter.
================
Comment at: llvm/lib/IR/AsmWriter.cpp:2090-2091
Printer.printMetadata("type", N->getRawType());
+ if (Context->getDwarfVersion() >= 5)
+ Printer.printBool("defaulted", N->isDefault());
Printer.printMetadata("value", N->getValue(), /* ShouldSkipNull */ false);
----------------
Same feedback as with the type parameter case.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D73462/new/
https://reviews.llvm.org/D73462
More information about the cfe-commits
mailing list