aboutsummaryrefslogtreecommitdiff
path: root/src/backend/jit/llvm/llvmjit_wrap.cpp
diff options
context:
space:
mode:
authorThomas Munro <tmunro@postgresql.org>2024-01-25 15:23:04 +1300
committerThomas Munro <tmunro@postgresql.org>2024-01-25 15:42:34 +1300
commit820b5af73dcc6a5d0db6a98a62a6b859e5d107b6 (patch)
treecc46c2147142da3b000398e001ea2315ff3e298e /src/backend/jit/llvm/llvmjit_wrap.cpp
parent729439607ad210dbb446e31754e8627d7e3f7dda (diff)
downloadpostgresql-820b5af73dcc6a5d0db6a98a62a6b859e5d107b6.tar.gz
postgresql-820b5af73dcc6a5d0db6a98a62a6b859e5d107b6.zip
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 <peter@eisentraut.org> Discussion: https://postgr.es/m/CA%2BhUKGLhNs5geZaVNj2EJ79Dx9W8fyWUU3HxcpZy55sMGcY%3DiA%40mail.gmail.com
Diffstat (limited to 'src/backend/jit/llvm/llvmjit_wrap.cpp')
-rw-r--r--src/backend/jit/llvm/llvmjit_wrap.cpp61
1 files changed, 0 insertions, 61 deletions
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 <llvm/IR/Attributes.h>
#include <llvm/IR/Function.h>
-#if LLVM_VERSION_MAJOR < 17
-#include <llvm/MC/SubtargetFeature.h>
-#endif
-#if LLVM_VERSION_MAJOR > 16
-#include <llvm/TargetParser/Host.h>
-#else
-#include <llvm/Support/Host.h>
-#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<bool> 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<llvm::Function>(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<llvm::Function>(r)->getFunctionType());
}
-
-#if LLVM_VERSION_MAJOR < 8
-LLVMTypeRef
-LLVMGlobalGetValueType(LLVMValueRef g)
-{
- return llvm::wrap(llvm::unwrap<llvm::GlobalValue>(g)->getValueType());
-}
-#endif