On Monday, January 29, 2018 10:53:50 AM CET Andres Freund wrote:
> Hi,
>
> On 2018-01-23 23:20:38 -0800, Andres Freund wrote:
> > == Code ==
> >
> > As the patchset is large (500kb) and I'm still quickly evolving it, I do
> > not yet want to attach it. The git tree is at
> >
> > https://git.postgresql.org/git/users/andresfreund/postgres.git
> >
> > in the jit branch
> >
> > https://git.postgresql.org/gitweb/?p=users/andresfreund/postgres.git;a=s
> > hortlog;h=refs/heads/jit
> I've just pushed an updated and rebased version of the tree:
> - Split the large "jit infrastructure" commits into a number of smaller
> commits
> - Split the C++ file
> - Dropped some of the performance stuff done to heaptuple.c - that was
> mostly to make performance comparisons a bit more interesting, but
> doesn't seem important enough to deal with.
> - Added a commit renaming datetime.h symbols so they don't conflict with
> LLVM variables anymore, removing ugly #undef PM/#define PM dance
> around includes. Will post separately.
> - Reduced the number of pointer constants in the generated LLVM IR, by
> doing more getelementptr accesses (stem from before the time types
> were automatically synced)
> - Increased number of comments a bit
>
> There's a jit-before-rebase-2018-01-29 tag, for the state of the tree
> before the rebase.
>
> Regards,
>
> Andres
Hi
I have successfully built the JIT branch against LLVM 4.0.1 on Debian testing.
This is not enough for Debian stable (LLVM 3.9 is the latest available there),
but it's a first step.
I've split the patch in four files. The first three fix the build issues, the
last one fixes a runtime issue.
I think they are small enough to not be a burden for you in your developments.
But if you don't want to carry these ifdefs right now, I maintain them in a
branch on a personal git and rebase as frequently as I can.
LLVM 3.9 support isn't going to be hard, but I prefer splitting. I also hope
this will help more people test this wonderful toy… :)
Regards
Pierre