return true;
}
- [DllImport("mono-symbolicate-native.dll")]
- private static extern bool mono_seq_point_data_get_il_offset (string path, uint method_token, uint method_index, uint native_offset, out uint il_offset);
-
- static MethodInfo methodGetIL;
+ SeqPointInfo seqPointInfo;
private int GetILOffsetFromFile (int methodToken, uint methodIndex, int nativeOffset)
{
- uint ilOffset;
- mono_seq_point_data_get_il_offset (seqPointDataPath, (uint) methodToken, methodIndex, (uint) nativeOffset, out ilOffset);
+ if (seqPointInfo == null)
+ seqPointInfo = SeqPointInfo.Read (seqPointDataPath);
- return (int) ilOffset;
+ return seqPointInfo.GetILOffset (methodToken, methodIndex, nativeOffset);
}
private string GetMethodFullName (MethodBase m)
/r:System.Core.dll \
/r:System.dll
-EXTRA_DISTFILES="mono-symbolicate-native.dll"
-
include ../../build/executable.make
LIB_PATH = $(topdir)/class/lib/$(PROFILE)
@MONO_DEBUG=gen-compact-seq-points $(MONO) --aot=gen-seq-points-file $(TEST_EXE) > /dev/null
$(CHECK_DIFF)
endif
-
-all: mono-symbolicate-native.dll
-
-mono-symbolicate-native.dll:
- cp ../../../mono/mini/mono-sgen mono-symbolicate-native.dll
-
-clean:
- rm -rf mono-symbolicate-native.dll
-
gboolean
mono_seq_point_data_get (SeqPointData *data, guint32 methodToken, guint32 methodIndex, MonoSeqPointInfo** info);
-MONO_API gboolean
+gboolean
mono_seq_point_data_get_il_offset (char *path, guint32 methodToken, guint32 methodIndex, guint32 native_offset, guint32 *il_offset);
#endif /* __MONO_SEQ_POINTS_DATA_H__ */