Re: Add missing JIT inline pass for llvm>=17
Andres Freund <andres@anarazel.de>
From: Andres Freund <andres@anarazel.de>
To: Anthonin Bonnefoy <anthonin.bonnefoy@datadoghq.com>
Cc: Andreas Karlsson <andreas@proxel.se>, PostgreSQL Hackers <pgsql-hackers@postgresql.org>
Date: 2026-01-20T19:03:45Z
Lists: pgsql-hackers
Hi, On 2026-01-16 10:10:07 +0100, Anthonin Bonnefoy wrote: > On Thu, Jan 15, 2026 at 2:51 PM Andres Freund <andres@anarazel.de> wrote: > > I'm strongly against removing the always inline pass, I see absolutely no > > reason for doing that. The whole point of always inline is that it happens > > unconditionally. It's not an expensive pass either. > > I've looked into more details on what was provided by 'default<O0>', > and it turns out it includes an always-inline pass[0]. This is also > visible when using debug-pass-manager: Ah, that's good to know! > So, with 'default<O0>,mem2reg', we replicate the same behaviour as > pre-LLVM17 as it includes the always-inline pass. > > I've updated the patch to only add the inline pass when PGJIT_INLINE > is on. I've also added a comment to mention that always-inline is > included in O0. That looks good to me. Greetings, Andres Freund
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
jit: Add missing inline pass for LLVM >= 17.
- f1c6b153cabd 18.2 landed
- d0bb0e5b364f 17.8 landed
- 7600dc79c231 16.12 landed
- cbdd09ae1b57 15.16 landed
- de8081c30e5a 14.21 landed
- e5d99b4d9ef4 19 (unreleased) landed