2
0
Эх сурвалжийг харах

* made some assembler optimizer methods class methods

git-svn-id: trunk@33929 -
florian 9 жил өмнө
parent
commit
b274599a47

+ 2 - 2
compiler/aoptbase.pas

@@ -61,7 +61,7 @@ unit aoptbase;
         { gets the next tai object after current that contains info relevant }
         { to the optimizer in p1. If there is none, it returns false and     }
         { sets p1 to nil                                                     }
-        Function GetNextInstruction(Current: tai; Var Next: tai): Boolean;
+        class Function GetNextInstruction(Current: tai; Var Next: tai): Boolean;
         { gets the previous tai object after current that contains info  }
         { relevant to the optimizer in last. If there is none, it retuns }
         { false and sets last to nil                                     }
@@ -175,7 +175,7 @@ unit aoptbase;
   end;
 
 
-  Function TAOptBase.GetNextInstruction(Current: tai; Var Next: tai): Boolean;
+  class Function TAOptBase.GetNextInstruction(Current: tai; Var Next: tai): Boolean;
   Begin
     Repeat
       Current := tai(Current.Next);

+ 10 - 10
compiler/aoptobj.pas

@@ -265,12 +265,12 @@ Unit AoptObj;
         Procedure CreateUsedRegs(var regs: TAllUsedRegs);
         Procedure ClearUsedRegs;
         Procedure UpdateUsedRegs(p : Tai);
-        procedure UpdateUsedRegs(var Regs: TAllUsedRegs; p: Tai);
+        class procedure UpdateUsedRegs(var Regs: TAllUsedRegs; p: Tai);
         Function CopyUsedRegs(var dest : TAllUsedRegs) : boolean;
-        Procedure ReleaseUsedRegs(const regs : TAllUsedRegs);
-        Function RegInUsedRegs(reg : TRegister;regs : TAllUsedRegs) : boolean;
-        Procedure IncludeRegInUsedRegs(reg : TRegister;var regs : TAllUsedRegs);
-        Procedure ExcludeRegFromUsedRegs(reg: TRegister;var regs : TAllUsedRegs);
+        class Procedure ReleaseUsedRegs(const regs : TAllUsedRegs);
+        class Function RegInUsedRegs(reg : TRegister;regs : TAllUsedRegs) : boolean;
+        class Procedure IncludeRegInUsedRegs(reg : TRegister;var regs : TAllUsedRegs);
+        class Procedure ExcludeRegFromUsedRegs(reg: TRegister;var regs : TAllUsedRegs);
 
         Function GetAllocationString(const regs : TAllUsedRegs) : string;
 
@@ -893,7 +893,7 @@ Unit AoptObj;
         end;
 
 
-      procedure TAOptObj.UpdateUsedRegs(var Regs : TAllUsedRegs;p : Tai);
+      class procedure TAOptObj.UpdateUsedRegs(var Regs : TAllUsedRegs;p : Tai);
         var
           i : TRegisterType;
         begin
@@ -912,7 +912,7 @@ Unit AoptObj;
       end;
 
 
-      procedure TAOptObj.ReleaseUsedRegs(const regs: TAllUsedRegs);
+      class procedure TAOptObj.ReleaseUsedRegs(const regs: TAllUsedRegs);
         var
           i : TRegisterType;
       begin
@@ -921,20 +921,20 @@ Unit AoptObj;
       end;
 
 
-      Function TAOptObj.RegInUsedRegs(reg : TRegister;regs : TAllUsedRegs) : boolean;
+      class Function TAOptObj.RegInUsedRegs(reg : TRegister;regs : TAllUsedRegs) : boolean;
       begin
         result:=regs[getregtype(reg)].IsUsed(reg);
       end;
 
 
-      procedure TAOptObj.IncludeRegInUsedRegs(reg: TRegister;
+      class procedure TAOptObj.IncludeRegInUsedRegs(reg: TRegister;
        var regs: TAllUsedRegs);
       begin
         include(regs[getregtype(reg)].UsedRegs,getsupreg(Reg));
       end;
 
 
-      procedure TAOptObj.ExcludeRegFromUsedRegs(reg: TRegister;
+      class procedure TAOptObj.ExcludeRegFromUsedRegs(reg: TRegister;
        var regs: TAllUsedRegs);
       begin
         exclude(regs[getregtype(reg)].UsedRegs,getsupreg(Reg));

+ 4 - 4
compiler/x86/aoptx86.pas

@@ -47,8 +47,8 @@ unit aoptx86;
         procedure DebugMsg(const s : string; p : tai);inline;
 
         procedure AllocRegBetween(reg : tregister; p1,p2 : tai;var initialusedregs : TAllUsedRegs);
-        function IsExitCode(p : tai) : boolean;
-        function isFoldableArithOp(hp1 : taicpu; reg : tregister) : boolean;
+        class function IsExitCode(p : tai) : boolean;
+        class function isFoldableArithOp(hp1 : taicpu; reg : tregister) : boolean;
         procedure RemoveLastDeallocForFuncRes(p : tai);
       end;
 
@@ -329,7 +329,7 @@ unit aoptx86;
       end;
 
 
-    function TX86AsmOptimizer.IsExitCode(p : tai) : boolean;
+    class function TX86AsmOptimizer.IsExitCode(p : tai) : boolean;
       var
         hp2,hp3 : tai;
       begin
@@ -358,7 +358,7 @@ unit aoptx86;
       end;
 
 
-    function TX86AsmOptimizer.isFoldableArithOp(hp1: taicpu; reg: tregister): boolean;
+    class function TX86AsmOptimizer.isFoldableArithOp(hp1: taicpu; reg: tregister): boolean;
       begin
         isFoldableArithOp := False;
         case hp1.opcode of