void read_data_items(TargetMemoryAccess memory, TargetAddress address,
int start, int end)
{
TargetReader reader = new TargetReader (
memory.ReadMemory (address + start, end - start));
Report.Debug (DebugFlags.JitSymtab,
"READ DATA ITEMS: {0} {1} {2} - {3} {4}", address,
start, end, reader.BinaryReader.Position, reader.Size);
while (reader.BinaryReader.Position + 4 < reader.Size) {
int item_size = reader.BinaryReader.ReadInt32 ();
if (item_size == 0)
break;
DataItemType item_type = (DataItemType)
reader.BinaryReader.ReadInt32 ();
long pos = reader.BinaryReader.Position;
ReadDataItem (memory, item_type, reader);
reader.BinaryReader.Position = pos + item_size;
}
}