Commit Graph

53 Commits

Author SHA1 Message Date
michael
a9205c9fba * Fix bug ID #32837, correct Mantissa and Fraction in float helpers, patch from Bart Broersma
git-svn-id: trunk@39346 -
2018-06-29 20:51:32 +00:00
michael
e46b89c8bb * Patch from Ondrej Pokorny to fix camelcase (bug ID 4b46872)
git-svn-id: trunk@38619 -
2018-03-24 14:39:56 +00:00
pierre
82dce8d7e1 Add FPC_SOFT_FPUX80 conditional code for 80-bit float type using soft float unit
git-svn-id: trunk@37294 -
2017-09-21 14:10:03 +00:00
Károly Balogh
2d8313165d m68k: support FFU exception settings, also reworked FPU initalization
git-svn-id: trunk@36618 -
2017-06-30 02:38:14 +00:00
florian
7180d184c5 + implements TExtended80Rec, TDoubleRec, TSingleRec
+ test

git-svn-id: trunk@29084 -
2014-11-16 20:47:33 +00:00
florian
bb129a6d6c * renamed overloaded fma functions into functions encoding explicitly the type
git-svn-id: trunk@27766 -
2014-05-11 11:51:41 +00:00
sergei
b16c6f8ced * i386 and x86_64 changes for Delphi compatibility:
* 'mxcsr' variable made public and renamed to DefaultMXCSR.
  * GetSSECSR and SetSSECSR renamed to GetMXCSR and SetMXCSR, respectively. Previous names continue to exist as deprecated aliases.

git-svn-id: trunk@27656 -
2014-04-25 15:10:12 +00:00
florian
d88d644925 + support for FMA intrinsic: if there is no hardware support, the compiler throws an error.
Currently it is implemented only for x86-CPUs supporting the FMA extension. While it would
  be possible to implement it in software or simulate fma(<single>,<single>,<single>) using
  double operations, it makes no sense in my opinion to do so.

git-svn-id: trunk@27564 -
2014-04-13 19:21:54 +00:00
sergei
94a045aa3d * Moved declarations of TFPURoundingMode,TFPUExceptionMask and TFPUPrecisionMode to System unit. Declarations in Math unit changed to aliases.
* Changed type of softfloat_exception_mask and softfloat_exception_flags to TFPUExceptionMask, softfloat_rounding_mode to TFPURoundingMode.
- Cleaned out numerous conversions happening when getting/setting exception mask and rounding mode.

git-svn-id: trunk@27215 -
2014-03-20 22:44:46 +00:00
nickysn
74cd67b85c + added 8087 initialization to the msdos rtl (8087 presence detection is still a TODO)
git-svn-id: branches/i8086@24140 -
2013-04-03 16:03:45 +00:00
florian
e6f2c8cbd3 * turn off threadvars in softfpu if threading is not enabled
git-svn-id: trunk@23258 -
2012-12-31 16:31:03 +00:00
florian
4ac1deb50b * moved float_rounding_mode to systemh.inc; renamed to softfloat_rounding_mode
git-svn-id: trunk@11219 -
2008-06-12 20:23:37 +00:00
micha
83b7f81f81 + add no-fpu support to compiler/rtl for powerpc-linux (-Cfnone)
git-svn-id: trunk@10422 -
2008-03-02 12:59:02 +00:00
florian
b3a1868ff0 * correct masking of exceptions in genmath code
git-svn-id: trunk@5965 -
2007-01-14 10:44:10 +00:00
florian
47fac4ee6e * moved *SSECSR to system unit
* exposed cpu feature detection on i386 from system unit
+ SafeLoadLibrary

git-svn-id: trunk@3481 -
2006-05-11 19:13:54 +00:00
florian
89f8474388 * unified and moved some win32/win64 stuff
+ more units on win64 compile

git-svn-id: trunk@3131 -
2006-04-02 20:52:17 +00:00
florian
b1bd426009 + fpower10 implemented
git-svn-id: trunk@1099 -
2005-09-17 18:56:32 +00:00
florian
ad3b9b9464 * windows rtl restructuring to share code between win32 and win64
* BeginThread can take a qword on 64 bit targets as stacksize

git-svn-id: trunk@287 -
2005-06-08 19:08:49 +00:00
michael
3a2eaa94b1 + Removed INTERNCONSTINTF define
git-svn-id: trunk@267 -
2005-06-07 22:04:18 +00:00
peter
4ace790492 * remove $Log
git-svn-id: trunk@231 -
2005-06-07 09:47:55 +00:00
fpc
790a4fe2d3 * log and id tags removed
git-svn-id: trunk@42 -
2005-05-21 09:42:41 +00:00
fpc
50778076c3 initial import
git-svn-id: trunk@1 -
2005-05-16 18:37:41 +00:00
peter
e417e34496 * truncate log 2005-02-14 17:13:06 +00:00
florian
f093fa9242 - killed power from system unit
* move operator ** to math unit
2005-02-08 20:25:28 +00:00
marco
615c4f3d7c * patch from peter. 2004-12-02 08:11:22 +00:00
peter
4d8460ec2f * float routines all use internproc and compilerproc helpers 2004-11-21 15:35:23 +00:00
michael
5856d367b9 + Patch from peter to fix pasjpeg compile 2004-11-18 10:03:36 +00:00
peter
14eb8f59b4 internconst, internproc and some external declarations moved to interface 2004-11-17 22:19:04 +00:00
Jonas Maebe
0f26252376 + cgenmath with libc math functions. Faster than the routines in genmath
and also have full double support (exp() only has support for values in
    the single range in genmath, for example). Used in FPC_USE_LIBC is
    defined
  * several fixes to allow compilation with -dHASINLINE, but internalerrors
    because of missing support for inlining assembler code
2004-10-09 21:00:46 +00:00
florian
515ee5aef6 * linking problems fixed
+ abi tag added
2004-02-08 15:33:50 +00:00
Jonas Maebe
2af569745c * if currency = int64, FPC_CURRENCY_IS_INT64 is defined
+ round and trunc for currency and comp if FPC_CURRENCY_IS_INT64 is
    defined
  * if currency = orddef, prefer currency -> int64/qword conversion over
    currency -> float conversions
  * optimized currency/currency if currency = orddef
  * TODO: write FPC_DIV_CURRENCY and FPC_MUL_CURRENCY routines to prevent
      precision loss if currency=int64 and bestreal = double
2004-01-02 17:19:04 +00:00
mazen
c959c98665 - fpc_int64_to_double removed as not supported by most cpu targets 2003-01-21 19:36:36 +00:00
mazen
c3321868d5 * many stuff related to RTL fixed 2003-01-20 22:21:36 +00:00
peter
166fe37203 * power returns int64 2003-01-15 00:40:18 +00:00
peter
892e9c864a * i386 fpu controlword functions added 2003-01-03 20:34:02 +00:00
peter
ecc3b24fd4 * round returns int64 2002-10-06 21:26:17 +00:00
peter
01dfac4a4e * old logs removed and tabs fixed 2002-09-07 15:06:34 +00:00
florian
05a95ba5bc * interface of system unit for Linux/PowerPC compiles 2002-07-26 22:46:06 +00:00
peter
21a8c2cc8e * merged fixes from 1.0.x 2001-12-26 21:03:56 +00:00
michael
bec30ba1b5 + Added double2real function from main branch 2001-12-13 20:23:19 +00:00
peter
e7c86006db * m68k updates merged 2001-07-30 21:38:54 +00:00
florian
1a2851eb47 * a lot of small changes:
- setlength is internal
     - win32 graph unit extended
     ....
2000-10-21 18:20:17 +00:00
michael
650fbb86aa + removed logs 2000-07-13 11:32:24 +00:00
michael
e7aca136a1 + Initial import 2000-07-13 06:29:38 +00:00
florian
2eb62408ae * disabled FIXED data type per default 2000-02-15 14:36:57 +00:00
peter
6b66a55cd6 * truncated log 2000-02-09 16:59:28 +00:00
daniel
ec29a31834 * copyright 2000 2000-01-07 16:41:28 +00:00
daniel
a79b4a404b * copyright 2000 added 2000-01-07 16:32:21 +00:00
peter
de0a5038f9 * splitted default_extended from support_extended 1998-08-11 21:39:04 +00:00
peter
bd57e42086 * $ifdef ver0_99_5 updates 1998-08-11 00:04:46 +00:00