diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2008-04-21 00:26:47 +0000 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2008-04-21 00:26:47 +0000 |
commit | 8472bf7a73487b0535c95e299773b882f7523463 (patch) | |
tree | f8cf1ad8529e819aec4d93cdcbf848996f4e3680 /doc/src | |
parent | be939544a68f852107c912da2f35f5d36958deb2 (diff) |
Allow float8, int8, and related datatypes to be passed by value on machines
where Datum is 8 bytes wide. Since this will break old-style C functions
(those still using version 0 calling convention) that have arguments or
results of these types, provide a configure option to disable it and retain
the old pass-by-reference behavior. Likewise, provide a configure option
to disable the recently-committed float4 pass-by-value change.
Zoltan Boszormenyi, plus configurability stuff by me.
Diffstat (limited to 'doc/src')
-rw-r--r-- | doc/src/sgml/installation.sgml | 36 |
1 files changed, 35 insertions, 1 deletions
diff --git a/doc/src/sgml/installation.sgml b/doc/src/sgml/installation.sgml index e0de70e91f1..0fad43d701c 100644 --- a/doc/src/sgml/installation.sgml +++ b/doc/src/sgml/installation.sgml @@ -1,4 +1,4 @@ -<!-- $PostgreSQL: pgsql/doc/src/sgml/installation.sgml,v 1.306 2008/03/30 04:08:15 neilc Exp $ --> +<!-- $PostgreSQL: pgsql/doc/src/sgml/installation.sgml,v 1.307 2008/04/21 00:26:44 tgl Exp $ --> <chapter id="installation"> <title><![%standalone-include[<productname>PostgreSQL</>]]> @@ -1033,6 +1033,40 @@ su - postgres </varlistentry> <varlistentry> + <term><option>--disable-float4-byval</option></term> + <listitem> + <para> + Disable passing float4 values <quote>by value</>, causing them + to be passed <quote>by reference</> instead. This option costs + performance, but may be needed for compatibility with old + user-defined functions that are written in C and use the + <quote>version 0</> calling convention. A better long-term + solution is to update any such functions to use the + <quote>version 1</> calling convention. + </para> + </listitem> + </varlistentry> + + <varlistentry> + <term><option>--disable-float8-byval</option></term> + <listitem> + <para> + Disable passing float8 values <quote>by value</>, causing them + to be passed <quote>by reference</> instead. This option costs + performance, but may be needed for compatibility with old + user-defined functions that are written in C and use the + <quote>version 0</> calling convention. A better long-term + solution is to update any such functions to use the + <quote>version 1</> calling convention. + Note that this option affects not only float8, but also int8 and some + related types such as timestamp. + On 32-bit platforms, <option>--disable-float8-byval</> is the default + and it is not allowed to select <option>--enable-float8-byval</>. + </para> + </listitem> + </varlistentry> + + <varlistentry> <term><option>--disable-segmented-files</option></term> <listitem> <para> |