constopti.h
来自「一个很全的编译器程序,有各种文法的代码,各种方法都分开写的」· C头文件 代码 · 共 64 行
H
64 行
// constOpti.h: interface for the CconstOpti class.
//
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_CONSTOPTI_H__DDC0058A_D14F_4F55_800B_A96930F52958__INCLUDED_)
#define AFX_CONSTOPTI_H__DDC0058A_D14F_4F55_800B_A96930F52958__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include "global.h"
class CconstOpti : public Cglobal
{
public:
CconstOpti();
virtual ~CconstOpti();
Cglobal::CodeFile * ConstOptimize(CodeFile *firstCode) ;
/*常量定值表*/
ConstDefT *table;
/*指向各基本块的指针*/
CodeFile *baseBlock[100];
/********** 实用函数 ***********/
int DivBaseBlock(CodeFile *firstCode);
void PrintBaseBlock(int blocknum);
//重复:各个优化都有。
void PrintMidCode(CodeFile *firstCode);
void PrintOneCode(CodeFile *code);
void PrintCodeName(CodeKind kind);
void PrintContent(ArgRecord *arg);
//
/*********** 常量表达式优化函数 *******/
void OptiBlock(int i) ;
bool ArithC( CodeFile *code) ;
void SubstiArg(CodeFile *code,int i);
bool FindConstT(ArgRecord *arg, ConstDefT **Entry);
void AppendTable(ArgRecord *arg , int result);
void DelConst(ArgRecord *arg);
void printConstTable(int i);
};
#endif // !defined(AFX_CONSTOPTI_H__DDC0058A_D14F_4F55_800B_A96930F52958__INCLUDED_)
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?