소스 검색

* fixed bugs due to change of the value field of tlocation from aword to
aint

Jonas Maebe 21 년 전
부모
커밋
e737e39888
1개의 변경된 파일12개의 추가작업 그리고 8개의 파일을 삭제
  1. 12 8
      compiler/powerpc/nppcadd.pas

+ 12 - 8
compiler/powerpc/nppcadd.pas

@@ -196,19 +196,19 @@ interface
 {$endif extdebug}
             if (nodetype in [equaln,unequaln]) then
               if (unsigned and
-                  (right.location.value > high(word))) or
+                  (aword(right.location.value) > high(word))) or
                  (not unsigned and
-                  (longint(right.location.value) < low(smallint)) or
-                   (longint(right.location.value) > high(smallint))) then
+                  (aint(right.location.value) < low(smallint)) or
+                   (aint(right.location.value) > high(smallint))) then
                 { we can then maybe use a constant in the 'othersigned' case
                  (the sign doesn't matter for // equal/unequal)}
                 unsigned := not unsigned;
 
             if (unsigned and
-                ((right.location.value) <= high(word))) or
+                (aword(right.location.value) <= high(word))) or
                (not(unsigned) and
-                (longint(right.location.value) >= low(smallint)) and
-                (longint(right.location.value) <= high(smallint))) then
+                (aint(right.location.value) >= low(smallint)) and
+                (aint(right.location.value) <= high(smallint))) then
                useconst := true
             else
               begin
@@ -524,7 +524,7 @@ interface
                    internalerror(43244);
                   if (right.location.loc = LOC_CONSTANT) then
                     cg.a_op_const_reg_reg(exprasmlist,OP_OR,OS_INT,
-                      1 shl right.location.value,
+                      aint(aword(1) shl aword(right.location.value)),
                       left.location.register,location.register)
                   else
                     begin
@@ -1458,7 +1458,11 @@ begin
 end.
 {
   $Log$
-  Revision 1.50  2004-10-25 15:36:47  peter
+  Revision 1.51  2004-10-26 18:22:31  jonas
+    * fixed bugs due to change of the value field of tlocation from aword to
+      aint
+
+  Revision 1.50  2004/10/25 15:36:47  peter
     * save standard registers moved to tcgobj
 
   Revision 1.49  2004/09/25 14:23:54  peter