Re: some LLVM function checks missing in meson
От | Heikki Linnakangas |
---|---|
Тема | Re: some LLVM function checks missing in meson |
Дата | |
Msg-id | 5539b16c-cff7-46d5-9621-c3fb6b549e9e@iki.fi обсуждение исходный текст |
Ответ на | [MASSMAIL]some LLVM function checks missing in meson (Peter Eisentraut <peter@eisentraut.org>) |
Ответы |
Re: some LLVM function checks missing in meson
Re: some LLVM function checks missing in meson |
Список | pgsql-hackers |
On 11/04/2024 18:26, Peter Eisentraut wrote: > I have been checking the pg_config.h generated by configure and meson to > see if there is anything materially different. I found that > > HAVE_DECL_LLVMCREATEGDBREGISTRATIONLISTENER and > HAVE_DECL_LLVMCREATEPERFJITEVENTLISTENER > > are missing on the meson side. > > Something like the below would appear to fix that: > > diff --git a/meson.build b/meson.build > index 43fad5323c0..cdfd31377d1 100644 > --- a/meson.build > +++ b/meson.build > @@ -2301,6 +2301,14 @@ decl_checks += [ > ['pwritev', 'sys/uio.h'], > ] > > +# Check presence of some optional LLVM functions. > +if llvm.found() > + decl_checks += [ > + ['LLVMCreateGDBRegistrationListener', 'llvm-c/ExecutionEngine.h'], > + ['LLVMCreatePerfJITEventListener', 'llvm-c/ExecutionEngine.h'], > + ] > +endif > + > foreach c : decl_checks > func = c.get(0) > header = c.get(1) > > I don't know what these functions do, but the symbols are used in the > source code. Thoughts? +1. I also don't know what they do, but clearly the configure and meson checks should be in sync. There's also this in llvmjit.c: > if (llvm_opt3_orc) > { > #if defined(HAVE_DECL_LLVMORCREGISTERPERF) && HAVE_DECL_LLVMORCREGISTERPERF > if (jit_profiling_support) > LLVMOrcUnregisterPerf(llvm_opt3_orc); > #endif > LLVMOrcDisposeInstance(llvm_opt3_orc); > llvm_opt3_orc = NULL; > } > > if (llvm_opt0_orc) > { > #if defined(HAVE_DECL_LLVMORCREGISTERPERF) && HAVE_DECL_LLVMORCREGISTERPERF > if (jit_profiling_support) > LLVMOrcUnregisterPerf(llvm_opt0_orc); > #endif > LLVMOrcDisposeInstance(llvm_opt0_orc); > llvm_opt0_orc = NULL; > } > } The autoconf test that set HAVE_DECL_LLVMORCREGISTERPERF was removed in commit e9a9843e13. I believe that's a leftover that should also have been removed. -- Heikki Linnakangas Neon (https://neon.tech)
В списке pgsql-hackers по дате отправления: