You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently XD Pascal supports only one (32-bit) floating-point type, Real, which is equivalent to Single in Delphi. All other types, Single, Double, and Extended, are formally equivalent to this Real. Thus, the actual computation precision is always limited to 32-bit representations.
While the Extended type is not very practical (as it is too large and not portable to non-x87 platforms), the Double type could be really useful. The difficulty is that any procedure parameter or temporary value in XD Pascal is stored in a single 32-bit stack cell or register, and all function results are returned via eax. The introduction of the Double type may destroy this homogeneity.
The alternative approach is to switch to 64-bit code generation (#9) and get the Double type 'out-of-the-box'.
The text was updated successfully, but these errors were encountered:
Currently XD Pascal supports only one (32-bit) floating-point type,
Real
, which is equivalent toSingle
in Delphi. All other types,Single
,Double
, andExtended
, are formally equivalent to thisReal
. Thus, the actual computation precision is always limited to 32-bit representations.While the
Extended
type is not very practical (as it is too large and not portable to non-x87 platforms), theDouble
type could be really useful. The difficulty is that any procedure parameter or temporary value in XD Pascal is stored in a single 32-bit stack cell or register, and all function results are returned viaeax
. The introduction of theDouble
type may destroy this homogeneity.The alternative approach is to switch to 64-bit code generation (#9) and get the
Double
type 'out-of-the-box'.The text was updated successfully, but these errors were encountered: