Sfoglia il codice sorgente

* fixed overflow errors

git-svn-id: trunk@5318 -
Jonas Maebe 19 anni fa
parent
commit
d26ee9dccf
1 ha cambiato i file con 3 aggiunte e 3 eliminazioni
  1. 3 3
      compiler/powerpc/aoptcpu.pas

+ 3 - 3
compiler/powerpc/aoptcpu.pas

@@ -207,11 +207,11 @@ const
     begin
     begin
        // 1 shl 32 = 1 instead of 0 on x86
        // 1 shl 32 = 1 instead of 0 on x86
       if (l1 <> 0) then
       if (l1 <> 0) then
-        result :=  (1 shl (32 - l1) - 1) xor (1 shl (31 - l2) - 1)
+        result :=  longint(cardinal(1) shl (32 - l1) - 1) xor (cardinal(1) shl (31 - l2) - 1)
       else
       else
-        result := not(1 shl (31 - l2) - 1);
+        result := longint(not(cardinal(1) shl (31 - l2) - 1));
       if (l1 > l2) then
       if (l1 > l2) then
-        result := not(result);        
+        result := not(result);
     end;
     end;