diff options
| author | Andres Freund | 2020-10-16 00:38:00 +0000 |
|---|---|---|
| committer | Andres Freund | 2020-10-16 01:17:01 +0000 |
| commit | 4a4f4487d2d20db9e56b0d022a8dd32af13d1953 (patch) | |
| tree | 0154c4bb32c802ed99087bdb1fbe4650d6c114f4 /src/include/jit | |
| parent | 16be4e435b74f3c7f4a8666ca161ab7f1cfa4c7b (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 94e6612823b..4beb013a1e1 100644 --- a/src/include/jit/llvmjit.h +++ b/src/include/jit/llvmjit.h @@ -133,6 +133,8 @@ extern char *LLVMGetHostCPUName(void); extern char *LLVMGetHostCPUFeatures(void); #endif +extern unsigned LLVMGetAttributeCountAtIndexPG(LLVMValueRef F, uint32 Idx); + #ifdef __cplusplus } /* extern "C" */ #endif |
