>      function fpc_sqr_real(d : ValReal) : 
> ValReal;compilerproc;{$ifdef  
> MATHINLINE}inline;{$endif}
>      begin
>        result := d*d;
>      end;
> 
> So yes, this clearly puts the compiler into an endless loop. I'm not  
> sure what would be a clean fix for this (other than completely  
> disabling the transformation; does it improve the generated 
> code that  
> much beyond what CSE can achieve?)

-O2 doesn't optimize the follow into a new call to fpc_sqr_real (svn 18901):

function fpc_sqr_real(d : ValReal) : ValReal;compilerproc;inline;

Begin
  fpc_sqr_real:=d;
  fpc_sqr_real:=fpc_sqr_real*d;
End;

Ludo

_______________________________________________
fpc-devel maillist  -  fpc-devel@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-devel

Reply via email to