@@ -885,9 +885,7 @@ decodeBBAddrMapImpl(const ELFFile<ELFT> &EF,
885
885
for (uint32_t BlockIndex = 0 ; !MetadataDecodeErr && !ULEBSizeErr &&
886
886
Cur && (BlockIndex < NumBlocksInBBRange);
887
887
++BlockIndex) {
888
- uint32_t ID = Version >= 2
889
- ? readULEB128As<uint32_t >(Data, Cur, ULEBSizeErr)
890
- : BlockIndex;
888
+ uint32_t ID = readULEB128As<uint32_t >(Data, Cur, ULEBSizeErr);
891
889
uint32_t Offset = readULEB128As<uint32_t >(Data, Cur, ULEBSizeErr);
892
890
// Read the callsite offsets.
893
891
uint32_t LastCallsiteOffset = 0 ;
@@ -907,19 +905,15 @@ decodeBBAddrMapImpl(const ELFFile<ELFT> &EF,
907
905
uint32_t Size = readULEB128As<uint32_t >(Data, Cur, ULEBSizeErr) +
908
906
LastCallsiteOffset;
909
907
uint32_t MD = readULEB128As<uint32_t >(Data, Cur, ULEBSizeErr);
910
- if (Version >= 1 ) {
911
- // Offset is calculated relative to the end of the previous BB.
912
- Offset += PrevBBEndOffset;
913
- PrevBBEndOffset = Offset + Size;
914
- }
915
908
Expected<BBAddrMap::BBEntry::Metadata> MetadataOrErr =
916
909
BBAddrMap::BBEntry::Metadata::decode (MD);
917
910
if (!MetadataOrErr) {
918
911
MetadataDecodeErr = MetadataOrErr.takeError ();
919
912
break ;
920
913
}
921
914
BBEntries.push_back (
922
- {ID, Offset, Size, *MetadataOrErr, CallsiteOffsets});
915
+ {ID, Offset + PrevBBEndOffset, Size, *MetadataOrErr, CallsiteOffsets});
916
+ PrevBBEndOffset += Offset + Size;
923
917
}
924
918
TotalNumBlocks += BBEntries.size ();
925
919
}
0 commit comments