Re: JIT compiling with LLVM v9.1
От | Pierre Ducroquet |
---|---|
Тема | Re: JIT compiling with LLVM v9.1 |
Дата | |
Msg-id | 2567235.m0aN06PWH6@pierred-pdoc обсуждение исходный текст |
Ответ на | Re: JIT compiling with LLVM v9.1 (Pierre Ducroquet <p.psql@pinaraf.info>) |
Список | pgsql-hackers |
On Friday, February 2, 2018 10:48:16 AM CET Pierre Ducroquet wrote: > 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 For LLVM 3.9, only small changes were needed. I've attached the patches to this email. I only did very basic, primitive testing, but it seems to work. I'll do more testing in the next days. Pierre
Вложения
В списке pgsql-hackers по дате отправления: