Re: JIT compiling with LLVM v12.2

From: Andres Freund <andres(at)anarazel(dot)de>
To: Thomas Munro <thomas(dot)munro(at)enterprisedb(dot)com>
Cc: Stephen Frost <sfrost(at)snowman(dot)net>, Pg Hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: JIT compiling with LLVM v12.2
Date: 2018-03-21 21:59:13
Message-ID: 20180321215913.6zjzfvhv6j4e6ddj@alap3.anarazel.de
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 2018-03-22 10:50:52 +1300, Thomas Munro wrote:
> On Thu, Mar 22, 2018 at 10:44 AM, Andres Freund <andres(at)anarazel(dot)de> wrote:
> > On 2018-03-21 23:10:27 +1300, Thomas Munro wrote:
> >> Next up, I have an arm64 system running Debian 9.4. It bombs in
> >> "make check" and in simple tests:
> >
> > Any chance you could try w/ LLVM 6? It looks like some parts of ORC
> > only got aarch64 in LLVM 6. I didn't *think* those were necessary, but
> > given the backtrace it looks like that still might be relevant.
>
> Hmm. There is no LLVM 6 in backports.

I think there now is:
https://packages.debian.org/search?keywords=llvm&searchon=names&section=all&suite=stretch-backports

Package llvm-6.0-dev

stretch-backports (devel): Modular compiler and toolchain technologies, libraries and headers
1:6.0-1~bpo9+1: amd64

It's a recent addition:

llvm-toolchain-6.0 (1:6.0-1~bpo9+1) stretch-backports; urgency=medium

* Team upload
* Rebuild for stretch-backports.

-- Anton Gladky <gladk(at)debian(dot)org> Mon, 12 Mar 2018 18:58:43 +0100

Otherwise I think LLVM has a repo with the necessary bits:
http://apt.llvm.org/

But if it's not this, I think we're going to have to indeed build
LLVM. Without proper debugging symbols it's going to be hard to figure
this out otherwise.

FWIW, I build it with:

mkdir -p ~/build/llvm/debug/vpath
cd ~/build/llvm/debug/vpath
cmake -G Ninja ~/src/llvm/ -DCMAKE_INSTALL_PREFIX=/home/andres/build/llvm/debug/install -DBUILD_SHARED_LIBS=true -DLLVM_TARGETS_TO_BUILD='X86;BPF' -DLLVM_CCACHE_BUILD=true
ninja -j8 install

I suspect you'd need to replace X86 with AArch64 (BPF isn't needed,
that's for stuff unrelated to PG).

> If that turns out to be it I guess we'd need to figure out how to
> detect an LLVM with bits missing hand handle it more gracefully?

Yea :/.

Greetings,

Andres Freund

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message legrand legrand 2018-03-21 22:33:55 pg_stat_statements HLD for futur developments
Previous Message Robert Haas 2018-03-21 21:56:52 Re: [HACKERS] Partition-wise aggregation/grouping