Hi, 

On November 2, 2021 3:55:58 PM PDT, Thomas Munro <thomas.mu...@gmail.com> wrote:
>2.  When configured with all options on FreeBSD 13, everything looks
>good so far except LLVM JIT, which fails with various "Cannot select"
>errors.  Clang works fine for compiling PostgreSQL itself.  Tested
>with LLVM 12 (LLVM has supported RISCV since 9).  Example:
>
>+FATAL:  fatal llvm error: Cannot select: 0x4f772068: ch = brcond
>0x4f770f70, 0x4f772208, BasicBlock:ch< 0x4f76d600>
>+  0x4f772208: i64 = setcc 0x4f7723a8, Constant:i64<0>, setlt:ch
>+    0x4f7723a8: i64,ch = load<(load 4 from `i32* inttoptr (i64
>1260491408 to i32*)`, align 16), sext from i32> 0x4fdee058,
>Constant:i64<1260491408>, undef:i64
>+      0x4f770a90: i64 = Constant<1260491408>
>+      0x4f7703a8: i64 = undef
>+    0x4f7701a0: i64 = Constant<0>
>+In function: evalexpr_0_0

Any chance you could enable jit_dump_bitcode and manually try a failing query? 
That should dump. bc files in the data directory. That'd might allow debugging 
this outside the emulated environment.

I don't see where the undef is originating from, but I think it might suggest 
that something lead to that code being considered unreachable.

Andres
-- 
Sent from my Android device with K-9 Mail. Please excuse my brevity.


Reply via email to