Allow float8, int8, and related datatypes to be passed by value on machines
authorTom Lane <tgl@sss.pgh.pa.us>
Mon, 21 Apr 2008 00:26:47 +0000 (00:26 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Mon, 21 Apr 2008 00:26:47 +0000 (00:26 +0000)
commit8472bf7a73487b0535c95e299773b882f7523463
treef8cf1ad8529e819aec4d93cdcbf848996f4e3680
parentbe939544a68f852107c912da2f35f5d36958deb2
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.
36 files changed:
configure
configure.in
contrib/btree_gist/btree_cash.c
contrib/btree_gist/btree_time.c
contrib/btree_gist/btree_ts.c
contrib/btree_gist/btree_utils_num.c
doc/src/sgml/installation.sgml
src/backend/access/transam/xlog.c
src/backend/bootstrap/bootstrap.c
src/backend/catalog/genbki.sh
src/backend/commands/analyze.c
src/backend/optimizer/plan/planagg.c
src/backend/parser/parse_node.c
src/backend/utils/adt/cash.c
src/backend/utils/adt/float.c
src/backend/utils/adt/int8.c
src/backend/utils/adt/numeric.c
src/backend/utils/adt/tsquery_gist.c
src/backend/utils/fmgr/README
src/backend/utils/fmgr/fmgr.c
src/backend/utils/init/flatfiles.c
src/bin/pg_controldata/pg_controldata.c
src/bin/pg_resetxlog/pg_resetxlog.c
src/include/c.h
src/include/catalog/catversion.h
src/include/catalog/pg_attribute.h
src/include/catalog/pg_control.h
src/include/catalog/pg_type.h
src/include/fmgr.h
src/include/pg_config.h.in
src/include/postgres.h
src/include/tsearch/ts_utils.h
src/include/utils/cash.h
src/test/regress/expected/type_sanity.out
src/test/regress/sql/type_sanity.sql
src/tools/msvc/Genbki.pm