Re: JIT compiling with LLVM v10.0 - Mailing list pgsql-hackers
From | Dmitry Dolgov |
---|---|
Subject | Re: JIT compiling with LLVM v10.0 |
Date | |
Msg-id | CA+q6zcWAVhP+7rVNdu3bahyqdchaGfoV58PJScDKYndNpdrL2A@mail.gmail.com Whole thread Raw |
In response to | Re: JIT compiling with LLVM v10.0 (Andreas Karlsson <andreas@proxel.se>) |
Responses |
Re: JIT compiling with LLVM v10.0
Re: JIT compiling with LLVM v10.0 |
List | pgsql-hackers |
> On 8 February 2018 at 10:29, Andreas Karlsson <andreas@proxel.se> wrote: >> On 02/07/2018 03:54 PM, Andres Freund wrote: >> >> I've pushed v10.0. The big (and pretty painful to make) change is that >> now all the LLVM specific code lives in src/backend/jit/llvm, which is >> built as a shared library which is loaded on demand. > > > It does not seem to be possible build without LLVM anymore. Maybe I'm doing something wrong, but I also see some issues during compilation even with llvm included (with gcc 5.4.0 and 7.1.0). Is it expected, do I need to use another version to check it out? $ git rev-parse HEAD e24cac5951575cf86f138080acec663a0a05983e $ ./configure --prefix=/build/postgres-jit/ --with-llvm --enable-debug --enable-depend --enable-cassert In file included from llvmjit_error.cpp:22:0: /usr/lib/llvm-5.0/include/llvm/Support/ErrorHandling.h:47:36: warning: identifier 'nullptr' is a keyword in C++11 [-Wc++0x-compat] void *user_data = nullptr); ^ In file included from /usr/include/c++/5/cinttypes:35:0, from /usr/lib/llvm-5.0/include/llvm/Support/DataTypes.h:39, from /usr/lib/llvm-5.0/include/llvm-c/Types.h:17, from ../../../../src/include/jit/llvmjit.h:13, from llvmjit_error.cpp:24: /usr/include/c++/5/bits/c++0x_warning.h:32:2: error: #error This file requires compiler and library support for the ISO C++ 2011 standard. This support must be enabled with the -std=c++11 or -std=gnu++11 compiler options. #error This file requires compiler and library support \ ^ In file included from llvmjit_error.cpp:22:0: /usr/lib/llvm-5.0/include/llvm/Support/ErrorHandling.h:47:54: error: 'nullptr' was not declared in this scope void *user_data = nullptr); ^ /usr/lib/llvm-5.0/include/llvm/Support/ErrorHandling.h:57:56: error: 'nullptr' was not declared in this scope void *user_data = nullptr) { ^ /usr/lib/llvm-5.0/include/llvm/Support/ErrorHandling.h:98:56: error: 'nullptr' was not declared in this scope void *user_data = nullptr); ^ /usr/lib/llvm-5.0/include/llvm/Support/ErrorHandling.h:121:45: error: 'nullptr' was not declared in this scope llvm_unreachable_internal(const char *msg = nullptr, const char *file = nullptr, ^ /usr/lib/llvm-5.0/include/llvm/Support/ErrorHandling.h:121:73: error: 'nullptr' was not declared in this scope llvm_unreachable_internal(const char *msg = nullptr, const char *file = nullptr, ^ ../../../../src/Makefile.global:838: recipe for target 'llvmjit_error.o' failed make[2]: *** [llvmjit_error.o] Error 1 make[2]: Leaving directory '/postgres/src/backend/jit/llvm' Makefile:42: recipe for target 'all-backend/jit/llvm-recurse' failed make[1]: *** [all-backend/jit/llvm-recurse] Error 2 make[1]: Leaving directory '/postgres/src' GNUmakefile:11: recipe for target 'all-src-recurse' failed make: *** [all-src-recurse] Error 2
pgsql-hackers by date: