Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/corert.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'src/Native/ObjWriter/jitDebugInfo.h')
-rw-r--r--src/Native/ObjWriter/jitDebugInfo.h43
1 files changed, 43 insertions, 0 deletions
diff --git a/src/Native/ObjWriter/jitDebugInfo.h b/src/Native/ObjWriter/jitDebugInfo.h
new file mode 100644
index 000000000..103dff8ad
--- /dev/null
+++ b/src/Native/ObjWriter/jitDebugInfo.h
@@ -0,0 +1,43 @@
+#ifndef JIT_DEBUG_INFO_H
+#define JIT_DEBUG_INFO_H
+
+typedef unsigned int DWORD;
+#define _TARGET_AMD64_ 1
+
+#include "cordebuginfo.h"
+#include "cvconst.h"
+#include "llvm/DebugInfo/CodeView/SymbolRecord.h"
+
+struct DebugLocInfo {
+ int NativeOffset;
+ int FileId;
+ int LineNumber;
+ int ColNumber;
+};
+
+struct DebugVarInfo {
+ std::string Name;
+ int TypeIndex;
+ bool IsParam;
+ std::vector<ICorDebugInfo::NativeVarInfo> Ranges;
+
+ DebugVarInfo() {}
+ DebugVarInfo(char *ArgName, int ArgTypeIndex, bool ArgIsParam)
+ : Name(ArgName), TypeIndex(ArgTypeIndex), IsParam(ArgIsParam) {}
+};
+
+typedef unsigned short CVRegMapping;
+
+#define CVREGDAT(p2, cv) cv
+
+const CVRegMapping cvRegMapAmd64[] = {
+ CVREGDAT(REGNUM_RAX, CV_AMD64_RAX), CVREGDAT(REGNUM_RCX, CV_AMD64_RCX),
+ CVREGDAT(REGNUM_RDX, CV_AMD64_RDX), CVREGDAT(REGNUM_RBX, CV_AMD64_RBX),
+ CVREGDAT(REGNUM_RSP, CV_AMD64_RSP), CVREGDAT(REGNUM_RBP, CV_AMD64_RBP),
+ CVREGDAT(REGNUM_RSI, CV_AMD64_RSI), CVREGDAT(REGNUM_RDI, CV_AMD64_RDI),
+ CVREGDAT(REGNUM_R8, CV_AMD64_R8), CVREGDAT(REGNUM_R9, CV_AMD64_R9),
+ CVREGDAT(REGNUM_R10, CV_AMD64_R10), CVREGDAT(REGNUM_R11, CV_AMD64_R11),
+ CVREGDAT(REGNUM_R12, CV_AMD64_R12), CVREGDAT(REGNUM_R13, CV_AMD64_R13),
+ CVREGDAT(REGNUM_R14, CV_AMD64_R14), CVREGDAT(REGNUM_R15, CV_AMD64_R15)};
+
+#endif // JIT_DEBUG_INFO_H