Browse Source

* fixed small bug in a_jmp_flags

Jonas Maebe 23 years ago
parent
commit
e41ba8650a
1 changed files with 6 additions and 3 deletions
  1. 6 3
      compiler/powerpc/cgcpu.pas

+ 6 - 3
compiler/powerpc/cgcpu.pas

@@ -534,7 +534,7 @@ const
          c: tasmcond;
          c: tasmcond;
        begin
        begin
          c := flags_to_cond(f);
          c := flags_to_cond(f);
-         a_jmp(list,A_BC,c.cond,longint(c.cr),l);
+         a_jmp(list,A_BC,c.cond,ord(c.cr)-ord(R_CR0),l);
        end;
        end;
 
 
      procedure tcgppc.g_flags2reg(list: taasmoutput; const f: TResFlags; reg: TRegister);
      procedure tcgppc.g_flags2reg(list: taasmoutput; const f: TResFlags; reg: TRegister);
@@ -546,7 +546,7 @@ const
        begin
        begin
          { get the bit to extract from the conditional register + its }
          { get the bit to extract from the conditional register + its }
          { requested value (0 or 1)                                   }
          { requested value (0 or 1)                                   }
-         testbit := (longint(f.cr) * 4);
+         testbit := (ord(f.cr) * 4);
          case f.flag of
          case f.flag of
            F_EQ,F_NE:
            F_EQ,F_NE:
              bitvalue := f.flag = F_EQ;
              bitvalue := f.flag = F_EQ;
@@ -1098,7 +1098,10 @@ begin
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.10  2001-12-30 17:24:48  jonas
+  Revision 1.11  2002-01-02 14:53:04  jonas
+    * fixed small bug in a_jmp_flags
+
+  Revision 1.10  2001/12/30 17:24:48  jonas
     * range checking is now processor independent (part in cgobj, part in
    cg64f32) and should work correctly again (it needed some changes after
    the changes of the low and high of tordef's to int64)
  * maketojumpbool() is now processor independent (in ncgutil)
  * getregister32 is now called getregisterint
     * range checking is now processor independent (part in cgobj, part in
    cg64f32) and should work correctly again (it needed some changes after
    the changes of the low and high of tordef's to int64)
  * maketojumpbool() is now processor independent (in ncgutil)
  * getregister32 is now called getregisterint
 
 
   Revision 1.9  2001/12/29 15:28:58  jonas
   Revision 1.9  2001/12/29 15:28:58  jonas