Allow float8, int8, and related datatypes to be passed by value on machines

Tom Lane <tgl@sss.pgh.pa.us>

Commit: 8472bf7a73487b0535c95e299773b882f7523463
Author: Tom Lane <tgl@sss.pgh.pa.us>
Date: 2008-04-21T00:26:47Z
Releases: 8.4.0
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.

Files

PathChange+/−
configure modified +133 −0
configure.in modified +34 −1
contrib/btree_gist/btree_cash.c modified +1 −1
contrib/btree_gist/btree_time.c modified +42 −22
contrib/btree_gist/btree_ts.c modified +49 −34
contrib/btree_gist/btree_utils_num.c modified +30 −5
doc/src/sgml/installation.sgml modified +35 −1
src/backend/access/transam/xlog.c modified +39 −5
src/backend/bootstrap/bootstrap.c modified +2 −2
src/backend/catalog/genbki.sh modified +12 −1
src/backend/commands/analyze.c modified +2 −2
src/backend/optimizer/plan/planagg.c modified +3 −3
src/backend/parser/parse_node.c modified +2 −2
src/backend/utils/adt/cash.c modified +1 −18
src/backend/utils/adt/float.c modified +4 −5
src/backend/utils/adt/int8.c modified +10 −10
src/backend/utils/adt/numeric.c modified +11 −3
src/backend/utils/adt/tsquery_gist.c modified +35 −38
src/backend/utils/fmgr/fmgr.c modified +54 −8
src/backend/utils/fmgr/README modified +17 −18
src/backend/utils/init/flatfiles.c modified +8 −7
src/bin/pg_controldata/pg_controldata.c modified +5 −1
src/bin/pg_resetxlog/pg_resetxlog.c modified +9 −3
src/include/catalog/catversion.h modified +2 −2
src/include/catalog/pg_attribute.h modified +7 −7
src/include/catalog/pg_control.h modified +7 −3
src/include/catalog/pg_type.h modified +8 −8
src/include/c.h modified +1 −17
src/include/fmgr.h modified +9 −2
src/include/pg_config.h.in modified +15 −0
src/include/postgres.h modified +47 −10
src/include/tsearch/ts_utils.h modified +6 −1
src/include/utils/cash.h modified +6 −0
src/test/regress/expected/type_sanity.out modified +2 −1
src/test/regress/sql/type_sanity.sql modified +2 −1
src/tools/msvc/Genbki.pm modified +11 −1