1 /* ----------------------------------------------------------------------------
2 * This file was automatically generated by SWIG (http://www.swig.org).
5 * This file is not intended to be easily readable and contains a number of
6 * coding conventions designed to improve portability and efficiency. Do not make
7 * changes to this file unless you know what you are doing--modify the SWIG
8 * interface file instead.
9 * ----------------------------------------------------------------------------- */
13 template<typename T
> class SwigValueWrapper
{
16 SwigValueWrapper() : tt(0) { }
17 SwigValueWrapper(const SwigValueWrapper
<T
>& rhs
) : tt(new T(*rhs
.tt
)) { }
18 SwigValueWrapper(const T
& t
) : tt(new T(t
)) { }
19 ~SwigValueWrapper() { delete tt
; }
20 SwigValueWrapper
& operator=(const T
& t
) { delete tt
; tt
= new T(t
); return *this; }
21 operator T
&() const { return *tt
; }
22 T
*operator&() { return tt
; }
24 SwigValueWrapper
& operator=(const SwigValueWrapper
<T
>& rhs
);
27 template <typename T
> T
SwigValueInit() {
32 /* -----------------------------------------------------------------------------
33 * This section contains generic SWIG labels for method/variable
34 * declarations/attributes, and other compiler dependent labels.
35 * ----------------------------------------------------------------------------- */
37 /* template workaround for compilers that cannot correctly implement the C++ standard */
38 #ifndef SWIGTEMPLATEDISAMBIGUATOR
39 # if defined(__SUNPRO_CC) && (__SUNPRO_CC <= 0x560)
40 # define SWIGTEMPLATEDISAMBIGUATOR template
41 # elif defined(__HP_aCC)
42 /* Needed even with `aCC -AA' when `aCC -V' reports HP ANSI C++ B3910B A.03.55 */
43 /* If we find a maximum version that requires this, the test would be __HP_aCC <= 35500 for A.03.55 */
44 # define SWIGTEMPLATEDISAMBIGUATOR template
46 # define SWIGTEMPLATEDISAMBIGUATOR
50 /* inline attribute */
52 # if defined(__cplusplus) || (defined(__GNUC__) && !defined(__STRICT_ANSI__))
53 # define SWIGINLINE inline
59 /* attribute recognised by some compilers to avoid 'unused' warnings */
61 # if defined(__GNUC__)
62 # if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
63 # define SWIGUNUSED __attribute__ ((__unused__))
68 # define SWIGUNUSED __attribute__ ((__unused__))
74 #ifndef SWIGUNUSEDPARM
76 # define SWIGUNUSEDPARM(p)
78 # define SWIGUNUSEDPARM(p) p SWIGUNUSED
82 /* internal SWIG method */
84 # define SWIGINTERN static SWIGUNUSED
87 /* internal inline SWIG method */
88 #ifndef SWIGINTERNINLINE
89 # define SWIGINTERNINLINE SWIGINTERN SWIGINLINE
92 /* exporting methods */
93 #if (__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)
94 # ifndef GCC_HASCLASSVISIBILITY
95 # define GCC_HASCLASSVISIBILITY
100 # if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
101 # if defined(STATIC_LINKED)
104 # define SWIGEXPORT __declspec(dllexport)
107 # if defined(__GNUC__) && defined(GCC_HASCLASSVISIBILITY)
108 # define SWIGEXPORT __attribute__ ((visibility("default")))
115 /* calling conventions for Windows */
117 # if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
118 # define SWIGSTDCALL __stdcall
124 /* Deal with Microsoft's attempt at deprecating C standard runtime functions */
125 #if !defined(SWIG_NO_CRT_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_CRT_SECURE_NO_DEPRECATE)
126 # define _CRT_SECURE_NO_DEPRECATE
129 /* Deal with Microsoft's attempt at deprecating methods in the standard C++ library */
130 #if !defined(SWIG_NO_SCL_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_SCL_SECURE_NO_DEPRECATE)
131 # define _SCL_SECURE_NO_DEPRECATE
139 #if defined(_WIN32) || defined(__CYGWIN32__)
140 # define DllExport __declspec( dllexport )
141 # define SWIGSTDCALL __stdcall
155 /* Support for throwing Ada exceptions from C/C++ */
160 SWIG_AdaOutOfMemoryException
,
161 SWIG_AdaIndexOutOfRangeException
,
162 SWIG_AdaDivideByZeroException
,
163 SWIG_AdaArgumentOutOfRangeException
,
164 SWIG_AdaNullReferenceException
165 } SWIG_AdaExceptionCodes
;
168 typedef void (SWIGSTDCALL
* SWIG_AdaExceptionCallback_t
)(const char *);
173 SWIG_AdaExceptionCodes code
;
174 SWIG_AdaExceptionCallback_t callback
;
176 SWIG_AdaExceptions_t
;
181 SWIG_ada_exceptions
[] =
183 { SWIG_AdaException
, NULL
},
184 { SWIG_AdaOutOfMemoryException
, NULL
},
185 { SWIG_AdaIndexOutOfRangeException
, NULL
},
186 { SWIG_AdaDivideByZeroException
, NULL
},
187 { SWIG_AdaArgumentOutOfRangeException
, NULL
},
188 { SWIG_AdaNullReferenceException
, NULL
}
194 SWIG_AdaThrowException (SWIG_AdaExceptionCodes code
, const char *msg
)
196 SWIG_AdaExceptionCallback_t callback
= SWIG_ada_exceptions
[SWIG_AdaException
].callback
;
197 if (code
>=0 && (size_t)code
< sizeof(SWIG_ada_exceptions
)/sizeof(SWIG_AdaExceptions_t
)) {
198 callback
= SWIG_ada_exceptions
[code
].callback
;
209 DllExport
void SWIGSTDCALL
SWIGRegisterExceptionCallbacks_LLVM_bit_Reader (SWIG_AdaExceptionCallback_t systemException
,
210 SWIG_AdaExceptionCallback_t outOfMemory
,
211 SWIG_AdaExceptionCallback_t indexOutOfRange
,
212 SWIG_AdaExceptionCallback_t divideByZero
,
213 SWIG_AdaExceptionCallback_t argumentOutOfRange
,
214 SWIG_AdaExceptionCallback_t nullReference
)
216 SWIG_ada_exceptions
[SWIG_AdaException
].callback
= systemException
;
217 SWIG_ada_exceptions
[SWIG_AdaOutOfMemoryException
].callback
= outOfMemory
;
218 SWIG_ada_exceptions
[SWIG_AdaIndexOutOfRangeException
].callback
= indexOutOfRange
;
219 SWIG_ada_exceptions
[SWIG_AdaDivideByZeroException
].callback
= divideByZero
;
220 SWIG_ada_exceptions
[SWIG_AdaArgumentOutOfRangeException
].callback
= argumentOutOfRange
;
221 SWIG_ada_exceptions
[SWIG_AdaNullReferenceException
].callback
= nullReference
;
225 /* Callback for returning strings to Ada without leaking memory */
227 typedef char * (SWIGSTDCALL
* SWIG_AdaStringHelperCallback
)(const char *);
228 static SWIG_AdaStringHelperCallback SWIG_ada_string_callback
= NULL
;
232 /* probably obsolete ...
236 DllExport void SWIGSTDCALL SWIGRegisterStringCallback_LLVM_bit_Reader(SWIG_AdaStringHelperCallback callback) {
237 SWIG_ada_string_callback = callback;
243 /* Contract support */
245 #define SWIG_contract_assert(nullreturn, expr, msg) if (!(expr)) {SWIG_AdaThrowException(SWIG_AdaArgumentOutOfRangeException, msg); return nullreturn; } else
248 #define protected public
249 #define private public
251 //#include "llvm-c/Analysis.h"
252 #include "llvm-c/BitReader.h"
253 //#include "llvm-c/BitWriter.h"
254 //#include "llvm-c/Core.h"
255 //#include "llvm-c/ExecutionEngine.h"
256 //#include "llvm-c/LinkTimeOptimizer.h"
257 //#include "llvm-c/lto.h"
258 //#include "llvm-c/Target.h"
270 DllExport
int SWIGSTDCALL
Ada_LLVMParseBitcode (
281 LLVMMemoryBufferRef arg1
= (LLVMMemoryBufferRef
) 0 ;
282 LLVMModuleRef
*arg2
= (LLVMModuleRef
*) 0 ;
283 char **arg3
= (char **) 0 ;
286 arg1
= (LLVMMemoryBufferRef
)jarg1
;
288 arg2
= (LLVMModuleRef
*)jarg2
;
290 arg3
= (char **)jarg3
;
292 result
= (int)LLVMParseBitcode(arg1
,arg2
,arg3
);
303 DllExport
int SWIGSTDCALL
Ada_LLVMParseBitcodeInContext (
317 LLVMMemoryBufferRef arg1
= (LLVMMemoryBufferRef
) 0 ;
318 LLVMContextRef arg2
= (LLVMContextRef
) 0 ;
319 LLVMModuleRef
*arg3
= (LLVMModuleRef
*) 0 ;
320 char **arg4
= (char **) 0 ;
323 arg1
= (LLVMMemoryBufferRef
)jarg1
;
325 arg2
= (LLVMContextRef
)jarg2
;
327 arg3
= (LLVMModuleRef
*)jarg3
;
329 arg4
= (char **)jarg4
;
331 result
= (int)LLVMParseBitcodeInContext(arg1
,arg2
,arg3
,arg4
);
342 DllExport
int SWIGSTDCALL
Ada_LLVMGetBitcodeModuleProvider (
353 LLVMMemoryBufferRef arg1
= (LLVMMemoryBufferRef
) 0 ;
354 LLVMModuleProviderRef
*arg2
= (LLVMModuleProviderRef
*) 0 ;
355 char **arg3
= (char **) 0 ;
358 arg1
= (LLVMMemoryBufferRef
)jarg1
;
360 arg2
= (LLVMModuleProviderRef
*)jarg2
;
362 arg3
= (char **)jarg3
;
364 result
= (int)LLVMGetBitcodeModuleProvider(arg1
,arg2
,arg3
);
375 DllExport
int SWIGSTDCALL
Ada_LLVMGetBitcodeModuleProviderInContext (
389 LLVMMemoryBufferRef arg1
= (LLVMMemoryBufferRef
) 0 ;
390 LLVMContextRef arg2
= (LLVMContextRef
) 0 ;
391 LLVMModuleProviderRef
*arg3
= (LLVMModuleProviderRef
*) 0 ;
392 char **arg4
= (char **) 0 ;
395 arg1
= (LLVMMemoryBufferRef
)jarg1
;
397 arg2
= (LLVMContextRef
)jarg2
;
399 arg3
= (LLVMModuleProviderRef
*)jarg3
;
401 arg4
= (char **)jarg4
;
403 result
= (int)LLVMGetBitcodeModuleProviderInContext(arg1
,arg2
,arg3
,arg4
);