Re: [PATCH] jit: fix build with LLVM-21

2025-09-18 Thread Anthonin Bonnefoy
Hi, I've tested the patch: it fixes the compilation on arm and I'm correctly linked to llvm21: ldd /var/lib/postgresql/.local/lib/llvmjit.so | grep libLLVM libLLVM.so.21.1 => /lib/aarch64-linux-gnu/libLLVM.so.21.1 (0xec34112d) Testing the query that used to trigger the jit segfau

Re: [PATCH] jit: fix build with LLVM-21

2025-09-14 Thread Peter Eisentraut
On 12.09.25 09:47, Holger Hoffstätte wrote:  As a small style request, I would flip the conditional around so that the new code appears first.  I see that we don't do this very consistently in the existing code, but maybe we can start a new trend. ;-) I knew this would come up since I pondered t

Re: [PATCH] jit: fix build with LLVM-21

2025-09-12 Thread Holger Hoffstätte
On 2025-09-12 14:47, Holger Hoffstätte wrote: I temporarily removed the __arch64__ guard and can reproduce the above error, using either gcc-15 or clang-21. It seems this llvm monkey patch backport thing is affected by the following commit in llvm-21: https://github.com/llvm/llvm-project/commit/

Re: [PATCH] jit: fix build with LLVM-21

2025-09-12 Thread Holger Hoffstätte
On 2025-09-12 09:47, Holger Hoffstätte wrote: On 2025-09-12 08:36, Peter Eisentraut wrote: In my testing with LLVM 21, I'm getting an additional error: ../src/backend/jit/llvm/llvmjit_wrap.cpp:56:18: error: no matching constructor for initialization of 'llvm::orc::RTDyldObjectLinkingLayer'    

Re: [PATCH] jit: fix build with LLVM-21

2025-09-12 Thread Holger Hoffstätte
On 2025-09-12 08:36, Peter Eisentraut wrote: On 08.09.25 15:20, Holger Hoffstätte wrote: I tried building against LLVM-21 and noticed that a function for symbol lookup was renamed (without semantic changes), breaking the LLVM JIT. The following patch fixes this by adding a version guard. It appl

Re: [PATCH] jit: fix build with LLVM-21

2025-09-11 Thread Peter Eisentraut
On 08.09.25 15:20, Holger Hoffstätte wrote: I tried building against LLVM-21 and noticed that a function for symbol lookup was renamed (without semantic changes), breaking the LLVM JIT. The following patch fixes this by adding a version guard. It applies equally to both master and 17.6. Passes t