llvm.org GIT mirror llvm / e1b80b6
LLVM Ada language bindings. Credit to Rod Kay and the AuroraUX team. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79295 91177308-0d34-0410-b5e6-96231b3b80d8 Edward O'Callaghan 10 years ago
26 changed file(s) with 17093 addition(s) and 0 deletion(s). Raw diff Collapse all Expand all
181181 E: kowshik@uiuc.edu
182182 D: Author of the original C backend
183183
184 N: Rod Kay
185 E: rkay@auroraux.org
186 D: Author of LLVM Ada bindings
187
184188 N: Christopher Lamb
185189 E: christopher.lamb@gmail.com
186190 D: aligned load/store support, parts of noalias and restrict support
0 -- This file is generated by SWIG. Do *not* modify by hand.
1 --
2
3 with llvm;
4 with Interfaces.C.Strings;
5
6
7 package LLVM_Analysis.Binding is
8
9 function LLVMVerifyModule
10 (M : in llvm.LLVMModuleRef;
11 Action : in LLVM_Analysis.LLVMVerifierFailureAction;
12 OutMessage : access Interfaces.C.Strings.chars_ptr)
13 return Interfaces.C.int;
14
15 function LLVMVerifyFunction
16 (Fn : in llvm.LLVMValueRef;
17 Action : in LLVM_Analysis.LLVMVerifierFailureAction)
18 return Interfaces.C.int;
19
20 procedure LLVMViewFunctionCFG (Fn : in llvm.LLVMValueRef);
21
22 procedure LLVMViewFunctionCFGOnly (Fn : in llvm.LLVMValueRef);
23
24 private
25
26 pragma Import (C, LLVMVerifyModule, "Ada_LLVMVerifyModule");
27 pragma Import (C, LLVMVerifyFunction, "Ada_LLVMVerifyFunction");
28 pragma Import (C, LLVMViewFunctionCFG, "Ada_LLVMViewFunctionCFG");
29 pragma Import (C, LLVMViewFunctionCFGOnly, "Ada_LLVMViewFunctionCFGOnly");
30
31 end LLVM_Analysis.Binding;
0 -- This file is generated by SWIG. Do *not* modify by hand.
1 --
2
3 with Interfaces.C;
4
5
6 package LLVM_Analysis is
7
8 -- LLVMVerifierFailureAction
9 --
10 type LLVMVerifierFailureAction is (
11 LLVMAbortProcessAction,
12 LLVMPrintMessageAction,
13 LLVMReturnStatusAction);
14
15 for LLVMVerifierFailureAction use
16 (LLVMAbortProcessAction => 0,
17 LLVMPrintMessageAction => 1,
18 LLVMReturnStatusAction => 2);
19
20 pragma Convention (C, LLVMVerifierFailureAction);
21
22 type LLVMVerifierFailureAction_array is
23 array (Interfaces.C.size_t range <>)
24 of aliased LLVM_Analysis.LLVMVerifierFailureAction;
25
26 type LLVMVerifierFailureAction_view is access all
27 LLVM_Analysis.LLVMVerifierFailureAction;
28
29 end LLVM_Analysis;
0 /* ----------------------------------------------------------------------------
1 * This file was automatically generated by SWIG (http://www.swig.org).
2 * Version 1.3.36
3 *
4 * This file is not intended to be easily readable and contains a number of
5 * coding conventions designed to improve portability and efficiency. Do not make
6 * changes to this file unless you know what you are doing--modify the SWIG
7 * interface file instead.
8 * ----------------------------------------------------------------------------- */
9
10
11 #ifdef __cplusplus
12 template class SwigValueWrapper {
13 T *tt;
14 public:
15 SwigValueWrapper() : tt(0) { }
16 SwigValueWrapper(const SwigValueWrapper& rhs) : tt(new T(*rhs.tt)) { }
17 SwigValueWrapper(const T& t) : tt(new T(t)) { }
18 ~SwigValueWrapper() { delete tt; }
19 SwigValueWrapper& operator=(const T& t) { delete tt; tt = new T(t); return *this; }
20 operator T&() const { return *tt; }
21 T *operator&() { return tt; }
22 private:
23 SwigValueWrapper& operator=(const SwigValueWrapper& rhs);
24 };
25
26 template T SwigValueInit() {
27 return T();
28 }
29 #endif
30
31 /* -----------------------------------------------------------------------------
32 * This section contains generic SWIG labels for method/variable
33 * declarations/attributes, and other compiler dependent labels.
34 * ----------------------------------------------------------------------------- */
35
36 /* template workaround for compilers that cannot correctly implement the C++ standard */
37 #ifndef SWIGTEMPLATEDISAMBIGUATOR
38 # if defined(__SUNPRO_CC) && (__SUNPRO_CC <= 0x560)
39 # define SWIGTEMPLATEDISAMBIGUATOR template
40 # elif defined(__HP_aCC)
41 /* Needed even with `aCC -AA' when `aCC -V' reports HP ANSI C++ B3910B A.03.55 */
42 /* If we find a maximum version that requires this, the test would be __HP_aCC <= 35500 for A.03.55 */
43 # define SWIGTEMPLATEDISAMBIGUATOR template
44 # else
45 # define SWIGTEMPLATEDISAMBIGUATOR
46 # endif
47 #endif
48
49 /* inline attribute */
50 #ifndef SWIGINLINE
51 # if defined(__cplusplus) || (defined(__GNUC__) && !defined(__STRICT_ANSI__))
52 # define SWIGINLINE inline
53 # else
54 # define SWIGINLINE
55 # endif
56 #endif
57
58 /* attribute recognised by some compilers to avoid 'unused' warnings */
59 #ifndef SWIGUNUSED
60 # if defined(__GNUC__)
61 # if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
62 # define SWIGUNUSED __attribute__ ((__unused__))
63 # else
64 # define SWIGUNUSED
65 # endif
66 # elif defined(__ICC)
67 # define SWIGUNUSED __attribute__ ((__unused__))
68 # else
69 # define SWIGUNUSED
70 # endif
71 #endif
72
73 #ifndef SWIGUNUSEDPARM
74 # ifdef __cplusplus
75 # define SWIGUNUSEDPARM(p)
76 # else
77 # define SWIGUNUSEDPARM(p) p SWIGUNUSED
78 # endif
79 #endif
80
81 /* internal SWIG method */
82 #ifndef SWIGINTERN
83 # define SWIGINTERN static SWIGUNUSED
84 #endif
85
86 /* internal inline SWIG method */
87 #ifndef SWIGINTERNINLINE
88 # define SWIGINTERNINLINE SWIGINTERN SWIGINLINE
89 #endif
90
91 /* exporting methods */
92 #if (__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)
93 # ifndef GCC_HASCLASSVISIBILITY
94 # define GCC_HASCLASSVISIBILITY
95 # endif
96 #endif
97
98 #ifndef SWIGEXPORT
99 # if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
100 # if defined(STATIC_LINKED)
101 # define SWIGEXPORT
102 # else
103 # define SWIGEXPORT __declspec(dllexport)
104 # endif
105 # else
106 # if defined(__GNUC__) && defined(GCC_HASCLASSVISIBILITY)
107 # define SWIGEXPORT __attribute__ ((visibility("default")))
108 # else
109 # define SWIGEXPORT
110 # endif
111 # endif
112 #endif
113
114 /* calling conventions for Windows */
115 #ifndef SWIGSTDCALL
116 # if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
117 # define SWIGSTDCALL __stdcall
118 # else
119 # define SWIGSTDCALL
120 # endif
121 #endif
122
123 /* Deal with Microsoft's attempt at deprecating C standard runtime functions */
124 #if !defined(SWIG_NO_CRT_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_CRT_SECURE_NO_DEPRECATE)
125 # define _CRT_SECURE_NO_DEPRECATE
126 #endif
127
128 /* Deal with Microsoft's attempt at deprecating methods in the standard C++ library */
129 #if !defined(SWIG_NO_SCL_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_SCL_SECURE_NO_DEPRECATE)
130 # define _SCL_SECURE_NO_DEPRECATE
131 #endif
132
133
134
135 #include
136 #include
137 #include
138 #if defined(_WIN32) || defined(__CYGWIN32__)
139 # define DllExport __declspec( dllexport )
140 # define SWIGSTDCALL __stdcall
141 #else
142 # define DllExport
143 # define SWIGSTDCALL
144 #endif
145
146
147 #ifdef __cplusplus
148 # include
149 #endif
150
151
152
153
154 /* Support for throwing Ada exceptions from C/C++ */
155
156 typedef enum
157 {
158 SWIG_AdaException,
159 SWIG_AdaOutOfMemoryException,
160 SWIG_AdaIndexOutOfRangeException,
161 SWIG_AdaDivideByZeroException,
162 SWIG_AdaArgumentOutOfRangeException,
163 SWIG_AdaNullReferenceException
164 } SWIG_AdaExceptionCodes;
165
166
167 typedef void (SWIGSTDCALL* SWIG_AdaExceptionCallback_t)(const char *);
168
169
170 typedef struct
171 {
172 SWIG_AdaExceptionCodes code;
173 SWIG_AdaExceptionCallback_t callback;
174 }
175 SWIG_AdaExceptions_t;
176
177
178 static
179 SWIG_AdaExceptions_t
180 SWIG_ada_exceptions[] =
181 {
182 { SWIG_AdaException, NULL },
183 { SWIG_AdaOutOfMemoryException, NULL },
184 { SWIG_AdaIndexOutOfRangeException, NULL },
185 { SWIG_AdaDivideByZeroException, NULL },
186 { SWIG_AdaArgumentOutOfRangeException, NULL },
187 { SWIG_AdaNullReferenceException, NULL }
188 };
189
190
191 static
192 void
193 SWIG_AdaThrowException (SWIG_AdaExceptionCodes code, const char *msg)
194 {
195 SWIG_AdaExceptionCallback_t callback = SWIG_ada_exceptions[SWIG_AdaException].callback;
196 if (code >=0 && (size_t)code < sizeof(SWIG_ada_exceptions)/sizeof(SWIG_AdaExceptions_t)) {
197 callback = SWIG_ada_exceptions[code].callback;
198 }
199 callback(msg);
200 }
201
202
203
204 #ifdef __cplusplus
205 extern "C"
206 #endif
207
208 DllExport void SWIGSTDCALL SWIGRegisterExceptionCallbacks_LLVM_Analysis (SWIG_AdaExceptionCallback_t systemException,
209 SWIG_AdaExceptionCallback_t outOfMemory,
210 SWIG_AdaExceptionCallback_t indexOutOfRange,
211 SWIG_AdaExceptionCallback_t divideByZero,
212 SWIG_AdaExceptionCallback_t argumentOutOfRange,
213 SWIG_AdaExceptionCallback_t nullReference)
214 {
215 SWIG_ada_exceptions [SWIG_AdaException].callback = systemException;
216 SWIG_ada_exceptions [SWIG_AdaOutOfMemoryException].callback = outOfMemory;
217 SWIG_ada_exceptions [SWIG_AdaIndexOutOfRangeException].callback = indexOutOfRange;
218 SWIG_ada_exceptions [SWIG_AdaDivideByZeroException].callback = divideByZero;
219 SWIG_ada_exceptions [SWIG_AdaArgumentOutOfRangeException].callback = argumentOutOfRange;
220 SWIG_ada_exceptions [SWIG_AdaNullReferenceException].callback = nullReference;
221 }
222
223
224 /* Callback for returning strings to Ada without leaking memory */
225
226 typedef char * (SWIGSTDCALL* SWIG_AdaStringHelperCallback)(const char *);
227 static SWIG_AdaStringHelperCallback SWIG_ada_string_callback = NULL;
228
229
230
231 /* probably obsolete ...
232 #ifdef __cplusplus
233 extern "C"
234 #endif
235 DllExport void SWIGSTDCALL SWIGRegisterStringCallback_LLVM_Analysis(SWIG_AdaStringHelperCallback callback) {
236 SWIG_ada_string_callback = callback;
237 }
238 */
239
240
241
242 /* Contract support */
243
244 #define SWIG_contract_assert(nullreturn, expr, msg) if (!(expr)) {SWIG_AdaThrowException(SWIG_AdaArgumentOutOfRangeException, msg); return nullreturn; } else
245
246
247 #define protected public
248 #define private public
249
250 #include "llvm-c/Analysis.h"
251 //#include "llvm-c/BitReader.h"
252 //#include "llvm-c/BitWriter.h"
253 //#include "llvm-c/Core.h"
254 //#include "llvm-c/ExecutionEngine.h"
255 //#include "llvm-c/LinkTimeOptimizer.h"
256 //#include "llvm-c/lto.h"
257 //#include "llvm-c/Target.h"
258
259
260
261 // struct LLVMCtxt;
262
263
264 #undef protected
265 #undef private
266 #ifdef __cplusplus
267 extern "C" {
268 #endif
269 DllExport int SWIGSTDCALL Ada_LLVMVerifyModule (
270 void * jarg1
271 ,
272
273 int jarg2
274 ,
275
276 void * jarg3
277 )
278 {
279 int jresult ;
280 LLVMModuleRef arg1 = (LLVMModuleRef) 0 ;
281 LLVMVerifierFailureAction arg2 ;
282 char **arg3 = (char **) 0 ;
283 int result;
284
285 arg1 = (LLVMModuleRef)jarg1;
286
287 arg2 = (LLVMVerifierFailureAction) jarg2;
288
289 arg3 = (char **)jarg3;
290
291 result = (int)LLVMVerifyModule(arg1,arg2,arg3);
292 jresult = result;
293
294
295
296 return jresult;
297
298 }
299
300
301
302 DllExport int SWIGSTDCALL Ada_LLVMVerifyFunction (
303 void * jarg1
304 ,
305
306 int jarg2
307 )
308 {
309 int jresult ;
310 LLVMValueRef arg1 = (LLVMValueRef) 0 ;
311 LLVMVerifierFailureAction arg2 ;
312 int result;
313
314 arg1 = (LLVMValueRef)jarg1;
315
316 arg2 = (LLVMVerifierFailureAction) jarg2;
317
318 result = (int)LLVMVerifyFunction(arg1,arg2);
319 jresult = result;
320
321
322
323 return jresult;
324
325 }
326
327
328
329 DllExport void SWIGSTDCALL Ada_LLVMViewFunctionCFG (
330 void * jarg1
331 )
332 {
333 LLVMValueRef arg1 = (LLVMValueRef) 0 ;
334
335 arg1 = (LLVMValueRef)jarg1;
336
337 LLVMViewFunctionCFG(arg1);
338
339
340 }
341
342
343
344 DllExport void SWIGSTDCALL Ada_LLVMViewFunctionCFGOnly (
345 void * jarg1
346 )
347 {
348 LLVMValueRef arg1 = (LLVMValueRef) 0 ;
349
350 arg1 = (LLVMValueRef)jarg1;
351
352 LLVMViewFunctionCFGOnly(arg1);
353
354
355 }
356
357
358
359 #ifdef __cplusplus
360 }
361 #endif
362 #ifdef __cplusplus
363 extern "C" {
364 #endif
365 #ifdef __cplusplus
366 }
367 #endif
368
0 -- This file is generated by SWIG. Do *not* modify by hand.
1 --
2
3 with llvm;
4 with Interfaces.C.Strings;
5
6
7 package LLVM_bit_Reader.Binding is
8
9 function LLVMParseBitcode
10 (MemBuf : in llvm.LLVMMemoryBufferRef;
11 OutModule : access llvm.LLVMModuleRef;
12 OutMessage : access Interfaces.C.Strings.chars_ptr)
13 return Interfaces.C.int;
14
15 function LLVMParseBitcodeInContext
16 (MemBuf : in llvm.LLVMMemoryBufferRef;
17 ContextRef : in llvm.LLVMContextRef;
18 OutModule : access llvm.LLVMModuleRef;
19 OutMessage : access Interfaces.C.Strings.chars_ptr)
20 return Interfaces.C.int;
21
22 function LLVMGetBitcodeModuleProvider
23 (MemBuf : in llvm.LLVMMemoryBufferRef;
24 OutMP : access llvm.LLVMModuleProviderRef;
25 OutMessage : access Interfaces.C.Strings.chars_ptr)
26 return Interfaces.C.int;
27
28 function LLVMGetBitcodeModuleProviderInContext
29 (MemBuf : in llvm.LLVMMemoryBufferRef;
30 ContextRef : in llvm.LLVMContextRef;
31 OutMP : access llvm.LLVMModuleProviderRef;
32 OutMessage : access Interfaces.C.Strings.chars_ptr)
33 return Interfaces.C.int;
34
35 private
36
37 pragma Import (C, LLVMParseBitcode, "Ada_LLVMParseBitcode");
38 pragma Import
39 (C,
40 LLVMParseBitcodeInContext,
41 "Ada_LLVMParseBitcodeInContext");
42 pragma Import
43 (C,
44 LLVMGetBitcodeModuleProvider,
45 "Ada_LLVMGetBitcodeModuleProvider");
46 pragma Import
47 (C,
48 LLVMGetBitcodeModuleProviderInContext,
49 "Ada_LLVMGetBitcodeModuleProviderInContext");
50
51 end LLVM_bit_Reader.Binding;
0 -- This file is generated by SWIG. Do *not* modify by hand.
1 --
2
3 package LLVM_bit_Reader is
4
5 end LLVM_bit_Reader;
0 /* ----------------------------------------------------------------------------
1 * This file was automatically generated by SWIG (http://www.swig.org).
2 * Version 1.3.36
3 *
4 * This file is not intended to be easily readable and contains a number of
5 * coding conventions designed to improve portability and efficiency. Do not make
6 * changes to this file unless you know what you are doing--modify the SWIG
7 * interface file instead.
8 * ----------------------------------------------------------------------------- */
9
10
11 #ifdef __cplusplus
12 template class SwigValueWrapper {
13 T *tt;
14 public:
15 SwigValueWrapper() : tt(0) { }
16 SwigValueWrapper(const SwigValueWrapper& rhs) : tt(new T(*rhs.tt)) { }
17 SwigValueWrapper(const T& t) : tt(new T(t)) { }
18 ~SwigValueWrapper() { delete tt; }
19 SwigValueWrapper& operator=(const T& t) { delete tt; tt = new T(t); return *this; }
20 operator T&() const { return *tt; }
21 T *operator&() { return tt; }
22 private:
23 SwigValueWrapper& operator=(const SwigValueWrapper& rhs);
24 };
25
26 template T SwigValueInit() {
27 return T();
28 }
29 #endif
30
31 /* -----------------------------------------------------------------------------
32 * This section contains generic SWIG labels for method/variable
33 * declarations/attributes, and other compiler dependent labels.
34 * ----------------------------------------------------------------------------- */
35
36 /* template workaround for compilers that cannot correctly implement the C++ standard */
37 #ifndef SWIGTEMPLATEDISAMBIGUATOR
38 # if defined(__SUNPRO_CC) && (__SUNPRO_CC <= 0x560)
39 # define SWIGTEMPLATEDISAMBIGUATOR template
40 # elif defined(__HP_aCC)
41 /* Needed even with `aCC -AA' when `aCC -V' reports HP ANSI C++ B3910B A.03.55 */
42 /* If we find a maximum version that requires this, the test would be __HP_aCC <= 35500 for A.03.55 */
43 # define SWIGTEMPLATEDISAMBIGUATOR template
44 # else
45 # define SWIGTEMPLATEDISAMBIGUATOR
46 # endif
47 #endif
48
49 /* inline attribute */
50 #ifndef SWIGINLINE
51 # if defined(__cplusplus) || (defined(__GNUC__) && !defined(__STRICT_ANSI__))
52 # define SWIGINLINE inline
53 # else
54 # define SWIGINLINE
55 # endif
56 #endif
57
58 /* attribute recognised by some compilers to avoid 'unused' warnings */
59 #ifndef SWIGUNUSED
60 # if defined(__GNUC__)
61 # if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
62 # define SWIGUNUSED __attribute__ ((__unused__))
63 # else
64 # define SWIGUNUSED
65 # endif
66 # elif defined(__ICC)
67 # define SWIGUNUSED __attribute__ ((__unused__))
68 # else
69 # define SWIGUNUSED
70 # endif
71 #endif
72
73 #ifndef SWIGUNUSEDPARM
74 # ifdef __cplusplus
75 # define SWIGUNUSEDPARM(p)
76 # else
77 # define SWIGUNUSEDPARM(p) p SWIGUNUSED
78 # endif
79 #endif
80
81 /* internal SWIG method */
82 #ifndef SWIGINTERN
83 # define SWIGINTERN static SWIGUNUSED
84 #endif
85
86 /* internal inline SWIG method */
87 #ifndef SWIGINTERNINLINE
88 # define SWIGINTERNINLINE SWIGINTERN SWIGINLINE
89 #endif
90
91 /* exporting methods */
92 #if (__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)
93 # ifndef GCC_HASCLASSVISIBILITY
94 # define GCC_HASCLASSVISIBILITY
95 # endif
96 #endif
97
98 #ifndef SWIGEXPORT
99 # if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
100 # if defined(STATIC_LINKED)
101 # define SWIGEXPORT
102 # else
103 # define SWIGEXPORT __declspec(dllexport)
104 # endif
105 # else
106 # if defined(__GNUC__) && defined(GCC_HASCLASSVISIBILITY)
107 # define SWIGEXPORT __attribute__ ((visibility("default")))
108 # else
109 # define SWIGEXPORT
110 # endif
111 # endif
112 #endif
113
114 /* calling conventions for Windows */
115 #ifndef SWIGSTDCALL
116 # if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
117 # define SWIGSTDCALL __stdcall
118 # else
119 # define SWIGSTDCALL
120 # endif
121 #endif
122
123 /* Deal with Microsoft's attempt at deprecating C standard runtime functions */
124 #if !defined(SWIG_NO_CRT_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_CRT_SECURE_NO_DEPRECATE)
125 # define _CRT_SECURE_NO_DEPRECATE
126 #endif
127
128 /* Deal with Microsoft's attempt at deprecating methods in the standard C++ library */
129 #if !defined(SWIG_NO_SCL_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_SCL_SECURE_NO_DEPRECATE)
130 # define _SCL_SECURE_NO_DEPRECATE
131 #endif
132
133
134
135 #include
136 #include
137 #include
138 #if defined(_WIN32) || defined(__CYGWIN32__)
139 # define DllExport __declspec( dllexport )
140 # define SWIGSTDCALL __stdcall
141 #else
142 # define DllExport
143 # define SWIGSTDCALL
144 #endif
145
146
147 #ifdef __cplusplus
148 # include
149 #endif
150
151
152
153
154 /* Support for throwing Ada exceptions from C/C++ */
155
156 typedef enum
157 {
158 SWIG_AdaException,
159 SWIG_AdaOutOfMemoryException,
160 SWIG_AdaIndexOutOfRangeException,
161 SWIG_AdaDivideByZeroException,
162 SWIG_AdaArgumentOutOfRangeException,
163 SWIG_AdaNullReferenceException
164 } SWIG_AdaExceptionCodes;
165
166
167 typedef void (SWIGSTDCALL* SWIG_AdaExceptionCallback_t)(const char *);
168
169
170 typedef struct
171 {
172 SWIG_AdaExceptionCodes code;
173 SWIG_AdaExceptionCallback_t callback;
174 }
175 SWIG_AdaExceptions_t;
176
177
178 static
179 SWIG_AdaExceptions_t
180 SWIG_ada_exceptions[] =
181 {
182 { SWIG_AdaException, NULL },
183 { SWIG_AdaOutOfMemoryException, NULL },
184 { SWIG_AdaIndexOutOfRangeException, NULL },
185 { SWIG_AdaDivideByZeroException, NULL },
186 { SWIG_AdaArgumentOutOfRangeException, NULL },
187 { SWIG_AdaNullReferenceException, NULL }
188 };
189
190
191 static
192 void
193 SWIG_AdaThrowException (SWIG_AdaExceptionCodes code, const char *msg)
194 {
195 SWIG_AdaExceptionCallback_t callback = SWIG_ada_exceptions[SWIG_AdaException].callback;
196 if (code >=0 && (size_t)code < sizeof(SWIG_ada_exceptions)/sizeof(SWIG_AdaExceptions_t)) {
197 callback = SWIG_ada_exceptions[code].callback;
198 }
199 callback(msg);
200 }
201
202
203
204 #ifdef __cplusplus
205 extern "C"
206 #endif
207
208 DllExport void SWIGSTDCALL SWIGRegisterExceptionCallbacks_LLVM_bit_Reader (SWIG_AdaExceptionCallback_t systemException,
209 SWIG_AdaExceptionCallback_t outOfMemory,
210 SWIG_AdaExceptionCallback_t indexOutOfRange,
211 SWIG_AdaExceptionCallback_t divideByZero,
212 SWIG_AdaExceptionCallback_t argumentOutOfRange,
213 SWIG_AdaExceptionCallback_t nullReference)
214 {
215 SWIG_ada_exceptions [SWIG_AdaException].callback = systemException;
216 SWIG_ada_exceptions [SWIG_AdaOutOfMemoryException].callback = outOfMemory;
217 SWIG_ada_exceptions [SWIG_AdaIndexOutOfRangeException].callback = indexOutOfRange;
218 SWIG_ada_exceptions [SWIG_AdaDivideByZeroException].callback = divideByZero;
219 SWIG_ada_exceptions [SWIG_AdaArgumentOutOfRangeException].callback = argumentOutOfRange;
220 SWIG_ada_exceptions [SWIG_AdaNullReferenceException].callback = nullReference;
221 }
222
223
224 /* Callback for returning strings to Ada without leaking memory */
225
226 typedef char * (SWIGSTDCALL* SWIG_AdaStringHelperCallback)(const char *);
227 static SWIG_AdaStringHelperCallback SWIG_ada_string_callback = NULL;
228
229
230
231 /* probably obsolete ...
232 #ifdef __cplusplus
233 extern "C"
234 #endif
235 DllExport void SWIGSTDCALL SWIGRegisterStringCallback_LLVM_bit_Reader(SWIG_AdaStringHelperCallback callback) {
236 SWIG_ada_string_callback = callback;
237 }
238 */
239
240
241
242 /* Contract support */
243
244 #define SWIG_contract_assert(nullreturn, expr, msg) if (!(expr)) {SWIG_AdaThrowException(SWIG_AdaArgumentOutOfRangeException, msg); return nullreturn; } else
245
246
247 #define protected public
248 #define private public
249
250 //#include "llvm-c/Analysis.h"
251 #include "llvm-c/BitReader.h"
252 //#include "llvm-c/BitWriter.h"
253 //#include "llvm-c/Core.h"
254 //#include "llvm-c/ExecutionEngine.h"
255 //#include "llvm-c/LinkTimeOptimizer.h"
256 //#include "llvm-c/lto.h"
257 //#include "llvm-c/Target.h"
258
259
260
261 // struct LLVMCtxt;
262
263
264 #undef protected
265 #undef private
266 #ifdef __cplusplus
267 extern "C" {
268 #endif
269 DllExport int SWIGSTDCALL Ada_LLVMParseBitcode (
270 void * jarg1
271 ,
272
273 void * jarg2
274 ,
275
276 void * jarg3
277 )
278 {
279 int jresult ;
280 LLVMMemoryBufferRef arg1 = (LLVMMemoryBufferRef) 0 ;
281 LLVMModuleRef *arg2 = (LLVMModuleRef *) 0 ;
282 char **arg3 = (char **) 0 ;
283 int result;
284
285 arg1 = (LLVMMemoryBufferRef)jarg1;
286
287 arg2 = (LLVMModuleRef *)jarg2;
288
289 arg3 = (char **)jarg3;
290
291 result = (int)LLVMParseBitcode(arg1,arg2,arg3);
292 jresult = result;
293
294
295
296 return jresult;
297
298 }
299
300
301
302 DllExport int SWIGSTDCALL Ada_LLVMParseBitcodeInContext (
303 void * jarg1
304 ,
305
306 void * jarg2
307 ,
308
309 void * jarg3
310 ,
311
312 void * jarg4
313 )
314 {
315 int jresult ;
316 LLVMMemoryBufferRef arg1 = (LLVMMemoryBufferRef) 0 ;
317 LLVMContextRef arg2 = (LLVMContextRef) 0 ;
318 LLVMModuleRef *arg3 = (LLVMModuleRef *) 0 ;
319 char **arg4 = (char **) 0 ;
320 int result;
321
322 arg1 = (LLVMMemoryBufferRef)jarg1;
323
324 arg2 = (LLVMContextRef)jarg2;
325
326 arg3 = (LLVMModuleRef *)jarg3;
327
328 arg4 = (char **)jarg4;
329
330 result = (int)LLVMParseBitcodeInContext(arg1,arg2,arg3,arg4);
331 jresult = result;
332
333
334
335 return jresult;
336
337 }
338
339
340
341 DllExport int SWIGSTDCALL Ada_LLVMGetBitcodeModuleProvider (
342 void * jarg1
343 ,
344
345 void * jarg2
346 ,
347
348 void * jarg3
349 )
350 {
351 int jresult ;
352 LLVMMemoryBufferRef arg1 = (LLVMMemoryBufferRef) 0 ;
353 LLVMModuleProviderRef *arg2 = (LLVMModuleProviderRef *) 0 ;
354 char **arg3 = (char **) 0 ;
355 int result;
356
357 arg1 = (LLVMMemoryBufferRef)jarg1;
358
359 arg2 = (LLVMModuleProviderRef *)jarg2;
360
361 arg3 = (char **)jarg3;
362
363 result = (int)LLVMGetBitcodeModuleProvider(arg1,arg2,arg3);
364 jresult = result;
365
366
367
368 return jresult;
369
370 }
371
372
373
374 DllExport int SWIGSTDCALL Ada_LLVMGetBitcodeModuleProviderInContext (
375 void * jarg1
376 ,
377
378 void * jarg2
379 ,
380
381 void * jarg3
382 ,
383
384 void * jarg4
385 )
386 {
387 int jresult ;
388 LLVMMemoryBufferRef arg1 = (LLVMMemoryBufferRef) 0 ;
389 LLVMContextRef arg2 = (LLVMContextRef) 0 ;
390 LLVMModuleProviderRef *arg3 = (LLVMModuleProviderRef *) 0 ;
391 char **arg4 = (char **) 0 ;
392 int result;
393
394 arg1 = (LLVMMemoryBufferRef)jarg1;
395
396 arg2 = (LLVMContextRef)jarg2;
397
398 arg3 = (LLVMModuleProviderRef *)jarg3;
399
400 arg4 = (char **)jarg4;
401
402 result = (int)LLVMGetBitcodeModuleProviderInContext(arg1,arg2,arg3,arg4);
403 jresult = result;
404
405
406
407 return jresult;
408
409 }
410
411
412
413 #ifdef __cplusplus
414 }
415 #endif
416 #ifdef __cplusplus
417 extern "C" {
418 #endif
419 #ifdef __cplusplus
420 }
421 #endif
422
0 -- This file is generated by SWIG. Do *not* modify by hand.
1 --
2
3 with llvm;
4 with Interfaces.C.Strings;
5
6
7 package LLVM_bit_Writer.Binding is
8
9 function LLVMWriteBitcodeToFileHandle
10 (M : in llvm.LLVMModuleRef;
11 Handle : in Interfaces.C.int)
12 return Interfaces.C.int;
13
14 function LLVMWriteBitcodeToFile
15 (M : in llvm.LLVMModuleRef;
16 Path : in Interfaces.C.Strings.chars_ptr)
17 return Interfaces.C.int;
18
19 private
20
21 pragma Import
22 (C,
23 LLVMWriteBitcodeToFileHandle,
24 "Ada_LLVMWriteBitcodeToFileHandle");
25 pragma Import (C, LLVMWriteBitcodeToFile, "Ada_LLVMWriteBitcodeToFile");
26
27 end LLVM_bit_Writer.Binding;
0 -- This file is generated by SWIG. Do *not* modify by hand.
1 --
2
3 package LLVM_bit_Writer is
4
5 end LLVM_bit_Writer;
0 /* ----------------------------------------------------------------------------
1 * This file was automatically generated by SWIG (http://www.swig.org).
2 * Version 1.3.36
3 *
4 * This file is not intended to be easily readable and contains a number of
5 * coding conventions designed to improve portability and efficiency. Do not make
6 * changes to this file unless you know what you are doing--modify the SWIG
7 * interface file instead.
8 * ----------------------------------------------------------------------------- */
9
10
11 #ifdef __cplusplus
12 template class SwigValueWrapper {
13 T *tt;
14 public:
15 SwigValueWrapper() : tt(0) { }
16 SwigValueWrapper(const SwigValueWrapper& rhs) : tt(new T(*rhs.tt)) { }
17 SwigValueWrapper(const T& t) : tt(new T(t)) { }
18 ~SwigValueWrapper() { delete tt; }
19 SwigValueWrapper& operator=(const T& t) { delete tt; tt = new T(t); return *this; }
20 operator T&() const { return *tt; }
21 T *operator&() { return tt; }
22 private:
23 SwigValueWrapper& operator=(const SwigValueWrapper& rhs);
24 };
25
26 template T SwigValueInit() {
27 return T();
28 }
29 #endif
30
31 /* -----------------------------------------------------------------------------
32 * This section contains generic SWIG labels for method/variable
33 * declarations/attributes, and other compiler dependent labels.
34 * ----------------------------------------------------------------------------- */
35
36 /* template workaround for compilers that cannot correctly implement the C++ standard */
37 #ifndef SWIGTEMPLATEDISAMBIGUATOR
38 # if defined(__SUNPRO_CC) && (__SUNPRO_CC <= 0x560)
39 # define SWIGTEMPLATEDISAMBIGUATOR template
40 # elif defined(__HP_aCC)
41 /* Needed even with `aCC -AA' when `aCC -V' reports HP ANSI C++ B3910B A.03.55 */
42 /* If we find a maximum version that requires this, the test would be __HP_aCC <= 35500 for A.03.55 */
43 # define SWIGTEMPLATEDISAMBIGUATOR template
44 # else
45 # define SWIGTEMPLATEDISAMBIGUATOR
46 # endif
47 #endif
48
49 /* inline attribute */
50 #ifndef SWIGINLINE
51 # if defined(__cplusplus) || (defined(__GNUC__) && !defined(__STRICT_ANSI__))
52 # define SWIGINLINE inline
53 # else
54 # define SWIGINLINE
55 # endif
56 #endif
57
58 /* attribute recognised by some compilers to avoid 'unused' warnings */
59 #ifndef SWIGUNUSED
60 # if defined(__GNUC__)
61 # if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
62 # define SWIGUNUSED __attribute__ ((__unused__))
63 # else
64 # define SWIGUNUSED
65 # endif
66 # elif defined(__ICC)
67 # define SWIGUNUSED __attribute__ ((__unused__))
68 # else
69 # define SWIGUNUSED
70 # endif
71 #endif
72
73 #ifndef SWIGUNUSEDPARM
74 # ifdef __cplusplus
75 # define SWIGUNUSEDPARM(p)
76 # else
77 # define SWIGUNUSEDPARM(p) p SWIGUNUSED
78 # endif
79 #endif
80
81 /* internal SWIG method */
82 #ifndef SWIGINTERN
83 # define SWIGINTERN static SWIGUNUSED
84 #endif
85
86 /* internal inline SWIG method */
87 #ifndef SWIGINTERNINLINE
88 # define SWIGINTERNINLINE SWIGINTERN SWIGINLINE
89 #endif
90
91 /* exporting methods */
92 #if (__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)
93 # ifndef GCC_HASCLASSVISIBILITY
94 # define GCC_HASCLASSVISIBILITY
95 # endif
96 #endif
97
98 #ifndef SWIGEXPORT
99 # if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
100 # if defined(STATIC_LINKED)
101 # define SWIGEXPORT
102 # else
103 # define SWIGEXPORT __declspec(dllexport)
104 # endif
105 # else
106 # if defined(__GNUC__) && defined(GCC_HASCLASSVISIBILITY)
107 # define SWIGEXPORT __attribute__ ((visibility("default")))
108 # else
109 # define SWIGEXPORT
110 # endif
111 # endif
112 #endif
113
114 /* calling conventions for Windows */
115 #ifndef SWIGSTDCALL
116 # if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
117 # define SWIGSTDCALL __stdcall
118 # else
119 # define SWIGSTDCALL
120 # endif
121 #endif
122
123 /* Deal with Microsoft's attempt at deprecating C standard runtime functions */
124 #if !defined(SWIG_NO_CRT_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_CRT_SECURE_NO_DEPRECATE)
125 # define _CRT_SECURE_NO_DEPRECATE
126 #endif
127
128 /* Deal with Microsoft's attempt at deprecating methods in the standard C++ library */
129 #if !defined(SWIG_NO_SCL_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_SCL_SECURE_NO_DEPRECATE)
130 # define _SCL_SECURE_NO_DEPRECATE
131 #endif
132
133
134
135 #include
136 #include
137 #include
138 #if defined(_WIN32) || defined(__CYGWIN32__)
139 # define DllExport __declspec( dllexport )
140 # define SWIGSTDCALL __stdcall
141 #else
142 # define DllExport
143 # define SWIGSTDCALL
144 #endif
145
146
147 #ifdef __cplusplus
148 # include
149 #endif
150
151
152
153
154 /* Support for throwing Ada exceptions from C/C++ */
155
156 typedef enum
157 {
158 SWIG_AdaException,
159 SWIG_AdaOutOfMemoryException,
160 SWIG_AdaIndexOutOfRangeException,
161 SWIG_AdaDivideByZeroException,
162 SWIG_AdaArgumentOutOfRangeException,
163 SWIG_AdaNullReferenceException
164 } SWIG_AdaExceptionCodes;
165
166
167 typedef void (SWIGSTDCALL* SWIG_AdaExceptionCallback_t)(const char *);
168
169
170 typedef struct
171 {
172 SWIG_AdaExceptionCodes code;
173 SWIG_AdaExceptionCallback_t callback;
174 }
175 SWIG_AdaExceptions_t;
176
177
178 static
179 SWIG_AdaExceptions_t
180 SWIG_ada_exceptions[] =
181 {
182 { SWIG_AdaException, NULL },
183 { SWIG_AdaOutOfMemoryException, NULL },
184 { SWIG_AdaIndexOutOfRangeException, NULL },
185 { SWIG_AdaDivideByZeroException, NULL },
186 { SWIG_AdaArgumentOutOfRangeException, NULL },
187 { SWIG_AdaNullReferenceException, NULL }
188 };
189
190
191 static
192 void
193 SWIG_AdaThrowException (SWIG_AdaExceptionCodes code, const char *msg)
194 {
195 SWIG_AdaExceptionCallback_t callback = SWIG_ada_exceptions[SWIG_AdaException].callback;
196 if (code >=0 && (size_t)code < sizeof(SWIG_ada_exceptions)/sizeof(SWIG_AdaExceptions_t)) {
197 callback = SWIG_ada_exceptions[code].callback;
198 }
199 callback(msg);
200 }
201
202
203
204 #ifdef __cplusplus
205 extern "C"
206 #endif
207
208 DllExport void SWIGSTDCALL SWIGRegisterExceptionCallbacks_LLVM_bit_Writer (SWIG_AdaExceptionCallback_t systemException,
209 SWIG_AdaExceptionCallback_t outOfMemory,
210 SWIG_AdaExceptionCallback_t indexOutOfRange,
211 SWIG_AdaExceptionCallback_t divideByZero,
212 SWIG_AdaExceptionCallback_t argumentOutOfRange,
213 SWIG_AdaExceptionCallback_t nullReference)
214 {
215 SWIG_ada_exceptions [SWIG_AdaException].callback = systemException;
216 SWIG_ada_exceptions [SWIG_AdaOutOfMemoryException].callback = outOfMemory;
217 SWIG_ada_exceptions [SWIG_AdaIndexOutOfRangeException].callback = indexOutOfRange;
218 SWIG_ada_exceptions [SWIG_AdaDivideByZeroException].callback = divideByZero;
219 SWIG_ada_exceptions [SWIG_AdaArgumentOutOfRangeException].callback = argumentOutOfRange;
220 SWIG_ada_exceptions [SWIG_AdaNullReferenceException].callback = nullReference;
221 }
222
223
224 /* Callback for returning strings to Ada without leaking memory */
225
226 typedef char * (SWIGSTDCALL* SWIG_AdaStringHelperCallback)(const char *);
227 static SWIG_AdaStringHelperCallback SWIG_ada_string_callback = NULL;
228
229
230
231 /* probably obsolete ...
232 #ifdef __cplusplus
233 extern "C"
234 #endif
235 DllExport void SWIGSTDCALL SWIGRegisterStringCallback_LLVM_bit_Writer(SWIG_AdaStringHelperCallback callback) {
236 SWIG_ada_string_callback = callback;
237 }
238 */
239
240
241
242 /* Contract support */
243
244 #define SWIG_contract_assert(nullreturn, expr, msg) if (!(expr)) {SWIG_AdaThrowException(SWIG_AdaArgumentOutOfRangeException, msg); return nullreturn; } else
245
246
247 #define protected public
248 #define private public
249
250 #include "llvm-c/Analysis.h"
251 #include "llvm-c/BitReader.h"
252 #include "llvm-c/BitWriter.h"
253 #include "llvm-c/Core.h"
254 #include "llvm-c/ExecutionEngine.h"
255 #include "llvm-c/LinkTimeOptimizer.h"
256 #include "llvm-c/lto.h"
257 #include "llvm-c/Target.h"
258
259
260
261 // struct LLVMCtxt;
262
263
264 #undef protected
265 #undef private
266 #ifdef __cplusplus
267 extern "C" {
268 #endif
269 DllExport int SWIGSTDCALL Ada_LLVMWriteBitcodeToFileHandle (
270 void * jarg1
271 ,
272
273 int jarg2
274 )
275 {
276 int jresult ;
277 LLVMModuleRef arg1 = (LLVMModuleRef) 0 ;
278 int arg2 ;
279 int result;
280
281 arg1 = (LLVMModuleRef)jarg1;
282
283
284 arg2 = (int) jarg2;
285
286
287 result = (int)LLVMWriteBitcodeToFileHandle(arg1,arg2);
288 jresult = result;
289
290
291
292 return jresult;
293
294 }
295
296
297
298 DllExport int SWIGSTDCALL Ada_LLVMWriteBitcodeToFile (
299 void * jarg1
300 ,
301
302 char * jarg2
303 )
304 {
305 int jresult ;
306 LLVMModuleRef arg1 = (LLVMModuleRef) 0 ;
307 char *arg2 = (char *) 0 ;
308 int result;
309
310 arg1 = (LLVMModuleRef)jarg1;
311
312 arg2 = jarg2;
313
314 result = (int)LLVMWriteBitcodeToFile(arg1,(char const *)arg2);
315 jresult = result;
316
317
318
319 return jresult;
320
321 }
322
323
324
325 #ifdef __cplusplus
326 }
327 #endif
328 #ifdef __cplusplus
329 extern "C" {
330 #endif
331 #ifdef __cplusplus
332 }
333 #endif
334
0 -- This file is generated by SWIG. Do *not* modify by hand.
1 --
2
3 with llvm;
4 with Interfaces.C.Strings;
5
6
7 package LLVM_execution_Engine.Binding is
8
9 procedure LLVMLinkInJIT;
10
11 procedure LLVMLinkInInterpreter;
12
13 function LLVMCreateGenericValueOfInt
14 (Ty : in llvm.LLVMTypeRef;
15 N : in Interfaces.C.Extensions.unsigned_long_long;
16 IsSigned : in Interfaces.C.int)
17 return LLVM_execution_Engine.LLVMGenericValueRef;
18
19 function LLVMCreateGenericValueOfPointer
20 (P : access Interfaces.C.Extensions.void)
21 return LLVM_execution_Engine.LLVMGenericValueRef;
22
23 function LLVMCreateGenericValueOfFloat
24 (Ty : in llvm.LLVMTypeRef;
25 N : in Interfaces.C.double)
26 return LLVM_execution_Engine.LLVMGenericValueRef;
27
28 function LLVMGenericValueIntWidth
29 (GenValRef : in LLVM_execution_Engine.LLVMGenericValueRef)
30 return Interfaces.C.unsigned;
31
32 function LLVMGenericValueToInt
33 (GenVal : in LLVM_execution_Engine.LLVMGenericValueRef;
34 IsSigned : in Interfaces.C.int)
35 return Interfaces.C.Extensions.unsigned_long_long;
36
37 function LLVMGenericValueToPointer
38 (GenVal : in LLVM_execution_Engine.LLVMGenericValueRef)
39 return access Interfaces.C.Extensions.void;
40
41 function LLVMGenericValueToFloat
42 (TyRef : in llvm.LLVMTypeRef;
43 GenVal : in LLVM_execution_Engine.LLVMGenericValueRef)
44 return Interfaces.C.double;
45
46 procedure LLVMDisposeGenericValue
47 (GenVal : in LLVM_execution_Engine.LLVMGenericValueRef);
48
49 function LLVMCreateExecutionEngine
50 (OutEE : access LLVM_execution_Engine.LLVMExecutionEngineRef;
51 MP : in llvm.LLVMModuleProviderRef;
52 OutError : access Interfaces.C.Strings.chars_ptr)
53 return Interfaces.C.int;
54
55 function LLVMCreateInterpreter
56 (OutInterp : access LLVM_execution_Engine.LLVMExecutionEngineRef;
57 MP : in llvm.LLVMModuleProviderRef;
58 OutError : access Interfaces.C.Strings.chars_ptr)
59 return Interfaces.C.int;
60
61 function LLVMCreateJITCompiler
62 (OutJIT : access LLVM_execution_Engine.LLVMExecutionEngineRef;
63 MP : in llvm.LLVMModuleProviderRef;
64 OptLevel : in Interfaces.C.unsigned;
65 OutError : access Interfaces.C.Strings.chars_ptr)
66 return Interfaces.C.int;
67
68 procedure LLVMDisposeExecutionEngine
69 (EE : in LLVM_execution_Engine.LLVMExecutionEngineRef);
70
71 procedure LLVMRunStaticConstructors
72 (EE : in LLVM_execution_Engine.LLVMExecutionEngineRef);
73
74 procedure LLVMRunStaticDestructors
75 (EE : in LLVM_execution_Engine.LLVMExecutionEngineRef);
76
77 function LLVMRunFunctionAsMain
78 (EE : in LLVM_execution_Engine.LLVMExecutionEngineRef;
79 F : in llvm.LLVMValueRef;
80 ArgC : in Interfaces.C.unsigned;
81 ArgV : access Interfaces.C.Strings.chars_ptr;
82 EnvP : access Interfaces.C.Strings.chars_ptr)
83 return Interfaces.C.int;
84
85 function LLVMRunFunction
86 (EE : in LLVM_execution_Engine.LLVMExecutionEngineRef;
87 F : in llvm.LLVMValueRef;
88 NumArgs : in Interfaces.C.unsigned;
89 Args : access LLVM_execution_Engine.LLVMGenericValueRef)
90 return LLVM_execution_Engine.LLVMGenericValueRef;
91
92 procedure LLVMFreeMachineCodeForFunction
93 (EE : in LLVM_execution_Engine.LLVMExecutionEngineRef;
94 F : in llvm.LLVMValueRef);
95
96 procedure LLVMAddModuleProvider
97 (EE : in LLVM_execution_Engine.LLVMExecutionEngineRef;
98 MP : in llvm.LLVMModuleProviderRef);
99
100 function LLVMRemoveModuleProvider
101 (EE : in LLVM_execution_Engine.LLVMExecutionEngineRef;
102 MP : in llvm.LLVMModuleProviderRef;
103 OutMod : access llvm.LLVMModuleRef;
104 OutError : access Interfaces.C.Strings.chars_ptr)
105 return Interfaces.C.int;
106
107 function LLVMFindFunction
108 (EE : in LLVM_execution_Engine.LLVMExecutionEngineRef;
109 Name : in Interfaces.C.Strings.chars_ptr;
110 OutFn : access llvm.LLVMValueRef)
111 return Interfaces.C.int;
112
113 function LLVMGetExecutionEngineTargetData
114 (EE : in LLVM_execution_Engine.LLVMExecutionEngineRef)
115 return LLVM_execution_Engine.LLVMTargetDataRef;
116
117 procedure LLVMAddGlobalMapping
118 (EE : in LLVM_execution_Engine.LLVMExecutionEngineRef;
119 Global : in llvm.LLVMValueRef;
120 Addr : access Interfaces.C.Extensions.void);
121
122 function LLVMGetPointerToGlobal
123 (EE : in LLVM_execution_Engine.LLVMExecutionEngineRef;
124 Global : in llvm.LLVMValueRef)
125 return access Interfaces.C.Extensions.void;
126
127 private
128
129 pragma Import (C, LLVMLinkInJIT, "Ada_LLVMLinkInJIT");
130 pragma Import (C, LLVMLinkInInterpreter, "Ada_LLVMLinkInInterpreter");
131 pragma Import
132 (C,
133 LLVMCreateGenericValueOfInt,
134 "Ada_LLVMCreateGenericValueOfInt");
135 pragma Import
136 (C,
137 LLVMCreateGenericValueOfPointer,
138 "Ada_LLVMCreateGenericValueOfPointer");
139 pragma Import
140 (C,
141 LLVMCreateGenericValueOfFloat,
142 "Ada_LLVMCreateGenericValueOfFloat");
143 pragma Import
144 (C,
145 LLVMGenericValueIntWidth,
146 "Ada_LLVMGenericValueIntWidth");
147 pragma Import (C, LLVMGenericValueToInt, "Ada_LLVMGenericValueToInt");
148 pragma Import
149 (C,
150 LLVMGenericValueToPointer,
151 "Ada_LLVMGenericValueToPointer");
152 pragma Import (C, LLVMGenericValueToFloat, "Ada_LLVMGenericValueToFloat");
153 pragma Import (C, LLVMDisposeGenericValue, "Ada_LLVMDisposeGenericValue");
154 pragma Import
155 (C,
156 LLVMCreateExecutionEngine,
157 "Ada_LLVMCreateExecutionEngine");
158 pragma Import (C, LLVMCreateInterpreter, "Ada_LLVMCreateInterpreter");
159 pragma Import (C, LLVMCreateJITCompiler, "Ada_LLVMCreateJITCompiler");
160 pragma Import
161 (C,
162 LLVMDisposeExecutionEngine,
163 "Ada_LLVMDisposeExecutionEngine");
164 pragma Import
165 (C,
166 LLVMRunStaticConstructors,
167 "Ada_LLVMRunStaticConstructors");
168 pragma Import
169 (C,
170 LLVMRunStaticDestructors,
171 "Ada_LLVMRunStaticDestructors");
172 pragma Import (C, LLVMRunFunctionAsMain, "Ada_LLVMRunFunctionAsMain");
173 pragma Import (C, LLVMRunFunction, "Ada_LLVMRunFunction");
174 pragma Import
175 (C,
176 LLVMFreeMachineCodeForFunction,
177 "Ada_LLVMFreeMachineCodeForFunction");
178 pragma Import (C, LLVMAddModuleProvider, "Ada_LLVMAddModuleProvider");
179 pragma Import
180 (C,
181 LLVMRemoveModuleProvider,
182 "Ada_LLVMRemoveModuleProvider");
183 pragma Import (C, LLVMFindFunction, "Ada_LLVMFindFunction");
184 pragma Import
185 (C,
186 LLVMGetExecutionEngineTargetData,
187 "Ada_LLVMGetExecutionEngineTargetData");
188 pragma Import (C, LLVMAddGlobalMapping, "Ada_LLVMAddGlobalMapping");
189 pragma Import (C, LLVMGetPointerToGlobal, "Ada_LLVMGetPointerToGlobal");
190
191 end LLVM_execution_Engine.Binding;
0 -- This file is generated by SWIG. Do *not* modify by hand.
1 --
2
3 with Interfaces.C.Extensions;
4
5
6 package LLVM_execution_Engine is
7
8 -- LLVMOpaqueGenericValue
9 --
10 type LLVMOpaqueGenericValue is new
11 Interfaces.C.Extensions.opaque_structure_def;
12
13 type LLVMOpaqueGenericValue_array is
14 array (Interfaces.C.size_t range <>)
15 of aliased LLVM_execution_Engine.LLVMOpaqueGenericValue;
16
17 type LLVMOpaqueGenericValue_view is access all
18 LLVM_execution_Engine.LLVMOpaqueGenericValue;
19
20 -- LLVMGenericValueRef
21 --
22 type LLVMGenericValueRef is access all
23 LLVM_execution_Engine.LLVMOpaqueGenericValue;
24
25 type LLVMGenericValueRef_array is
26 array (Interfaces.C.size_t range <>)
27 of aliased LLVM_execution_Engine.LLVMGenericValueRef;
28
29 type LLVMGenericValueRef_view is access all
30 LLVM_execution_Engine.LLVMGenericValueRef;
31
32 -- LLVMOpaqueExecutionEngine
33 --
34 type LLVMOpaqueExecutionEngine is new
35 Interfaces.C.Extensions.opaque_structure_def;
36
37 type LLVMOpaqueExecutionEngine_array is
38 array (Interfaces.C.size_t range <>)
39 of aliased LLVM_execution_Engine.LLVMOpaqueExecutionEngine;
40
41 type LLVMOpaqueExecutionEngine_view is access all
42 LLVM_execution_Engine.LLVMOpaqueExecutionEngine;
43
44 -- LLVMExecutionEngineRef
45 --
46 type LLVMExecutionEngineRef is access all
47 LLVM_execution_Engine.LLVMOpaqueExecutionEngine;
48
49 type LLVMExecutionEngineRef_array is
50 array (Interfaces.C.size_t range <>)
51 of aliased LLVM_execution_Engine.LLVMExecutionEngineRef;
52
53 type LLVMExecutionEngineRef_view is access all
54 LLVM_execution_Engine.LLVMExecutionEngineRef;
55
56 -- LLVMTargetDataRef
57 --
58 type LLVMTargetDataRef is new Interfaces.C.Extensions.opaque_structure_def;
59
60 type LLVMTargetDataRef_array is
61 array (Interfaces.C.size_t range <>)
62 of aliased LLVM_execution_Engine.LLVMTargetDataRef;
63
64 type LLVMTargetDataRef_view is access all
65 LLVM_execution_Engine.LLVMTargetDataRef;
66
67 -- GenericValue
68 --
69 type GenericValue is new Interfaces.C.Extensions.opaque_structure_def;
70
71 type GenericValue_array is
72 array (Interfaces.C.size_t range <>)
73 of aliased LLVM_execution_Engine.GenericValue;
74
75 type GenericValue_view is access all LLVM_execution_Engine.GenericValue;
76
77 -- ExecutionEngine
78 --
79 type ExecutionEngine is new Interfaces.C.Extensions.incomplete_class_def;
80
81 type ExecutionEngine_array is
82 array (Interfaces.C.size_t range <>)
83 of aliased LLVM_execution_Engine.ExecutionEngine;
84
85 type ExecutionEngine_view is access all
86 LLVM_execution_Engine.ExecutionEngine;
87
88
89 end LLVM_execution_Engine;
0 /* ----------------------------------------------------------------------------
1 * This file was automatically generated by SWIG (http://www.swig.org).
2 * Version 1.3.36
3 *
4 * This file is not intended to be easily readable and contains a number of
5 * coding conventions designed to improve portability and efficiency. Do not make
6 * changes to this file unless you know what you are doing--modify the SWIG
7 * interface file instead.
8 * ----------------------------------------------------------------------------- */
9
10
11 #ifdef __cplusplus
12 template class SwigValueWrapper {
13 T *tt;
14 public:
15 SwigValueWrapper() : tt(0) { }
16 SwigValueWrapper(const SwigValueWrapper& rhs) : tt(new T(*rhs.tt)) { }
17 SwigValueWrapper(const T& t) : tt(new T(t)) { }
18 ~SwigValueWrapper() { delete tt; }
19 SwigValueWrapper& operator=(const T& t) { delete tt; tt = new T(t); return *this; }
20 operator T&() const { return *tt; }
21 T *operator&() { return tt; }
22 private:
23 SwigValueWrapper& operator=(const SwigValueWrapper& rhs);
24 };
25
26 template T SwigValueInit() {
27 return T();
28 }
29 #endif
30
31 /* -----------------------------------------------------------------------------
32 * This section contains generic SWIG labels for method/variable
33 * declarations/attributes, and other compiler dependent labels.
34 * ----------------------------------------------------------------------------- */
35
36 /* template workaround for compilers that cannot correctly implement the C++ standard */
37 #ifndef SWIGTEMPLATEDISAMBIGUATOR
38 # if defined(__SUNPRO_CC) && (__SUNPRO_CC <= 0x560)
39 # define SWIGTEMPLATEDISAMBIGUATOR template
40 # elif defined(__HP_aCC)
41 /* Needed even with `aCC -AA' when `aCC -V' reports HP ANSI C++ B3910B A.03.55 */
42 /* If we find a maximum version that requires this, the test would be __HP_aCC <= 35500 for A.03.55 */
43 # define SWIGTEMPLATEDISAMBIGUATOR template
44 # else
45 # define SWIGTEMPLATEDISAMBIGUATOR
46 # endif
47 #endif
48
49 /* inline attribute */
50 #ifndef SWIGINLINE
51 # if defined(__cplusplus) || (defined(__GNUC__) && !defined(__STRICT_ANSI__))
52 # define SWIGINLINE inline
53 # else
54 # define SWIGINLINE
55 # endif
56 #endif
57
58 /* attribute recognised by some compilers to avoid 'unused' warnings */
59 #ifndef SWIGUNUSED
60 # if defined(__GNUC__)
61 # if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
62 # define SWIGUNUSED __attribute__ ((__unused__))
63 # else
64 # define SWIGUNUSED
65 # endif
66 # elif defined(__ICC)
67 # define SWIGUNUSED __attribute__ ((__unused__))
68 # else
69 # define SWIGUNUSED
70 # endif
71 #endif
72
73 #ifndef SWIGUNUSEDPARM
74 # ifdef __cplusplus
75 # define SWIGUNUSEDPARM(p)
76 # else
77 # define SWIGUNUSEDPARM(p) p SWIGUNUSED
78 # endif
79 #endif
80
81 /* internal SWIG method */
82 #ifndef SWIGINTERN
83 # define SWIGINTERN static SWIGUNUSED
84 #endif
85
86 /* internal inline SWIG method */
87 #ifndef SWIGINTERNINLINE
88 # define SWIGINTERNINLINE SWIGINTERN SWIGINLINE
89 #endif
90
91 /* exporting methods */
92 #if (__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)
93 # ifndef GCC_HASCLASSVISIBILITY
94 # define GCC_HASCLASSVISIBILITY
95 # endif
96 #endif
97
98 #ifndef SWIGEXPORT
99 # if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
100 # if defined(STATIC_LINKED)
101 # define SWIGEXPORT
102 # else
103 # define SWIGEXPORT __declspec(dllexport)
104 # endif
105 # else
106 # if defined(__GNUC__) && defined(GCC_HASCLASSVISIBILITY)
107 # define SWIGEXPORT __attribute__ ((visibility("default")))
108 # else
109 # define SWIGEXPORT
110 # endif
111 # endif
112 #endif
113
114 /* calling conventions for Windows */
115 #ifndef SWIGSTDCALL
116 # if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
117 # define SWIGSTDCALL __stdcall
118 # else
119 # define SWIGSTDCALL
120 # endif
121 #endif
122
123 /* Deal with Microsoft's attempt at deprecating C standard runtime functions */
124 #if !defined(SWIG_NO_CRT_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_CRT_SECURE_NO_DEPRECATE)
125 # define _CRT_SECURE_NO_DEPRECATE
126 #endif
127
128 /* Deal with Microsoft's attempt at deprecating methods in the standard C++ library */
129 #if !defined(SWIG_NO_SCL_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_SCL_SECURE_NO_DEPRECATE)
130 # define _SCL_SECURE_NO_DEPRECATE
131 #endif
132
133
134
135 #include
136 #include
137 #include
138 #if defined(_WIN32) || defined(__CYGWIN32__)
139 # define DllExport __declspec( dllexport )
140 # define SWIGSTDCALL __stdcall
141 #else
142 # define DllExport
143 # define SWIGSTDCALL
144 #endif
145
146
147 #ifdef __cplusplus
148 # include
149 #endif
150
151
152
153
154 /* Support for throwing Ada exceptions from C/C++ */
155
156 typedef enum
157 {
158 SWIG_AdaException,
159 SWIG_AdaOutOfMemoryException,
160 SWIG_AdaIndexOutOfRangeException,
161 SWIG_AdaDivideByZeroException,
162 SWIG_AdaArgumentOutOfRangeException,
163 SWIG_AdaNullReferenceException
164 } SWIG_AdaExceptionCodes;
165
166
167 typedef void (SWIGSTDCALL* SWIG_AdaExceptionCallback_t)(const char *);
168
169
170 typedef struct
171 {
172 SWIG_AdaExceptionCodes code;
173 SWIG_AdaExceptionCallback_t callback;
174 }
175 SWIG_AdaExceptions_t;
176
177
178 static
179 SWIG_AdaExceptions_t
180 SWIG_ada_exceptions[] =
181 {
182 { SWIG_AdaException, NULL },
183 { SWIG_AdaOutOfMemoryException, NULL },
184 { SWIG_AdaIndexOutOfRangeException, NULL },
185 { SWIG_AdaDivideByZeroException, NULL },
186 { SWIG_AdaArgumentOutOfRangeException, NULL },
187 { SWIG_AdaNullReferenceException, NULL }
188 };
189
190
191 static
192 void
193 SWIG_AdaThrowException (SWIG_AdaExceptionCodes code, const char *msg)
194 {
195 SWIG_AdaExceptionCallback_t callback = SWIG_ada_exceptions[SWIG_AdaException].callback;
196 if (code >=0 && (size_t)code < sizeof(SWIG_ada_exceptions)/sizeof(SWIG_AdaExceptions_t)) {
197 callback = SWIG_ada_exceptions[code].callback;
198 }
199 callback(msg);
200 }
201
202
203
204 #ifdef __cplusplus
205 extern "C"
206 #endif
207
208 DllExport void SWIGSTDCALL SWIGRegisterExceptionCallbacks_LLVM_execution_Engine (SWIG_AdaExceptionCallback_t systemException,
209 SWIG_AdaExceptionCallback_t outOfMemory,
210 SWIG_AdaExceptionCallback_t indexOutOfRange,
211 SWIG_AdaExceptionCallback_t divideByZero,
212 SWIG_AdaExceptionCallback_t argumentOutOfRange,
213 SWIG_AdaExceptionCallback_t nullReference)
214 {
215 SWIG_ada_exceptions [SWIG_AdaException].callback = systemException;
216 SWIG_ada_exceptions [SWIG_AdaOutOfMemoryException].callback = outOfMemory;
217 SWIG_ada_exceptions [SWIG_AdaIndexOutOfRangeException].callback = indexOutOfRange;
218 SWIG_ada_exceptions [SWIG_AdaDivideByZeroException].callback = divideByZero;
219 SWIG_ada_exceptions [SWIG_AdaArgumentOutOfRangeException].callback = argumentOutOfRange;
220 SWIG_ada_exceptions [SWIG_AdaNullReferenceException].callback = nullReference;
221 }
222
223
224 /* Callback for returning strings to Ada without leaking memory */
225
226 typedef char * (SWIGSTDCALL* SWIG_AdaStringHelperCallback)(const char *);
227 static SWIG_AdaStringHelperCallback SWIG_ada_string_callback = NULL;
228
229
230
231 /* probably obsolete ...
232 #ifdef __cplusplus
233 extern "C"
234 #endif
235 DllExport void SWIGSTDCALL SWIGRegisterStringCallback_LLVM_execution_Engine(SWIG_AdaStringHelperCallback callback) {
236 SWIG_ada_string_callback = callback;
237 }
238 */
239
240
241
242 /* Contract support */
243
244 #define SWIG_contract_assert(nullreturn, expr, msg) if (!(expr)) {SWIG_AdaThrowException(SWIG_AdaArgumentOutOfRangeException, msg); return nullreturn; } else
245
246
247 #define protected public
248 #define private public
249
250 #include "llvm-c/ExecutionEngine.h"
251
252
253
254 // struct LLVMCtxt;
255
256
257 #undef protected
258 #undef private
259 #ifdef __cplusplus
260 extern "C" {
261 #endif
262 DllExport void SWIGSTDCALL Ada_LLVMLinkInJIT (
263 )
264 {
265 LLVMLinkInJIT();
266
267
268 }
269
270
271
272 DllExport void SWIGSTDCALL Ada_LLVMLinkInInterpreter (
273 )
274 {
275 LLVMLinkInInterpreter();
276
277
278 }
279
280
281
282 DllExport void * SWIGSTDCALL Ada_LLVMCreateGenericValueOfInt (
283 void * jarg1
284 ,
285
286 unsigned long long jarg2
287 ,
288
289 int jarg3
290 )
291 {
292 void * jresult ;
293 LLVMTypeRef arg1 = (LLVMTypeRef) 0 ;
294 unsigned long long arg2 ;
295 int arg3 ;
296 LLVMGenericValueRef result;
297
298 arg1 = (LLVMTypeRef)jarg1;
299
300
301 arg2 = (unsigned long long) jarg2;
302
303
304
305 arg3 = (int) jarg3;
306
307
308 result = (LLVMGenericValueRef)LLVMCreateGenericValueOfInt(arg1,arg2,arg3);
309 jresult = (void *) result;
310
311
312
313 return jresult;
314
315 }
316
317
318
319 DllExport void * SWIGSTDCALL Ada_LLVMCreateGenericValueOfPointer (
320 void* jarg1
321 )
322 {
323 void * jresult ;
324 void *arg1 = (void *) 0 ;
325 LLVMGenericValueRef result;
326
327 arg1 = (void *)jarg1;
328
329 result = (LLVMGenericValueRef)LLVMCreateGenericValueOfPointer(arg1);
330 jresult = (void *) result;
331
332
333
334 return jresult;
335
336 }
337
338
339
340 DllExport void * SWIGSTDCALL Ada_LLVMCreateGenericValueOfFloat (
341 void * jarg1
342 ,
343
344 double jarg2
345 )
346 {
347 void * jresult ;
348 LLVMTypeRef arg1 = (LLVMTypeRef) 0 ;
349 double arg2 ;
350 LLVMGenericValueRef result;
351
352 arg1 = (LLVMTypeRef)jarg1;
353
354
355 arg2 = (double) jarg2;
356
357
358 result = (LLVMGenericValueRef)LLVMCreateGenericValueOfFloat(arg1,arg2);
359 jresult = (void *) result;
360
361
362
363 return jresult;
364
365 }
366
367
368
369 DllExport unsigned int SWIGSTDCALL Ada_LLVMGenericValueIntWidth (
370 void * jarg1
371 )
372 {
373 unsigned int jresult ;
374 LLVMGenericValueRef arg1 = (LLVMGenericValueRef) 0 ;
375 unsigned int result;
376
377 arg1 = (LLVMGenericValueRef)jarg1;
378
379 result = (unsigned int)LLVMGenericValueIntWidth(arg1);
380 jresult = result;
381
382
383
384 return jresult;
385
386 }
387
388
389
390 DllExport unsigned long long SWIGSTDCALL Ada_LLVMGenericValueToInt (
391 void * jarg1
392 ,
393
394 int jarg2
395 )
396 {
397 unsigned long long jresult ;
398 LLVMGenericValueRef arg1 = (LLVMGenericValueRef) 0 ;
399 int arg2 ;
400 unsigned long long result;
401
402 arg1 = (LLVMGenericValueRef)jarg1;
403
404
405 arg2 = (int) jarg2;
406
407
408 result = (unsigned long long)LLVMGenericValueToInt(arg1,arg2);
409 jresult = result;
410
411
412
413 return jresult;
414
415 }
416
417
418
419 DllExport void* SWIGSTDCALL Ada_LLVMGenericValueToPointer (
420 void * jarg1
421 )
422 {
423 void* jresult ;
424 LLVMGenericValueRef arg1 = (LLVMGenericValueRef) 0 ;
425 void *result = 0 ;
426
427 arg1 = (LLVMGenericValueRef)jarg1;
428
429 result = (void *)LLVMGenericValueToPointer(arg1);
430 jresult = (void *) result;
431
432
433
434 return jresult;
435
436 }
437
438
439
440 DllExport double SWIGSTDCALL Ada_LLVMGenericValueToFloat (
441 void * jarg1
442 ,
443
444 void * jarg2
445 )
446 {
447 double jresult ;
448 LLVMTypeRef arg1 = (LLVMTypeRef) 0 ;
449 LLVMGenericValueRef arg2 = (LLVMGenericValueRef) 0 ;
450 double result;
451
452 arg1 = (LLVMTypeRef)jarg1;
453
454 arg2 = (LLVMGenericValueRef)jarg2;
455
456 result = (double)LLVMGenericValueToFloat(arg1,arg2);
457 jresult = result;
458
459
460
461 return jresult;
462
463 }
464
465
466
467 DllExport void SWIGSTDCALL Ada_LLVMDisposeGenericValue (
468 void * jarg1
469 )
470 {
471 LLVMGenericValueRef arg1 = (LLVMGenericValueRef) 0 ;
472
473 arg1 = (LLVMGenericValueRef)jarg1;
474
475 LLVMDisposeGenericValue(arg1);
476
477
478 }
479
480
481
482 DllExport int SWIGSTDCALL Ada_LLVMCreateExecutionEngine (
483 void * jarg1
484 ,
485
486 void * jarg2
487 ,
488
489 void * jarg3
490 )
491 {
492 int jresult ;
493 LLVMExecutionEngineRef *arg1 = (LLVMExecutionEngineRef *) 0 ;
494 LLVMModuleProviderRef arg2 = (LLVMModuleProviderRef) 0 ;
495 char **arg3 = (char **) 0 ;
496 int result;
497
498 arg1 = (LLVMExecutionEngineRef *)jarg1;
499
500 arg2 = (LLVMModuleProviderRef)jarg2;
501
502 arg3 = (char **)jarg3;
503
504 result = (int)LLVMCreateExecutionEngine(arg1,arg2,arg3);
505 jresult = result;
506
507
508
509 return jresult;
510
511 }
512
513
514
515 DllExport int SWIGSTDCALL Ada_LLVMCreateInterpreter (
516 void * jarg1
517 ,
518
519 void * jarg2
520 ,
521
522 void * jarg3
523 )
524 {
525 int jresult ;
526 LLVMExecutionEngineRef *arg1 = (LLVMExecutionEngineRef *) 0 ;
527 LLVMModuleProviderRef arg2 = (LLVMModuleProviderRef) 0 ;
528 char **arg3 = (char **) 0 ;
529 int result;
530
531 arg1 = (LLVMExecutionEngineRef *)jarg1;
532
533 arg2 = (LLVMModuleProviderRef)jarg2;
534
535 arg3 = (char **)jarg3;
536
537 result = (int)LLVMCreateInterpreter(arg1,arg2,arg3);
538 jresult = result;
539
540
541
542 return jresult;
543
544 }
545
546
547
548 DllExport int SWIGSTDCALL Ada_LLVMCreateJITCompiler (
549 void * jarg1
550 ,
551
552 void * jarg2
553 ,
554
555 unsigned int jarg3
556 ,
557
558 void * jarg4
559 )
560 {
561 int jresult ;
562 LLVMExecutionEngineRef *arg1 = (LLVMExecutionEngineRef *) 0 ;
563 LLVMModuleProviderRef arg2 = (LLVMModuleProviderRef) 0 ;
564 unsigned int arg3 ;
565 char **arg4 = (char **) 0 ;
566 int result;
567
568 arg1 = (LLVMExecutionEngineRef *)jarg1;
569
570 arg2 = (LLVMModuleProviderRef)jarg2;
571
572
573 arg3 = (unsigned int) jarg3;
574
575
576 arg4 = (char **)jarg4;
577
578 result = (int)LLVMCreateJITCompiler(arg1,arg2,arg3,arg4);
579 jresult = result;
580
581
582
583 return jresult;
584
585 }
586
587
588
589 DllExport void SWIGSTDCALL Ada_LLVMDisposeExecutionEngine (
590 void * jarg1
591 )
592 {
593 LLVMExecutionEngineRef arg1 = (LLVMExecutionEngineRef) 0 ;
594
595 arg1 = (LLVMExecutionEngineRef)jarg1;
596
597 LLVMDisposeExecutionEngine(arg1);
598
599
600 }
601
602
603
604 DllExport void SWIGSTDCALL Ada_LLVMRunStaticConstructors (
605 void * jarg1
606 )
607 {
608 LLVMExecutionEngineRef arg1 = (LLVMExecutionEngineRef) 0 ;
609
610 arg1 = (LLVMExecutionEngineRef)jarg1;
611
612 LLVMRunStaticConstructors(arg1);
613
614
615 }
616
617
618
619 DllExport void SWIGSTDCALL Ada_LLVMRunStaticDestructors (
620 void * jarg1
621 )
622 {
623 LLVMExecutionEngineRef arg1 = (LLVMExecutionEngineRef) 0 ;
624
625 arg1 = (LLVMExecutionEngineRef)jarg1;
626
627 LLVMRunStaticDestructors(arg1);
628
629
630 }
631
632
633
634 DllExport int SWIGSTDCALL Ada_LLVMRunFunctionAsMain (
635 void * jarg1
636 ,
637
638 void * jarg2
639 ,
640
641 unsigned int jarg3
642 ,
643
644 void * jarg4
645 ,
646
647 void * jarg5
648 )
649 {
650 int jresult ;
651 LLVMExecutionEngineRef arg1 = (LLVMExecutionEngineRef) 0 ;
652 LLVMValueRef arg2 = (LLVMValueRef) 0 ;
653 unsigned int arg3 ;
654 char **arg4 = (char **) 0 ;
655 char **arg5 = (char **) 0 ;
656 int result;
657
658 arg1 = (LLVMExecutionEngineRef)jarg1;
659
660 arg2 = (LLVMValueRef)jarg2;
661
662
663 arg3 = (unsigned int) jarg3;
664
665
666 arg4 = (char **)jarg4;
667
668 arg5 = (char **)jarg5;
669
670 result = (int)LLVMRunFunctionAsMain(arg1,arg2,arg3,(char const *const *)arg4,(char const *const *)arg5);
671 jresult = result;
672
673
674
675 return jresult;
676
677 }
678
679
680
681 DllExport void * SWIGSTDCALL Ada_LLVMRunFunction (
682 void * jarg1
683 ,
684
685 void * jarg2
686 ,
687
688 unsigned int jarg3
689 ,
690
691 void * jarg4
692 )
693 {
694 void * jresult ;
695 LLVMExecutionEngineRef arg1 = (LLVMExecutionEngineRef) 0 ;
696 LLVMValueRef arg2 = (LLVMValueRef) 0 ;
697 unsigned int arg3 ;
698 LLVMGenericValueRef *arg4 = (LLVMGenericValueRef *) 0 ;
699 LLVMGenericValueRef result;
700
701 arg1 = (LLVMExecutionEngineRef)jarg1;
702
703 arg2 = (LLVMValueRef)jarg2;
704
705
706 arg3 = (unsigned int) jarg3;
707
708
709 arg4 = (LLVMGenericValueRef *)jarg4;
710
711 result = (LLVMGenericValueRef)LLVMRunFunction(arg1,arg2,arg3,arg4);
712 jresult = (void *) result;
713
714
715
716 return jresult;
717
718 }
719
720
721
722 DllExport void SWIGSTDCALL Ada_LLVMFreeMachineCodeForFunction (
723 void * jarg1
724 ,
725
726 void * jarg2
727 )
728 {
729 LLVMExecutionEngineRef arg1 = (LLVMExecutionEngineRef) 0 ;
730 LLVMValueRef arg2 = (LLVMValueRef) 0 ;
731
732 arg1 = (LLVMExecutionEngineRef)jarg1;
733
734 arg2 = (LLVMValueRef)jarg2;
735
736 LLVMFreeMachineCodeForFunction(arg1,arg2);
737
738
739 }
740
741
742
743 DllExport void SWIGSTDCALL Ada_LLVMAddModuleProvider (
744 void * jarg1
745 ,
746
747 void * jarg2
748 )
749 {
750 LLVMExecutionEngineRef arg1 = (LLVMExecutionEngineRef) 0 ;
751 LLVMModuleProviderRef arg2 = (LLVMModuleProviderRef) 0 ;
752
753 arg1 = (LLVMExecutionEngineRef)jarg1;
754
755 arg2 = (LLVMModuleProviderRef)jarg2;
756
757 LLVMAddModuleProvider(arg1,arg2);
758
759
760 }
761
762
763
764 DllExport int SWIGSTDCALL Ada_LLVMRemoveModuleProvider (
765 void * jarg1
766 ,
767
768 void * jarg2
769 ,
770
771 void * jarg3
772 ,
773
774 void * jarg4
775 )
776 {
777 int jresult ;
778 LLVMExecutionEngineRef arg1 = (LLVMExecutionEngineRef) 0 ;
779 LLVMModuleProviderRef arg2 = (LLVMModuleProviderRef) 0 ;
780 LLVMModuleRef *arg3 = (LLVMModuleRef *) 0 ;
781 char **arg4 = (char **) 0 ;
782 int result;
783
784 arg1 = (LLVMExecutionEngineRef)jarg1;
785
786 arg2 = (LLVMModuleProviderRef)jarg2;
787
788 arg3 = (LLVMModuleRef *)jarg3;
789
790 arg4 = (char **)jarg4;
791
792 result = (int)LLVMRemoveModuleProvider(arg1,arg2,arg3,arg4);
793 jresult = result;
794
795
796
797 return jresult;
798
799 }
800
801
802
803 DllExport int SWIGSTDCALL Ada_LLVMFindFunction (
804 void * jarg1
805 ,
806
807 char * jarg2
808 ,
809
810 void * jarg3
811 )
812 {
813 int jresult ;
814 LLVMExecutionEngineRef arg1 = (LLVMExecutionEngineRef) 0 ;
815 char *arg2 = (char *) 0 ;
816 LLVMValueRef *arg3 = (LLVMValueRef *) 0 ;
817 int result;
818
819 arg1 = (LLVMExecutionEngineRef)jarg1;
820
821 arg2 = jarg2;
822
823 arg3 = (LLVMValueRef *)jarg3;
824
825 result = (int)LLVMFindFunction(arg1,(char const *)arg2,arg3);
826 jresult = result;
827
828
829
830 return jresult;
831
832 }
833
834
835
836 DllExport LLVMTargetDataRef SWIGSTDCALL Ada_LLVMGetExecutionEngineTargetData (
837 void * jarg1
838 )
839 {
840 LLVMTargetDataRef jresult ;
841 LLVMExecutionEngineRef arg1 = (LLVMExecutionEngineRef) 0 ;
842 LLVMTargetDataRef result;
843
844 arg1 = (LLVMExecutionEngineRef)jarg1;
845
846 result = LLVMGetExecutionEngineTargetData(arg1);
847
848 jresult = result;
849 //jresult = new LLVMTargetDataRef ((LLVMTargetDataRef &) result);
850
851
852
853
854 return jresult;
855
856 }
857
858
859
860 DllExport void SWIGSTDCALL Ada_LLVMAddGlobalMapping (
861 void * jarg1
862 ,
863
864 void * jarg2
865 ,
866
867 void* jarg3
868 )
869 {
870 LLVMExecutionEngineRef arg1 = (LLVMExecutionEngineRef) 0 ;
871 LLVMValueRef arg2 = (LLVMValueRef) 0 ;
872 void *arg3 = (void *) 0 ;
873
874 arg1 = (LLVMExecutionEngineRef)jarg1;
875
876 arg2 = (LLVMValueRef)jarg2;
877
878 arg3 = (void *)jarg3;
879
880 LLVMAddGlobalMapping(arg1,arg2,arg3);
881
882
883 }
884
885
886
887 DllExport void* SWIGSTDCALL Ada_LLVMGetPointerToGlobal (
888 void * jarg1
889 ,
890
891 void * jarg2
892 )
893 {
894 void* jresult ;
895 LLVMExecutionEngineRef arg1 = (LLVMExecutionEngineRef) 0 ;
896 LLVMValueRef arg2 = (LLVMValueRef) 0 ;
897 void *result = 0 ;
898
899 arg1 = (LLVMExecutionEngineRef)jarg1;
900
901 arg2 = (LLVMValueRef)jarg2;
902
903 result = (void *)LLVMGetPointerToGlobal(arg1,arg2);
904 jresult = (void *) result;
905
906
907
908 return jresult;
909
910 }
911
912
913
914 #ifdef __cplusplus
915 }
916 #endif
917 #ifdef __cplusplus
918 extern "C" {
919 #endif
920 #ifdef __cplusplus
921 }
922 #endif
923
0 -- This file is generated by SWIG. Do *not* modify by hand.
1 --
2
3 with Interfaces.C.Strings;
4
5
6 package llvm.Binding is
7
8 procedure LLVMDisposeMessage
9 (Message : in Interfaces.C.Strings.chars_ptr);
10
11 function LLVMContextCreate return llvm.LLVMContextRef;
12
13 function LLVMGetGlobalContext return llvm.LLVMContextRef;
14
15 procedure LLVMContextDispose (C : in llvm.LLVMContextRef);
16
17 function LLVMModuleCreateWithName
18 (ModuleID : in Interfaces.C.Strings.chars_ptr)
19 return llvm.LLVMModuleRef;
20
21 function LLVMModuleCreateWithNameInContext
22 (ModuleID : in Interfaces.C.Strings.chars_ptr;
23 C : in llvm.LLVMContextRef)
24 return llvm.LLVMModuleRef;
25
26 procedure LLVMDisposeModule (M : in llvm.LLVMModuleRef);
27
28 function LLVMGetDataLayout
29 (M : in llvm.LLVMModuleRef)
30 return Interfaces.C.Strings.chars_ptr;
31
32 procedure LLVMSetDataLayout
33 (M : in llvm.LLVMModuleRef;
34 Triple : in Interfaces.C.Strings.chars_ptr);
35
36 function LLVMGetTarget
37 (M : in llvm.LLVMModuleRef)
38 return Interfaces.C.Strings.chars_ptr;
39
40 procedure LLVMSetTarget
41 (M : in llvm.LLVMModuleRef;
42 Triple : in Interfaces.C.Strings.chars_ptr);
43
44 function LLVMAddTypeName
45 (M : in llvm.LLVMModuleRef;
46 Name : in Interfaces.C.Strings.chars_ptr;
47 Ty : in llvm.LLVMTypeRef)
48 return Interfaces.C.int;
49
50 procedure LLVMDeleteTypeName
51 (M : in llvm.LLVMModuleRef;
52 Name : in Interfaces.C.Strings.chars_ptr);
53
54 function LLVMGetTypeByName
55 (M : in llvm.LLVMModuleRef;
56 Name : in Interfaces.C.Strings.chars_ptr)
57 return llvm.LLVMTypeRef;
58
59 procedure LLVMDumpModule (M : in llvm.LLVMModuleRef);
60
61 function LLVMGetTypeKind
62 (Ty : in llvm.LLVMTypeRef)
63 return llvm.LLVMTypeKind;
64
65 function LLVMInt1Type return llvm.LLVMTypeRef;
66
67 function LLVMInt8Type return llvm.LLVMTypeRef;
68
69 function LLVMInt16Type return llvm.LLVMTypeRef;
70
71 function LLVMInt32Type return llvm.LLVMTypeRef;
72
73 function LLVMInt64Type return llvm.LLVMTypeRef;
74
75 function LLVMIntType
76 (NumBits : in Interfaces.C.unsigned)
77 return llvm.LLVMTypeRef;
78
79 function LLVMGetIntTypeWidth
80 (IntegerTy : in llvm.LLVMTypeRef)
81 return Interfaces.C.unsigned;
82
83 function LLVMFloatType return llvm.LLVMTypeRef;
84
85 function LLVMDoubleType return llvm.LLVMTypeRef;
86
87 function LLVMX86FP80Type return llvm.LLVMTypeRef;
88
89 function LLVMFP128Type return llvm.LLVMTypeRef;
90
91 function LLVMPPCFP128Type return llvm.LLVMTypeRef;
92
93 function LLVMFunctionType
94 (ReturnType : in llvm.LLVMTypeRef;
95 ParamTypes : access llvm.LLVMTypeRef;
96 ParamCount : in Interfaces.C.unsigned;
97 IsVarArg : in Interfaces.C.int)
98 return llvm.LLVMTypeRef;
99
100 function LLVMIsFunctionVarArg
101 (FunctionTy : in llvm.LLVMTypeRef)
102 return Interfaces.C.int;
103
104 function LLVMGetReturnType
105 (FunctionTy : in llvm.LLVMTypeRef)
106 return llvm.LLVMTypeRef;
107
108 function LLVMCountParamTypes
109 (FunctionTy : in llvm.LLVMTypeRef)
110 return Interfaces.C.unsigned;
111
112 procedure LLVMGetParamTypes
113 (FunctionTy : in llvm.LLVMTypeRef;
114 Dest : access llvm.LLVMTypeRef);
115
116 function LLVMStructType
117 (ElementTypes : access llvm.LLVMTypeRef;
118 ElementCount : in Interfaces.C.unsigned;
119 Packed : in Interfaces.C.int)
120 return llvm.LLVMTypeRef;
121
122 function LLVMCountStructElementTypes
123 (StructTy : in llvm.LLVMTypeRef)
124 return Interfaces.C.unsigned;
125
126 procedure LLVMGetStructElementTypes
127 (StructTy : in llvm.LLVMTypeRef;
128 Dest : access llvm.LLVMTypeRef);
129
130 function LLVMIsPackedStruct
131 (StructTy : in llvm.LLVMTypeRef)
132 return Interfaces.C.int;
133
134 function LLVMArrayType
135 (ElementType : in llvm.LLVMTypeRef;
136 ElementCount : in Interfaces.C.unsigned)
137 return llvm.LLVMTypeRef;
138
139 function LLVMPointerType
140 (ElementType : in llvm.LLVMTypeRef;
141 AddressSpace : in Interfaces.C.unsigned)
142 return llvm.LLVMTypeRef;
143
144 function LLVMVectorType
145 (ElementType : in llvm.LLVMTypeRef;
146 ElementCount : in Interfaces.C.unsigned)
147 return llvm.LLVMTypeRef;
148
149 function LLVMGetElementType
150 (Ty : in llvm.LLVMTypeRef)
151 return llvm.LLVMTypeRef;
152
153 function LLVMGetArrayLength
154 (ArrayTy : in llvm.LLVMTypeRef)
155 return Interfaces.C.unsigned;
156
157 function LLVMGetPointerAddressSpace
158 (PointerTy : in llvm.LLVMTypeRef)
159 return Interfaces.C.unsigned;
160
161 function LLVMGetVectorSize
162 (VectorTy : in llvm.LLVMTypeRef)
163 return Interfaces.C.unsigned;
164
165 function LLVMVoidType return llvm.LLVMTypeRef;
166
167 function LLVMLabelType return llvm.LLVMTypeRef;
168
169 function LLVMOpaqueType return llvm.LLVMTypeRef;
170
171 function LLVMCreateTypeHandle
172 (PotentiallyAbstractTy : in llvm.LLVMTypeRef)
173 return llvm.LLVMTypeHandleRef;
174
175 procedure LLVMRefineType
176 (AbstractTy : in llvm.LLVMTypeRef;
177 ConcreteTy : in llvm.LLVMTypeRef);
178
179 function LLVMResolveTypeHandle
180 (TypeHandle : in llvm.LLVMTypeHandleRef)
181 return llvm.LLVMTypeRef;
182
183 procedure LLVMDisposeTypeHandle (TypeHandle : in llvm.LLVMTypeHandleRef);
184
185 function LLVMTypeOf (Val : in llvm.LLVMValueRef) return llvm.LLVMTypeRef;
186
187 function LLVMGetValueName
188 (Val : in llvm.LLVMValueRef)
189 return Interfaces.C.Strings.chars_ptr;
190
191 procedure LLVMSetValueName
192 (Val : in llvm.LLVMValueRef;
193 Name : in Interfaces.C.Strings.chars_ptr);
194
195 procedure LLVMDumpValue (Val : in llvm.LLVMValueRef);
196
197 function LLVMIsAArgument
198 (Val : in llvm.LLVMValueRef)
199 return llvm.LLVMValueRef;
200
201 function LLVMIsABasicBlock
202 (Val : in llvm.LLVMValueRef)
203 return llvm.LLVMValueRef;
204
205 function LLVMIsAInlineAsm
206 (Val : in llvm.LLVMValueRef)
207 return llvm.LLVMValueRef;
208
209 function LLVMIsAUser
210 (Val : in llvm.LLVMValueRef)
211 return llvm.LLVMValueRef;
212
213 function LLVMIsAConstant
214 (Val : in llvm.LLVMValueRef)
215 return llvm.LLVMValueRef;
216
217 function LLVMIsAConstantAggregateZero
218 (Val : in llvm.LLVMValueRef)
219 return llvm.LLVMValueRef;
220
221 function LLVMIsAConstantArray
222 (Val : in llvm.LLVMValueRef)
223 return llvm.LLVMValueRef;
224
225 function LLVMIsAConstantExpr
226 (Val : in llvm.LLVMValueRef)
227 return llvm.LLVMValueRef;
228
229 function LLVMIsAConstantFP
230 (Val : in llvm.LLVMValueRef)
231 return llvm.LLVMValueRef;
232
233 function LLVMIsAConstantInt
234 (Val : in llvm.LLVMValueRef)
235 return llvm.LLVMValueRef;
236
237 function LLVMIsAConstantPointerNull
238 (Val : in llvm.LLVMValueRef)
239 return llvm.LLVMValueRef;
240
241 function LLVMIsAConstantStruct
242 (Val : in llvm.LLVMValueRef)
243 return llvm.LLVMValueRef;
244
245 function LLVMIsAConstantVector
246 (Val : in llvm.LLVMValueRef)
247 return llvm.LLVMValueRef;
248
249 function LLVMIsAGlobalValue
250 (Val : in llvm.LLVMValueRef)
251 return llvm.LLVMValueRef;
252
253 function LLVMIsAFunction
254 (Val : in llvm.LLVMValueRef)
255 return llvm.LLVMValueRef;
256
257 function LLVMIsAGlobalAlias
258 (Val : in llvm.LLVMValueRef)
259 return llvm.LLVMValueRef;
260
261 function LLVMIsAGlobalVariable
262 (Val : in llvm.LLVMValueRef)
263 return llvm.LLVMValueRef;
264
265 function LLVMIsAUndefValue
266 (Val : in llvm.LLVMValueRef)
267 return llvm.LLVMValueRef;
268
269 function LLVMIsAInstruction
270 (Val : in llvm.LLVMValueRef)
271 return llvm.LLVMValueRef;
272
273 function LLVMIsABinaryOperator
274 (Val : in llvm.LLVMValueRef)
275 return llvm.LLVMValueRef;
276
277 function LLVMIsACallInst
278 (Val : in llvm.LLVMValueRef)
279 return llvm.LLVMValueRef;
280
281 function LLVMIsAIntrinsicInst
282 (Val : in llvm.LLVMValueRef)
283 return llvm.LLVMValueRef;
284
285 function LLVMIsADbgInfoIntrinsic
286 (Val : in llvm.LLVMValueRef)
287 return llvm.LLVMValueRef;
288
289 function LLVMIsADbgDeclareInst
290 (Val : in llvm.LLVMValueRef)
291 return llvm.LLVMValueRef;
292
293 function LLVMIsADbgFuncStartInst
294 (Val : in llvm.LLVMValueRef)
295 return llvm.LLVMValueRef;
296
297 function LLVMIsADbgRegionEndInst
298 (Val : in llvm.LLVMValueRef)
299 return llvm.LLVMValueRef;
300
301 function LLVMIsADbgRegionStartInst
302 (Val : in llvm.LLVMValueRef)
303 return llvm.LLVMValueRef;
304
305 function LLVMIsADbgStopPointInst
306 (Val : in llvm.LLVMValueRef)
307 return llvm.LLVMValueRef;
308
309 function LLVMIsAEHSelectorInst
310 (Val : in llvm.LLVMValueRef)
311 return llvm.LLVMValueRef;
312
313 function LLVMIsAMemIntrinsic
314 (Val : in llvm.LLVMValueRef)
315 return llvm.LLVMValueRef;
316
317 function LLVMIsAMemCpyInst
318 (Val : in llvm.LLVMValueRef)
319 return llvm.LLVMValueRef;
320
321 function LLVMIsAMemMoveInst
322 (Val : in llvm.LLVMValueRef)
323 return llvm.LLVMValueRef;
324
325 function LLVMIsAMemSetInst
326 (Val : in llvm.LLVMValueRef)
327 return llvm.LLVMValueRef;
328
329 function LLVMIsACmpInst
330 (Val : in llvm.LLVMValueRef)
331 return llvm.LLVMValueRef;
332
333 function LLVMIsAFCmpInst
334 (Val : in llvm.LLVMValueRef)
335 return llvm.LLVMValueRef;
336
337 function LLVMIsAICmpInst
338 (Val : in llvm.LLVMValueRef)
339 return llvm.LLVMValueRef;
340
341 function LLVMIsAExtractElementInst
342 (Val : in llvm.LLVMValueRef)
343 return llvm.LLVMValueRef;
344
345 function LLVMIsAGetElementPtrInst
346 (Val : in llvm.LLVMValueRef)
347 return llvm.LLVMValueRef;
348
349 function LLVMIsAInsertElementInst
350 (Val : in llvm.LLVMValueRef)
351 return llvm.LLVMValueRef;
352
353 function LLVMIsAInsertValueInst
354 (Val : in llvm.LLVMValueRef)
355 return llvm.LLVMValueRef;
356
357 function LLVMIsAPHINode
358 (Val : in llvm.LLVMValueRef)
359 return llvm.LLVMValueRef;
360
361 function LLVMIsASelectInst
362 (Val : in llvm.LLVMValueRef)
363 return llvm.LLVMValueRef;
364
365 function LLVMIsAShuffleVectorInst
366 (Val : in llvm.LLVMValueRef)
367 return llvm.LLVMValueRef;
368
369 function LLVMIsAStoreInst
370 (Val : in llvm.LLVMValueRef)
371 return llvm.LLVMValueRef;
372
373 function LLVMIsATerminatorInst
374 (Val : in llvm.LLVMValueRef)
375 return llvm.LLVMValueRef;
376
377 function LLVMIsABranchInst
378 (Val : in llvm.LLVMValueRef)
379 return llvm.LLVMValueRef;
380
381 function LLVMIsAInvokeInst
382 (Val : in llvm.LLVMValueRef)
383 return llvm.LLVMValueRef;
384
385 function LLVMIsAReturnInst
386 (Val : in llvm.LLVMValueRef)
387 return llvm.LLVMValueRef;
388
389 function LLVMIsASwitchInst
390 (Val : in llvm.LLVMValueRef)
391 return llvm.LLVMValueRef;
392
393 function LLVMIsAUnreachableInst
394 (Val : in llvm.LLVMValueRef)
395 return llvm.LLVMValueRef;
396
397 function LLVMIsAUnwindInst
398 (Val : in llvm.LLVMValueRef)
399 return llvm.LLVMValueRef;
400
401 function LLVMIsAUnaryInstruction
402 (Val : in llvm.LLVMValueRef)
403 return llvm.LLVMValueRef;
404
405 function LLVMIsAAllocationInst
406 (Val : in llvm.LLVMValueRef)
407 return llvm.LLVMValueRef;
408
409 function LLVMIsAAllocaInst
410 (Val : in llvm.LLVMValueRef)
411 return llvm.LLVMValueRef;
412
413 function LLVMIsAMallocInst
414 (Val : in llvm.LLVMValueRef)
415 return llvm.LLVMValueRef;
416
417 function LLVMIsACastInst
418 (Val : in llvm.LLVMValueRef)
419 return llvm.LLVMValueRef;
420
421 function LLVMIsABitCastInst
422 (Val : in llvm.LLVMValueRef)
423 return llvm.LLVMValueRef;
424
425 function LLVMIsAFPExtInst
426 (Val : in llvm.LLVMValueRef)
427 return llvm.LLVMValueRef;
428
429 function LLVMIsAFPToSIInst
430 (Val : in llvm.LLVMValueRef)
431 return llvm.LLVMValueRef;
432
433 function LLVMIsAFPToUIInst
434 (Val : in llvm.LLVMValueRef)
435 return llvm.LLVMValueRef;
436
437 function LLVMIsAFPTruncInst
438 (Val : in llvm.LLVMValueRef)
439 return llvm.LLVMValueRef;
440
441 function LLVMIsAIntToPtrInst
442 (Val : in llvm.LLVMValueRef)
443 return llvm.LLVMValueRef;
444
445 function LLVMIsAPtrToIntInst
446 (Val : in llvm.LLVMValueRef)
447 return llvm.LLVMValueRef;
448
449 function LLVMIsASExtInst
450 (Val : in llvm.LLVMValueRef)
451 return llvm.LLVMValueRef;
452
453 function LLVMIsASIToFPInst
454 (Val : in llvm.LLVMValueRef)
455 return llvm.LLVMValueRef;
456
457 function LLVMIsATruncInst
458 (Val : in llvm.LLVMValueRef)
459 return llvm.LLVMValueRef;
460
461 function LLVMIsAUIToFPInst
462 (Val : in llvm.LLVMValueRef)
463 return llvm.LLVMValueRef;
464
465 function LLVMIsAZExtInst
466 (Val : in llvm.LLVMValueRef)
467 return llvm.LLVMValueRef;
468
469 function LLVMIsAExtractValueInst
470 (Val : in llvm.LLVMValueRef)
471 return llvm.LLVMValueRef;
472
473 function LLVMIsAFreeInst
474 (Val : in llvm.LLVMValueRef)
475 return llvm.LLVMValueRef;
476
477 function LLVMIsALoadInst
478 (Val : in llvm.LLVMValueRef)
479 return llvm.LLVMValueRef;
480
481 function LLVMIsAVAArgInst
482 (Val : in llvm.LLVMValueRef)
483 return llvm.LLVMValueRef;
484
485 function LLVMConstNull
486 (Ty : in llvm.LLVMTypeRef)
487 return llvm.LLVMValueRef;
488
489 function LLVMConstAllOnes
490 (Ty : in llvm.LLVMTypeRef)
491 return llvm.LLVMValueRef;
492
493 function LLVMGetUndef
494 (Ty : in llvm.LLVMTypeRef)
495 return llvm.LLVMValueRef;
496
497 function LLVMIsConstant
498 (Val : in llvm.LLVMValueRef)
499 return Interfaces.C.int;
500
501 function LLVMIsNull (Val : in llvm.LLVMValueRef) return Interfaces.C.int;
502
503 function LLVMIsUndef
504 (Val : in llvm.LLVMValueRef)
505 return Interfaces.C.int;
506
507 function LLVMConstPointerNull
508 (Ty : in llvm.LLVMTypeRef)
509 return llvm.LLVMValueRef;
510
511 function LLVMConstInt
512 (IntTy : in llvm.LLVMTypeRef;
513 N : in Interfaces.C.Extensions.unsigned_long_long;
514 SignExtend : in Interfaces.C.int)
515 return llvm.LLVMValueRef;
516
517 function LLVMConstReal
518 (RealTy : in llvm.LLVMTypeRef;
519 N : in Interfaces.C.double)
520 return llvm.LLVMValueRef;
521
522 function LLVMConstRealOfString
523 (RealTy : in llvm.LLVMTypeRef;
524 Text : in Interfaces.C.Strings.chars_ptr)
525 return llvm.LLVMValueRef;
526
527 function LLVMConstString
528 (Str : in Interfaces.C.Strings.chars_ptr;
529 Length : in Interfaces.C.unsigned;
530 DontNullTerminate : in Interfaces.C.int)
531 return llvm.LLVMValueRef;
532
533 function LLVMConstArray
534 (ElementTy : in llvm.LLVMTypeRef;
535 ConstantVals : access llvm.LLVMValueRef;
536 Length : in Interfaces.C.unsigned)
537 return llvm.LLVMValueRef;
538
539 function LLVMConstStruct
540 (ConstantVals : access llvm.LLVMValueRef;
541 Count : in Interfaces.C.unsigned;
542 packed : in Interfaces.C.int)
543 return llvm.LLVMValueRef;
544
545 function LLVMConstVector
546 (ScalarConstantVals : access llvm.LLVMValueRef;
547 Size : in Interfaces.C.unsigned)
548 return llvm.LLVMValueRef;
549
550 function LLVMSizeOf (Ty : in llvm.LLVMTypeRef) return llvm.LLVMValueRef;
551
552 function LLVMConstNeg
553 (ConstantVal : in llvm.LLVMValueRef)
554 return llvm.LLVMValueRef;
555
556 function LLVMConstNot
557 (ConstantVal : in llvm.LLVMValueRef)
558 return llvm.LLVMValueRef;
559
560 function LLVMConstAdd
561 (LHSConstant : in llvm.LLVMValueRef;
562 RHSConstant : in llvm.LLVMValueRef)
563 return llvm.LLVMValueRef;
564
565 function LLVMConstSub
566 (LHSConstant : in llvm.LLVMValueRef;
567 RHSConstant : in llvm.LLVMValueRef)
568 return llvm.LLVMValueRef;
569
570 function LLVMConstMul
571 (LHSConstant : in llvm.LLVMValueRef;
572 RHSConstant : in llvm.LLVMValueRef)
573 return llvm.LLVMValueRef;
574
575 function LLVMConstUDiv
576 (LHSConstant : in llvm.LLVMValueRef;
577 RHSConstant : in llvm.LLVMValueRef)
578 return llvm.LLVMValueRef;
579
580 function LLVMConstSDiv
581 (LHSConstant : in llvm.LLVMValueRef;
582 RHSConstant : in llvm.LLVMValueRef)
583 return llvm.LLVMValueRef;
584
585 function LLVMConstFDiv
586 (LHSConstant : in llvm.LLVMValueRef;
587 RHSConstant : in llvm.LLVMValueRef)
588 return llvm.LLVMValueRef;
589
590 function LLVMConstURem
591 (LHSConstant : in llvm.LLVMValueRef;
592 RHSConstant : in llvm.LLVMValueRef)
593 return llvm.LLVMValueRef;
594
595 function LLVMConstSRem
596 (LHSConstant : in llvm.LLVMValueRef;
597 RHSConstant : in llvm.LLVMValueRef)
598 return llvm.LLVMValueRef;
599
600 function LLVMConstFRem
601 (LHSConstant : in llvm.LLVMValueRef;
602 RHSConstant : in llvm.LLVMValueRef)
603 return llvm.LLVMValueRef;
604
605 function LLVMConstAnd
606 (LHSConstant : in llvm.LLVMValueRef;
607 RHSConstant : in llvm.LLVMValueRef)
608 return llvm.LLVMValueRef;
609
610 function LLVMConstOr
611 (LHSConstant : in llvm.LLVMValueRef;
612 RHSConstant : in llvm.LLVMValueRef)
613 return llvm.LLVMValueRef;
614
615 function LLVMConstXor
616 (LHSConstant : in llvm.LLVMValueRef;
617 RHSConstant : in llvm.LLVMValueRef)
618 return llvm.LLVMValueRef;
619
620 function LLVMConstICmp
621 (Predicate : in llvm.LLVMIntPredicate;
622 LHSConstant : in llvm.LLVMValueRef;
623 RHSConstant : in llvm.LLVMValueRef)
624 return llvm.LLVMValueRef;
625
626 function LLVMConstFCmp
627 (Predicate : in llvm.LLVMRealPredicate;
628 LHSConstant : in llvm.LLVMValueRef;
629 RHSConstant : in llvm.LLVMValueRef)
630 return llvm.LLVMValueRef;
631
632 function LLVMConstShl
633 (LHSConstant : in llvm.LLVMValueRef;
634 RHSConstant : in llvm.LLVMValueRef)
635 return llvm.LLVMValueRef;
636
637 function LLVMConstLShr
638 (LHSConstant : in llvm.LLVMValueRef;
639 RHSConstant : in llvm.LLVMValueRef)
640 return llvm.LLVMValueRef;
641
642 function LLVMConstAShr
643 (LHSConstant : in llvm.LLVMValueRef;
644 RHSConstant : in llvm.LLVMValueRef)
645 return llvm.LLVMValueRef;
646
647 function LLVMConstGEP
648 (ConstantVal : in llvm.LLVMValueRef;
649 ConstantIndices : access llvm.LLVMValueRef;
650 NumIndices : in Interfaces.C.unsigned)
651 return llvm.LLVMValueRef;
652
653 function LLVMConstTrunc
654 (ConstantVal : in llvm.LLVMValueRef;
655 ToType : in llvm.LLVMTypeRef)
656 return llvm.LLVMValueRef;
657
658 function LLVMConstSExt
659 (ConstantVal : in llvm.LLVMValueRef;
660 ToType : in llvm.LLVMTypeRef)
661 return llvm.LLVMValueRef;
662
663 function LLVMConstZExt
664 (ConstantVal : in llvm.LLVMValueRef;
665 ToType : in llvm.LLVMTypeRef)
666 return llvm.LLVMValueRef;
667
668 function LLVMConstFPTrunc
669 (ConstantVal : in llvm.LLVMValueRef;
670 ToType : in llvm.LLVMTypeRef)
671 return llvm.LLVMValueRef;
672
673 function LLVMConstFPExt
674 (ConstantVal : in llvm.LLVMValueRef;
675 ToType : in llvm.LLVMTypeRef)
676 return llvm.LLVMValueRef;
677
678 function LLVMConstUIToFP
679 (ConstantVal : in llvm.LLVMValueRef;
680 ToType : in llvm.LLVMTypeRef)
681 return llvm.LLVMValueRef;
682
683 function LLVMConstSIToFP
684 (ConstantVal : in llvm.LLVMValueRef;
685 ToType : in llvm.LLVMTypeRef)
686 return llvm.LLVMValueRef;
687
688 function LLVMConstFPToUI
689 (ConstantVal : in llvm.LLVMValueRef;
690 ToType : in llvm.LLVMTypeRef)
691 return llvm.LLVMValueRef;
692
693 function LLVMConstFPToSI
694 (ConstantVal : in llvm.LLVMValueRef;
695 ToType : in llvm.LLVMTypeRef)
696 return llvm.LLVMValueRef;
697
698 function LLVMConstPtrToInt
699 (ConstantVal : in llvm.LLVMValueRef;
700 ToType : in llvm.LLVMTypeRef)
701 return llvm.LLVMValueRef;
702
703 function LLVMConstIntToPtr
704 (ConstantVal : in llvm.LLVMValueRef;
705 ToType : in llvm.LLVMTypeRef)
706 return llvm.LLVMValueRef;
707
708 function LLVMConstBitCast
709 (ConstantVal : in llvm.LLVMValueRef;
710 ToType : in llvm.LLVMTypeRef)
711 return llvm.LLVMValueRef;
712
713 function LLVMConstSelect
714 (ConstantCondition : in llvm.LLVMValueRef;
715 ConstantIfTrue : in llvm.LLVMValueRef;
716 ConstantIfFalse : in llvm.LLVMValueRef)
717 return llvm.LLVMValueRef;
718
719 function LLVMConstExtractElement
720 (VectorConstant : in llvm.LLVMValueRef;
721 IndexConstant : in llvm.LLVMValueRef)
722 return llvm.LLVMValueRef;
723
724 function LLVMConstInsertElement
725 (VectorConstant : in llvm.LLVMValueRef;
726 ElementValueConstant : in llvm.LLVMValueRef;
727 IndexConstant : in llvm.LLVMValueRef)
728 return llvm.LLVMValueRef;
729
730 function LLVMConstShuffleVector
731 (VectorAConstant : in llvm.LLVMValueRef;
732 VectorBConstant : in llvm.LLVMValueRef;
733 MaskConstant : in llvm.LLVMValueRef)
734 return llvm.LLVMValueRef;
735
736 function LLVMConstExtractValue
737 (AggConstant : in llvm.LLVMValueRef;
738 IdxList : access Interfaces.C.unsigned;
739 NumIdx : in Interfaces.C.unsigned)
740 return llvm.LLVMValueRef;
741
742 function LLVMConstInsertValue
743 (AggConstant : in llvm.LLVMValueRef;
744 ElementValueConstant : in llvm.LLVMValueRef;
745 IdxList : access Interfaces.C.unsigned;
746 NumIdx : in Interfaces.C.unsigned)
747 return llvm.LLVMValueRef;
748
749 function LLVMConstInlineAsm
750 (Ty : in llvm.LLVMTypeRef;
751 AsmString : in Interfaces.C.Strings.chars_ptr;
752 Constraints : in Interfaces.C.Strings.chars_ptr;
753 HasSideEffects : in Interfaces.C.int)
754 return llvm.LLVMValueRef;
755
756 function LLVMGetGlobalParent
757 (Global : in llvm.LLVMValueRef)
758 return llvm.LLVMModuleRef;
759
760 function LLVMIsDeclaration
761 (Global : in llvm.LLVMValueRef)
762 return Interfaces.C.int;
763
764 function LLVMGetLinkage
765 (Global : in llvm.LLVMValueRef)
766 return llvm.LLVMLinkage;
767
768 procedure LLVMSetLinkage
769 (Global : in llvm.LLVMValueRef;
770 Linkage : in llvm.LLVMLinkage);
771
772 function LLVMGetSection
773 (Global : in llvm.LLVMValueRef)
774 return Interfaces.C.Strings.chars_ptr;
775
776 procedure LLVMSetSection
777 (Global : in llvm.LLVMValueRef;
778 Section : in Interfaces.C.Strings.chars_ptr);
779
780 function LLVMGetVisibility
781 (Global : in llvm.LLVMValueRef)
782 return llvm.LLVMVisibility;
783
784 procedure LLVMSetVisibility
785 (Global : in llvm.LLVMValueRef;
786 Viz : in llvm.LLVMVisibility);
787
788 function LLVMGetAlignment
789 (Global : in llvm.LLVMValueRef)
790 return Interfaces.C.unsigned;
791
792 procedure LLVMSetAlignment
793 (Global : in llvm.LLVMValueRef;
794 Bytes : in Interfaces.C.unsigned);
795
796 function LLVMAddGlobal
797 (M : in llvm.LLVMModuleRef;
798 Ty : in llvm.LLVMTypeRef;
799 Name : in Interfaces.C.Strings.chars_ptr)
800 return llvm.LLVMValueRef;
801
802 function LLVMGetNamedGlobal
803 (M : in llvm.LLVMModuleRef;
804 Name : in Interfaces.C.Strings.chars_ptr)
805 return llvm.LLVMValueRef;
806
807 function LLVMGetFirstGlobal
808 (M : in llvm.LLVMModuleRef)
809 return llvm.LLVMValueRef;
810
811 function LLVMGetLastGlobal
812 (M : in llvm.LLVMModuleRef)
813 return llvm.LLVMValueRef;
814
815 function LLVMGetNextGlobal
816 (GlobalVar : in llvm.LLVMValueRef)
817 return llvm.LLVMValueRef;
818
819 function LLVMGetPreviousGlobal
820 (GlobalVar : in llvm.LLVMValueRef)
821 return llvm.LLVMValueRef;
822
823 procedure LLVMDeleteGlobal (GlobalVar : in llvm.LLVMValueRef);
824
825 function LLVMGetInitializer
826 (GlobalVar : in llvm.LLVMValueRef)
827 return llvm.LLVMValueRef;
828
829 procedure LLVMSetInitializer
830 (GlobalVar : in llvm.LLVMValueRef;
831 ConstantVal : in llvm.LLVMValueRef);
832
833 function LLVMIsThreadLocal
834 (GlobalVar : in llvm.LLVMValueRef)
835 return Interfaces.C.int;
836
837 procedure LLVMSetThreadLocal
838 (GlobalVar : in llvm.LLVMValueRef;
839 IsThreadLocal : in Interfaces.C.int);
840
841 function LLVMIsGlobalConstant
842 (GlobalVar : in llvm.LLVMValueRef)
843 return Interfaces.C.int;
844
845 procedure LLVMSetGlobalConstant
846 (GlobalVar : in llvm.LLVMValueRef;
847 IsConstant : in Interfaces.C.int);
848
849 function LLVMAddAlias
850 (M : in llvm.LLVMModuleRef;
851 Ty : in llvm.LLVMTypeRef;
852 Aliasee : in llvm.LLVMValueRef;
853 Name : in Interfaces.C.Strings.chars_ptr)
854 return llvm.LLVMValueRef;
855
856 function LLVMAddFunction
857 (M : in llvm.LLVMModuleRef;
858 Name : in Interfaces.C.Strings.chars_ptr;
859 FunctionTy : in llvm.LLVMTypeRef)
860 return llvm.LLVMValueRef;
861
862 function LLVMGetNamedFunction
863 (M : in llvm.LLVMModuleRef;
864 Name : in Interfaces.C.Strings.chars_ptr)
865 return llvm.LLVMValueRef;
866
867 function LLVMGetFirstFunction
868 (M : in llvm.LLVMModuleRef)
869 return llvm.LLVMValueRef;
870
871 function LLVMGetLastFunction
872 (M : in llvm.LLVMModuleRef)
873 return llvm.LLVMValueRef;
874
875 function LLVMGetNextFunction
876 (Fn : in llvm.LLVMValueRef)
877 return llvm.LLVMValueRef;
878
879 function LLVMGetPreviousFunction
880 (Fn : in llvm.LLVMValueRef)
881 return llvm.LLVMValueRef;
882
883 procedure LLVMDeleteFunction (Fn : in llvm.LLVMValueRef);
884
885 function LLVMGetIntrinsicID
886 (Fn : in llvm.LLVMValueRef)
887 return Interfaces.C.unsigned;
888
889 function LLVMGetFunctionCallConv
890 (Fn : in llvm.LLVMValueRef)
891 return Interfaces.C.unsigned;
892
893 procedure LLVMSetFunctionCallConv
894 (Fn : in llvm.LLVMValueRef;
895 CC : in Interfaces.C.unsigned);
896
897 function LLVMGetGC
898 (Fn : in llvm.LLVMValueRef)
899 return Interfaces.C.Strings.chars_ptr;
900
901 procedure LLVMSetGC
902 (Fn : in llvm.LLVMValueRef;
903 Name : in Interfaces.C.Strings.chars_ptr);
904
905 procedure LLVMAddFunctionAttr
906 (Fn : in llvm.LLVMValueRef;
907 PA : in llvm.LLVMAttribute);
908
909 procedure LLVMRemoveFunctionAttr
910 (Fn : in llvm.LLVMValueRef;
911 PA : in llvm.LLVMAttribute);
912
913 function LLVMCountParams
914 (Fn : in llvm.LLVMValueRef)
915 return Interfaces.C.unsigned;
916
917 procedure LLVMGetParams
918 (Fn : in llvm.LLVMValueRef;
919 Params : access llvm.LLVMValueRef);
920
921 function LLVMGetParam
922 (Fn : in llvm.LLVMValueRef;
923 Index : in Interfaces.C.unsigned)
924 return llvm.LLVMValueRef;
925
926 function LLVMGetParamParent
927 (Inst : in llvm.LLVMValueRef)
928 return llvm.LLVMValueRef;
929
930 function LLVMGetFirstParam
931 (Fn : in llvm.LLVMValueRef)
932 return llvm.LLVMValueRef;
933
934 function LLVMGetLastParam
935 (Fn : in llvm.LLVMValueRef)
936 return llvm.LLVMValueRef;
937
938 function LLVMGetNextParam
939 (Arg : in llvm.LLVMValueRef)
940 return llvm.LLVMValueRef;
941
942 function LLVMGetPreviousParam
943 (Arg : in llvm.LLVMValueRef)
944 return llvm.LLVMValueRef;
945
946 procedure LLVMAddAttribute
947 (Arg : in llvm.LLVMValueRef;
948 PA : in llvm.LLVMAttribute);
949
950 procedure LLVMRemoveAttribute
951 (Arg : in llvm.LLVMValueRef;
952 PA : in llvm.LLVMAttribute);
953
954 procedure LLVMSetParamAlignment
955 (Arg : in llvm.LLVMValueRef;
956 align : in Interfaces.C.unsigned);
957
958 function LLVMBasicBlockAsValue
959 (BB : in llvm.LLVMBasicBlockRef)
960 return llvm.LLVMValueRef;
961
962 function LLVMValueIsBasicBlock
963 (Val : in llvm.LLVMValueRef)
964 return Interfaces.C.int;
965
966 function LLVMValueAsBasicBlock
967 (Val : in llvm.LLVMValueRef)
968 return llvm.LLVMBasicBlockRef;
969
970 function LLVMGetBasicBlockParent
971 (BB : in llvm.LLVMBasicBlockRef)
972 return llvm.LLVMValueRef;
973
974 function LLVMCountBasicBlocks
975 (Fn : in llvm.LLVMValueRef)
976 return Interfaces.C.unsigned;
977
978 procedure LLVMGetBasicBlocks
979 (Fn : in llvm.LLVMValueRef;
980 BasicBlocks : access llvm.LLVMBasicBlockRef);
981
982 function LLVMGetFirstBasicBlock
983 (Fn : in llvm.LLVMValueRef)
984 return llvm.LLVMBasicBlockRef;
985
986 function LLVMGetLastBasicBlock
987 (Fn : in llvm.LLVMValueRef)
988 return llvm.LLVMBasicBlockRef;
989
990 function LLVMGetNextBasicBlock
991 (BB : in llvm.LLVMBasicBlockRef)
992 return llvm.LLVMBasicBlockRef;
993
994 function LLVMGetPreviousBasicBlock
995 (BB : in llvm.LLVMBasicBlockRef)
996 return llvm.LLVMBasicBlockRef;
997
998 function LLVMGetEntryBasicBlock
999 (Fn : in llvm.LLVMValueRef)
1000 return llvm.LLVMBasicBlockRef;
1001
1002 function LLVMAppendBasicBlock
1003 (Fn : in llvm.LLVMValueRef;
1004 Name : in Interfaces.C.Strings.chars_ptr)
1005 return llvm.LLVMBasicBlockRef;
1006
1007 function LLVMInsertBasicBlock
1008 (InsertBeforeBB : in llvm.LLVMBasicBlockRef;
1009 Name : in Interfaces.C.Strings.chars_ptr)
1010 return llvm.LLVMBasicBlockRef;
1011
1012 procedure LLVMDeleteBasicBlock (BB : in llvm.LLVMBasicBlockRef);
1013
1014 function LLVMGetInstructionParent
1015 (Inst : in llvm.LLVMValueRef)
1016 return llvm.LLVMBasicBlockRef;
1017
1018 function LLVMGetFirstInstruction
1019 (BB : in llvm.LLVMBasicBlockRef)
1020 return llvm.LLVMValueRef;
1021
1022 function LLVMGetLastInstruction
1023 (BB : in llvm.LLVMBasicBlockRef)
1024 return llvm.LLVMValueRef;
1025
1026 function LLVMGetNextInstruction
1027 (Inst : in llvm.LLVMValueRef)
1028 return llvm.LLVMValueRef;
1029
1030 function LLVMGetPreviousInstruction
1031 (Inst : in llvm.LLVMValueRef)
1032 return llvm.LLVMValueRef;
1033
1034 procedure LLVMSetInstructionCallConv
1035 (Instr : in llvm.LLVMValueRef;
1036 CC : in Interfaces.C.unsigned);
1037
1038 function LLVMGetInstructionCallConv
1039 (Instr : in llvm.LLVMValueRef)
1040 return Interfaces.C.unsigned;
1041
1042 procedure LLVMAddInstrAttribute
1043 (Instr : in llvm.LLVMValueRef;
1044 index : in Interfaces.C.unsigned;
1045 arg_1 : in llvm.LLVMAttribute);
1046
1047 procedure LLVMRemoveInstrAttribute
1048 (Instr : in llvm.LLVMValueRef;
1049 index : in Interfaces.C.unsigned;
1050 arg_1 : in llvm.LLVMAttribute);
1051
1052 procedure LLVMSetInstrParamAlignment
1053 (Instr : in llvm.LLVMValueRef;
1054 index : in Interfaces.C.unsigned;
1055 align : in Interfaces.C.unsigned);
1056
1057 function LLVMIsTailCall
1058 (CallInst : in llvm.LLVMValueRef)
1059 return Interfaces.C.int;
1060
1061 procedure LLVMSetTailCall
1062 (CallInst : in llvm.LLVMValueRef;
1063 IsTailCall : in Interfaces.C.int);
1064
1065 procedure LLVMAddIncoming
1066 (PhiNode : in llvm.LLVMValueRef;
1067 IncomingValues : access llvm.LLVMValueRef;
1068 IncomingBlocks : access llvm.LLVMBasicBlockRef;
1069 Count : in Interfaces.C.unsigned);
1070
1071 function LLVMCountIncoming
1072 (PhiNode : in llvm.LLVMValueRef)
1073 return Interfaces.C.unsigned;
1074
1075 function LLVMGetIncomingValue
1076 (PhiNode : in llvm.LLVMValueRef;
1077 Index : in Interfaces.C.unsigned)
1078 return llvm.LLVMValueRef;
1079
1080 function LLVMGetIncomingBlock
1081 (PhiNode : in llvm.LLVMValueRef;
1082 Index : in Interfaces.C.unsigned)
1083 return llvm.LLVMBasicBlockRef;
1084
1085 function LLVMCreateBuilder return llvm.LLVMBuilderRef;
1086
1087 procedure LLVMPositionBuilder
1088 (Builder : in llvm.LLVMBuilderRef;