Browse Source

* sqr also uses single precision ops for single precision calculations

git-svn-id: trunk@4788 -
Jonas Maebe 19 years ago
parent
commit
32a86f6daa
1 changed files with 7 additions and 1 deletions
  1. 7 1
      compiler/powerpc/nppcinl.pas

+ 7 - 1
compiler/powerpc/nppcinl.pas

@@ -104,10 +104,16 @@ implementation
        end;
 
      procedure tppcinlinenode.second_sqr_real;
+       var
+         op: tasmop;
        begin
          location.loc:=LOC_FPUREGISTER;
          load_fpu_location;
-         current_asmdata.CurrAsmList.concat(taicpu.op_reg_reg_reg(A_FMUL,location.register,
+         if (left.location.size = OS_F32) then
+           op := A_FMULS
+         else
+           op := A_FMUL;
+         current_asmdata.CurrAsmList.concat(taicpu.op_reg_reg_reg(op,location.register,
            left.location.register,left.location.register));
        end;