Changeset 308 in dev for trunk/abdev/BasicCompiler64/Opcode.h
- Timestamp:
- Aug 29, 2007, 9:05:22 AM (17 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/abdev/BasicCompiler64/Opcode.h
r263 r308 16 16 17 17 extern int cp; 18 extern int obp;19 extern char *OpBuffer;20 18 21 19 #define breakpoint compiler.codeGenerator.PutOld( (char)0xCC ); … … 45 43 46 44 47 class CStackFrame 48 { 49 /////////////////////////// 50 // スタックフレーム管理 51 /////////////////////////// 52 53 PertialSchedules pertialSchedules; 54 55 int lowest_sp; //スタックポインタの最下位位置 56 int now_sp; //スタックポインタ 57 int max_parm_size; //パラメータの最大サイズ 58 59 public: 60 //コンストラクタ 61 CStackFrame(); 62 63 //デストラクタ 64 ~CStackFrame(); 65 66 int GetFrameSize( int localParamSize ); 67 int GetNowSp(); 68 void mov_sp( int reg ); 69 int push(int reg); 70 void push(int xmm_reg,int varSize); 71 void ref_offset_data( int reg, int sp_offset ); 72 void ref(int reg); 73 void ref(int xmm_reg,int varSize); 74 void pop(int reg = REG_NON); 75 void pop(int xmm_reg,int varSize); 76 void parameter_allocate(int size); 77 void RunningSchedule( int stackFrameSize ); 78 79 void error_check(void); 80 }; 81 extern CStackFrame *pobj_sf; 45 extern StackFrame *pobj_sf; 82 46 83 47 … … 188 152 189 153 //Compile_Calc.cpp 190 void SetVariableFromRax( int VarType,int CalcType,RELATIVE_VAR *pRelativeVar);154 void SetVariableFromRax( const Type &varType, int CalcType,RELATIVE_VAR *pRelativeVar); 191 155 void OpcodeCalc(const char *Command); 192 156 … … 224 188 225 189 //NumOpe_TypeOperation.cpp 226 void ExtendTypeTo64( int type,int reg);227 void ExtendTypeTo32( int type,int reg);228 void ExtendTypeTo16( int type,int reg);190 void ExtendTypeTo64( const Type &oldType, int reg ); 191 void ExtendTypeTo32( const Type &oldType, int reg ); 192 void ExtendTypeTo16( const Type &oldType, int reg ); 229 193 void ChangeTypeToXmm_Double(int type,int xmm_reg,int general_reg); 230 194 void ChangeTypeToXmm_Single(int type,int xmm_reg,int general_reg); 231 void ChangeTypeToWhole( int OldType,int NewType,int reg,int xmm_reg);195 void ChangeTypeToWhole( const Type &oldType, const Type &newType, int reg, int xmm_reg ); 232 196 void SetOneTermToReg_RealCalc(int TermType,int *pXmmReg); 233 197 void SetOneTermToReg_Whole64Calc(int TermType,int *pReg); … … 251 215 void SetXmmReg_DoubleVariable(RELATIVE_VAR *pRelativeVar,int xmm_reg); 252 216 void SetXmmReg_SingleVariable(RELATIVE_VAR *pRelativeVar,int xmm_reg); 253 void SetReg_WholeVariable( int type,RELATIVE_VAR *pRelativeVar,int reg);217 void SetReg_WholeVariable( const Type &type, RELATIVE_VAR *pRelativeVar,int reg); 254 218 255 219 //Compile_Interface.cpp … … 269 233 #define DIMFLAG_STATIC 0x04 270 234 #define DIMFLAG_CONST 0x08 271 void dim( char *VarName, const Subscripts &subscripts, Type &type, const char *InitBuf,const char *ConstractParameter,DWORD dwFlags);235 void dim( char *VarName, const Subscripts &subscripts, const Type &type, const char *InitBuf,const char *ConstractParameter,DWORD dwFlags); 272 236 void SetVarPtrToReg(int reg,RELATIVE_VAR *pRelativeVar); 273 237 bool Compile_AddGlobalRootsForGc(); … … 328 292 #define PROCFLAG_NEW 1 329 293 bool Opcode_CallProcPtr(const char *variable, const char *lpszParms,ProcPointer *pProcPointer); 330 bool Opcode_CallProc(const char *Parameter,const UserProc *pUserProc,DWORD dwFlags,const char *ObjectName ,int RefType);294 bool Opcode_CallProc(const char *Parameter,const UserProc *pUserProc,DWORD dwFlags,const char *ObjectName); 331 295 bool Opcode_CallDllProc( const char *lpszParms,DllProc *pDllProc); 332 296
Note:
See TracChangeset
for help on using the changeset viewer.