summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--llvm/lib/CodeGen/AsmPrinter/DIEHash.cpp11
-rw-r--r--llvm/lib/CodeGen/AsmPrinter/DIEHash.h1
-rw-r--r--llvm/test/DebugInfo/X86/fission-hash.ll4
3 files changed, 14 insertions, 2 deletions
diff --git a/llvm/lib/CodeGen/AsmPrinter/DIEHash.cpp b/llvm/lib/CodeGen/AsmPrinter/DIEHash.cpp
index f0ab38c3d4e..1322743247e 100644
--- a/llvm/lib/CodeGen/AsmPrinter/DIEHash.cpp
+++ b/llvm/lib/CodeGen/AsmPrinter/DIEHash.cpp
@@ -119,6 +119,9 @@ void DIEHash::collectAttributes(DIE *Die, DIEAttrs &Attrs) {
case dwarf::DW_AT_name:
COLLECT_ATTR(DW_AT_name);
break;
+ case dwarf::DW_AT_language:
+ COLLECT_ATTR(DW_AT_language);
+ break;
default:
break;
}
@@ -145,6 +148,13 @@ void DIEHash::hashAttribute(AttrEntry Attr) {
case dwarf::DW_FORM_strp:
addString(cast<DIEString>(Value)->getString());
break;
+ case dwarf::DW_FORM_data1:
+ case dwarf::DW_FORM_data2:
+ case dwarf::DW_FORM_data4:
+ case dwarf::DW_FORM_data8:
+ case dwarf::DW_FORM_udata:
+ addULEB128(cast<DIEInteger>(Value)->getValue());
+ break;
}
}
@@ -159,6 +169,7 @@ void DIEHash::hashAttributes(const DIEAttrs &Attrs) {
// FIXME: Add the rest.
ADD_ATTR(Attrs.DW_AT_name);
+ ADD_ATTR(Attrs.DW_AT_language);
}
// Add all of the attributes for \param Die to the hash.
diff --git a/llvm/lib/CodeGen/AsmPrinter/DIEHash.h b/llvm/lib/CodeGen/AsmPrinter/DIEHash.h
index f53529c54f1..d83f78f68b4 100644
--- a/llvm/lib/CodeGen/AsmPrinter/DIEHash.h
+++ b/llvm/lib/CodeGen/AsmPrinter/DIEHash.h
@@ -29,6 +29,7 @@ class DIEHash {
// Collection of all attributes used in hashing a particular DIE.
struct DIEAttrs {
AttrEntry DW_AT_name;
+ AttrEntry DW_AT_language;
};
public:
diff --git a/llvm/test/DebugInfo/X86/fission-hash.ll b/llvm/test/DebugInfo/X86/fission-hash.ll
index f0fe0d4cd5b..c4ba9ca75c9 100644
--- a/llvm/test/DebugInfo/X86/fission-hash.ll
+++ b/llvm/test/DebugInfo/X86/fission-hash.ll
@@ -3,8 +3,8 @@
; The source is an empty file.
-; CHECK: DW_AT_GNU_dwo_id [DW_FORM_data8] (0xa188c11a9264c05d)
-; CHECK: DW_AT_GNU_dwo_id [DW_FORM_data8] (0xa188c11a9264c05d)
+; CHECK: DW_AT_GNU_dwo_id [DW_FORM_data8] (0xc357bdf055b6393d)
+; CHECK: DW_AT_GNU_dwo_id [DW_FORM_data8] (0xc357bdf055b6393d)
!llvm.dbg.cu = !{!0}
!llvm.module.flags = !{!3}
OpenPOWER on IntegriCloud