Lines Matching refs:Cursor

366   DataExtractor::Cursor Cursor(*OffsetPtr);
368 DebugLineData.getInitialLength(Cursor);
371 DWARFDataExtractor(DebugLineData, Cursor.tell() + TotalLength);
372 FormParams.Version = DebugLineData.getU16(Cursor);
373 if (Cursor && !versionIsSupported(getVersion())) {
377 *OffsetPtr = Cursor.tell();
386 FormParams.AddrSize = DebugLineData.getU8(Cursor);
387 assert((!Cursor || DebugLineData.getAddressSize() == 0 ||
390 SegSelectorSize = DebugLineData.getU8(Cursor);
394 DebugLineData.getRelocatedValue(Cursor, sizeofPrologueLength());
395 const uint64_t EndPrologueOffset = PrologueLength + Cursor.tell();
397 MinInstLength = DebugLineData.getU8(Cursor);
399 MaxOpsPerInst = DebugLineData.getU8(Cursor);
400 DefaultIsStmt = DebugLineData.getU8(Cursor);
401 LineBase = DebugLineData.getU8(Cursor);
402 LineRange = DebugLineData.getU8(Cursor);
403 OpcodeBase = DebugLineData.getU8(Cursor);
405 if (Cursor && OpcodeBase == 0) {
414 } else if (Cursor) {
417 uint8_t OpLen = DebugLineData.getU8(Cursor);
422 *OffsetPtr = Cursor.tell();
426 if (!Cursor)
430 PrologueOffset, toString(Cursor.takeError()).c_str());
713 /// Parse a ULEB128 using the specified \p Cursor. \returns the parsed value on
714 /// success, or None if \p Cursor is in a failing state.
717 DataExtractor::Cursor &Cursor) {
718 T Value = Data.getULEB128(Cursor);
719 if (Cursor)
799 DataExtractor::Cursor Cursor(*OffsetPtr);
805 uint8_t Opcode = TableData.getU8(Cursor);
808 if (Cursor && Verbose)
814 uint64_t Len = TableData.getULEB128(Cursor);
815 uint64_t ExtOffset = Cursor.tell();
819 if (Cursor && Verbose)
821 if (!Cursor) {
824 RecoverableErrorHandler(Cursor.takeError());
826 *OffsetPtr = Cursor.tell();
830 uint8_t SubOpcode = TableData.getU8(Cursor);
833 uint64_t OperandOffset = Cursor.tell();
846 // No need to test the Cursor is valid here, since it must be to get
885 TableData.skip(Cursor, OpcodeAddressSize);
889 Cursor, &State.Row.Address.SectionIndex);
900 if (Cursor && Verbose) {
931 const char *Name = TableData.getCStr(Cursor);
934 FileEntry.DirIdx = TableData.getULEB128(Cursor);
935 FileEntry.ModTime = TableData.getULEB128(Cursor);
936 FileEntry.Length = TableData.getULEB128(Cursor);
938 if (Cursor && Verbose)
946 State.Row.Discriminator = TableData.getULEB128(Cursor);
947 if (Cursor && Verbose)
952 if (Cursor && Verbose)
957 TableData.skip(Cursor, Len - 1);
965 if (Cursor && Cursor.tell() != End)
970 ExtOffset, Len, Cursor.tell() - ExtOffset));
971 if (!Cursor && Verbose) {
972 DWARFDataExtractor::Cursor ByteCursor(OperandOffset);
984 // In that case, throw away the error, as the main Cursor's error will
1005 parseULEB128<uint64_t>(TableData, Cursor)) {
1017 int64_t LineDelta = TableData.getSLEB128(Cursor);
1018 if (Cursor) {
1030 parseULEB128<uint16_t>(TableData, Cursor)) {
1041 parseULEB128<uint16_t>(TableData, Cursor)) {
1092 TableData.getRelocatedValue(Cursor, 2);
1093 if (Cursor) {
1116 if (Optional<uint8_t> Isa = parseULEB128<uint8_t>(TableData, Cursor)) {
1135 parseULEB128<uint64_t>(TableData, Cursor))
1156 *OffsetPtr = Cursor.tell();
1165 *OffsetPtr = Cursor.tell();
1177 if (!Cursor && Opcode != 0) {
1180 return Cursor.takeError();
1183 if (!Cursor)
1184 RecoverableErrorHandler(Cursor.takeError());