Преглед изворни кода

* align needs to be unsigned, patch from Burkhard Carstens

git-svn-id: trunk@4090 -
peter пре 19 година
родитељ
комит
fc3e5f68c8
2 измењених фајлова са 6 додато и 6 уклоњено
  1. 4 4
      rtl/inc/generic.inc
  2. 2 2
      rtl/inc/systemh.inc

+ 4 - 4
rtl/inc/generic.inc

@@ -990,7 +990,7 @@ procedure inclocked(var l:int64);
 
 
 
 
 
 
-function align(addr : PtrInt;alignment : PtrInt) : PtrInt;{$ifdef SYSTEMINLINE}inline;{$endif}
+function align(addr : PtrUInt;alignment : PtrUInt) : PtrUInt;{$ifdef SYSTEMINLINE}inline;{$endif}
   begin
   begin
     if addr mod alignment<>0 then
     if addr mod alignment<>0 then
       result:=addr+(alignment-(addr mod alignment))
       result:=addr+(alignment-(addr mod alignment))
@@ -999,10 +999,10 @@ function align(addr : PtrInt;alignment : PtrInt) : PtrInt;{$ifdef SYSTEMINLINE}i
   end;
   end;
 
 
 
 
-function align(addr : Pointer;alignment : PtrInt) : Pointer;{$ifdef SYSTEMINLINE}inline;{$endif}
+function align(addr : Pointer;alignment : PtrUInt) : Pointer;{$ifdef SYSTEMINLINE}inline;{$endif}
   begin
   begin
-    if PtrInt(addr) mod alignment<>0 then
-      result:=pointer(addr+(alignment-(PtrInt(addr) mod alignment)))
+    if PtrUInt(addr) mod alignment<>0 then
+      result:=pointer(addr+(alignment-(PtrUInt(addr) mod alignment)))
     else
     else
       result:=addr;
       result:=addr;
   end;
   end;

+ 2 - 2
rtl/inc/systemh.inc

@@ -434,8 +434,8 @@ Function Swap (X : Cardinal) : Cardinal;{$ifdef SYSTEMINLINE}inline;{$endif}[int
 Function Swap (X : QWord) : QWord;{$ifdef SYSTEMINLINE}inline;{$endif}[internconst:fpc_in_const_swap_qword];
 Function Swap (X : QWord) : QWord;{$ifdef SYSTEMINLINE}inline;{$endif}[internconst:fpc_in_const_swap_qword];
 Function swap (X : Int64) : Int64;{$ifdef SYSTEMINLINE}inline;{$endif}[internconst:fpc_in_const_swap_qword];
 Function swap (X : Int64) : Int64;{$ifdef SYSTEMINLINE}inline;{$endif}[internconst:fpc_in_const_swap_qword];
 
 
-Function Align (Addr : PtrInt; Alignment : PtrInt) : PtrInt;{$ifdef SYSTEMINLINE}inline;{$endif}
-Function Align (Addr : Pointer; Alignment : PtrInt) : Pointer;{$ifdef SYSTEMINLINE}inline;{$endif}
+Function Align (Addr : PtrUInt; Alignment : PtrUInt) : PtrUInt;{$ifdef SYSTEMINLINE}inline;{$endif}
+Function Align (Addr : Pointer; Alignment : PtrUInt) : Pointer;{$ifdef SYSTEMINLINE}inline;{$endif}
 
 
 Function  Random(l:longint):longint;
 Function  Random(l:longint):longint;
 Function  Random(l:int64):int64;
 Function  Random(l:int64):int64;