pgsql: llvmjit: Work around bug in LLVM 3.9 causing crashes after 72559

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

pgsql: llvmjit: Work around bug in LLVM 3.9 causing crashes after 72559

Andres Freund
llvmjit: Work around bug in LLVM 3.9 causing crashes after 72559438f92.

Unfortunately in LLVM 3.9 LLVMGetAttributeCountAtIndex(func, index)
crashes when called with an index that has 0 attributes. Since there's
no way to work around this in the C API, add a small C++ wrapper doing
so.

The only reason this didn't fail before 72559438f92 is that there
always are function attributes...

Author: Andres Freund <[hidden email]>
Discussion: https://postgr.es/m/20201016001254.w2nfj7gd74jmb5in@...
Backpatch: 11-, like 72559438f92

Branch
------
REL_12_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/c835c7ffe21dae8233d21c0ad01e3cbbe475082d

Modified Files
--------------
src/backend/jit/llvm/llvmjit.c        |  9 ++++++++-
src/backend/jit/llvm/llvmjit_wrap.cpp | 32 ++++++++++++++++++++++++++++++++
src/include/jit/llvmjit.h             |  2 ++
3 files changed, 42 insertions(+), 1 deletion(-)