postgresql/src/include
Alexander Korotkov 993bdb9f93 pg_attribute_no_sanitize_alignment() macro
Modern gcc and clang compilers offer alignment sanitizers, which help to detect
pointer misalignment.  However, our codebase already contains x86-specific
crc32 computation code, which uses unalignment access.  Thankfully, those
compilers also support the attribute, which disables alignment sanitizers at
the function level.  This commit adds pg_attribute_no_sanitize_alignment(),
which wraps this attribute, and applies it to pg_comp_crc32c_sse42() function.

Discussion: https://postgr.es/m/CAPpHfdsne3%3DT%3DfMNU45PtxdhSL_J2PjLTeS8rwKnJzUR4YNd4w%40mail.gmail.com
Discussion: https://postgr.es/m/475514.1612745257%40sss.pgh.pa.us
Author: Alexander Korotkov, revised by Tom Lane
Reviewed-by: Tom Lane
2021-02-12 17:23:35 +03:00
..
access Remove obsolete IndexBulkDeleteResult stats field. 2021-02-11 16:49:41 -08:00
bootstrap Update copyright for 2021 2021-01-02 13:06:25 -05:00
catalog Allow multiple xacts during table sync in logical replication. 2021-02-12 07:41:51 +05:30
commands Allow multiple xacts during table sync in logical replication. 2021-02-12 07:41:51 +05:30
common Introduce SHA1 implementations in the cryptohash infrastructure 2021-01-23 11:33:04 +09:00
datatype Update copyright for 2021 2021-01-02 13:06:25 -05:00
executor Fix permission checks on constraint violation errors on partitions. 2021-02-08 11:01:51 +02:00
fe_utils Generalize parallel slot result handling. 2021-02-05 16:08:45 -05:00
foreign Implement support for bulk inserts in postgres_fdw 2021-01-20 23:57:27 +01:00
jit Update copyright for 2021 2021-01-02 13:06:25 -05:00
lib Update copyright for 2021 2021-01-02 13:06:25 -05:00
libpq Simplify code related to compilation of SSL and OpenSSL 2021-02-10 15:28:19 +09:00
mb Add mbverifystr() functions specific to each encoding. 2021-01-28 14:40:07 +02:00
nodes Fix permission checks on constraint violation errors on partitions. 2021-02-08 11:01:51 +02:00
optimizer Remove [Merge]AppendPath.partitioned_rels. 2021-02-01 14:43:54 -05:00
parser Remove no-longer-used RTE argument of markVarForSelectPriv(). 2021-02-11 11:23:25 -05:00
partitioning Remove [Merge]AppendPath.partitioned_rels. 2021-02-01 14:43:54 -05:00
port Minor header cleanup for the new iovec code. 2021-01-14 18:30:17 +13:00
portability Update copyright for 2021 2021-01-02 13:06:25 -05:00
postmaster Update copyright for 2021 2021-01-02 13:06:25 -05:00
regex Update copyright for 2021 2021-01-02 13:06:25 -05:00
replication Allow multiple xacts during table sync in logical replication. 2021-02-12 07:41:51 +05:30
rewrite SEARCH and CYCLE clauses 2021-02-01 14:32:51 +01:00
snowball Update copyright for 2021 2021-01-02 13:06:25 -05:00
statistics Update copyright for 2021 2021-01-02 13:06:25 -05:00
storage Revert "Display the time when the process started waiting for the lock, in pg_locks." 2021-02-09 18:30:40 +09:00
tcop Update copyright for 2021 2021-01-02 13:06:25 -05:00
tsearch Update copyright for 2021 2021-01-02 13:06:25 -05:00
utils Preserve pg_attribute.attstattarget across REINDEX CONCURRENTLY 2021-02-10 13:06:48 +09:00
.gitignore Refactor dlopen() support 2018-09-06 11:33:04 +02:00
c.h pg_attribute_no_sanitize_alignment() macro 2021-02-12 17:23:35 +03:00
fmgr.h Update copyright for 2021 2021-01-02 13:06:25 -05:00
funcapi.h Update copyright for 2021 2021-01-02 13:06:25 -05:00
getaddrinfo.h Update copyright for 2021 2021-01-02 13:06:25 -05:00
getopt_long.h Update copyright for 2021 2021-01-02 13:06:25 -05:00
Makefile Build in some knowledge about foreign-key relationships in the catalogs. 2021-02-02 17:11:55 -05:00
miscadmin.h Add idle_session_timeout. 2021-01-06 18:28:52 -05:00
pg_config_ext.h.in Autoconfiscate selection of 64-bit int type for 64-bit large object API. 2012-10-07 21:52:43 -04:00
pg_config_manual.h Simplify code related to compilation of SSL and OpenSSL 2021-02-10 15:28:19 +09:00
pg_config.h.in Introduce --with-ssl={openssl} as a configure option 2021-02-01 19:19:44 +09:00
pg_getopt.h Update copyright for 2021 2021-01-02 13:06:25 -05:00
pg_trace.h Update copyright for 2021 2021-01-02 13:06:25 -05:00
pgstat.h Bump PGSTAT_FILE_FORMAT_ID 2021-01-18 17:51:49 +01:00
pgtar.h Update copyright for 2021 2021-01-02 13:06:25 -05:00
pgtime.h Update copyright for 2021 2021-01-02 13:06:25 -05:00
port.h Provide pg_preadv() and pg_pwritev(). 2021-01-11 15:24:38 +13:00
postgres_ext.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
postgres_fe.h Update copyright for 2021 2021-01-02 13:06:25 -05:00
postgres.h Update copyright for 2021 2021-01-02 13:06:25 -05:00
rusagestub.h Update copyright for 2021 2021-01-02 13:06:25 -05:00
windowapi.h Update copyright for 2021 2021-01-02 13:06:25 -05:00