source: dev/BasicCompiler_Common/DebugSection.h@ 52

Last change on this file since 52 was 15, checked in by dai_9181, 18 years ago

LexicalAnalysisを廃止。

File size: 1.6 KB
Line 
1
2class CDebugSection{
3public:
4 char szNowFilePath[MAX_PATH];
5
6 char *buffer;
7 int length;
8
9
10 ////////////////////////////////////
11 // デバッグ用の固有情報
12
13 //イメージベース
14 DWORD dwImageBase;
15
16 //リライタブルセクションのRVA
17 DWORD dwRVA_RWSection;
18
19 //コードセクションのRAVとサイズ
20 DWORD dwRVA_CodeSection;
21 int SizeOf_CodeSection;
22
23 //インクルード情報
24 INCLUDEFILEINFO IncludeFileInfo;
25
26 //ソースコード
27 char *pBaseBuffer;
28 char *basbuf;
29
30 //コードと行番号の関係
31 int MaxLineInfoNum;
32 LINEINFO *pLineInfo;
33
34 // クラス情報
35 CDBClass *pobj_DBClass;
36
37 // TypeDef情報
38 CDBTypeDef *pobj_DBTypeDef;
39
40 //定数を取得
41 CONSTINFO **ppConstHash;
42
43 //グローバル変数に関する情報
44 VARIABLE *GlobalVar;
45 int MaxGlobalVarNum;
46
47 //グローバル実行領域のサイズ
48 int GlobalOpBufferSize;
49
50 //プロシージャ
51 SUBINFO **ppSubHash;
52 int SubNum;
53
54 SUBINFO *pSub_DebugSys_EndProc;
55
56 //ネイティブコードバッファ
57 char *OpBuffer;
58
59 //シングルステップ用コードバッファ
60 char *SingleStepCodeBuffer;
61
62 //ブレークポイント用コードバッファ
63 char *BreakStepCodeBuffer;
64
65
66 ////////////////////////////////////
67
68
69 CDebugSection();
70 ~CDebugSection();
71
72 void make(void);
73private:
74 void UpdateBreakPoint(void);
75 char *MakeSingleStepCode(void);
76 BOOL __load(void);
77public:
78 BOOL load(HMODULE hModule);
79
80 void choice(void);
81
82 void DeleteDebugInfo(void);
83};
84
85class CDBDebugSection{
86public:
87 CDebugSection **ppobj_ds;
88 int num;
89
90 CDebugSection *pobj_now;
91
92 CDBDebugSection();
93 ~CDBDebugSection();
94
95 BOOL add(HMODULE hModule);
96 void del(HMODULE hModule);
97
98 void choice(int index);
99
100};
101
102extern CDBDebugSection *pobj_DBDebugSection;
Note: See TracBrowser for help on using the repository browser.