Skip to content

Commit 3b41a08

Browse files
committed
Regenerate the two patch files without stray build logs
git add -A in the build worktrees had swept conf.log/make.log/inst.log into both commits. Amended, and the format-patch files refreshed. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Hf9XfkE5ag6jSHEpQ2nZ28
1 parent 5ae9df3 commit 3b41a08

2 files changed

Lines changed: 6 additions & 720 deletions

File tree

‎bench/numeric-accum-inline/0001-inline-accumulator.patch‎

Lines changed: 3 additions & 365 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
From 9dd2f7e8d785b0767d964985a3ffdc259c5949be Mon Sep 17 00:00:00 2001
1+
From 7621b03c327bcb91f54cf1ba1f7bd037b50d96b3 Mon Sep 17 00:00:00 2001
22
From: "Andrei V. Lepikhov" <lepihov@gmail.com>
33
Date: Sat, 8 Aug 2026 20:12:02 +0000
44
Subject: [PATCH] Hold small numeric sum accumulators inline in the aggregate
@@ -29,371 +29,9 @@ enlarged itself once more than it needed to.
2929

3030
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
3131
---
32-
conf.log | 334 ++++++++++++++++++++++++++++++++
33-
inst.log | 0
34-
inst2.log | 0
35-
make.log | 0
36-
make2.log | 0
37-
src/backend/utils/adt/numeric.c | 147 +++++++++++---
38-
6 files changed, 457 insertions(+), 24 deletions(-)
39-
create mode 100644 conf.log
40-
create mode 100644 inst.log
41-
create mode 100644 inst2.log
42-
create mode 100644 make.log
43-
create mode 100644 make2.log
32+
src/backend/utils/adt/numeric.c | 147 ++++++++++++++++++++++++++------
33+
1 file changed, 123 insertions(+), 24 deletions(-)
4434

45-
diff --git a/conf.log b/conf.log
46-
new file mode 100644
47-
index 0000000..213cc54
48-
--- /dev/null
49-
+++ b/conf.log
50-
@@ -0,0 +1,334 @@
51-
+checking build system type... x86_64-pc-linux-gnu
52-
+checking host system type... x86_64-pc-linux-gnu
53-
+checking which template to use... linux
54-
+checking whether NLS is wanted... no
55-
+checking for default port number... 5432
56-
+checking for block size... 8kB
57-
+checking for segment size... 1GB
58-
+checking for WAL block size... 8kB
59-
+checking for gcc... gcc
60-
+checking whether the C compiler works... yes
61-
+checking for C compiler default output file name... a.out
62-
+checking for suffix of executables...
63-
+checking whether we are cross compiling... no
64-
+checking for suffix of object files... o
65-
+checking whether we are using the GNU C compiler... yes
66-
+checking whether gcc accepts -g... yes
67-
+checking for gcc option to accept ISO C89... none needed
68-
+checking for gcc option to accept ISO C11... none needed
69-
+checking for g++... g++
70-
+checking whether we are using the GNU C++ compiler... yes
71-
+checking whether g++ accepts -g... yes
72-
+checking for g++ option to accept ISO C++11... none needed
73-
+checking for gawk... no
74-
+checking for mawk... mawk
75-
+checking for LLVM_CONFIG... llvm-config-18
76-
+configure: using llvm 18.1.3
77-
+checking for CLANG... clang-18
78-
+checking whether gcc supports -Wdeclaration-after-statement, for CFLAGS... yes
79-
+checking whether gcc supports -Werror=vla, for CFLAGS... yes
80-
+checking whether g++ supports -Werror=vla, for CXXFLAGS... yes
81-
+checking whether gcc supports -Werror=unguarded-availability-new, for CFLAGS... no
82-
+checking whether g++ supports -Werror=unguarded-availability-new, for CXXFLAGS... no
83-
+checking whether gcc supports -Wmissing-format-attribute, for CFLAGS... yes
84-
+checking whether g++ supports -Wmissing-format-attribute, for CXXFLAGS... yes
85-
+checking whether gcc supports -Wold-style-declaration, for CFLAGS... yes
86-
+checking whether gcc supports -Wimplicit-fallthrough=5, for CFLAGS... yes
87-
+checking whether g++ supports -Wimplicit-fallthrough=5, for CXXFLAGS... yes
88-
+checking whether gcc supports -Wcast-function-type, for CFLAGS... yes
89-
+checking whether g++ supports -Wcast-function-type, for CXXFLAGS... yes
90-
+checking whether gcc supports -Wshadow=compatible-local, for CFLAGS... yes
91-
+checking whether g++ supports -Wshadow=compatible-local, for CXXFLAGS... yes
92-
+checking whether gcc supports -Wformat-security, for CFLAGS... yes
93-
+checking whether g++ supports -Wformat-security, for CXXFLAGS... yes
94-
+checking whether gcc supports -Wmissing-variable-declarations, for CFLAGS... no
95-
+checking whether gcc supports -fno-strict-aliasing, for CFLAGS... yes
96-
+checking whether g++ supports -fno-strict-aliasing, for CXXFLAGS... yes
97-
+checking whether gcc supports -fwrapv, for CFLAGS... yes
98-
+checking whether g++ supports -fwrapv, for CXXFLAGS... yes
99-
+checking whether gcc supports -fexcess-precision=standard, for CFLAGS... yes
100-
+checking whether g++ supports -fexcess-precision=standard, for CXXFLAGS... yes
101-
+checking whether gcc supports -funroll-loops, for CFLAGS_UNROLL_LOOPS... yes
102-
+checking whether gcc supports -ftree-vectorize, for CFLAGS_VECTORIZE... yes
103-
+checking whether gcc supports -Wunused-command-line-argument, for NOT_THE_CFLAGS... no
104-
+checking whether gcc supports -Wcompound-token-split-by-macro, for NOT_THE_CFLAGS... no
105-
+checking whether gcc supports -Wformat-truncation, for NOT_THE_CFLAGS... yes
106-
+checking whether gcc supports -Wstringop-truncation, for NOT_THE_CFLAGS... yes
107-
+checking whether gcc supports -Wcast-function-type-strict, for NOT_THE_CFLAGS... no
108-
+checking whether gcc supports -fvisibility=hidden, for CFLAGS_SL_MODULE... yes
109-
+checking whether g++ supports -fvisibility=hidden, for CXXFLAGS_SL_MODULE... yes
110-
+checking whether g++ supports -fvisibility-inlines-hidden, for CXXFLAGS_SL_MODULE... yes
111-
+checking whether clang-18 supports -fno-strict-aliasing, for BITCODE_CFLAGS... yes
112-
+checking whether clang-18 -xc++ supports -fno-strict-aliasing, for BITCODE_CXXFLAGS... yes
113-
+checking whether clang-18 supports -fwrapv, for BITCODE_CFLAGS... yes
114-
+checking whether clang-18 -xc++ supports -fwrapv, for BITCODE_CXXFLAGS... yes
115-
+checking whether clang-18 supports -fexcess-precision=standard, for BITCODE_CFLAGS... yes
116-
+checking whether clang-18 -xc++ supports -fexcess-precision=standard, for BITCODE_CXXFLAGS... yes
117-
+checking whether clang-18 supports -mno-outline-atomics, for BITCODE_CFLAGS... no
118-
+checking whether clang-18 supports -mno-outline-atomics, for BITCODE_CXXFLAGS... (cached) no
119-
+checking whether clang-18 supports -Wunused-command-line-argument, for NOT_THE_CFLAGS... yes
120-
+checking whether clang-18 supports -Wcompound-token-split-by-macro, for NOT_THE_CFLAGS... yes
121-
+checking whether clang-18 supports -Wformat-truncation, for NOT_THE_CFLAGS... yes
122-
+checking whether clang-18 supports -Wstringop-truncation, for NOT_THE_CFLAGS... no
123-
+checking whether the C compiler still works... yes
124-
+checking how to run the C preprocessor... gcc -E
125-
+checking for pkg-config... /usr/bin/pkg-config
126-
+checking pkg-config is at least version 0.9.0... yes
127-
+checking whether to build with ICU support... no
128-
+checking whether to build with Tcl... no
129-
+checking whether to build Perl modules... no
130-
+checking whether to build Python modules... no
131-
+checking whether to build with GSSAPI support... no
132-
+checking whether to build with PAM support... no
133-
+checking whether to build with BSD Authentication support... no
134-
+checking whether to build with LDAP support... no
135-
+checking whether to build with Bonjour support... no
136-
+checking whether to build with SELinux support... no
137-
+checking whether to build with systemd support... no
138-
+checking whether to build with liburing support... no
139-
+checking whether to build with libcurl support... no
140-
+checking whether to build with libnuma support... no
141-
+checking whether to build with XML support... no
142-
+checking whether to build with LZ4 support... no
143-
+checking whether to build with ZSTD support... no
144-
+checking for strip... strip
145-
+checking whether it is possible to strip libraries... yes
146-
+checking for ar... ar
147-
+checking for a BSD-compatible install... /usr/bin/install -c
148-
+checking for tar... /usr/bin/tar
149-
+checking whether ln -s works... yes
150-
+checking for a thread-safe mkdir -p... /usr/bin/mkdir -p
151-
+checking for nm... /usr/bin/nm
152-
+checking for bison... /usr/bin/bison
153-
+configure: using bison (GNU Bison) 3.8.2
154-
+checking for flex... /usr/bin/flex
155-
+configure: using flex 2.6.4
156-
+checking for perl... /usr/bin/perl
157-
+configure: using perl 5.38.2
158-
+checking for a sed that does not truncate output... /usr/bin/sed
159-
+checking for grep that handles long lines and -e... /usr/bin/grep
160-
+checking for egrep... /usr/bin/grep -E
161-
+checking for ANSI C header files... yes
162-
+checking for sys/types.h... yes
163-
+checking for sys/stat.h... yes
164-
+checking for stdlib.h... yes
165-
+checking for string.h... yes
166-
+checking for memory.h... yes
167-
+checking for strings.h... yes
168-
+checking for inttypes.h... yes
169-
+checking for stdint.h... yes
170-
+checking for unistd.h... yes
171-
+checking whether gcc is Clang... no
172-
+checking whether pthreads work with -pthread... yes
173-
+checking for joinable pthread attribute... PTHREAD_CREATE_JOINABLE
174-
+checking whether more special flags are required for pthreads... no
175-
+checking for PTHREAD_PRIO_INHERIT... yes
176-
+checking pthread.h usability... yes
177-
+checking pthread.h presence... yes
178-
+checking for pthread.h... yes
179-
+checking for strerror_r... yes
180-
+checking whether strerror_r returns int... no
181-
+checking for main in -lm... yes
182-
+checking for library containing setproctitle... no
183-
+checking for library containing dlsym... none required
184-
+checking for library containing socket... none required
185-
+checking for library containing getopt_long... none required
186-
+checking for library containing shm_open... none required
187-
+checking for library containing shm_unlink... none required
188-
+checking for library containing clock_gettime... none required
189-
+checking for library containing shmget... none required
190-
+checking for library containing backtrace_symbols... none required
191-
+checking for library containing pthread_barrier_wait... none required
192-
+checking copyfile.h usability... no
193-
+checking copyfile.h presence... no
194-
+checking for copyfile.h... no
195-
+checking execinfo.h usability... yes
196-
+checking execinfo.h presence... yes
197-
+checking for execinfo.h... yes
198-
+checking getopt.h usability... yes
199-
+checking getopt.h presence... yes
200-
+checking for getopt.h... yes
201-
+checking ifaddrs.h usability... yes
202-
+checking ifaddrs.h presence... yes
203-
+checking for ifaddrs.h... yes
204-
+checking sys/epoll.h usability... yes
205-
+checking sys/epoll.h presence... yes
206-
+checking for sys/epoll.h... yes
207-
+checking sys/event.h usability... no
208-
+checking sys/event.h presence... no
209-
+checking for sys/event.h... no
210-
+checking sys/personality.h usability... yes
211-
+checking sys/personality.h presence... yes
212-
+checking for sys/personality.h... yes
213-
+checking sys/prctl.h usability... yes
214-
+checking sys/prctl.h presence... yes
215-
+checking for sys/prctl.h... yes
216-
+checking sys/procctl.h usability... no
217-
+checking sys/procctl.h presence... no
218-
+checking for sys/procctl.h... no
219-
+checking sys/signalfd.h usability... yes
220-
+checking sys/signalfd.h presence... yes
221-
+checking for sys/signalfd.h... yes
222-
+checking sys/ucred.h usability... no
223-
+checking sys/ucred.h presence... no
224-
+checking for sys/ucred.h... no
225-
+checking termios.h usability... yes
226-
+checking termios.h presence... yes
227-
+checking for termios.h... yes
228-
+checking uchar.h usability... yes
229-
+checking uchar.h presence... yes
230-
+checking for uchar.h... yes
231-
+checking ucred.h usability... no
232-
+checking ucred.h presence... no
233-
+checking for ucred.h... no
234-
+checking xlocale.h usability... no
235-
+checking xlocale.h presence... no
236-
+checking for xlocale.h... no
237-
+checking for lz4... no
238-
+checking for zstd... no
239-
+checking for openssl... /usr/bin/openssl
240-
+configure: using openssl: OpenSSL 3.0.13 30 Jan 2024 (Library: OpenSSL 3.0.13 30 Jan 2024)
241-
+checking whether byte ordering is bigendian... no
242-
+checking for C printf format archetype... gnu_printf
243-
+checking for C++ printf format archetype... gnu_printf
244-
+checking for typeof... typeof
245-
+checking for C++ typeof... typeof
246-
+checking for typeof_unqual... no
247-
+checking for C++ typeof_unqual... no
248-
+checking for __builtin_constant_p... yes
249-
+checking for __builtin_mul_overflow... yes
250-
+checking for __builtin_unreachable... yes
251-
+checking for computed goto support... yes
252-
+checking for struct tm.tm_zone... yes
253-
+checking for union semun... no
254-
+checking for socklen_t... yes
255-
+checking for struct sockaddr.sa_len... no
256-
+checking for C/C++ restrict keyword... __restrict
257-
+checking for struct option... yes
258-
+checking whether assembler supports x86_64 popcntq... yes
259-
+checking for special C compiler options needed for large files... no
260-
+checking for _FILE_OFFSET_BITS value needed for large files... no
261-
+checking size of off_t... 8
262-
+checking for SA_SIGINFO... yes
263-
+checking for int timezone... yes
264-
+checking for backtrace_symbols... yes
265-
+checking for copyfile... no
266-
+checking for copy_file_range... yes
267-
+checking for elf_aux_info... no
268-
+checking for explicit_memset... no
269-
+checking for getauxval... yes
270-
+checking for getifaddrs... yes
271-
+checking for getpeerucred... no
272-
+checking for inet_pton... yes
273-
+checking for kqueue... no
274-
+checking for localeconv_l... no
275-
+checking for mbstowcs_l... no
276-
+checking for memset_explicit... no
277-
+checking for posix_fallocate... yes
278-
+checking for ppoll... yes
279-
+checking for pthread_is_threaded_np... no
280-
+checking for setproctitle... no
281-
+checking for setproctitle_fast... no
282-
+checking for strsignal... yes
283-
+checking for syncfs... yes
284-
+checking for sync_file_range... yes
285-
+checking for uselocale... yes
286-
+checking for wcstombs_l... no
287-
+checking for __builtin_bswap16... yes
288-
+checking for __builtin_bswap32... yes
289-
+checking for __builtin_bswap64... yes
290-
+checking for __builtin_clz... yes
291-
+checking for __builtin_ctz... yes
292-
+checking for __builtin_frame_address... yes
293-
+checking for _LARGEFILE_SOURCE value needed for large files... no
294-
+checking how gcc reports undeclared, standard C functions... error
295-
+checking for posix_fadvise... yes
296-
+checking whether posix_fadvise is declared... yes
297-
+checking whether fdatasync is declared... yes
298-
+checking whether strlcat is declared... yes
299-
+checking whether strlcpy is declared... yes
300-
+checking whether strsep is declared... yes
301-
+checking whether timingsafe_bcmp is declared... no
302-
+checking whether preadv is declared... yes
303-
+checking whether pwritev is declared... yes
304-
+checking whether strchrnul is declared... yes
305-
+checking whether memset_s is declared... no
306-
+checking whether F_FULLFSYNC is declared... no
307-
+checking for explicit_bzero... yes
308-
+checking for getopt... yes
309-
+checking for getpeereid... no
310-
+checking for inet_aton... yes
311-
+checking for mkdtemp... yes
312-
+checking for strlcat... yes
313-
+checking for strlcpy... yes
314-
+checking for strsep... yes
315-
+checking for timingsafe_bcmp... no
316-
+checking for pthread_barrier_wait... yes
317-
+checking for getopt_long... yes
318-
+checking for syslog... yes
319-
+checking syslog.h usability... yes
320-
+checking syslog.h presence... yes
321-
+checking for syslog.h... yes
322-
+checking for opterr... yes
323-
+checking for optreset... no
324-
+checking test program... ok
325-
+checking size of void *... 8
326-
+checking size of size_t... 8
327-
+checking size of long... 8
328-
+checking size of long long... 8
329-
+checking size of intmax_t... 8
330-
+checking alignment of short... 2
331-
+checking alignment of int... 4
332-
+checking alignment of int64_t... 8
333-
+checking alignment of double... 8
334-
+checking for __int128... yes
335-
+checking for __int128 alignment bug... ok
336-
+checking alignment of PG_INT128_TYPE... 16
337-
+checking for builtin __sync char locking functions... yes
338-
+checking for builtin __sync int32 locking functions... yes
339-
+checking for builtin __sync int32 atomic operations... yes
340-
+checking for builtin __sync int64 atomic operations... yes
341-
+checking for builtin __atomic int32 atomic operations... yes
342-
+checking for builtin __atomic int64 atomic operations... yes
343-
+checking for __get_cpuid... yes
344-
+checking for __get_cpuid_count... yes
345-
+checking for __cpuidex... yes
346-
+checking for AVX2 target attribute support... yes
347-
+checking for _xgetbv... yes
348-
+checking for _mm512_popcnt_epi64... yes
349-
+checking for _mm_crc32_u8 and _mm_crc32_u32... yes
350-
+checking for __crc32cb, __crc32ch, __crc32cw, and __crc32cd with CFLAGS=... no
351-
+checking for __crc32cb, __crc32ch, __crc32cw, and __crc32cd with CFLAGS=-march=armv8-a+crc+simd... no
352-
+checking for __crc32cb, __crc32ch, __crc32cw, and __crc32cd with CFLAGS=-march=armv8-a+crc... no
353-
+checking for __builtin_loongarch_crcc_w_b_w, __builtin_loongarch_crcc_w_h_w, __builtin_loongarch_crcc_w_w_w and __builtin_loongarch_crcc_w_d_w... no
354-
+checking which CRC-32C implementation to use... SSE 4.2 with runtime check
355-
+checking for _mm512_clmulepi64_epi128... yes
356-
+checking for vectorized CRC-32C... AVX-512 with runtime check
357-
+checking for library containing sem_init... none required
358-
+checking which semaphore API to use... unnamed POSIX
359-
+checking which random number source to use... /dev/urandom
360-
+checking for /dev/urandom... yes
361-
+checking for xmllint... /usr/bin/xmllint
362-
+checking for xsltproc... no
363-
+checking for fop... no
364-
+checking for dbtoepub... no
365-
+checking whether gcc supports -Wl,--as-needed, for LDFLAGS... yes
366-
+checking whether gcc supports -Wl,--export-dynamic, for LDFLAGS_EX_BE... yes
367-
+configure: using compiler=gcc (Ubuntu 13.3.0-6ubuntu2~24.04.1) 13.3.0
368-
+configure: using CFLAGS=-Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Werror=vla -Wmissing-format-attribute -Wold-style-declaration -Wimplicit-fallthrough=5 -Wcast-function-type -Wshadow=compatible-local -Wformat-security -fno-strict-aliasing -fwrapv -fexcess-precision=standard -Wno-format-truncation -Wno-stringop-truncation -O2 -g -pipe -Wall -Werror=format-security -fstack-protector-strong -fstack-clash-protection -fcf-protection -fasynchronous-unwind-tables -fno-omit-frame-pointer -mtune=generic -Wstrict-prototypes -Wold-style-definition
369-
+configure: using CPPFLAGS=-D_FORTIFY_SOURCE=2 -D_GNU_SOURCE
370-
+configure: using LDFLAGS= -Wl,--as-needed
371-
+configure: using CXX=g++
372-
+configure: using CXXFLAGS=-Wall -Wpointer-arith -Werror=vla -Wmissing-format-attribute -Wimplicit-fallthrough=5 -Wcast-function-type -Wshadow=compatible-local -Wformat-security -fno-strict-aliasing -fwrapv -fexcess-precision=standard -O2
373-
+configure: using CLANG=clang-18
374-
+configure: using BITCODE_CFLAGS= -fno-strict-aliasing -fwrapv -fexcess-precision=standard -Wno-unused-command-line-argument -Wno-compound-token-split-by-macro -Wno-format-truncation -O2
375-
+configure: using BITCODE_CXXFLAGS= -fno-strict-aliasing -fwrapv -fexcess-precision=standard -O2
376-
+configure: creating ./config.status
377-
+config.status: creating GNUmakefile
378-
+config.status: creating src/Makefile.global
379-
+config.status: creating src/include/pg_config.h
380-
+config.status: creating src/interfaces/ecpg/include/ecpg_config.h
381-
+config.status: linking src/backend/port/posix_sema.c to src/backend/port/pg_sema.c
382-
+config.status: linking src/backend/port/sysv_shmem.c to src/backend/port/pg_shmem.c
383-
+config.status: linking src/include/port/linux.h to src/include/pg_config_os.h
384-
+config.status: linking src/makefiles/Makefile.linux to src/Makefile.port
385-
diff --git a/inst.log b/inst.log
386-
new file mode 100644
387-
index 0000000..e69de29
388-
diff --git a/inst2.log b/inst2.log
389-
new file mode 100644
390-
index 0000000..e69de29
391-
diff --git a/make.log b/make.log
392-
new file mode 100644
393-
index 0000000..e69de29
394-
diff --git a/make2.log b/make2.log
395-
new file mode 100644
396-
index 0000000..e69de29
39735
diff --git a/src/backend/utils/adt/numeric.c b/src/backend/utils/adt/numeric.c
39836
index c9717fa..12f4b23 100644
39937
--- a/src/backend/utils/adt/numeric.c

0 commit comments

Comments
 (0)