From 820b5af73dcc6a5d0db6a98a62a6b859e5d107b6 Mon Sep 17 00:00:00 2001 From: Thomas Munro Date: Thu, 25 Jan 2024 15:23:04 +1300 Subject: jit: Require at least LLVM 10. Remove support for older LLVM versions. The default on common software distributions will be at least LLVM 10 when PostgreSQL 17 ships. Reviewed-by: Peter Eisentraut Discussion: https://postgr.es/m/CA%2BhUKGLhNs5geZaVNj2EJ79Dx9W8fyWUU3HxcpZy55sMGcY%3DiA%40mail.gmail.com --- src/backend/jit/llvm/llvmjit_wrap.cpp | 61 ----------------------------------- 1 file changed, 61 deletions(-) (limited to 'src/backend/jit/llvm/llvmjit_wrap.cpp') diff --git a/src/backend/jit/llvm/llvmjit_wrap.cpp b/src/backend/jit/llvm/llvmjit_wrap.cpp index 878f8edf55c..641c8841ca3 100644 --- a/src/backend/jit/llvm/llvmjit_wrap.cpp +++ b/src/backend/jit/llvm/llvmjit_wrap.cpp @@ -21,16 +21,7 @@ extern "C" /* Avoid macro clash with LLVM's C++ headers */ #undef Min -#include #include -#if LLVM_VERSION_MAJOR < 17 -#include -#endif -#if LLVM_VERSION_MAJOR > 16 -#include -#else -#include -#endif #include "jit/llvmjit.h" @@ -38,50 +29,6 @@ extern "C" /* * C-API extensions. */ -#if defined(HAVE_DECL_LLVMGETHOSTCPUNAME) && !HAVE_DECL_LLVMGETHOSTCPUNAME -char *LLVMGetHostCPUName(void) { - return strdup(llvm::sys::getHostCPUName().data()); -} -#endif - - -#if defined(HAVE_DECL_LLVMGETHOSTCPUFEATURES) && !HAVE_DECL_LLVMGETHOSTCPUFEATURES -char *LLVMGetHostCPUFeatures(void) { - llvm::SubtargetFeatures Features; - llvm::StringMap HostFeatures; - - if (llvm::sys::getHostCPUFeatures(HostFeatures)) - for (auto &F : HostFeatures) - Features.AddFeature(F.first(), F.second); - - return strdup(Features.getString().c_str()); -} -#endif - -/* - * Like LLVM's LLVMGetAttributeCountAtIndex(), works around a bug in LLVM 3.9. - * - * In LLVM <= 3.9, LLVMGetAttributeCountAtIndex() segfaults if there are no - * attributes at an index (fixed in LLVM commit ce9bb1097dc2). - */ -unsigned -LLVMGetAttributeCountAtIndexPG(LLVMValueRef F, uint32 Idx) -{ - /* - * This is more expensive, so only do when using a problematic LLVM - * version. - */ -#if LLVM_VERSION_MAJOR < 4 - if (!llvm::unwrap(F)->getAttributes().hasAttributes(Idx)) - return 0; -#endif - - /* - * There is no nice public API to determine the count nicely, so just - * always fall back to LLVM's C API. - */ - return LLVMGetAttributeCountAtIndex(F, Idx); -} LLVMTypeRef LLVMGetFunctionReturnType(LLVMValueRef r) @@ -94,11 +41,3 @@ LLVMGetFunctionType(LLVMValueRef r) { return llvm::wrap(llvm::unwrap(r)->getFunctionType()); } - -#if LLVM_VERSION_MAJOR < 8 -LLVMTypeRef -LLVMGlobalGetValueType(LLVMValueRef g) -{ - return llvm::wrap(llvm::unwrap(g)->getValueType()); -} -#endif -- cgit v1.2.3