On Thu, Oct 19, 2023 at 1:06 AM Thomas Munro <thomas.mu...@gmail.com> wrote: > On Thu, Oct 19, 2023 at 12:02 AM Thomas Munro <thomas.mu...@gmail.com> wrote: > > I pushed the first patch, for LLVM 16, and the build farm told me that > > some old LLVM versions don't like it. The problem seems to be the > > function LLVMGlobalGetValueType(). I can see that that was only added > > to the C API in 2018, so it looks like I may need to back-port that > > (trivial) wrapper into our own llvmjit_wrap.cpp for LLVM < 8. > > Concretely something like the attached should probably fix it, but > it'll take me a little while to confirm that...
Pushed, after digging up some old LLVM skeletons to test, and those "old LLVM" animals are turning green now. I went ahead and pushed the much smaller and simpler patch for LLVM 17. Interestingly, a new problem just showed up on the the RHEL9 s390x machine "lora", where a previously reported problem [1] apparently re-appeared. It complains about incompatible layout, previously blamed on mismatch between clang and LLVM versions. I can see that its clang is v15 from clues in the conflig log, but I don't know which version of LLVM is being used. However, I see now that --with-llvm was literally just turned on, so there is no reason to think that this would have worked before or this work is relevant. Strange though -- we must be able to JIT further than that on s390x because we have crash reports in other threads (ie we made it past this and into other more advanced brokenness). [1] https://www.postgresql.org/message-id/flat/20210319190047.7o4bwhbp5dzkqif3%40alap3.anarazel.de#ec51b488ca8eac8c603d91c0439d38b2