mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-28 04:33:05 +00:00
Move DIEEntry handling inside the main switch statement.
No functional change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@203142 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
d25733bebc
commit
6c43168ce3
@ -286,14 +286,6 @@ void DIEHash::hashAttribute(AttrEntry Attr, dwarf::Tag Tag) {
|
||||
const DIEAbbrevData *Desc = Attr.Desc;
|
||||
dwarf::Attribute Attribute = Desc->getAttribute();
|
||||
|
||||
// 7.27 Step 3
|
||||
// ... An attribute that refers to another type entry T is processed as
|
||||
// follows:
|
||||
if (const DIEEntry *EntryAttr = dyn_cast<DIEEntry>(Value)) {
|
||||
hashDIEEntry(Attribute, Tag, *EntryAttr->getEntry());
|
||||
return;
|
||||
}
|
||||
|
||||
// Other attribute values use the letter 'A' as the marker, and the value
|
||||
// consists of the form code (encoded as an unsigned LEB128 value) followed by
|
||||
// the encoding of the value according to the form code. To ensure
|
||||
@ -302,6 +294,12 @@ void DIEHash::hashAttribute(AttrEntry Attr, dwarf::Tag Tag) {
|
||||
// DW_FORM_string, and DW_FORM_block.
|
||||
|
||||
switch (Value->getType()) {
|
||||
// 7.27 Step 3
|
||||
// ... An attribute that refers to another type entry T is processed as
|
||||
// follows:
|
||||
case DIEValue::isEntry:
|
||||
hashDIEEntry(Attribute, Tag, *cast<DIEEntry>(Value)->getEntry());
|
||||
break;
|
||||
case DIEValue::isInteger: {
|
||||
addULEB128('A');
|
||||
addULEB128(Attribute);
|
||||
@ -352,8 +350,6 @@ void DIEHash::hashAttribute(AttrEntry Attr, dwarf::Tag Tag) {
|
||||
case DIEValue::isExpr:
|
||||
case DIEValue::isLabel:
|
||||
case DIEValue::isDelta:
|
||||
// These two were handled above.
|
||||
case DIEValue::isEntry:
|
||||
case DIEValue::isTypeSignature:
|
||||
llvm_unreachable("Add support for additional value types.");
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user