fpc/rtl/arm/math.inc
Jonas Maebe 6ba8dc7146 + support for the ARM hard float EABI on Linux (patch by Peter Green):
o new eabihf (hard float) abi
   o vfpv3_d16 variant of VFP (default variant used by EABI assemblers: VFPv3
     with only 16 double registers instead of 32) and pass it to GNU as
   o make the odd numbered single precision floating point VFP registers
     available for explicit allocation for use by the calling convention
  * fixed copy/paste error in stdname of S30 register
  -> use -dFPC_ARMHF to create an ARM eabi hard float compiler
  (mantis #21554)

git-svn-id: trunk@20660 -
2012-03-29 20:50:09 +00:00

78 lines
2.4 KiB
PHP

{
This file is part of the Free Pascal run time library.
Copyright (c) 2003 by the Free Pascal development team.
Implementation of mathematical Routines (only for real)
See the file COPYING.FPC, included in this distribution,
for details about the copyright.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
**********************************************************************}
{$if defined(FPUFPA) or defined(FPUFPA10) or defined(FPUFPA11) or defined(FPUVFPV2) or defined(FPUVFPV3) or defined(FPUVFPV3_D16)}
{$define FPC_SYSTEM_HAS_ABS}
function fpc_abs_real(d : ValReal) : ValReal;compilerproc;
begin
{ Function is handled internal in the compiler }
runerror(207);
result:=0;
end;
{$define FPC_SYSTEM_HAS_SQR}
function fpc_sqr_real(d : ValReal) : ValReal;compilerproc;
begin
{ Function is handled internal in the compiler }
runerror(207);
result:=0;
end;
{$ifndef FPC_SYSTEM_HAS_SQRT}
{$define FPC_SYSTEM_HAS_SQRT}
function fpc_sqrt_real(d : ValReal) : ValReal;compilerproc;
begin
{ Function is handled internal in the compiler }
runerror(207);
result:=0;
end;
{$endif FPC_SYSTEM_HAS_SQRT}
{$endif}
(* atn isn't supported by the linux fpe it seems
{$define FPC_SYSTEM_HAS_ARCTAN}
function fpc_arctan_real(d : extended) : extended;compilerproc;
begin
{ Function is handled internal in the compiler }
runerror(207);
result:=0;
end;
*)
(* lgn isn't supported by the linux fpe it seems
{$define FPC_SYSTEM_HAS_LN}
function fpc_ln_real(d : extended) : extended;compilerproc;
begin
{ Function is handled internal in the compiler }
runerror(207);
result:=0;
end;
*)
(* sind isn't supported by the linux fpe it seems
{$define FPC_SYSTEM_HAS_SIN}
function fpc_sin_real(d : extended) : extended;compilerproc;
begin
{ Function is handled internal in the compiler }
runerror(207);
result:=0;
end;
*)
(* cos isn't supported by the linux fpe it seems
{$define FPC_SYSTEM_HAS_COS}
function fpc_cos_real(d : extended) : extended;compilerproc;
begin
{ Function is handled internal in the compiler }
runerror(207);
result:=0;
end;
*)