summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen
diff options
context:
space:
mode:
authorMomchil Velikov <momchil.velikov@arm.com>2018-02-15 13:29:33 +0000
committerMomchil Velikov <momchil.velikov@arm.com>2018-02-15 13:29:33 +0000
commit6acc0e555b8a91a07fbeec1ea46cf33bee9c71cb (patch)
tree605493792d0ab4b4631b19aa56941afc59784f4f /llvm/lib/CodeGen
parent2c5e8e820b14739c7a59f3bbd7ce11e55a8f5ea2 (diff)
downloadbcm5719-llvm-6acc0e555b8a91a07fbeec1ea46cf33bee9c71cb.tar.gz
bcm5719-llvm-6acc0e555b8a91a07fbeec1ea46cf33bee9c71cb.zip
[DebugInfo] Accept enumeration types without underlying integer type present in
debug info metadata ... when generating DWARF. Differential Revision: https://reviews.llvm.org/D43304 llvm-svn: 325234
Diffstat (limited to 'llvm/lib/CodeGen')
-rw-r--r--llvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp10
1 files changed, 5 insertions, 5 deletions
diff --git a/llvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp b/llvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp
index f799453d47d..4889abcf565 100644
--- a/llvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp
+++ b/llvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp
@@ -1430,11 +1430,11 @@ void DwarfUnit::constructArrayTypeDIE(DIE &Buffer, const DICompositeType *CTy) {
void DwarfUnit::constructEnumTypeDIE(DIE &Buffer, const DICompositeType *CTy) {
const DIType *DTy = resolve(CTy->getBaseType());
bool IsUnsigned = DTy && isUnsignedDIType(DD, DTy);
- if (DTy && DD->getDwarfVersion() >= 3)
- addType(Buffer, DTy);
- if (DD->getDwarfVersion() >= 4 && (CTy->getFlags() & DINode::FlagFixedEnum)) {
- assert(DTy);
- addFlag(Buffer, dwarf::DW_AT_enum_class);
+ if (DTy) {
+ if (DD->getDwarfVersion() >= 3)
+ addType(Buffer, DTy);
+ if (DD->getDwarfVersion() >= 4 && (CTy->getFlags() & DINode::FlagFixedEnum))
+ addFlag(Buffer, dwarf::DW_AT_enum_class);
}
DINodeArray Elements = CTy->getElements();
OpenPOWER on IntegriCloud