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

Thomas Munro <thomas.munro@gmail.com>

From: Thomas Munro <thomas.munro@gmail.com>
To: Anthonin Bonnefoy <anthonin.bonnefoy@datadoghq.com>
Cc: Holger Hoffstätte <holger@applied-asynchrony.com>, Peter Eisentraut <peter@eisentraut.org>, pgsql-hackers@postgresql.org
Date: 2025-11-17T15:06:49Z
Lists: pgsql-hackers
On Tue, Nov 18, 2025 at 12:11 AM Thomas Munro <thomas.munro@gmail.com> wrote:
> On Mon, Nov 17, 2025 at 9:48 PM Anthonin Bonnefoy
> <anthonin.bonnefoy@datadoghq.com> wrote:
> > Homebrew is now installing LLVM21 by default, so compiling with Homebrew's default LLVM now fails without this patch.
>
> Ack, testing...

Looks good so far.  Will try to push this tomorrow.

I got distracted trying to figure out why LLVM 22 is segfaulting in
llvm::orc::ExecutionSession::IL_emit().  It's not out ... yet.  I was
worried that might be a clue about problems with the backported
SectionMemoryManager nonsense, but (un)fortunately it also still
crashes with the JITLink patch[1].  Will need to chase this down...

[1] https://www.postgresql.org/message-id/flat/CA%2BhUKGJBJx4fDGLv8zUtmsmg16Swry7DJbMr2_GNZcd6sgE0rg%40mail.gmail.com



Commits

  1. jit: Adjust AArch64-only code for LLVM 21.

  2. jit: fix build with LLVM-21

  3. Monkey-patch LLVM code to fix ARM relocation bug.