diff options
| author | Andres Freund | 2020-10-16 00:38:00 +0000 |
|---|---|---|
| committer | Andres Freund | 2020-10-16 01:17:00 +0000 |
| commit | fe2a16d8b3e6fde07a8a990057e983854ad50616 (patch) | |
| tree | 7a6c5d65d5f95928893b66456d490619a42118c6 /src/include/jit | |
| parent | 536de14e2bdf467aefc5e25f85056fe1adf4846d (diff) | |
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 <andres@anarazel.de>
Discussion: https://postgr.es/m/20201016001254.w2nfj7gd74jmb5in@alap3.anarazel.de
Backpatch: 11-, like 72559438f92
Diffstat (limited to 'src/include/jit')
| -rw-r--r-- | src/include/jit/llvmjit.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/include/jit/llvmjit.h b/src/include/jit/llvmjit.h index 706906c1cc8..325409acd5c 100644 --- a/src/include/jit/llvmjit.h +++ b/src/include/jit/llvmjit.h @@ -129,6 +129,8 @@ extern char *LLVMGetHostCPUName(void); extern char *LLVMGetHostCPUFeatures(void); #endif +extern unsigned LLVMGetAttributeCountAtIndexPG(LLVMValueRef F, uint32 Idx); + #ifdef __cplusplus } /* extern "C" */ #endif |
