internal void RegisterMethodLoadHandler(TargetAccess target, TargetAddress info, int index, MethodLoadedHandler handler) { if (!info.IsNull) method_from_jit_info (target, info, handler); else method_load_handlers.Add (index, handler); }
void method_from_jit_info(TargetAccess target, TargetAddress data, MethodLoadedHandler handler) { int size = target.ReadInteger (data); TargetReader reader = new TargetReader (target.ReadMemory (data, size)); reader.BinaryReader.ReadInt32 (); int count = reader.BinaryReader.ReadInt32 (); for (int i = 0; i < count; i++) { TargetAddress address = reader.ReadAddress (); Method method = read_range_entry (target, address); handler (target, method); } }