Re: Do we work with LLVM 12 on s390x?

From: Tom Stellard <tstellar(at)redhat(dot)com>
To: Honza Horak <hhorak(at)redhat(dot)com>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Andres Freund <andres(at)anarazel(dot)de>
Cc: pgsql-hackers(at)lists(dot)postgresql(dot)org
Subject: Re: Do we work with LLVM 12 on s390x?
Date: 2021-04-22 16:35:48
Message-ID: 495a69bc-8f11-4b41-f58c-a1f85e380a52@redhat.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 4/21/21 6:40 AM, Honza Horak wrote:
> On 3/19/21 8:15 PM, Tom Lane wrote:
>> Andres Freund <andres(at)anarazel(dot)de> writes:
>>> I think the error above comes from a "mismatch" between the clang used
>>> to compile bitcode, and the LLVM version linked to. Normally we're
>>> somewhat tolerant of differences between the two, but there was an ABI
>>> change at some point, leading to that error.  IIRC I hit that, but it
>>> vanished as soon as I used a matching libllvm and clang.
>>
>> Thanks, I passed that advice on.
>>
>>             regards, tom lane
>
> Tom Stellard was so kind to look at this issue deeper with his LLVM skills and found PostgreSQL is not actually handling the LLVM perfectly. He's working on improving the patch, but sharing even the first attempt with upstream seems like a good idea:
>
> https://src.fedoraproject.org/rpms/postgresql/pull-request/29
>

I wrote a new patch based on the bug discussion[1]. It works around
the issue specifically on s390x rather than disabling specific
CPUs and features for all targets. The patch is attached.

[1] https://www.postgresql.org/message-id/flat/16971-5d004d34742a3d35%40postgresql.org

> Regards,
> Honza
>

Attachment Content-Type Size
0001-jit-Workaround-potential-datalayout-mismatch-on-s390.patch text/x-patch 3.2 KB

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Andrew Dunstan 2021-04-22 16:42:33 Re: multi-install PostgresNode fails with older postgres versions
Previous Message Robert Haas 2021-04-22 16:15:27 Re: decoupling table and index vacuum