PostgreSQL Source Code  git master
llvmjit_wrap.cpp
Go to the documentation of this file.
1 /*-------------------------------------------------------------------------
2  *
3  * llvmjit_wrap.cpp
4  * Parts of the LLVM interface not (yet) exposed to C.
5  *
6  * Copyright (c) 2016-2024, PostgreSQL Global Development Group
7  *
8  * IDENTIFICATION
9  * src/backend/lib/llvm/llvmjit_wrap.cpp
10  *
11  *-------------------------------------------------------------------------
12  */
13 
14 extern "C"
15 {
16 #include "postgres.h"
17 }
18 
19 #include <llvm-c/Core.h>
20 
21 /* Avoid macro clash with LLVM's C++ headers */
22 #undef Min
23 
24 #include <llvm/IR/Function.h>
25 
26 #include "jit/llvmjit.h"
27 
28 
29 /*
30  * C-API extensions.
31  */
32 
33 LLVMTypeRef
35 {
36  return llvm::wrap(llvm::unwrap<llvm::Function>(r)->getReturnType());
37 }
38 
39 LLVMTypeRef
40 LLVMGetFunctionType(LLVMValueRef r)
41 {
42  return llvm::wrap(llvm::unwrap<llvm::Function>(r)->getFunctionType());
43 }
LLVMTypeRef LLVMGetFunctionReturnType(LLVMValueRef r)
LLVMTypeRef LLVMGetFunctionType(LLVMValueRef r)