Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1rvYhU-00Cjd8-N4 for pgsql-hackers@arkaria.postgresql.org; Sat, 13 Apr 2024 08:25:29 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.94.2) (envelope-from ) id 1rvYhT-003Kd8-Lj for pgsql-hackers@arkaria.postgresql.org; Sat, 13 Apr 2024 08:25:27 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1rvYhT-003Kd0-9q for pgsql-hackers@lists.postgresql.org; Sat, 13 Apr 2024 08:25:27 +0000 Received: from lahtoruutu.iki.fi ([2a0b:5c81:1c1::37]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1rvYhO-002dRw-As for pgsql-hackers@postgresql.org; Sat, 13 Apr 2024 08:25:26 +0000 Received: from [172.19.157.206] (unknown [212.174.35.38]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: hlinnaka) by lahtoruutu.iki.fi (Postfix) with ESMTPSA id 4VGmhX4Lzlz49Q4P; Sat, 13 Apr 2024 11:25:16 +0300 (EEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=iki.fi; s=lahtoruutu; t=1712996716; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=TVh8vuBj2m/f7ZWP7gENqKvnvHIoOukcjfl7nTibob8=; b=kLDvvqY52payiRxiuj58X60CPYAezwZIfEIrSCrUKtcIAVNNm/gjAsErI8nkcBRkKHeDK5 WJQoHw6lXO8FFC8Y4bueq1bHb1DVJcOAlqnvcafPFEslgMrtXxf9Qcbt11krzPDtauTyQ5 t7ubNaDXwm5g4Vw9IGeZrjmw5Z/RRRo3QjMdymW88Ks/jtixJOYnvn3KEikYhaapodR4zx 4UpDn8S/RgbPlAOoZ4aMEi7hUmtG4CBoqMT8YY/+T+0U6GfaR+obf7W04MKFgrO7r+tuBk T+9FENA8lPRo444trbfhwtl05/3VKOMb18+6coyKO6w0V4W5YTtmf1A1m6rWlw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=iki.fi; s=lahtoruutu; t=1712996716; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=TVh8vuBj2m/f7ZWP7gENqKvnvHIoOukcjfl7nTibob8=; b=oc2be1/yPZL8vX5Rf2G3pyepvlzOxKSgAKzqO/alykgjHa++FmhG1ltkSzxKvyw/29jlze 9ST7ggoOXWn8N1ZaEGDXOWmr2OlYry9VgZdg9BOJFdQi/h/f3ZASJRKiiOciPLhMy5TUkn YB1hNXvbd1oOFNW3SLit3InTHevf92oxTO1ajmQ8kqWEwh1Pook7nZvxTSNHcqSnMhEZVP WiwKdv0fD6FlSojku5I71AvPH1pVTYJsax3kTq7mi8syk2XhscirTuz2RJhg7rOZHQolG/ Wi4ampPF4mBs9Sdwu3TfxdXPe88LESGzdfnw6w9UphXp+Z0+HBnfEWpzJFcH/g== ARC-Authentication-Results: i=1; ORIGINATING; auth=pass smtp.auth=hlinnaka smtp.mailfrom=hlinnaka@iki.fi ARC-Seal: i=1; s=lahtoruutu; d=iki.fi; t=1712996716; a=rsa-sha256; cv=none; b=B9D0RwPjlwWaHtup1vhGjws3XddzozQ6N8sXkctAi5ScFQST9+GxZWvDkfME9IqjQ3ic/2 ga7DFwePsPLNtn4xi6RHk2hp5p0xQUlDmUdYniHIuRX7TC1D0uFdNcntfPXJAA9H/HRsvd ZHmdw5odCRkhXUX0FEn/VWXycfBAba5TVYPMbDgiPn9cq3Te/mMgcoytSiHdPvwpCTV/7u YMZylje36Q5iOUBJjrqgZE1Oh7uB8sYx9CaYYrFMYUNqrDlDLtHJxYMOWc1vaV4zuAQMku Yyu1aDv3FTcqCqpOIdJx6etb0GiBqHF26yX6jZWH6YNKkjc0aOMlAoZ6ONQwYA== Message-ID: <5539b16c-cff7-46d5-9621-c3fb6b549e9e@iki.fi> Date: Sat, 13 Apr 2024 11:25:15 +0300 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: some LLVM function checks missing in meson To: Peter Eisentraut , pgsql-hackers References: Content-Language: en-US From: Heikki Linnakangas In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk 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)