Lines Matching defs:dataReader

245 	void Init(DataReader& dataReader)
248 fString = dataReader.ReadString();
251 status_t Read(DataReader& dataReader)
263 uint64 length = dataReader.ReadUnsignedLEB128(0);
272 dataReader.Read<char>(0);
278 fAddressEncoding = dataReader.Read<char>(0);
279 off_t offset = dataReader.Offset();
280 ReadEncodedAddress(dataReader, NULL, NULL, true);
282 remaining -= dataReader.Offset() - offset + 1;
287 fAddressEncoding = dataReader.Read<char>(0);
301 if (remaining != 0 || dataReader.HasOverflow()) {
319 status_t ReadFDEData(DataReader& dataReader,
327 uint64 length = dataReader.ReadUnsignedLEB128(0);
328 dataReader.Skip(length);
333 if (dataReader.HasOverflow())
739 DataReader dataReader((uint8*)fDebugRangesSection->Data() + offset,
742 target_addr_t start = dataReader.ReadAddress(0);
743 target_addr_t end = dataReader.ReadAddress(0);
744 if (dataReader.HasOverflow())
982 DataReader dataReader(fDebugInfoSection->Data(),
985 while (dataReader.HasData()) {
986 off_t unitHeaderOffset = dataReader.Offset();
988 uint64 unitLength = dataReader.ReadInitialLength(dwarf64);
990 off_t unitLengthOffset = dataReader.Offset();
999 int version = dataReader.Read<uint16>(0);
1001 uint8 unitType = dataReader.Read<uint8>(0);
1013 addressSize = dataReader.Read<uint8>(0);
1015 ? dataReader.Read<uint64>(0)
1016 : dataReader.Read<uint32>(0);
1019 ? dataReader.Read<uint64>(0)
1020 : dataReader.Read<uint32>(0);
1021 addressSize = dataReader.Read<uint8>(0);
1024 if (dataReader.HasOverflow()) {
1045 dataReader.SetAddressSize(addressSize);
1047 off_t unitContentOffset = dataReader.Offset();
1064 dataReader.SeekAbsolute(unitLengthOffset + unitLength);
1074 DataReader dataReader(fDebugTypesSection->Data(),
1076 while (dataReader.HasData()) {
1077 off_t unitHeaderOffset = dataReader.Offset();
1079 uint64 unitLength = dataReader.ReadInitialLength(dwarf64);
1081 off_t unitLengthOffset = dataReader.Offset();
1091 int version = dataReader.Read<uint16>(0);
1093 ? dataReader.Read<uint64>(0)
1094 : dataReader.Read<uint32>(0);
1095 uint8 addressSize = dataReader.Read<uint8>(0);
1097 if (dataReader.HasOverflow()) {
1103 dataReader.SetAddressSize(addressSize);
1105 uint64 signature = dataReader.Read<uint64>(0);
1108 ? dataReader.Read<uint64>(0)
1109 : dataReader.Read<uint32>(0);
1111 off_t unitContentOffset = dataReader.Offset();
1157 dataReader.SeekAbsolute(unitLengthOffset + unitLength);
1175 DataReader dataReader((uint8*)section->Data(),
1178 while (dataReader.BytesRemaining() > 0) {
1181 off_t entryOffset = dataReader.Offset();
1182 uint64 length = dataReader.ReadInitialLength(dwarf64);
1187 if (length > (uint64)dataReader.BytesRemaining())
1189 off_t lengthOffset = dataReader.Offset();
1198 ? dataReader.Read<uint64>(0) : dataReader.Read<uint32>(0);
1209 uint64 initialLocationOffset = dataReader.Offset();
1240 dataReader, fElfFile, section);
1242 dataReader, fElfFile, section, true);
1244 if (dataReader.HasOverflow())
1272 dataReader.SeekAbsolute(lengthOffset + length);
1290 DataReader dataReader(
1296 error = _ParseDebugInfoEntry(dataReader, unit, abbreviationTable, entry,
1311 dataReader.BytesRemaining());
1312 if (dataReader.HasData()) {
1314 while (dataReader.HasData())
1315 TRACE_DIE("%02x", dataReader.Read<uint8>(0));
1334 DataReader dataReader(
1340 error = _ParseDebugInfoEntry(dataReader, unit, abbreviationTable, entry,
1362 dataReader.BytesRemaining());
1363 if (dataReader.HasData()) {
1365 while (dataReader.HasData())
1366 TRACE_DIE("%02x", dataReader.Read<uint8>(0));
1375 DwarfFile::_ParseDebugInfoEntry(DataReader& dataReader,
1379 off_t entryOffset = dataReader.Offset()
1382 uint32 code = dataReader.ReadUnsignedLEB128(0);
1384 if (dataReader.HasOverflow()) {
1422 error = _ParseEntryAttributes(dataReader, unit, NULL, abbreviationEntry);
1431 status_t error = _ParseDebugInfoEntry(dataReader,
1480 DataReader dataReader(
1496 dataReader.SeekAbsolute(offset);
1499 uint32 code = dataReader.ReadUnsignedLEB128(0);
1514 error = _ParseEntryAttributes(dataReader, unit, entry,
1615 DwarfFile::_ParseEntryAttributes(DataReader& dataReader,
1625 attributeForm = dataReader.ReadUnsignedLEB128(0);
1638 off_t valueOffset = dataReader.Offset() + unit->ContentOffset();
1643 value = dataReader.ReadAddress(0);
1646 blockLength = dataReader.Read<uint16>(0);
1649 blockLength = dataReader.Read<uint32>(0);
1652 value = dataReader.Read<uint16>(0);
1655 value = dataReader.Read<uint32>(0);
1658 value = dataReader.Read<uint64>(0);
1661 attributeValue.SetToString(dataReader.ReadString());
1665 blockLength = dataReader.ReadUnsignedLEB128(0);
1668 blockLength = dataReader.Read<uint8>(0);
1671 value = dataReader.Read<uint8>(0);
1674 attributeValue.SetToFlag(dataReader.Read<uint8>(0) != 0);
1677 value = dataReader.ReadSignedLEB128(0);
1684 ? dataReader.Read<uint64>(0)
1685 : dataReader.Read<uint32>(0);
1700 value = dataReader.ReadUnsignedLEB128(0);
1704 ? dataReader.Read<uint64>(0)
1705 : (uint64)dataReader.Read<uint32>(0);
1709 value = dataReader.Read<uint8>(0);
1712 value = dataReader.Read<uint16>(0);
1715 value = dataReader.Read<uint32>(0);
1718 value = dataReader.Read<uint64>(0);
1721 value = dataReader.ReadUnsignedLEB128(0);
1728 uint64 index = dataReader.ReadUnsignedLEB128(0);
1738 uint64 index = dataReader.ReadUnsignedLEB128(0);
1748 ? dataReader.Read<uint64>(0)
1749 : dataReader.Read<uint32>(0);
1765 value = dataReader.Read<uint64>(0);
1773 ? dataReader.Read<uint64>(0)
1774 : (uint64)dataReader.Read<uint32>(0);
1782 uint64 index = dataReader.ReadUInt(numBytes, 0);
1796 uint64 index = dataReader.ReadUInt(numBytes, 0);
1831 attributeValue.SetToBlock(dataReader.Data(), blockLength);
1832 dataReader.Skip(blockLength);
1888 if (dataReader.HasOverflow()) {
1931 DwarfFile::_ParseLineInfoFormatString(CompilationUnit* unit, DataReader &dataReader,
1936 value = dataReader.ReadString();
1946 ? dataReader.Read<uint64>(0)
1947 : dataReader.Read<uint32>(0);
1965 ? dataReader.Read<uint64>(0)
1966 : dataReader.Read<uint32>(0);
1990 DwarfFile::_ParseLineInfoFormatUint(CompilationUnit* unit, DataReader &dataReader,
1996 value = dataReader.Read<uint8>(0);
1999 value = dataReader.Read<uint16>(0);
2002 value = dataReader.Read<uint32>(0);
2005 value = dataReader.Read<uint64>(0);
2008 value = dataReader.ReadUnsignedLEB128(0);
2028 DataReader dataReader((uint8*)fDebugLineSection->Data() + offset,
2033 uint64 unitLength = dataReader.ReadInitialLength(dwarf64);
2034 if (unitLength > (uint64)dataReader.BytesRemaining())
2036 off_t unitOffset = dataReader.Offset();
2039 uint16 version = dataReader.Read<uint16>(0);
2051 addressSize = dataReader.Read<uint8>(0);
2058 segmentSelectorSize = dataReader.Read<uint8>(0);
2068 ? dataReader.Read<uint64>(0) : (uint64)dataReader.Read<uint32>(0);
2069 off_t headerOffset = dataReader.Offset();
2071 if ((uint64)dataReader.BytesRemaining() < headerLength)
2075 uint8 minInstructionLength = dataReader.Read<uint8>(0);
2079 maxOpsPerInstruction = dataReader.Read<uint8>(0);
2090 bool defaultIsStatement = dataReader.Read<uint8>(0) != 0;
2093 int8 lineBase = (int8)dataReader.Read<uint8>(0);
2096 uint8 lineRange = dataReader.Read<uint8>(0);
2099 uint8 opcodeBase = dataReader.Read<uint8>(0);
2102 const uint8* standardOpcodeLengths = (const uint8*)dataReader.Data();
2103 dataReader.Skip(opcodeBase - 1);
2105 if (dataReader.HasOverflow())
2124 uint8 dirEntryFormatCount = dataReader.Read<uint8>(0);
2127 off_t dirEntryFormatOffset = dataReader.Offset();
2130 dataReader.ReadUnsignedLEB128(0);
2132 dataReader.ReadUnsignedLEB128(0);
2137 off_t dirEntryFormatLength = dataReader.Offset() - dirEntryFormatOffset;
2138 DataReader dirEntryFormatReader = dataReader.RestrictedReader(-dirEntryFormatLength,
2141 uint8 dirCount = dataReader.Read<uint8>(0);
2156 status_t res = _ParseLineInfoFormatString(unit, dataReader, format, directory);
2167 uint8 fileNameEntryFormatCount = dataReader.Read<uint8>(0);
2170 off_t fileNameEntryFormatOffset = dataReader.Offset();
2173 dataReader.ReadUnsignedLEB128(0);
2175 dataReader.ReadUnsignedLEB128(0);
2180 off_t fileNameEntryFormatLength = dataReader.Offset() - fileNameEntryFormatOffset;
2181 DataReader fileNameEntryFormatReader = dataReader.RestrictedReader(-fileNameEntryFormatLength,
2184 uint8 fileNameCount = dataReader.Read<uint8>(0);
2201 res = _ParseLineInfoFormatString(unit, dataReader,
2207 res = _ParseLineInfoFormatUint(unit, dataReader,
2213 res = _ParseLineInfoFormatUint(unit, dataReader,
2219 res = _ParseLineInfoFormatUint(unit, dataReader,
2228 dataReader.Skip(16);
2249 while (const char* directory = dataReader.ReadString()) {
2260 while (const char* file = dataReader.ReadString()) {
2263 uint64 dirIndex = dataReader.ReadUnsignedLEB128(0);
2265 dataReader.ReadUnsignedLEB128(0);
2267 dataReader.ReadUnsignedLEB128(0);
2269 if (dataReader.HasOverflow())
2281 off_t readerOffset = dataReader.Offset();
2286 const uint8* program = (uint8*)dataReader.Data() + offsetToProgram;
2306 DataReader dataReader((uint8*)currentFrameSection->Data(),
2310 dataReader.SeekAbsolute(info->fdeOffset);
2313 uint64 length = dataReader.ReadInitialLength(dwarf64);
2314 uint64 lengthOffset = dataReader.Offset();
2335 dwarf64 ? dataReader.Read<uint64>(0) : dataReader.Read<uint32>(0);
2336 cieAugmentation.ReadEncodedAddress(dataReader, fElfFile,
2338 cieAugmentation.ReadEncodedAddress(dataReader, fElfFile,
2343 "range: %#" B_PRIx64 "\n", length, dataReader.BytesRemaining(),
2365 error = cieAugmentation.ReadFDEData(dataReader,
2376 uint64 remaining = lengthOffset + length - dataReader.Offset();
2381 dataReader.RestrictedReader(remaining);
2528 DataReader& dataReader, off_t& _cieRemaining)
2533 dataReader.SetTo((uint8*)debugFrameSection->Data() + cieOffset,
2540 uint64 length = dataReader.ReadInitialLength(dwarf64);
2541 if (length > (uint64)dataReader.BytesRemaining())
2544 off_t lengthOffset = dataReader.Offset();
2548 ? dataReader.Read<uint64>(0) : dataReader.Read<uint32>(0);
2557 uint8 version = dataReader.Read<uint8>(0);
2565 cieAugmentation.Init(dataReader);
2571 dataReader.Skip(dwarf64 ? sizeof(uint64) : sizeof(uint32));
2573 context.SetCodeAlignment(dataReader.ReadUnsignedLEB128(0));
2574 context.SetDataAlignment(dataReader.ReadSignedLEB128(0));
2575 context.SetReturnAddressRegister(dataReader.ReadUnsignedLEB128(0));
2584 status_t error = cieAugmentation.Read(dataReader);
2592 if (dataReader.HasOverflow())
2595 _cieRemaining = length -(dataReader.Offset() - lengthOffset);
2605 CfaContext& context, DataReader& dataReader, CIEAugmentation& augmentation)
2607 while (dataReader.BytesRemaining() > 0) {
2608 TRACE_CFI(" [%2" B_PRId64 "]", dataReader.BytesRemaining());
2610 uint8 opcode = dataReader.Read<uint8>(0);
2629 uint64 offset = dataReader.ReadUnsignedLEB128(0);
2657 dataReader, fElfFile, fDebugFrameSection);
2670 uint32 delta = dataReader.Read<uint8>(0);
2684 uint32 delta = dataReader.Read<uint16>(0);
2698 uint32 delta = dataReader.Read<uint32>(0);
2712 uint32 reg = dataReader.ReadUnsignedLEB128(0);
2713 uint64 offset = dataReader.ReadUnsignedLEB128(0);
2726 uint32 reg = dataReader.ReadUnsignedLEB128(0);
2736 uint32 reg = dataReader.ReadUnsignedLEB128(0);
2746 uint32 reg = dataReader.ReadUnsignedLEB128(0);
2756 uint32 reg1 = dataReader.ReadUnsignedLEB128(0);
2757 uint32 reg2 = dataReader.ReadUnsignedLEB128(0);
2786 uint32 reg = dataReader.ReadUnsignedLEB128(0);
2787 uint64 offset = dataReader.ReadUnsignedLEB128(0);
2797 uint32 reg = dataReader.ReadUnsignedLEB128(0);
2811 uint64 offset = dataReader.ReadUnsignedLEB128(0);
2825 uint64 blockLength = dataReader.ReadUnsignedLEB128(0);
2826 uint8* block = (uint8*)dataReader.Data();
2827 dataReader.Skip(blockLength);
2838 uint32 reg = dataReader.ReadUnsignedLEB128(0);
2839 uint64 blockLength = dataReader.ReadUnsignedLEB128(0);
2840 uint8* block = (uint8*)dataReader.Data();
2841 dataReader.Skip(blockLength);
2852 uint32 reg = dataReader.ReadUnsignedLEB128(0);
2853 int64 offset = dataReader.ReadSignedLEB128(0);
2866 uint32 reg = dataReader.ReadUnsignedLEB128(0);
2867 int64 offset = dataReader.ReadSignedLEB128(0);
2878 int64 offset = dataReader.ReadSignedLEB128(0);
2893 uint32 reg = dataReader.ReadUnsignedLEB128(0);
2894 uint64 offset = dataReader.ReadUnsignedLEB128(0);
2907 uint32 reg = dataReader.ReadUnsignedLEB128(0);
2908 int64 offset = dataReader.ReadSignedLEB128(0);
2921 uint32 reg = dataReader.ReadUnsignedLEB128(0);
2922 uint64 blockLength = dataReader.ReadUnsignedLEB128(0);
2923 uint8* block = (uint8*)dataReader.Data();
2924 dataReader.Skip(blockLength);
2937 uint64 delta = dataReader.Read<uint64>(0);
2961 dataReader.ReadUnsignedLEB128(0);
2971 uint32 reg = dataReader.ReadUnsignedLEB128(0);
2972 int64 offset = dataReader.ReadSignedLEB128(0);
3005 DataReader dataReader((uint8*)fDebugPublicTypesSection->Data(),
3008 while (dataReader.BytesRemaining() > 0) {
3010 uint64 unitLength = dataReader.ReadInitialLength(dwarf64);
3012 off_t unitLengthOffset = dataReader.Offset();
3015 if (dataReader.HasOverflow())
3024 DataReader unitDataReader(dataReader.Data(), unitLength, _addressSize, isBigEndian);
3027 dataReader.SeekAbsolute(unitLengthOffset + unitLength);
3035 DwarfFile::_ParsePublicTypesInfo(DataReader& dataReader, bool dwarf64)
3037 int version = dataReader.Read<uint16>(0);
3044 ? dataReader.Read<uint64>(0)
3045 : (uint64)dataReader.Read<uint32>(0);
3047 ? dataReader.Read<uint64>(0)
3048 : (uint64)dataReader.Read<uint32>(0);
3050 if (dataReader.HasOverflow())
3057 while (dataReader.BytesRemaining() > 0) {
3059 ? dataReader.Read<uint64>(0)
3060 : (uint64)dataReader.Read<uint32>(0);
3064 TRACE_PUBTYPES_ONLY(const char* name =) dataReader.ReadString();
3177 DataReader dataReader((uint8*)fDebugLocationSection->Data() + offset,
3180 target_addr_t start = dataReader.ReadAddress(0);
3181 target_addr_t end = dataReader.ReadAddress(0);
3182 if (dataReader.HasOverflow())
3193 uint16 expressionLength = dataReader.Read<uint16>(0);
3194 const void* expression = dataReader.Data();
3195 if (!dataReader.Skip(expressionLength))