mirror of
https://github.com/RPCS3/llvm.git
synced 2024-11-29 14:40:39 +00:00
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
This commit is contained in:
parent
25103a2617
commit
e1b80b6946
@ -182,6 +182,10 @@ N: Sumant Kowshik
|
||||
E: kowshik@uiuc.edu
|
||||
D: Author of the original C backend
|
||||
|
||||
N: Rod Kay
|
||||
E: rkay@auroraux.org
|
||||
D: Author of LLVM Ada bindings
|
||||
|
||||
N: Christopher Lamb
|
||||
E: christopher.lamb@gmail.com
|
||||
D: aligned load/store support, parts of noalias and restrict support
|
||||
|
32
bindings/ada/analysis/llvm_analysis-binding.ads
Normal file
32
bindings/ada/analysis/llvm_analysis-binding.ads
Normal file
@ -0,0 +1,32 @@
|
||||
-- This file is generated by SWIG. Do *not* modify by hand.
|
||||
--
|
||||
|
||||
with llvm;
|
||||
with Interfaces.C.Strings;
|
||||
|
||||
|
||||
package LLVM_Analysis.Binding is
|
||||
|
||||
function LLVMVerifyModule
|
||||
(M : in llvm.LLVMModuleRef;
|
||||
Action : in LLVM_Analysis.LLVMVerifierFailureAction;
|
||||
OutMessage : access Interfaces.C.Strings.chars_ptr)
|
||||
return Interfaces.C.int;
|
||||
|
||||
function LLVMVerifyFunction
|
||||
(Fn : in llvm.LLVMValueRef;
|
||||
Action : in LLVM_Analysis.LLVMVerifierFailureAction)
|
||||
return Interfaces.C.int;
|
||||
|
||||
procedure LLVMViewFunctionCFG (Fn : in llvm.LLVMValueRef);
|
||||
|
||||
procedure LLVMViewFunctionCFGOnly (Fn : in llvm.LLVMValueRef);
|
||||
|
||||
private
|
||||
|
||||
pragma Import (C, LLVMVerifyModule, "Ada_LLVMVerifyModule");
|
||||
pragma Import (C, LLVMVerifyFunction, "Ada_LLVMVerifyFunction");
|
||||
pragma Import (C, LLVMViewFunctionCFG, "Ada_LLVMViewFunctionCFG");
|
||||
pragma Import (C, LLVMViewFunctionCFGOnly, "Ada_LLVMViewFunctionCFGOnly");
|
||||
|
||||
end LLVM_Analysis.Binding;
|
30
bindings/ada/analysis/llvm_analysis.ads
Normal file
30
bindings/ada/analysis/llvm_analysis.ads
Normal file
@ -0,0 +1,30 @@
|
||||
-- This file is generated by SWIG. Do *not* modify by hand.
|
||||
--
|
||||
|
||||
with Interfaces.C;
|
||||
|
||||
|
||||
package LLVM_Analysis is
|
||||
|
||||
-- LLVMVerifierFailureAction
|
||||
--
|
||||
type LLVMVerifierFailureAction is (
|
||||
LLVMAbortProcessAction,
|
||||
LLVMPrintMessageAction,
|
||||
LLVMReturnStatusAction);
|
||||
|
||||
for LLVMVerifierFailureAction use
|
||||
(LLVMAbortProcessAction => 0,
|
||||
LLVMPrintMessageAction => 1,
|
||||
LLVMReturnStatusAction => 2);
|
||||
|
||||
pragma Convention (C, LLVMVerifierFailureAction);
|
||||
|
||||
type LLVMVerifierFailureAction_array is
|
||||
array (Interfaces.C.size_t range <>)
|
||||
of aliased LLVM_Analysis.LLVMVerifierFailureAction;
|
||||
|
||||
type LLVMVerifierFailureAction_view is access all
|
||||
LLVM_Analysis.LLVMVerifierFailureAction;
|
||||
|
||||
end LLVM_Analysis;
|
369
bindings/ada/analysis/llvm_analysis_wrap.cxx
Normal file
369
bindings/ada/analysis/llvm_analysis_wrap.cxx
Normal file
@ -0,0 +1,369 @@
|
||||
/* ----------------------------------------------------------------------------
|
||||
* This file was automatically generated by SWIG (http://www.swig.org).
|
||||
* Version 1.3.36
|
||||
*
|
||||
* This file is not intended to be easily readable and contains a number of
|
||||
* coding conventions designed to improve portability and efficiency. Do not make
|
||||
* changes to this file unless you know what you are doing--modify the SWIG
|
||||
* interface file instead.
|
||||
* ----------------------------------------------------------------------------- */
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
template<typename T> class SwigValueWrapper {
|
||||
T *tt;
|
||||
public:
|
||||
SwigValueWrapper() : tt(0) { }
|
||||
SwigValueWrapper(const SwigValueWrapper<T>& rhs) : tt(new T(*rhs.tt)) { }
|
||||
SwigValueWrapper(const T& t) : tt(new T(t)) { }
|
||||
~SwigValueWrapper() { delete tt; }
|
||||
SwigValueWrapper& operator=(const T& t) { delete tt; tt = new T(t); return *this; }
|
||||
operator T&() const { return *tt; }
|
||||
T *operator&() { return tt; }
|
||||
private:
|
||||
SwigValueWrapper& operator=(const SwigValueWrapper<T>& rhs);
|
||||
};
|
||||
|
||||
template <typename T> T SwigValueInit() {
|
||||
return T();
|
||||
}
|
||||
#endif
|
||||
|
||||
/* -----------------------------------------------------------------------------
|
||||
* This section contains generic SWIG labels for method/variable
|
||||
* declarations/attributes, and other compiler dependent labels.
|
||||
* ----------------------------------------------------------------------------- */
|
||||
|
||||
/* template workaround for compilers that cannot correctly implement the C++ standard */
|
||||
#ifndef SWIGTEMPLATEDISAMBIGUATOR
|
||||
# if defined(__SUNPRO_CC) && (__SUNPRO_CC <= 0x560)
|
||||
# define SWIGTEMPLATEDISAMBIGUATOR template
|
||||
# elif defined(__HP_aCC)
|
||||
/* Needed even with `aCC -AA' when `aCC -V' reports HP ANSI C++ B3910B A.03.55 */
|
||||
/* If we find a maximum version that requires this, the test would be __HP_aCC <= 35500 for A.03.55 */
|
||||
# define SWIGTEMPLATEDISAMBIGUATOR template
|
||||
# else
|
||||
# define SWIGTEMPLATEDISAMBIGUATOR
|
||||
# endif
|
||||
#endif
|
||||
|
||||
/* inline attribute */
|
||||
#ifndef SWIGINLINE
|
||||
# if defined(__cplusplus) || (defined(__GNUC__) && !defined(__STRICT_ANSI__))
|
||||
# define SWIGINLINE inline
|
||||
# else
|
||||
# define SWIGINLINE
|
||||
# endif
|
||||
#endif
|
||||
|
||||
/* attribute recognised by some compilers to avoid 'unused' warnings */
|
||||
#ifndef SWIGUNUSED
|
||||
# if defined(__GNUC__)
|
||||
# if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
|
||||
# define SWIGUNUSED __attribute__ ((__unused__))
|
||||
# else
|
||||
# define SWIGUNUSED
|
||||
# endif
|
||||
# elif defined(__ICC)
|
||||
# define SWIGUNUSED __attribute__ ((__unused__))
|
||||
# else
|
||||
# define SWIGUNUSED
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#ifndef SWIGUNUSEDPARM
|
||||
# ifdef __cplusplus
|
||||
# define SWIGUNUSEDPARM(p)
|
||||
# else
|
||||
# define SWIGUNUSEDPARM(p) p SWIGUNUSED
|
||||
# endif
|
||||
#endif
|
||||
|
||||
/* internal SWIG method */
|
||||
#ifndef SWIGINTERN
|
||||
# define SWIGINTERN static SWIGUNUSED
|
||||
#endif
|
||||
|
||||
/* internal inline SWIG method */
|
||||
#ifndef SWIGINTERNINLINE
|
||||
# define SWIGINTERNINLINE SWIGINTERN SWIGINLINE
|
||||
#endif
|
||||
|
||||
/* exporting methods */
|
||||
#if (__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)
|
||||
# ifndef GCC_HASCLASSVISIBILITY
|
||||
# define GCC_HASCLASSVISIBILITY
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#ifndef SWIGEXPORT
|
||||
# if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
|
||||
# if defined(STATIC_LINKED)
|
||||
# define SWIGEXPORT
|
||||
# else
|
||||
# define SWIGEXPORT __declspec(dllexport)
|
||||
# endif
|
||||
# else
|
||||
# if defined(__GNUC__) && defined(GCC_HASCLASSVISIBILITY)
|
||||
# define SWIGEXPORT __attribute__ ((visibility("default")))
|
||||
# else
|
||||
# define SWIGEXPORT
|
||||
# endif
|
||||
# endif
|
||||
#endif
|
||||
|
||||
/* calling conventions for Windows */
|
||||
#ifndef SWIGSTDCALL
|
||||
# if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
|
||||
# define SWIGSTDCALL __stdcall
|
||||
# else
|
||||
# define SWIGSTDCALL
|
||||
# endif
|
||||
#endif
|
||||
|
||||
/* Deal with Microsoft's attempt at deprecating C standard runtime functions */
|
||||
#if !defined(SWIG_NO_CRT_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_CRT_SECURE_NO_DEPRECATE)
|
||||
# define _CRT_SECURE_NO_DEPRECATE
|
||||
#endif
|
||||
|
||||
/* Deal with Microsoft's attempt at deprecating methods in the standard C++ library */
|
||||
#if !defined(SWIG_NO_SCL_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_SCL_SECURE_NO_DEPRECATE)
|
||||
# define _SCL_SECURE_NO_DEPRECATE
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <stdio.h>
|
||||
#if defined(_WIN32) || defined(__CYGWIN32__)
|
||||
# define DllExport __declspec( dllexport )
|
||||
# define SWIGSTDCALL __stdcall
|
||||
#else
|
||||
# define DllExport
|
||||
# define SWIGSTDCALL
|
||||
#endif
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
# include <new>
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
||||
/* Support for throwing Ada exceptions from C/C++ */
|
||||
|
||||
typedef enum
|
||||
{
|
||||
SWIG_AdaException,
|
||||
SWIG_AdaOutOfMemoryException,
|
||||
SWIG_AdaIndexOutOfRangeException,
|
||||
SWIG_AdaDivideByZeroException,
|
||||
SWIG_AdaArgumentOutOfRangeException,
|
||||
SWIG_AdaNullReferenceException
|
||||
} SWIG_AdaExceptionCodes;
|
||||
|
||||
|
||||
typedef void (SWIGSTDCALL* SWIG_AdaExceptionCallback_t)(const char *);
|
||||
|
||||
|
||||
typedef struct
|
||||
{
|
||||
SWIG_AdaExceptionCodes code;
|
||||
SWIG_AdaExceptionCallback_t callback;
|
||||
}
|
||||
SWIG_AdaExceptions_t;
|
||||
|
||||
|
||||
static
|
||||
SWIG_AdaExceptions_t
|
||||
SWIG_ada_exceptions[] =
|
||||
{
|
||||
{ SWIG_AdaException, NULL },
|
||||
{ SWIG_AdaOutOfMemoryException, NULL },
|
||||
{ SWIG_AdaIndexOutOfRangeException, NULL },
|
||||
{ SWIG_AdaDivideByZeroException, NULL },
|
||||
{ SWIG_AdaArgumentOutOfRangeException, NULL },
|
||||
{ SWIG_AdaNullReferenceException, NULL }
|
||||
};
|
||||
|
||||
|
||||
static
|
||||
void
|
||||
SWIG_AdaThrowException (SWIG_AdaExceptionCodes code, const char *msg)
|
||||
{
|
||||
SWIG_AdaExceptionCallback_t callback = SWIG_ada_exceptions[SWIG_AdaException].callback;
|
||||
if (code >=0 && (size_t)code < sizeof(SWIG_ada_exceptions)/sizeof(SWIG_AdaExceptions_t)) {
|
||||
callback = SWIG_ada_exceptions[code].callback;
|
||||
}
|
||||
callback(msg);
|
||||
}
|
||||
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
#endif
|
||||
|
||||
DllExport void SWIGSTDCALL SWIGRegisterExceptionCallbacks_LLVM_Analysis (SWIG_AdaExceptionCallback_t systemException,
|
||||
SWIG_AdaExceptionCallback_t outOfMemory,
|
||||
SWIG_AdaExceptionCallback_t indexOutOfRange,
|
||||
SWIG_AdaExceptionCallback_t divideByZero,
|
||||
SWIG_AdaExceptionCallback_t argumentOutOfRange,
|
||||
SWIG_AdaExceptionCallback_t nullReference)
|
||||
{
|
||||
SWIG_ada_exceptions [SWIG_AdaException].callback = systemException;
|
||||
SWIG_ada_exceptions [SWIG_AdaOutOfMemoryException].callback = outOfMemory;
|
||||
SWIG_ada_exceptions [SWIG_AdaIndexOutOfRangeException].callback = indexOutOfRange;
|
||||
SWIG_ada_exceptions [SWIG_AdaDivideByZeroException].callback = divideByZero;
|
||||
SWIG_ada_exceptions [SWIG_AdaArgumentOutOfRangeException].callback = argumentOutOfRange;
|
||||
SWIG_ada_exceptions [SWIG_AdaNullReferenceException].callback = nullReference;
|
||||
}
|
||||
|
||||
|
||||
/* Callback for returning strings to Ada without leaking memory */
|
||||
|
||||
typedef char * (SWIGSTDCALL* SWIG_AdaStringHelperCallback)(const char *);
|
||||
static SWIG_AdaStringHelperCallback SWIG_ada_string_callback = NULL;
|
||||
|
||||
|
||||
|
||||
/* probably obsolete ...
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
#endif
|
||||
DllExport void SWIGSTDCALL SWIGRegisterStringCallback_LLVM_Analysis(SWIG_AdaStringHelperCallback callback) {
|
||||
SWIG_ada_string_callback = callback;
|
||||
}
|
||||
*/
|
||||
|
||||
|
||||
|
||||
/* Contract support */
|
||||
|
||||
#define SWIG_contract_assert(nullreturn, expr, msg) if (!(expr)) {SWIG_AdaThrowException(SWIG_AdaArgumentOutOfRangeException, msg); return nullreturn; } else
|
||||
|
||||
|
||||
#define protected public
|
||||
#define private public
|
||||
|
||||
#include "llvm-c/Analysis.h"
|
||||
//#include "llvm-c/BitReader.h"
|
||||
//#include "llvm-c/BitWriter.h"
|
||||
//#include "llvm-c/Core.h"
|
||||
//#include "llvm-c/ExecutionEngine.h"
|
||||
//#include "llvm-c/LinkTimeOptimizer.h"
|
||||
//#include "llvm-c/lto.h"
|
||||
//#include "llvm-c/Target.h"
|
||||
|
||||
|
||||
|
||||
// struct LLVMCtxt;
|
||||
|
||||
|
||||
#undef protected
|
||||
#undef private
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
DllExport int SWIGSTDCALL Ada_LLVMVerifyModule (
|
||||
void * jarg1
|
||||
,
|
||||
|
||||
int jarg2
|
||||
,
|
||||
|
||||
void * jarg3
|
||||
)
|
||||
{
|
||||
int jresult ;
|
||||
LLVMModuleRef arg1 = (LLVMModuleRef) 0 ;
|
||||
LLVMVerifierFailureAction arg2 ;
|
||||
char **arg3 = (char **) 0 ;
|
||||
int result;
|
||||
|
||||
arg1 = (LLVMModuleRef)jarg1;
|
||||
|
||||
arg2 = (LLVMVerifierFailureAction) jarg2;
|
||||
|
||||
arg3 = (char **)jarg3;
|
||||
|
||||
result = (int)LLVMVerifyModule(arg1,arg2,arg3);
|
||||
jresult = result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport int SWIGSTDCALL Ada_LLVMVerifyFunction (
|
||||
void * jarg1
|
||||
,
|
||||
|
||||
int jarg2
|
||||
)
|
||||
{
|
||||
int jresult ;
|
||||
LLVMValueRef arg1 = (LLVMValueRef) 0 ;
|
||||
LLVMVerifierFailureAction arg2 ;
|
||||
int result;
|
||||
|
||||
arg1 = (LLVMValueRef)jarg1;
|
||||
|
||||
arg2 = (LLVMVerifierFailureAction) jarg2;
|
||||
|
||||
result = (int)LLVMVerifyFunction(arg1,arg2);
|
||||
jresult = result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_LLVMViewFunctionCFG (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
LLVMValueRef arg1 = (LLVMValueRef) 0 ;
|
||||
|
||||
arg1 = (LLVMValueRef)jarg1;
|
||||
|
||||
LLVMViewFunctionCFG(arg1);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_LLVMViewFunctionCFGOnly (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
LLVMValueRef arg1 = (LLVMValueRef) 0 ;
|
||||
|
||||
arg1 = (LLVMValueRef)jarg1;
|
||||
|
||||
LLVMViewFunctionCFGOnly(arg1);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
52
bindings/ada/bitreader/llvm_bit_reader-binding.ads
Normal file
52
bindings/ada/bitreader/llvm_bit_reader-binding.ads
Normal file
@ -0,0 +1,52 @@
|
||||
-- This file is generated by SWIG. Do *not* modify by hand.
|
||||
--
|
||||
|
||||
with llvm;
|
||||
with Interfaces.C.Strings;
|
||||
|
||||
|
||||
package LLVM_bit_Reader.Binding is
|
||||
|
||||
function LLVMParseBitcode
|
||||
(MemBuf : in llvm.LLVMMemoryBufferRef;
|
||||
OutModule : access llvm.LLVMModuleRef;
|
||||
OutMessage : access Interfaces.C.Strings.chars_ptr)
|
||||
return Interfaces.C.int;
|
||||
|
||||
function LLVMParseBitcodeInContext
|
||||
(MemBuf : in llvm.LLVMMemoryBufferRef;
|
||||
ContextRef : in llvm.LLVMContextRef;
|
||||
OutModule : access llvm.LLVMModuleRef;
|
||||
OutMessage : access Interfaces.C.Strings.chars_ptr)
|
||||
return Interfaces.C.int;
|
||||
|
||||
function LLVMGetBitcodeModuleProvider
|
||||
(MemBuf : in llvm.LLVMMemoryBufferRef;
|
||||
OutMP : access llvm.LLVMModuleProviderRef;
|
||||
OutMessage : access Interfaces.C.Strings.chars_ptr)
|
||||
return Interfaces.C.int;
|
||||
|
||||
function LLVMGetBitcodeModuleProviderInContext
|
||||
(MemBuf : in llvm.LLVMMemoryBufferRef;
|
||||
ContextRef : in llvm.LLVMContextRef;
|
||||
OutMP : access llvm.LLVMModuleProviderRef;
|
||||
OutMessage : access Interfaces.C.Strings.chars_ptr)
|
||||
return Interfaces.C.int;
|
||||
|
||||
private
|
||||
|
||||
pragma Import (C, LLVMParseBitcode, "Ada_LLVMParseBitcode");
|
||||
pragma Import
|
||||
(C,
|
||||
LLVMParseBitcodeInContext,
|
||||
"Ada_LLVMParseBitcodeInContext");
|
||||
pragma Import
|
||||
(C,
|
||||
LLVMGetBitcodeModuleProvider,
|
||||
"Ada_LLVMGetBitcodeModuleProvider");
|
||||
pragma Import
|
||||
(C,
|
||||
LLVMGetBitcodeModuleProviderInContext,
|
||||
"Ada_LLVMGetBitcodeModuleProviderInContext");
|
||||
|
||||
end LLVM_bit_Reader.Binding;
|
6
bindings/ada/bitreader/llvm_bit_reader.ads
Normal file
6
bindings/ada/bitreader/llvm_bit_reader.ads
Normal file
@ -0,0 +1,6 @@
|
||||
-- This file is generated by SWIG. Do *not* modify by hand.
|
||||
--
|
||||
|
||||
package LLVM_bit_Reader is
|
||||
|
||||
end LLVM_bit_Reader;
|
423
bindings/ada/bitreader/llvm_bitreader_wrap.cxx
Normal file
423
bindings/ada/bitreader/llvm_bitreader_wrap.cxx
Normal file
@ -0,0 +1,423 @@
|
||||
/* ----------------------------------------------------------------------------
|
||||
* This file was automatically generated by SWIG (http://www.swig.org).
|
||||
* Version 1.3.36
|
||||
*
|
||||
* This file is not intended to be easily readable and contains a number of
|
||||
* coding conventions designed to improve portability and efficiency. Do not make
|
||||
* changes to this file unless you know what you are doing--modify the SWIG
|
||||
* interface file instead.
|
||||
* ----------------------------------------------------------------------------- */
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
template<typename T> class SwigValueWrapper {
|
||||
T *tt;
|
||||
public:
|
||||
SwigValueWrapper() : tt(0) { }
|
||||
SwigValueWrapper(const SwigValueWrapper<T>& rhs) : tt(new T(*rhs.tt)) { }
|
||||
SwigValueWrapper(const T& t) : tt(new T(t)) { }
|
||||
~SwigValueWrapper() { delete tt; }
|
||||
SwigValueWrapper& operator=(const T& t) { delete tt; tt = new T(t); return *this; }
|
||||
operator T&() const { return *tt; }
|
||||
T *operator&() { return tt; }
|
||||
private:
|
||||
SwigValueWrapper& operator=(const SwigValueWrapper<T>& rhs);
|
||||
};
|
||||
|
||||
template <typename T> T SwigValueInit() {
|
||||
return T();
|
||||
}
|
||||
#endif
|
||||
|
||||
/* -----------------------------------------------------------------------------
|
||||
* This section contains generic SWIG labels for method/variable
|
||||
* declarations/attributes, and other compiler dependent labels.
|
||||
* ----------------------------------------------------------------------------- */
|
||||
|
||||
/* template workaround for compilers that cannot correctly implement the C++ standard */
|
||||
#ifndef SWIGTEMPLATEDISAMBIGUATOR
|
||||
# if defined(__SUNPRO_CC) && (__SUNPRO_CC <= 0x560)
|
||||
# define SWIGTEMPLATEDISAMBIGUATOR template
|
||||
# elif defined(__HP_aCC)
|
||||
/* Needed even with `aCC -AA' when `aCC -V' reports HP ANSI C++ B3910B A.03.55 */
|
||||
/* If we find a maximum version that requires this, the test would be __HP_aCC <= 35500 for A.03.55 */
|
||||
# define SWIGTEMPLATEDISAMBIGUATOR template
|
||||
# else
|
||||
# define SWIGTEMPLATEDISAMBIGUATOR
|
||||
# endif
|
||||
#endif
|
||||
|
||||
/* inline attribute */
|
||||
#ifndef SWIGINLINE
|
||||
# if defined(__cplusplus) || (defined(__GNUC__) && !defined(__STRICT_ANSI__))
|
||||
# define SWIGINLINE inline
|
||||
# else
|
||||
# define SWIGINLINE
|
||||
# endif
|
||||
#endif
|
||||
|
||||
/* attribute recognised by some compilers to avoid 'unused' warnings */
|
||||
#ifndef SWIGUNUSED
|
||||
# if defined(__GNUC__)
|
||||
# if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
|
||||
# define SWIGUNUSED __attribute__ ((__unused__))
|
||||
# else
|
||||
# define SWIGUNUSED
|
||||
# endif
|
||||
# elif defined(__ICC)
|
||||
# define SWIGUNUSED __attribute__ ((__unused__))
|
||||
# else
|
||||
# define SWIGUNUSED
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#ifndef SWIGUNUSEDPARM
|
||||
# ifdef __cplusplus
|
||||
# define SWIGUNUSEDPARM(p)
|
||||
# else
|
||||
# define SWIGUNUSEDPARM(p) p SWIGUNUSED
|
||||
# endif
|
||||
#endif
|
||||
|
||||
/* internal SWIG method */
|
||||
#ifndef SWIGINTERN
|
||||
# define SWIGINTERN static SWIGUNUSED
|
||||
#endif
|
||||
|
||||
/* internal inline SWIG method */
|
||||
#ifndef SWIGINTERNINLINE
|
||||
# define SWIGINTERNINLINE SWIGINTERN SWIGINLINE
|
||||
#endif
|
||||
|
||||
/* exporting methods */
|
||||
#if (__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)
|
||||
# ifndef GCC_HASCLASSVISIBILITY
|
||||
# define GCC_HASCLASSVISIBILITY
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#ifndef SWIGEXPORT
|
||||
# if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
|
||||
# if defined(STATIC_LINKED)
|
||||
# define SWIGEXPORT
|
||||
# else
|
||||
# define SWIGEXPORT __declspec(dllexport)
|
||||
# endif
|
||||
# else
|
||||
# if defined(__GNUC__) && defined(GCC_HASCLASSVISIBILITY)
|
||||
# define SWIGEXPORT __attribute__ ((visibility("default")))
|
||||
# else
|
||||
# define SWIGEXPORT
|
||||
# endif
|
||||
# endif
|
||||
#endif
|
||||
|
||||
/* calling conventions for Windows */
|
||||
#ifndef SWIGSTDCALL
|
||||
# if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
|
||||
# define SWIGSTDCALL __stdcall
|
||||
# else
|
||||
# define SWIGSTDCALL
|
||||
# endif
|
||||
#endif
|
||||
|
||||
/* Deal with Microsoft's attempt at deprecating C standard runtime functions */
|
||||
#if !defined(SWIG_NO_CRT_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_CRT_SECURE_NO_DEPRECATE)
|
||||
# define _CRT_SECURE_NO_DEPRECATE
|
||||
#endif
|
||||
|
||||
/* Deal with Microsoft's attempt at deprecating methods in the standard C++ library */
|
||||
#if !defined(SWIG_NO_SCL_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_SCL_SECURE_NO_DEPRECATE)
|
||||
# define _SCL_SECURE_NO_DEPRECATE
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <stdio.h>
|
||||
#if defined(_WIN32) || defined(__CYGWIN32__)
|
||||
# define DllExport __declspec( dllexport )
|
||||
# define SWIGSTDCALL __stdcall
|
||||
#else
|
||||
# define DllExport
|
||||
# define SWIGSTDCALL
|
||||
#endif
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
# include <new>
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
||||
/* Support for throwing Ada exceptions from C/C++ */
|
||||
|
||||
typedef enum
|
||||
{
|
||||
SWIG_AdaException,
|
||||
SWIG_AdaOutOfMemoryException,
|
||||
SWIG_AdaIndexOutOfRangeException,
|
||||
SWIG_AdaDivideByZeroException,
|
||||
SWIG_AdaArgumentOutOfRangeException,
|
||||
SWIG_AdaNullReferenceException
|
||||
} SWIG_AdaExceptionCodes;
|
||||
|
||||
|
||||
typedef void (SWIGSTDCALL* SWIG_AdaExceptionCallback_t)(const char *);
|
||||
|
||||
|
||||
typedef struct
|
||||
{
|
||||
SWIG_AdaExceptionCodes code;
|
||||
SWIG_AdaExceptionCallback_t callback;
|
||||
}
|
||||
SWIG_AdaExceptions_t;
|
||||
|
||||
|
||||
static
|
||||
SWIG_AdaExceptions_t
|
||||
SWIG_ada_exceptions[] =
|
||||
{
|
||||
{ SWIG_AdaException, NULL },
|
||||
{ SWIG_AdaOutOfMemoryException, NULL },
|
||||
{ SWIG_AdaIndexOutOfRangeException, NULL },
|
||||
{ SWIG_AdaDivideByZeroException, NULL },
|
||||
{ SWIG_AdaArgumentOutOfRangeException, NULL },
|
||||
{ SWIG_AdaNullReferenceException, NULL }
|
||||
};
|
||||
|
||||
|
||||
static
|
||||
void
|
||||
SWIG_AdaThrowException (SWIG_AdaExceptionCodes code, const char *msg)
|
||||
{
|
||||
SWIG_AdaExceptionCallback_t callback = SWIG_ada_exceptions[SWIG_AdaException].callback;
|
||||
if (code >=0 && (size_t)code < sizeof(SWIG_ada_exceptions)/sizeof(SWIG_AdaExceptions_t)) {
|
||||
callback = SWIG_ada_exceptions[code].callback;
|
||||
}
|
||||
callback(msg);
|
||||
}
|
||||
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
#endif
|
||||
|
||||
DllExport void SWIGSTDCALL SWIGRegisterExceptionCallbacks_LLVM_bit_Reader (SWIG_AdaExceptionCallback_t systemException,
|
||||
SWIG_AdaExceptionCallback_t outOfMemory,
|
||||
SWIG_AdaExceptionCallback_t indexOutOfRange,
|
||||
SWIG_AdaExceptionCallback_t divideByZero,
|
||||
SWIG_AdaExceptionCallback_t argumentOutOfRange,
|
||||
SWIG_AdaExceptionCallback_t nullReference)
|
||||
{
|
||||
SWIG_ada_exceptions [SWIG_AdaException].callback = systemException;
|
||||
SWIG_ada_exceptions [SWIG_AdaOutOfMemoryException].callback = outOfMemory;
|
||||
SWIG_ada_exceptions [SWIG_AdaIndexOutOfRangeException].callback = indexOutOfRange;
|
||||
SWIG_ada_exceptions [SWIG_AdaDivideByZeroException].callback = divideByZero;
|
||||
SWIG_ada_exceptions [SWIG_AdaArgumentOutOfRangeException].callback = argumentOutOfRange;
|
||||
SWIG_ada_exceptions [SWIG_AdaNullReferenceException].callback = nullReference;
|
||||
}
|
||||
|
||||
|
||||
/* Callback for returning strings to Ada without leaking memory */
|
||||
|
||||
typedef char * (SWIGSTDCALL* SWIG_AdaStringHelperCallback)(const char *);
|
||||
static SWIG_AdaStringHelperCallback SWIG_ada_string_callback = NULL;
|
||||
|
||||
|
||||
|
||||
/* probably obsolete ...
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
#endif
|
||||
DllExport void SWIGSTDCALL SWIGRegisterStringCallback_LLVM_bit_Reader(SWIG_AdaStringHelperCallback callback) {
|
||||
SWIG_ada_string_callback = callback;
|
||||
}
|
||||
*/
|
||||
|
||||
|
||||
|
||||
/* Contract support */
|
||||
|
||||
#define SWIG_contract_assert(nullreturn, expr, msg) if (!(expr)) {SWIG_AdaThrowException(SWIG_AdaArgumentOutOfRangeException, msg); return nullreturn; } else
|
||||
|
||||
|
||||
#define protected public
|
||||
#define private public
|
||||
|
||||
//#include "llvm-c/Analysis.h"
|
||||
#include "llvm-c/BitReader.h"
|
||||
//#include "llvm-c/BitWriter.h"
|
||||
//#include "llvm-c/Core.h"
|
||||
//#include "llvm-c/ExecutionEngine.h"
|
||||
//#include "llvm-c/LinkTimeOptimizer.h"
|
||||
//#include "llvm-c/lto.h"
|
||||
//#include "llvm-c/Target.h"
|
||||
|
||||
|
||||
|
||||
// struct LLVMCtxt;
|
||||
|
||||
|
||||
#undef protected
|
||||
#undef private
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
DllExport int SWIGSTDCALL Ada_LLVMParseBitcode (
|
||||
void * jarg1
|
||||
,
|
||||
|
||||
void * jarg2
|
||||
,
|
||||
|
||||
void * jarg3
|
||||
)
|
||||
{
|
||||
int jresult ;
|
||||
LLVMMemoryBufferRef arg1 = (LLVMMemoryBufferRef) 0 ;
|
||||
LLVMModuleRef *arg2 = (LLVMModuleRef *) 0 ;
|
||||
char **arg3 = (char **) 0 ;
|
||||
int result;
|
||||
|
||||
arg1 = (LLVMMemoryBufferRef)jarg1;
|
||||
|
||||
arg2 = (LLVMModuleRef *)jarg2;
|
||||
|
||||
arg3 = (char **)jarg3;
|
||||
|
||||
result = (int)LLVMParseBitcode(arg1,arg2,arg3);
|
||||
jresult = result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport int SWIGSTDCALL Ada_LLVMParseBitcodeInContext (
|
||||
void * jarg1
|
||||
,
|
||||
|
||||
void * jarg2
|
||||
,
|
||||
|
||||
void * jarg3
|
||||
,
|
||||
|
||||
void * jarg4
|
||||
)
|
||||
{
|
||||
int jresult ;
|
||||
LLVMMemoryBufferRef arg1 = (LLVMMemoryBufferRef) 0 ;
|
||||
LLVMContextRef arg2 = (LLVMContextRef) 0 ;
|
||||
LLVMModuleRef *arg3 = (LLVMModuleRef *) 0 ;
|
||||
char **arg4 = (char **) 0 ;
|
||||
int result;
|
||||
|
||||
arg1 = (LLVMMemoryBufferRef)jarg1;
|
||||
|
||||
arg2 = (LLVMContextRef)jarg2;
|
||||
|
||||
arg3 = (LLVMModuleRef *)jarg3;
|
||||
|
||||
arg4 = (char **)jarg4;
|
||||
|
||||
result = (int)LLVMParseBitcodeInContext(arg1,arg2,arg3,arg4);
|
||||
jresult = result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport int SWIGSTDCALL Ada_LLVMGetBitcodeModuleProvider (
|
||||
void * jarg1
|
||||
,
|
||||
|
||||
void * jarg2
|
||||
,
|
||||
|
||||
void * jarg3
|
||||
)
|
||||
{
|
||||
int jresult ;
|
||||
LLVMMemoryBufferRef arg1 = (LLVMMemoryBufferRef) 0 ;
|
||||
LLVMModuleProviderRef *arg2 = (LLVMModuleProviderRef *) 0 ;
|
||||
char **arg3 = (char **) 0 ;
|
||||
int result;
|
||||
|
||||
arg1 = (LLVMMemoryBufferRef)jarg1;
|
||||
|
||||
arg2 = (LLVMModuleProviderRef *)jarg2;
|
||||
|
||||
arg3 = (char **)jarg3;
|
||||
|
||||
result = (int)LLVMGetBitcodeModuleProvider(arg1,arg2,arg3);
|
||||
jresult = result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport int SWIGSTDCALL Ada_LLVMGetBitcodeModuleProviderInContext (
|
||||
void * jarg1
|
||||
,
|
||||
|
||||
void * jarg2
|
||||
,
|
||||
|
||||
void * jarg3
|
||||
,
|
||||
|
||||
void * jarg4
|
||||
)
|
||||
{
|
||||
int jresult ;
|
||||
LLVMMemoryBufferRef arg1 = (LLVMMemoryBufferRef) 0 ;
|
||||
LLVMContextRef arg2 = (LLVMContextRef) 0 ;
|
||||
LLVMModuleProviderRef *arg3 = (LLVMModuleProviderRef *) 0 ;
|
||||
char **arg4 = (char **) 0 ;
|
||||
int result;
|
||||
|
||||
arg1 = (LLVMMemoryBufferRef)jarg1;
|
||||
|
||||
arg2 = (LLVMContextRef)jarg2;
|
||||
|
||||
arg3 = (LLVMModuleProviderRef *)jarg3;
|
||||
|
||||
arg4 = (char **)jarg4;
|
||||
|
||||
result = (int)LLVMGetBitcodeModuleProviderInContext(arg1,arg2,arg3,arg4);
|
||||
jresult = result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
28
bindings/ada/bitwriter/llvm_bit_writer-binding.ads
Normal file
28
bindings/ada/bitwriter/llvm_bit_writer-binding.ads
Normal file
@ -0,0 +1,28 @@
|
||||
-- This file is generated by SWIG. Do *not* modify by hand.
|
||||
--
|
||||
|
||||
with llvm;
|
||||
with Interfaces.C.Strings;
|
||||
|
||||
|
||||
package LLVM_bit_Writer.Binding is
|
||||
|
||||
function LLVMWriteBitcodeToFileHandle
|
||||
(M : in llvm.LLVMModuleRef;
|
||||
Handle : in Interfaces.C.int)
|
||||
return Interfaces.C.int;
|
||||
|
||||
function LLVMWriteBitcodeToFile
|
||||
(M : in llvm.LLVMModuleRef;
|
||||
Path : in Interfaces.C.Strings.chars_ptr)
|
||||
return Interfaces.C.int;
|
||||
|
||||
private
|
||||
|
||||
pragma Import
|
||||
(C,
|
||||
LLVMWriteBitcodeToFileHandle,
|
||||
"Ada_LLVMWriteBitcodeToFileHandle");
|
||||
pragma Import (C, LLVMWriteBitcodeToFile, "Ada_LLVMWriteBitcodeToFile");
|
||||
|
||||
end LLVM_bit_Writer.Binding;
|
6
bindings/ada/bitwriter/llvm_bit_writer.ads
Normal file
6
bindings/ada/bitwriter/llvm_bit_writer.ads
Normal file
@ -0,0 +1,6 @@
|
||||
-- This file is generated by SWIG. Do *not* modify by hand.
|
||||
--
|
||||
|
||||
package LLVM_bit_Writer is
|
||||
|
||||
end LLVM_bit_Writer;
|
335
bindings/ada/bitwriter/llvm_bitwriter_wrap.cxx
Normal file
335
bindings/ada/bitwriter/llvm_bitwriter_wrap.cxx
Normal file
@ -0,0 +1,335 @@
|
||||
/* ----------------------------------------------------------------------------
|
||||
* This file was automatically generated by SWIG (http://www.swig.org).
|
||||
* Version 1.3.36
|
||||
*
|
||||
* This file is not intended to be easily readable and contains a number of
|
||||
* coding conventions designed to improve portability and efficiency. Do not make
|
||||
* changes to this file unless you know what you are doing--modify the SWIG
|
||||
* interface file instead.
|
||||
* ----------------------------------------------------------------------------- */
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
template<typename T> class SwigValueWrapper {
|
||||
T *tt;
|
||||
public:
|
||||
SwigValueWrapper() : tt(0) { }
|
||||
SwigValueWrapper(const SwigValueWrapper<T>& rhs) : tt(new T(*rhs.tt)) { }
|
||||
SwigValueWrapper(const T& t) : tt(new T(t)) { }
|
||||
~SwigValueWrapper() { delete tt; }
|
||||
SwigValueWrapper& operator=(const T& t) { delete tt; tt = new T(t); return *this; }
|
||||
operator T&() const { return *tt; }
|
||||
T *operator&() { return tt; }
|
||||
private:
|
||||
SwigValueWrapper& operator=(const SwigValueWrapper<T>& rhs);
|
||||
};
|
||||
|
||||
template <typename T> T SwigValueInit() {
|
||||
return T();
|
||||
}
|
||||
#endif
|
||||
|
||||
/* -----------------------------------------------------------------------------
|
||||
* This section contains generic SWIG labels for method/variable
|
||||
* declarations/attributes, and other compiler dependent labels.
|
||||
* ----------------------------------------------------------------------------- */
|
||||
|
||||
/* template workaround for compilers that cannot correctly implement the C++ standard */
|
||||
#ifndef SWIGTEMPLATEDISAMBIGUATOR
|
||||
# if defined(__SUNPRO_CC) && (__SUNPRO_CC <= 0x560)
|
||||
# define SWIGTEMPLATEDISAMBIGUATOR template
|
||||
# elif defined(__HP_aCC)
|
||||
/* Needed even with `aCC -AA' when `aCC -V' reports HP ANSI C++ B3910B A.03.55 */
|
||||
/* If we find a maximum version that requires this, the test would be __HP_aCC <= 35500 for A.03.55 */
|
||||
# define SWIGTEMPLATEDISAMBIGUATOR template
|
||||
# else
|
||||
# define SWIGTEMPLATEDISAMBIGUATOR
|
||||
# endif
|
||||
#endif
|
||||
|
||||
/* inline attribute */
|
||||
#ifndef SWIGINLINE
|
||||
# if defined(__cplusplus) || (defined(__GNUC__) && !defined(__STRICT_ANSI__))
|
||||
# define SWIGINLINE inline
|
||||
# else
|
||||
# define SWIGINLINE
|
||||
# endif
|
||||
#endif
|
||||
|
||||
/* attribute recognised by some compilers to avoid 'unused' warnings */
|
||||
#ifndef SWIGUNUSED
|
||||
# if defined(__GNUC__)
|
||||
# if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
|
||||
# define SWIGUNUSED __attribute__ ((__unused__))
|
||||
# else
|
||||
# define SWIGUNUSED
|
||||
# endif
|
||||
# elif defined(__ICC)
|
||||
# define SWIGUNUSED __attribute__ ((__unused__))
|
||||
# else
|
||||
# define SWIGUNUSED
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#ifndef SWIGUNUSEDPARM
|
||||
# ifdef __cplusplus
|
||||
# define SWIGUNUSEDPARM(p)
|
||||
# else
|
||||
# define SWIGUNUSEDPARM(p) p SWIGUNUSED
|
||||
# endif
|
||||
#endif
|
||||
|
||||
/* internal SWIG method */
|
||||
#ifndef SWIGINTERN
|
||||
# define SWIGINTERN static SWIGUNUSED
|
||||
#endif
|
||||
|
||||
/* internal inline SWIG method */
|
||||
#ifndef SWIGINTERNINLINE
|
||||
# define SWIGINTERNINLINE SWIGINTERN SWIGINLINE
|
||||
#endif
|
||||
|
||||
/* exporting methods */
|
||||
#if (__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)
|
||||
# ifndef GCC_HASCLASSVISIBILITY
|
||||
# define GCC_HASCLASSVISIBILITY
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#ifndef SWIGEXPORT
|
||||
# if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
|
||||
# if defined(STATIC_LINKED)
|
||||
# define SWIGEXPORT
|
||||
# else
|
||||
# define SWIGEXPORT __declspec(dllexport)
|
||||
# endif
|
||||
# else
|
||||
# if defined(__GNUC__) && defined(GCC_HASCLASSVISIBILITY)
|
||||
# define SWIGEXPORT __attribute__ ((visibility("default")))
|
||||
# else
|
||||
# define SWIGEXPORT
|
||||
# endif
|
||||
# endif
|
||||
#endif
|
||||
|
||||
/* calling conventions for Windows */
|
||||
#ifndef SWIGSTDCALL
|
||||
# if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
|
||||
# define SWIGSTDCALL __stdcall
|
||||
# else
|
||||
# define SWIGSTDCALL
|
||||
# endif
|
||||
#endif
|
||||
|
||||
/* Deal with Microsoft's attempt at deprecating C standard runtime functions */
|
||||
#if !defined(SWIG_NO_CRT_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_CRT_SECURE_NO_DEPRECATE)
|
||||
# define _CRT_SECURE_NO_DEPRECATE
|
||||
#endif
|
||||
|
||||
/* Deal with Microsoft's attempt at deprecating methods in the standard C++ library */
|
||||
#if !defined(SWIG_NO_SCL_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_SCL_SECURE_NO_DEPRECATE)
|
||||
# define _SCL_SECURE_NO_DEPRECATE
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <stdio.h>
|
||||
#if defined(_WIN32) || defined(__CYGWIN32__)
|
||||
# define DllExport __declspec( dllexport )
|
||||
# define SWIGSTDCALL __stdcall
|
||||
#else
|
||||
# define DllExport
|
||||
# define SWIGSTDCALL
|
||||
#endif
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
# include <new>
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
||||
/* Support for throwing Ada exceptions from C/C++ */
|
||||
|
||||
typedef enum
|
||||
{
|
||||
SWIG_AdaException,
|
||||
SWIG_AdaOutOfMemoryException,
|
||||
SWIG_AdaIndexOutOfRangeException,
|
||||
SWIG_AdaDivideByZeroException,
|
||||
SWIG_AdaArgumentOutOfRangeException,
|
||||
SWIG_AdaNullReferenceException
|
||||
} SWIG_AdaExceptionCodes;
|
||||
|
||||
|
||||
typedef void (SWIGSTDCALL* SWIG_AdaExceptionCallback_t)(const char *);
|
||||
|
||||
|
||||
typedef struct
|
||||
{
|
||||
SWIG_AdaExceptionCodes code;
|
||||
SWIG_AdaExceptionCallback_t callback;
|
||||
}
|
||||
SWIG_AdaExceptions_t;
|
||||
|
||||
|
||||
static
|
||||
SWIG_AdaExceptions_t
|
||||
SWIG_ada_exceptions[] =
|
||||
{
|
||||
{ SWIG_AdaException, NULL },
|
||||
{ SWIG_AdaOutOfMemoryException, NULL },
|
||||
{ SWIG_AdaIndexOutOfRangeException, NULL },
|
||||
{ SWIG_AdaDivideByZeroException, NULL },
|
||||
{ SWIG_AdaArgumentOutOfRangeException, NULL },
|
||||
{ SWIG_AdaNullReferenceException, NULL }
|
||||
};
|
||||
|
||||
|
||||
static
|
||||
void
|
||||
SWIG_AdaThrowException (SWIG_AdaExceptionCodes code, const char *msg)
|
||||
{
|
||||
SWIG_AdaExceptionCallback_t callback = SWIG_ada_exceptions[SWIG_AdaException].callback;
|
||||
if (code >=0 && (size_t)code < sizeof(SWIG_ada_exceptions)/sizeof(SWIG_AdaExceptions_t)) {
|
||||
callback = SWIG_ada_exceptions[code].callback;
|
||||
}
|
||||
callback(msg);
|
||||
}
|
||||
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
#endif
|
||||
|
||||
DllExport void SWIGSTDCALL SWIGRegisterExceptionCallbacks_LLVM_bit_Writer (SWIG_AdaExceptionCallback_t systemException,
|
||||
SWIG_AdaExceptionCallback_t outOfMemory,
|
||||
SWIG_AdaExceptionCallback_t indexOutOfRange,
|
||||
SWIG_AdaExceptionCallback_t divideByZero,
|
||||
SWIG_AdaExceptionCallback_t argumentOutOfRange,
|
||||
SWIG_AdaExceptionCallback_t nullReference)
|
||||
{
|
||||
SWIG_ada_exceptions [SWIG_AdaException].callback = systemException;
|
||||
SWIG_ada_exceptions [SWIG_AdaOutOfMemoryException].callback = outOfMemory;
|
||||
SWIG_ada_exceptions [SWIG_AdaIndexOutOfRangeException].callback = indexOutOfRange;
|
||||
SWIG_ada_exceptions [SWIG_AdaDivideByZeroException].callback = divideByZero;
|
||||
SWIG_ada_exceptions [SWIG_AdaArgumentOutOfRangeException].callback = argumentOutOfRange;
|
||||
SWIG_ada_exceptions [SWIG_AdaNullReferenceException].callback = nullReference;
|
||||
}
|
||||
|
||||
|
||||
/* Callback for returning strings to Ada without leaking memory */
|
||||
|
||||
typedef char * (SWIGSTDCALL* SWIG_AdaStringHelperCallback)(const char *);
|
||||
static SWIG_AdaStringHelperCallback SWIG_ada_string_callback = NULL;
|
||||
|
||||
|
||||
|
||||
/* probably obsolete ...
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
#endif
|
||||
DllExport void SWIGSTDCALL SWIGRegisterStringCallback_LLVM_bit_Writer(SWIG_AdaStringHelperCallback callback) {
|
||||
SWIG_ada_string_callback = callback;
|
||||
}
|
||||
*/
|
||||
|
||||
|
||||
|
||||
/* Contract support */
|
||||
|
||||
#define SWIG_contract_assert(nullreturn, expr, msg) if (!(expr)) {SWIG_AdaThrowException(SWIG_AdaArgumentOutOfRangeException, msg); return nullreturn; } else
|
||||
|
||||
|
||||
#define protected public
|
||||
#define private public
|
||||
|
||||
#include "llvm-c/Analysis.h"
|
||||
#include "llvm-c/BitReader.h"
|
||||
#include "llvm-c/BitWriter.h"
|
||||
#include "llvm-c/Core.h"
|
||||
#include "llvm-c/ExecutionEngine.h"
|
||||
#include "llvm-c/LinkTimeOptimizer.h"
|
||||
#include "llvm-c/lto.h"
|
||||
#include "llvm-c/Target.h"
|
||||
|
||||
|
||||
|
||||
// struct LLVMCtxt;
|
||||
|
||||
|
||||
#undef protected
|
||||
#undef private
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
DllExport int SWIGSTDCALL Ada_LLVMWriteBitcodeToFileHandle (
|
||||
void * jarg1
|
||||
,
|
||||
|
||||
int jarg2
|
||||
)
|
||||
{
|
||||
int jresult ;
|
||||
LLVMModuleRef arg1 = (LLVMModuleRef) 0 ;
|
||||
int arg2 ;
|
||||
int result;
|
||||
|
||||
arg1 = (LLVMModuleRef)jarg1;
|
||||
|
||||
|
||||
arg2 = (int) jarg2;
|
||||
|
||||
|
||||
result = (int)LLVMWriteBitcodeToFileHandle(arg1,arg2);
|
||||
jresult = result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport int SWIGSTDCALL Ada_LLVMWriteBitcodeToFile (
|
||||
void * jarg1
|
||||
,
|
||||
|
||||
char * jarg2
|
||||
)
|
||||
{
|
||||
int jresult ;
|
||||
LLVMModuleRef arg1 = (LLVMModuleRef) 0 ;
|
||||
char *arg2 = (char *) 0 ;
|
||||
int result;
|
||||
|
||||
arg1 = (LLVMModuleRef)jarg1;
|
||||
|
||||
arg2 = jarg2;
|
||||
|
||||
result = (int)LLVMWriteBitcodeToFile(arg1,(char const *)arg2);
|
||||
jresult = result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
192
bindings/ada/executionengine/llvm_execution_engine-binding.ads
Normal file
192
bindings/ada/executionengine/llvm_execution_engine-binding.ads
Normal file
@ -0,0 +1,192 @@
|
||||
-- This file is generated by SWIG. Do *not* modify by hand.
|
||||
--
|
||||
|
||||
with llvm;
|
||||
with Interfaces.C.Strings;
|
||||
|
||||
|
||||
package LLVM_execution_Engine.Binding is
|
||||
|
||||
procedure LLVMLinkInJIT;
|
||||
|
||||
procedure LLVMLinkInInterpreter;
|
||||
|
||||
function LLVMCreateGenericValueOfInt
|
||||
(Ty : in llvm.LLVMTypeRef;
|
||||
N : in Interfaces.C.Extensions.unsigned_long_long;
|
||||
IsSigned : in Interfaces.C.int)
|
||||
return LLVM_execution_Engine.LLVMGenericValueRef;
|
||||
|
||||
function LLVMCreateGenericValueOfPointer
|
||||
(P : access Interfaces.C.Extensions.void)
|
||||
return LLVM_execution_Engine.LLVMGenericValueRef;
|
||||
|
||||
function LLVMCreateGenericValueOfFloat
|
||||
(Ty : in llvm.LLVMTypeRef;
|
||||
N : in Interfaces.C.double)
|
||||
return LLVM_execution_Engine.LLVMGenericValueRef;
|
||||
|
||||
function LLVMGenericValueIntWidth
|
||||
(GenValRef : in LLVM_execution_Engine.LLVMGenericValueRef)
|
||||
return Interfaces.C.unsigned;
|
||||
|
||||
function LLVMGenericValueToInt
|
||||
(GenVal : in LLVM_execution_Engine.LLVMGenericValueRef;
|
||||
IsSigned : in Interfaces.C.int)
|
||||
return Interfaces.C.Extensions.unsigned_long_long;
|
||||
|
||||
function LLVMGenericValueToPointer
|
||||
(GenVal : in LLVM_execution_Engine.LLVMGenericValueRef)
|
||||
return access Interfaces.C.Extensions.void;
|
||||
|
||||
function LLVMGenericValueToFloat
|
||||
(TyRef : in llvm.LLVMTypeRef;
|
||||
GenVal : in LLVM_execution_Engine.LLVMGenericValueRef)
|
||||
return Interfaces.C.double;
|
||||
|
||||
procedure LLVMDisposeGenericValue
|
||||
(GenVal : in LLVM_execution_Engine.LLVMGenericValueRef);
|
||||
|
||||
function LLVMCreateExecutionEngine
|
||||
(OutEE : access LLVM_execution_Engine.LLVMExecutionEngineRef;
|
||||
MP : in llvm.LLVMModuleProviderRef;
|
||||
OutError : access Interfaces.C.Strings.chars_ptr)
|
||||
return Interfaces.C.int;
|
||||
|
||||
function LLVMCreateInterpreter
|
||||
(OutInterp : access LLVM_execution_Engine.LLVMExecutionEngineRef;
|
||||
MP : in llvm.LLVMModuleProviderRef;
|
||||
OutError : access Interfaces.C.Strings.chars_ptr)
|
||||
return Interfaces.C.int;
|
||||
|
||||
function LLVMCreateJITCompiler
|
||||
(OutJIT : access LLVM_execution_Engine.LLVMExecutionEngineRef;
|
||||
MP : in llvm.LLVMModuleProviderRef;
|
||||
OptLevel : in Interfaces.C.unsigned;
|
||||
OutError : access Interfaces.C.Strings.chars_ptr)
|
||||
return Interfaces.C.int;
|
||||
|
||||
procedure LLVMDisposeExecutionEngine
|
||||
(EE : in LLVM_execution_Engine.LLVMExecutionEngineRef);
|
||||
|
||||
procedure LLVMRunStaticConstructors
|
||||
(EE : in LLVM_execution_Engine.LLVMExecutionEngineRef);
|
||||
|
||||
procedure LLVMRunStaticDestructors
|
||||
(EE : in LLVM_execution_Engine.LLVMExecutionEngineRef);
|
||||
|
||||
function LLVMRunFunctionAsMain
|
||||
(EE : in LLVM_execution_Engine.LLVMExecutionEngineRef;
|
||||
F : in llvm.LLVMValueRef;
|
||||
ArgC : in Interfaces.C.unsigned;
|
||||
ArgV : access Interfaces.C.Strings.chars_ptr;
|
||||
EnvP : access Interfaces.C.Strings.chars_ptr)
|
||||
return Interfaces.C.int;
|
||||
|
||||
function LLVMRunFunction
|
||||
(EE : in LLVM_execution_Engine.LLVMExecutionEngineRef;
|
||||
F : in llvm.LLVMValueRef;
|
||||
NumArgs : in Interfaces.C.unsigned;
|
||||
Args : access LLVM_execution_Engine.LLVMGenericValueRef)
|
||||
return LLVM_execution_Engine.LLVMGenericValueRef;
|
||||
|
||||
procedure LLVMFreeMachineCodeForFunction
|
||||
(EE : in LLVM_execution_Engine.LLVMExecutionEngineRef;
|
||||
F : in llvm.LLVMValueRef);
|
||||
|
||||
procedure LLVMAddModuleProvider
|
||||
(EE : in LLVM_execution_Engine.LLVMExecutionEngineRef;
|
||||
MP : in llvm.LLVMModuleProviderRef);
|
||||
|
||||
function LLVMRemoveModuleProvider
|
||||
(EE : in LLVM_execution_Engine.LLVMExecutionEngineRef;
|
||||
MP : in llvm.LLVMModuleProviderRef;
|
||||
OutMod : access llvm.LLVMModuleRef;
|
||||
OutError : access Interfaces.C.Strings.chars_ptr)
|
||||
return Interfaces.C.int;
|
||||
|
||||
function LLVMFindFunction
|
||||
(EE : in LLVM_execution_Engine.LLVMExecutionEngineRef;
|
||||
Name : in Interfaces.C.Strings.chars_ptr;
|
||||
OutFn : access llvm.LLVMValueRef)
|
||||
return Interfaces.C.int;
|
||||
|
||||
function LLVMGetExecutionEngineTargetData
|
||||
(EE : in LLVM_execution_Engine.LLVMExecutionEngineRef)
|
||||
return LLVM_execution_Engine.LLVMTargetDataRef;
|
||||
|
||||
procedure LLVMAddGlobalMapping
|
||||
(EE : in LLVM_execution_Engine.LLVMExecutionEngineRef;
|
||||
Global : in llvm.LLVMValueRef;
|
||||
Addr : access Interfaces.C.Extensions.void);
|
||||
|
||||
function LLVMGetPointerToGlobal
|
||||
(EE : in LLVM_execution_Engine.LLVMExecutionEngineRef;
|
||||
Global : in llvm.LLVMValueRef)
|
||||
return access Interfaces.C.Extensions.void;
|
||||
|
||||
private
|
||||
|
||||
pragma Import (C, LLVMLinkInJIT, "Ada_LLVMLinkInJIT");
|
||||
pragma Import (C, LLVMLinkInInterpreter, "Ada_LLVMLinkInInterpreter");
|
||||
pragma Import
|
||||
(C,
|
||||
LLVMCreateGenericValueOfInt,
|
||||
"Ada_LLVMCreateGenericValueOfInt");
|
||||
pragma Import
|
||||
(C,
|
||||
LLVMCreateGenericValueOfPointer,
|
||||
"Ada_LLVMCreateGenericValueOfPointer");
|
||||
pragma Import
|
||||
(C,
|
||||
LLVMCreateGenericValueOfFloat,
|
||||
"Ada_LLVMCreateGenericValueOfFloat");
|
||||
pragma Import
|
||||
(C,
|
||||
LLVMGenericValueIntWidth,
|
||||
"Ada_LLVMGenericValueIntWidth");
|
||||
pragma Import (C, LLVMGenericValueToInt, "Ada_LLVMGenericValueToInt");
|
||||
pragma Import
|
||||
(C,
|
||||
LLVMGenericValueToPointer,
|
||||
"Ada_LLVMGenericValueToPointer");
|
||||
pragma Import (C, LLVMGenericValueToFloat, "Ada_LLVMGenericValueToFloat");
|
||||
pragma Import (C, LLVMDisposeGenericValue, "Ada_LLVMDisposeGenericValue");
|
||||
pragma Import
|
||||
(C,
|
||||
LLVMCreateExecutionEngine,
|
||||
"Ada_LLVMCreateExecutionEngine");
|
||||
pragma Import (C, LLVMCreateInterpreter, "Ada_LLVMCreateInterpreter");
|
||||
pragma Import (C, LLVMCreateJITCompiler, "Ada_LLVMCreateJITCompiler");
|
||||
pragma Import
|
||||
(C,
|
||||
LLVMDisposeExecutionEngine,
|
||||
"Ada_LLVMDisposeExecutionEngine");
|
||||
pragma Import
|
||||
(C,
|
||||
LLVMRunStaticConstructors,
|
||||
"Ada_LLVMRunStaticConstructors");
|
||||
pragma Import
|
||||
(C,
|
||||
LLVMRunStaticDestructors,
|
||||
"Ada_LLVMRunStaticDestructors");
|
||||
pragma Import (C, LLVMRunFunctionAsMain, "Ada_LLVMRunFunctionAsMain");
|
||||
pragma Import (C, LLVMRunFunction, "Ada_LLVMRunFunction");
|
||||
pragma Import
|
||||
(C,
|
||||
LLVMFreeMachineCodeForFunction,
|
||||
"Ada_LLVMFreeMachineCodeForFunction");
|
||||
pragma Import (C, LLVMAddModuleProvider, "Ada_LLVMAddModuleProvider");
|
||||
pragma Import
|
||||
(C,
|
||||
LLVMRemoveModuleProvider,
|
||||
"Ada_LLVMRemoveModuleProvider");
|
||||
pragma Import (C, LLVMFindFunction, "Ada_LLVMFindFunction");
|
||||
pragma Import
|
||||
(C,
|
||||
LLVMGetExecutionEngineTargetData,
|
||||
"Ada_LLVMGetExecutionEngineTargetData");
|
||||
pragma Import (C, LLVMAddGlobalMapping, "Ada_LLVMAddGlobalMapping");
|
||||
pragma Import (C, LLVMGetPointerToGlobal, "Ada_LLVMGetPointerToGlobal");
|
||||
|
||||
end LLVM_execution_Engine.Binding;
|
90
bindings/ada/executionengine/llvm_execution_engine.ads
Normal file
90
bindings/ada/executionengine/llvm_execution_engine.ads
Normal file
@ -0,0 +1,90 @@
|
||||
-- This file is generated by SWIG. Do *not* modify by hand.
|
||||
--
|
||||
|
||||
with Interfaces.C.Extensions;
|
||||
|
||||
|
||||
package LLVM_execution_Engine is
|
||||
|
||||
-- LLVMOpaqueGenericValue
|
||||
--
|
||||
type LLVMOpaqueGenericValue is new
|
||||
Interfaces.C.Extensions.opaque_structure_def;
|
||||
|
||||
type LLVMOpaqueGenericValue_array is
|
||||
array (Interfaces.C.size_t range <>)
|
||||
of aliased LLVM_execution_Engine.LLVMOpaqueGenericValue;
|
||||
|
||||
type LLVMOpaqueGenericValue_view is access all
|
||||
LLVM_execution_Engine.LLVMOpaqueGenericValue;
|
||||
|
||||
-- LLVMGenericValueRef
|
||||
--
|
||||
type LLVMGenericValueRef is access all
|
||||
LLVM_execution_Engine.LLVMOpaqueGenericValue;
|
||||
|
||||
type LLVMGenericValueRef_array is
|
||||
array (Interfaces.C.size_t range <>)
|
||||
of aliased LLVM_execution_Engine.LLVMGenericValueRef;
|
||||
|
||||
type LLVMGenericValueRef_view is access all
|
||||
LLVM_execution_Engine.LLVMGenericValueRef;
|
||||
|
||||
-- LLVMOpaqueExecutionEngine
|
||||
--
|
||||
type LLVMOpaqueExecutionEngine is new
|
||||
Interfaces.C.Extensions.opaque_structure_def;
|
||||
|
||||
type LLVMOpaqueExecutionEngine_array is
|
||||
array (Interfaces.C.size_t range <>)
|
||||
of aliased LLVM_execution_Engine.LLVMOpaqueExecutionEngine;
|
||||
|
||||
type LLVMOpaqueExecutionEngine_view is access all
|
||||
LLVM_execution_Engine.LLVMOpaqueExecutionEngine;
|
||||
|
||||
-- LLVMExecutionEngineRef
|
||||
--
|
||||
type LLVMExecutionEngineRef is access all
|
||||
LLVM_execution_Engine.LLVMOpaqueExecutionEngine;
|
||||
|
||||
type LLVMExecutionEngineRef_array is
|
||||
array (Interfaces.C.size_t range <>)
|
||||
of aliased LLVM_execution_Engine.LLVMExecutionEngineRef;
|
||||
|
||||
type LLVMExecutionEngineRef_view is access all
|
||||
LLVM_execution_Engine.LLVMExecutionEngineRef;
|
||||
|
||||
-- LLVMTargetDataRef
|
||||
--
|
||||
type LLVMTargetDataRef is new Interfaces.C.Extensions.opaque_structure_def;
|
||||
|
||||
type LLVMTargetDataRef_array is
|
||||
array (Interfaces.C.size_t range <>)
|
||||
of aliased LLVM_execution_Engine.LLVMTargetDataRef;
|
||||
|
||||
type LLVMTargetDataRef_view is access all
|
||||
LLVM_execution_Engine.LLVMTargetDataRef;
|
||||
|
||||
-- GenericValue
|
||||
--
|
||||
type GenericValue is new Interfaces.C.Extensions.opaque_structure_def;
|
||||
|
||||
type GenericValue_array is
|
||||
array (Interfaces.C.size_t range <>)
|
||||
of aliased LLVM_execution_Engine.GenericValue;
|
||||
|
||||
type GenericValue_view is access all LLVM_execution_Engine.GenericValue;
|
||||
|
||||
-- ExecutionEngine
|
||||
--
|
||||
type ExecutionEngine is new Interfaces.C.Extensions.incomplete_class_def;
|
||||
|
||||
type ExecutionEngine_array is
|
||||
array (Interfaces.C.size_t range <>)
|
||||
of aliased LLVM_execution_Engine.ExecutionEngine;
|
||||
|
||||
type ExecutionEngine_view is access all
|
||||
LLVM_execution_Engine.ExecutionEngine;
|
||||
|
||||
|
||||
end LLVM_execution_Engine;
|
924
bindings/ada/executionengine/llvm_executionengine_wrap.cxx
Normal file
924
bindings/ada/executionengine/llvm_executionengine_wrap.cxx
Normal file
@ -0,0 +1,924 @@
|
||||
/* ----------------------------------------------------------------------------
|
||||
* This file was automatically generated by SWIG (http://www.swig.org).
|
||||
* Version 1.3.36
|
||||
*
|
||||
* This file is not intended to be easily readable and contains a number of
|
||||
* coding conventions designed to improve portability and efficiency. Do not make
|
||||
* changes to this file unless you know what you are doing--modify the SWIG
|
||||
* interface file instead.
|
||||
* ----------------------------------------------------------------------------- */
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
template<typename T> class SwigValueWrapper {
|
||||
T *tt;
|
||||
public:
|
||||
SwigValueWrapper() : tt(0) { }
|
||||
SwigValueWrapper(const SwigValueWrapper<T>& rhs) : tt(new T(*rhs.tt)) { }
|
||||
SwigValueWrapper(const T& t) : tt(new T(t)) { }
|
||||
~SwigValueWrapper() { delete tt; }
|
||||
SwigValueWrapper& operator=(const T& t) { delete tt; tt = new T(t); return *this; }
|
||||
operator T&() const { return *tt; }
|
||||
T *operator&() { return tt; }
|
||||
private:
|
||||
SwigValueWrapper& operator=(const SwigValueWrapper<T>& rhs);
|
||||
};
|
||||
|
||||
template <typename T> T SwigValueInit() {
|
||||
return T();
|
||||
}
|
||||
#endif
|
||||
|
||||
/* -----------------------------------------------------------------------------
|
||||
* This section contains generic SWIG labels for method/variable
|
||||
* declarations/attributes, and other compiler dependent labels.
|
||||
* ----------------------------------------------------------------------------- */
|
||||
|
||||
/* template workaround for compilers that cannot correctly implement the C++ standard */
|
||||
#ifndef SWIGTEMPLATEDISAMBIGUATOR
|
||||
# if defined(__SUNPRO_CC) && (__SUNPRO_CC <= 0x560)
|
||||
# define SWIGTEMPLATEDISAMBIGUATOR template
|
||||
# elif defined(__HP_aCC)
|
||||
/* Needed even with `aCC -AA' when `aCC -V' reports HP ANSI C++ B3910B A.03.55 */
|
||||
/* If we find a maximum version that requires this, the test would be __HP_aCC <= 35500 for A.03.55 */
|
||||
# define SWIGTEMPLATEDISAMBIGUATOR template
|
||||
# else
|
||||
# define SWIGTEMPLATEDISAMBIGUATOR
|
||||
# endif
|
||||
#endif
|
||||
|
||||
/* inline attribute */
|
||||
#ifndef SWIGINLINE
|
||||
# if defined(__cplusplus) || (defined(__GNUC__) && !defined(__STRICT_ANSI__))
|
||||
# define SWIGINLINE inline
|
||||
# else
|
||||
# define SWIGINLINE
|
||||
# endif
|
||||
#endif
|
||||
|
||||
/* attribute recognised by some compilers to avoid 'unused' warnings */
|
||||
#ifndef SWIGUNUSED
|
||||
# if defined(__GNUC__)
|
||||
# if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
|
||||
# define SWIGUNUSED __attribute__ ((__unused__))
|
||||
# else
|
||||
# define SWIGUNUSED
|
||||
# endif
|
||||
# elif defined(__ICC)
|
||||
# define SWIGUNUSED __attribute__ ((__unused__))
|
||||
# else
|
||||
# define SWIGUNUSED
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#ifndef SWIGUNUSEDPARM
|
||||
# ifdef __cplusplus
|
||||
# define SWIGUNUSEDPARM(p)
|
||||
# else
|
||||
# define SWIGUNUSEDPARM(p) p SWIGUNUSED
|
||||
# endif
|
||||
#endif
|
||||
|
||||
/* internal SWIG method */
|
||||
#ifndef SWIGINTERN
|
||||
# define SWIGINTERN static SWIGUNUSED
|
||||
#endif
|
||||
|
||||
/* internal inline SWIG method */
|
||||
#ifndef SWIGINTERNINLINE
|
||||
# define SWIGINTERNINLINE SWIGINTERN SWIGINLINE
|
||||
#endif
|
||||
|
||||
/* exporting methods */
|
||||
#if (__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)
|
||||
# ifndef GCC_HASCLASSVISIBILITY
|
||||
# define GCC_HASCLASSVISIBILITY
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#ifndef SWIGEXPORT
|
||||
# if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
|
||||
# if defined(STATIC_LINKED)
|
||||
# define SWIGEXPORT
|
||||
# else
|
||||
# define SWIGEXPORT __declspec(dllexport)
|
||||
# endif
|
||||
# else
|
||||
# if defined(__GNUC__) && defined(GCC_HASCLASSVISIBILITY)
|
||||
# define SWIGEXPORT __attribute__ ((visibility("default")))
|
||||
# else
|
||||
# define SWIGEXPORT
|
||||
# endif
|
||||
# endif
|
||||
#endif
|
||||
|
||||
/* calling conventions for Windows */
|
||||
#ifndef SWIGSTDCALL
|
||||
# if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
|
||||
# define SWIGSTDCALL __stdcall
|
||||
# else
|
||||
# define SWIGSTDCALL
|
||||
# endif
|
||||
#endif
|
||||
|
||||
/* Deal with Microsoft's attempt at deprecating C standard runtime functions */
|
||||
#if !defined(SWIG_NO_CRT_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_CRT_SECURE_NO_DEPRECATE)
|
||||
# define _CRT_SECURE_NO_DEPRECATE
|
||||
#endif
|
||||
|
||||
/* Deal with Microsoft's attempt at deprecating methods in the standard C++ library */
|
||||
#if !defined(SWIG_NO_SCL_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_SCL_SECURE_NO_DEPRECATE)
|
||||
# define _SCL_SECURE_NO_DEPRECATE
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <stdio.h>
|
||||
#if defined(_WIN32) || defined(__CYGWIN32__)
|
||||
# define DllExport __declspec( dllexport )
|
||||
# define SWIGSTDCALL __stdcall
|
||||
#else
|
||||
# define DllExport
|
||||
# define SWIGSTDCALL
|
||||
#endif
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
# include <new>
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
||||
/* Support for throwing Ada exceptions from C/C++ */
|
||||
|
||||
typedef enum
|
||||
{
|
||||
SWIG_AdaException,
|
||||
SWIG_AdaOutOfMemoryException,
|
||||
SWIG_AdaIndexOutOfRangeException,
|
||||
SWIG_AdaDivideByZeroException,
|
||||
SWIG_AdaArgumentOutOfRangeException,
|
||||
SWIG_AdaNullReferenceException
|
||||
} SWIG_AdaExceptionCodes;
|
||||
|
||||
|
||||
typedef void (SWIGSTDCALL* SWIG_AdaExceptionCallback_t)(const char *);
|
||||
|
||||
|
||||
typedef struct
|
||||
{
|
||||
SWIG_AdaExceptionCodes code;
|
||||
SWIG_AdaExceptionCallback_t callback;
|
||||
}
|
||||
SWIG_AdaExceptions_t;
|
||||
|
||||
|
||||
static
|
||||
SWIG_AdaExceptions_t
|
||||
SWIG_ada_exceptions[] =
|
||||
{
|
||||
{ SWIG_AdaException, NULL },
|
||||
{ SWIG_AdaOutOfMemoryException, NULL },
|
||||
{ SWIG_AdaIndexOutOfRangeException, NULL },
|
||||
{ SWIG_AdaDivideByZeroException, NULL },
|
||||
{ SWIG_AdaArgumentOutOfRangeException, NULL },
|
||||
{ SWIG_AdaNullReferenceException, NULL }
|
||||
};
|
||||
|
||||
|
||||
static
|
||||
void
|
||||
SWIG_AdaThrowException (SWIG_AdaExceptionCodes code, const char *msg)
|
||||
{
|
||||
SWIG_AdaExceptionCallback_t callback = SWIG_ada_exceptions[SWIG_AdaException].callback;
|
||||
if (code >=0 && (size_t)code < sizeof(SWIG_ada_exceptions)/sizeof(SWIG_AdaExceptions_t)) {
|
||||
callback = SWIG_ada_exceptions[code].callback;
|
||||
}
|
||||
callback(msg);
|
||||
}
|
||||
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
#endif
|
||||
|
||||
DllExport void SWIGSTDCALL SWIGRegisterExceptionCallbacks_LLVM_execution_Engine (SWIG_AdaExceptionCallback_t systemException,
|
||||
SWIG_AdaExceptionCallback_t outOfMemory,
|
||||
SWIG_AdaExceptionCallback_t indexOutOfRange,
|
||||
SWIG_AdaExceptionCallback_t divideByZero,
|
||||
SWIG_AdaExceptionCallback_t argumentOutOfRange,
|
||||
SWIG_AdaExceptionCallback_t nullReference)
|
||||
{
|
||||
SWIG_ada_exceptions [SWIG_AdaException].callback = systemException;
|
||||
SWIG_ada_exceptions [SWIG_AdaOutOfMemoryException].callback = outOfMemory;
|
||||
SWIG_ada_exceptions [SWIG_AdaIndexOutOfRangeException].callback = indexOutOfRange;
|
||||
SWIG_ada_exceptions [SWIG_AdaDivideByZeroException].callback = divideByZero;
|
||||
SWIG_ada_exceptions [SWIG_AdaArgumentOutOfRangeException].callback = argumentOutOfRange;
|
||||
SWIG_ada_exceptions [SWIG_AdaNullReferenceException].callback = nullReference;
|
||||
}
|
||||
|
||||
|
||||
/* Callback for returning strings to Ada without leaking memory */
|
||||
|
||||
typedef char * (SWIGSTDCALL* SWIG_AdaStringHelperCallback)(const char *);
|
||||
static SWIG_AdaStringHelperCallback SWIG_ada_string_callback = NULL;
|
||||
|
||||
|
||||
|
||||
/* probably obsolete ...
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
#endif
|
||||
DllExport void SWIGSTDCALL SWIGRegisterStringCallback_LLVM_execution_Engine(SWIG_AdaStringHelperCallback callback) {
|
||||
SWIG_ada_string_callback = callback;
|
||||
}
|
||||
*/
|
||||
|
||||
|
||||
|
||||
/* Contract support */
|
||||
|
||||
#define SWIG_contract_assert(nullreturn, expr, msg) if (!(expr)) {SWIG_AdaThrowException(SWIG_AdaArgumentOutOfRangeException, msg); return nullreturn; } else
|
||||
|
||||
|
||||
#define protected public
|
||||
#define private public
|
||||
|
||||
#include "llvm-c/ExecutionEngine.h"
|
||||
|
||||
|
||||
|
||||
// struct LLVMCtxt;
|
||||
|
||||
|
||||
#undef protected
|
||||
#undef private
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
DllExport void SWIGSTDCALL Ada_LLVMLinkInJIT (
|
||||
)
|
||||
{
|
||||
LLVMLinkInJIT();
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_LLVMLinkInInterpreter (
|
||||
)
|
||||
{
|
||||
LLVMLinkInInterpreter();
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void * SWIGSTDCALL Ada_LLVMCreateGenericValueOfInt (
|
||||
void * jarg1
|
||||
,
|
||||
|
||||
unsigned long long jarg2
|
||||
,
|
||||
|
||||
int jarg3
|
||||
)
|
||||
{
|
||||
void * jresult ;
|
||||
LLVMTypeRef arg1 = (LLVMTypeRef) 0 ;
|
||||
unsigned long long arg2 ;
|
||||
int arg3 ;
|
||||
LLVMGenericValueRef result;
|
||||
|
||||
arg1 = (LLVMTypeRef)jarg1;
|
||||
|
||||
|
||||
arg2 = (unsigned long long) jarg2;
|
||||
|
||||
|
||||
|
||||
arg3 = (int) jarg3;
|
||||
|
||||
|
||||
result = (LLVMGenericValueRef)LLVMCreateGenericValueOfInt(arg1,arg2,arg3);
|
||||
jresult = (void *) result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void * SWIGSTDCALL Ada_LLVMCreateGenericValueOfPointer (
|
||||
void* jarg1
|
||||
)
|
||||
{
|
||||
void * jresult ;
|
||||
void *arg1 = (void *) 0 ;
|
||||
LLVMGenericValueRef result;
|
||||
|
||||
arg1 = (void *)jarg1;
|
||||
|
||||
result = (LLVMGenericValueRef)LLVMCreateGenericValueOfPointer(arg1);
|
||||
jresult = (void *) result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void * SWIGSTDCALL Ada_LLVMCreateGenericValueOfFloat (
|
||||
void * jarg1
|
||||
,
|
||||
|
||||
double jarg2
|
||||
)
|
||||
{
|
||||
void * jresult ;
|
||||
LLVMTypeRef arg1 = (LLVMTypeRef) 0 ;
|
||||
double arg2 ;
|
||||
LLVMGenericValueRef result;
|
||||
|
||||
arg1 = (LLVMTypeRef)jarg1;
|
||||
|
||||
|
||||
arg2 = (double) jarg2;
|
||||
|
||||
|
||||
result = (LLVMGenericValueRef)LLVMCreateGenericValueOfFloat(arg1,arg2);
|
||||
jresult = (void *) result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport unsigned int SWIGSTDCALL Ada_LLVMGenericValueIntWidth (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
unsigned int jresult ;
|
||||
LLVMGenericValueRef arg1 = (LLVMGenericValueRef) 0 ;
|
||||
unsigned int result;
|
||||
|
||||
arg1 = (LLVMGenericValueRef)jarg1;
|
||||
|
||||
result = (unsigned int)LLVMGenericValueIntWidth(arg1);
|
||||
jresult = result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport unsigned long long SWIGSTDCALL Ada_LLVMGenericValueToInt (
|
||||
void * jarg1
|
||||
,
|
||||
|
||||
int jarg2
|
||||
)
|
||||
{
|
||||
unsigned long long jresult ;
|
||||
LLVMGenericValueRef arg1 = (LLVMGenericValueRef) 0 ;
|
||||
int arg2 ;
|
||||
unsigned long long result;
|
||||
|
||||
arg1 = (LLVMGenericValueRef)jarg1;
|
||||
|
||||
|
||||
arg2 = (int) jarg2;
|
||||
|
||||
|
||||
result = (unsigned long long)LLVMGenericValueToInt(arg1,arg2);
|
||||
jresult = result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void* SWIGSTDCALL Ada_LLVMGenericValueToPointer (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
void* jresult ;
|
||||
LLVMGenericValueRef arg1 = (LLVMGenericValueRef) 0 ;
|
||||
void *result = 0 ;
|
||||
|
||||
arg1 = (LLVMGenericValueRef)jarg1;
|
||||
|
||||
result = (void *)LLVMGenericValueToPointer(arg1);
|
||||
jresult = (void *) result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport double SWIGSTDCALL Ada_LLVMGenericValueToFloat (
|
||||
void * jarg1
|
||||
,
|
||||
|
||||
void * jarg2
|
||||
)
|
||||
{
|
||||
double jresult ;
|
||||
LLVMTypeRef arg1 = (LLVMTypeRef) 0 ;
|
||||
LLVMGenericValueRef arg2 = (LLVMGenericValueRef) 0 ;
|
||||
double result;
|
||||
|
||||
arg1 = (LLVMTypeRef)jarg1;
|
||||
|
||||
arg2 = (LLVMGenericValueRef)jarg2;
|
||||
|
||||
result = (double)LLVMGenericValueToFloat(arg1,arg2);
|
||||
jresult = result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_LLVMDisposeGenericValue (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
LLVMGenericValueRef arg1 = (LLVMGenericValueRef) 0 ;
|
||||
|
||||
arg1 = (LLVMGenericValueRef)jarg1;
|
||||
|
||||
LLVMDisposeGenericValue(arg1);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport int SWIGSTDCALL Ada_LLVMCreateExecutionEngine (
|
||||
void * jarg1
|
||||
,
|
||||
|
||||
void * jarg2
|
||||
,
|
||||
|
||||
void * jarg3
|
||||
)
|
||||
{
|
||||
int jresult ;
|
||||
LLVMExecutionEngineRef *arg1 = (LLVMExecutionEngineRef *) 0 ;
|
||||
LLVMModuleProviderRef arg2 = (LLVMModuleProviderRef) 0 ;
|
||||
char **arg3 = (char **) 0 ;
|
||||
int result;
|
||||
|
||||
arg1 = (LLVMExecutionEngineRef *)jarg1;
|
||||
|
||||
arg2 = (LLVMModuleProviderRef)jarg2;
|
||||
|
||||
arg3 = (char **)jarg3;
|
||||
|
||||
result = (int)LLVMCreateExecutionEngine(arg1,arg2,arg3);
|
||||
jresult = result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport int SWIGSTDCALL Ada_LLVMCreateInterpreter (
|
||||
void * jarg1
|
||||
,
|
||||
|
||||
void * jarg2
|
||||
,
|
||||
|
||||
void * jarg3
|
||||
)
|
||||
{
|
||||
int jresult ;
|
||||
LLVMExecutionEngineRef *arg1 = (LLVMExecutionEngineRef *) 0 ;
|
||||
LLVMModuleProviderRef arg2 = (LLVMModuleProviderRef) 0 ;
|
||||
char **arg3 = (char **) 0 ;
|
||||
int result;
|
||||
|
||||
arg1 = (LLVMExecutionEngineRef *)jarg1;
|
||||
|
||||
arg2 = (LLVMModuleProviderRef)jarg2;
|
||||
|
||||
arg3 = (char **)jarg3;
|
||||
|
||||
result = (int)LLVMCreateInterpreter(arg1,arg2,arg3);
|
||||
jresult = result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport int SWIGSTDCALL Ada_LLVMCreateJITCompiler (
|
||||
void * jarg1
|
||||
,
|
||||
|
||||
void * jarg2
|
||||
,
|
||||
|
||||
unsigned int jarg3
|
||||
,
|
||||
|
||||
void * jarg4
|
||||
)
|
||||
{
|
||||
int jresult ;
|
||||
LLVMExecutionEngineRef *arg1 = (LLVMExecutionEngineRef *) 0 ;
|
||||
LLVMModuleProviderRef arg2 = (LLVMModuleProviderRef) 0 ;
|
||||
unsigned int arg3 ;
|
||||
char **arg4 = (char **) 0 ;
|
||||
int result;
|
||||
|
||||
arg1 = (LLVMExecutionEngineRef *)jarg1;
|
||||
|
||||
arg2 = (LLVMModuleProviderRef)jarg2;
|
||||
|
||||
|
||||
arg3 = (unsigned int) jarg3;
|
||||
|
||||
|
||||
arg4 = (char **)jarg4;
|
||||
|
||||
result = (int)LLVMCreateJITCompiler(arg1,arg2,arg3,arg4);
|
||||
jresult = result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_LLVMDisposeExecutionEngine (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
LLVMExecutionEngineRef arg1 = (LLVMExecutionEngineRef) 0 ;
|
||||
|
||||
arg1 = (LLVMExecutionEngineRef)jarg1;
|
||||
|
||||
LLVMDisposeExecutionEngine(arg1);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_LLVMRunStaticConstructors (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
LLVMExecutionEngineRef arg1 = (LLVMExecutionEngineRef) 0 ;
|
||||
|
||||
arg1 = (LLVMExecutionEngineRef)jarg1;
|
||||
|
||||
LLVMRunStaticConstructors(arg1);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_LLVMRunStaticDestructors (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
LLVMExecutionEngineRef arg1 = (LLVMExecutionEngineRef) 0 ;
|
||||
|
||||
arg1 = (LLVMExecutionEngineRef)jarg1;
|
||||
|
||||
LLVMRunStaticDestructors(arg1);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport int SWIGSTDCALL Ada_LLVMRunFunctionAsMain (
|
||||
void * jarg1
|
||||
,
|
||||
|
||||
void * jarg2
|
||||
,
|
||||
|
||||
unsigned int jarg3
|
||||
,
|
||||
|
||||
void * jarg4
|
||||
,
|
||||
|
||||
void * jarg5
|
||||
)
|
||||
{
|
||||
int jresult ;
|
||||
LLVMExecutionEngineRef arg1 = (LLVMExecutionEngineRef) 0 ;
|
||||
LLVMValueRef arg2 = (LLVMValueRef) 0 ;
|
||||
unsigned int arg3 ;
|
||||
char **arg4 = (char **) 0 ;
|
||||
char **arg5 = (char **) 0 ;
|
||||
int result;
|
||||
|
||||
arg1 = (LLVMExecutionEngineRef)jarg1;
|
||||
|
||||
arg2 = (LLVMValueRef)jarg2;
|
||||
|
||||
|
||||
arg3 = (unsigned int) jarg3;
|
||||
|
||||
|
||||
arg4 = (char **)jarg4;
|
||||
|
||||
arg5 = (char **)jarg5;
|
||||
|
||||
result = (int)LLVMRunFunctionAsMain(arg1,arg2,arg3,(char const *const *)arg4,(char const *const *)arg5);
|
||||
jresult = result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void * SWIGSTDCALL Ada_LLVMRunFunction (
|
||||
void * jarg1
|
||||
,
|
||||
|
||||
void * jarg2
|
||||
,
|
||||
|
||||
unsigned int jarg3
|
||||
,
|
||||
|
||||
void * jarg4
|
||||
)
|
||||
{
|
||||
void * jresult ;
|
||||
LLVMExecutionEngineRef arg1 = (LLVMExecutionEngineRef) 0 ;
|
||||
LLVMValueRef arg2 = (LLVMValueRef) 0 ;
|
||||
unsigned int arg3 ;
|
||||
LLVMGenericValueRef *arg4 = (LLVMGenericValueRef *) 0 ;
|
||||
LLVMGenericValueRef result;
|
||||
|
||||
arg1 = (LLVMExecutionEngineRef)jarg1;
|
||||
|
||||
arg2 = (LLVMValueRef)jarg2;
|
||||
|
||||
|
||||
arg3 = (unsigned int) jarg3;
|
||||
|
||||
|
||||
arg4 = (LLVMGenericValueRef *)jarg4;
|
||||
|
||||
result = (LLVMGenericValueRef)LLVMRunFunction(arg1,arg2,arg3,arg4);
|
||||
jresult = (void *) result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_LLVMFreeMachineCodeForFunction (
|
||||
void * jarg1
|
||||
,
|
||||
|
||||
void * jarg2
|
||||
)
|
||||
{
|
||||
LLVMExecutionEngineRef arg1 = (LLVMExecutionEngineRef) 0 ;
|
||||
LLVMValueRef arg2 = (LLVMValueRef) 0 ;
|
||||
|
||||
arg1 = (LLVMExecutionEngineRef)jarg1;
|
||||
|
||||
arg2 = (LLVMValueRef)jarg2;
|
||||
|
||||
LLVMFreeMachineCodeForFunction(arg1,arg2);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_LLVMAddModuleProvider (
|
||||
void * jarg1
|
||||
,
|
||||
|
||||
void * jarg2
|
||||
)
|
||||
{
|
||||
LLVMExecutionEngineRef arg1 = (LLVMExecutionEngineRef) 0 ;
|
||||
LLVMModuleProviderRef arg2 = (LLVMModuleProviderRef) 0 ;
|
||||
|
||||
arg1 = (LLVMExecutionEngineRef)jarg1;
|
||||
|
||||
arg2 = (LLVMModuleProviderRef)jarg2;
|
||||
|
||||
LLVMAddModuleProvider(arg1,arg2);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport int SWIGSTDCALL Ada_LLVMRemoveModuleProvider (
|
||||
void * jarg1
|
||||
,
|
||||
|
||||
void * jarg2
|
||||
,
|
||||
|
||||
void * jarg3
|
||||
,
|
||||
|
||||
void * jarg4
|
||||
)
|
||||
{
|
||||
int jresult ;
|
||||
LLVMExecutionEngineRef arg1 = (LLVMExecutionEngineRef) 0 ;
|
||||
LLVMModuleProviderRef arg2 = (LLVMModuleProviderRef) 0 ;
|
||||
LLVMModuleRef *arg3 = (LLVMModuleRef *) 0 ;
|
||||
char **arg4 = (char **) 0 ;
|
||||
int result;
|
||||
|
||||
arg1 = (LLVMExecutionEngineRef)jarg1;
|
||||
|
||||
arg2 = (LLVMModuleProviderRef)jarg2;
|
||||
|
||||
arg3 = (LLVMModuleRef *)jarg3;
|
||||
|
||||
arg4 = (char **)jarg4;
|
||||
|
||||
result = (int)LLVMRemoveModuleProvider(arg1,arg2,arg3,arg4);
|
||||
jresult = result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport int SWIGSTDCALL Ada_LLVMFindFunction (
|
||||
void * jarg1
|
||||
,
|
||||
|
||||
char * jarg2
|
||||
,
|
||||
|
||||
void * jarg3
|
||||
)
|
||||
{
|
||||
int jresult ;
|
||||
LLVMExecutionEngineRef arg1 = (LLVMExecutionEngineRef) 0 ;
|
||||
char *arg2 = (char *) 0 ;
|
||||
LLVMValueRef *arg3 = (LLVMValueRef *) 0 ;
|
||||
int result;
|
||||
|
||||
arg1 = (LLVMExecutionEngineRef)jarg1;
|
||||
|
||||
arg2 = jarg2;
|
||||
|
||||
arg3 = (LLVMValueRef *)jarg3;
|
||||
|
||||
result = (int)LLVMFindFunction(arg1,(char const *)arg2,arg3);
|
||||
jresult = result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport LLVMTargetDataRef SWIGSTDCALL Ada_LLVMGetExecutionEngineTargetData (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
LLVMTargetDataRef jresult ;
|
||||
LLVMExecutionEngineRef arg1 = (LLVMExecutionEngineRef) 0 ;
|
||||
LLVMTargetDataRef result;
|
||||
|
||||
arg1 = (LLVMExecutionEngineRef)jarg1;
|
||||
|
||||
result = LLVMGetExecutionEngineTargetData(arg1);
|
||||
|
||||
jresult = result;
|
||||
//jresult = new LLVMTargetDataRef ((LLVMTargetDataRef &) result);
|
||||
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_LLVMAddGlobalMapping (
|
||||
void * jarg1
|
||||
,
|
||||
|
||||
void * jarg2
|
||||
,
|
||||
|
||||
void* jarg3
|
||||
)
|
||||
{
|
||||
LLVMExecutionEngineRef arg1 = (LLVMExecutionEngineRef) 0 ;
|
||||
LLVMValueRef arg2 = (LLVMValueRef) 0 ;
|
||||
void *arg3 = (void *) 0 ;
|
||||
|
||||
arg1 = (LLVMExecutionEngineRef)jarg1;
|
||||
|
||||
arg2 = (LLVMValueRef)jarg2;
|
||||
|
||||
arg3 = (void *)jarg3;
|
||||
|
||||
LLVMAddGlobalMapping(arg1,arg2,arg3);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void* SWIGSTDCALL Ada_LLVMGetPointerToGlobal (
|
||||
void * jarg1
|
||||
,
|
||||
|
||||
void * jarg2
|
||||
)
|
||||
{
|
||||
void* jresult ;
|
||||
LLVMExecutionEngineRef arg1 = (LLVMExecutionEngineRef) 0 ;
|
||||
LLVMValueRef arg2 = (LLVMValueRef) 0 ;
|
||||
void *result = 0 ;
|
||||
|
||||
arg1 = (LLVMExecutionEngineRef)jarg1;
|
||||
|
||||
arg2 = (LLVMValueRef)jarg2;
|
||||
|
||||
result = (void *)LLVMGetPointerToGlobal(arg1,arg2);
|
||||
jresult = (void *) result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
34
bindings/ada/llvm.gpr
Normal file
34
bindings/ada/llvm.gpr
Normal file
@ -0,0 +1,34 @@
|
||||
project LLVM is
|
||||
|
||||
for Languages use ("Ada", "C++");
|
||||
for Source_Dirs use (".", "analysis", "bitreader", "bitwriter", "executionengine", "llvm", "target", "transforms");
|
||||
for Object_Dir use "build";
|
||||
for Exec_Dir use ".";
|
||||
for Library_Name use "llvm_ada";
|
||||
for Library_Dir use "lib";
|
||||
for Library_Ali_Dir use "objects";
|
||||
|
||||
package Naming is
|
||||
for Specification_Suffix ("c++") use ".h";
|
||||
for Implementation_Suffix ("c++") use ".cxx";
|
||||
end Naming;
|
||||
|
||||
package Builder is
|
||||
for Default_Switches ("ada") use ("-g");
|
||||
end Builder;
|
||||
|
||||
package Compiler is
|
||||
for Default_Switches ("ada") use ("-gnato", "-fstack-check", "-g", "-gnata", "-gnat05", "-I/usr/local/include");
|
||||
for Default_Switches ("c++") use ("-D__STDC_LIMIT_MACROS", "-D__STDC_CONSTANT_MACROS", "-I../../include", "-g");
|
||||
end Compiler;
|
||||
|
||||
package Binder is
|
||||
for Default_Switches ("ada") use ("-E");
|
||||
end Binder;
|
||||
|
||||
package Linker is
|
||||
for Default_Switches ("c++") use ("-g");
|
||||
end Linker;
|
||||
|
||||
end LLVM;
|
||||
|
1974
bindings/ada/llvm/llvm-binding.ads
Normal file
1974
bindings/ada/llvm/llvm-binding.ads
Normal file
File diff suppressed because it is too large
Load Diff
493
bindings/ada/llvm/llvm.ads
Normal file
493
bindings/ada/llvm/llvm.ads
Normal file
@ -0,0 +1,493 @@
|
||||
-- This file is generated by SWIG. Do *not* modify by hand.
|
||||
--
|
||||
|
||||
with Interfaces.C.Extensions;
|
||||
|
||||
|
||||
package llvm is
|
||||
|
||||
-- LLVMCtxt
|
||||
--
|
||||
type LLVMCtxt is new Interfaces.C.Extensions.opaque_structure_def;
|
||||
|
||||
type LLVMCtxt_array is
|
||||
array (Interfaces.C.size_t range <>) of aliased llvm.LLVMCtxt;
|
||||
|
||||
type LLVMCtxt_view is access all llvm.LLVMCtxt;
|
||||
|
||||
-- LLVMContextRef
|
||||
--
|
||||
type LLVMContextRef is access all llvm.LLVMCtxt;
|
||||
|
||||
type LLVMContextRef_array is
|
||||
array (Interfaces.C.size_t range <>) of aliased llvm.LLVMContextRef;
|
||||
|
||||
type LLVMContextRef_view is access all llvm.LLVMContextRef;
|
||||
|
||||
-- LLVMOpaqueModule
|
||||
--
|
||||
type LLVMOpaqueModule is new Interfaces.C.Extensions.opaque_structure_def;
|
||||
|
||||
type LLVMOpaqueModule_array is
|
||||
array (Interfaces.C.size_t range <>) of aliased llvm.LLVMOpaqueModule;
|
||||
|
||||
type LLVMOpaqueModule_view is access all llvm.LLVMOpaqueModule;
|
||||
|
||||
-- LLVMModuleRef
|
||||
--
|
||||
type LLVMModuleRef is access all llvm.LLVMOpaqueModule;
|
||||
|
||||
type LLVMModuleRef_array is
|
||||
array (Interfaces.C.size_t range <>) of aliased llvm.LLVMModuleRef;
|
||||
|
||||
type LLVMModuleRef_view is access all llvm.LLVMModuleRef;
|
||||
|
||||
-- LLVMOpaqueType
|
||||
--
|
||||
type LLVMOpaqueType is new Interfaces.C.Extensions.opaque_structure_def;
|
||||
|
||||
type LLVMOpaqueType_array is
|
||||
array (Interfaces.C.size_t range <>) of aliased llvm.LLVMOpaqueType;
|
||||
|
||||
type LLVMOpaqueType_view is access all llvm.LLVMOpaqueType;
|
||||
|
||||
-- LLVMTypeRef
|
||||
--
|
||||
type LLVMTypeRef is access all llvm.LLVMOpaqueType;
|
||||
|
||||
type LLVMTypeRef_array is
|
||||
array (Interfaces.C.size_t range <>) of aliased llvm.LLVMTypeRef;
|
||||
|
||||
type LLVMTypeRef_view is access all llvm.LLVMTypeRef;
|
||||
|
||||
-- LLVMOpaqueTypeHandle
|
||||
--
|
||||
type LLVMOpaqueTypeHandle is new
|
||||
Interfaces.C.Extensions.opaque_structure_def;
|
||||
|
||||
type LLVMOpaqueTypeHandle_array is
|
||||
array (Interfaces.C.size_t range <>)
|
||||
of aliased llvm.LLVMOpaqueTypeHandle;
|
||||
|
||||
type LLVMOpaqueTypeHandle_view is access all llvm.LLVMOpaqueTypeHandle;
|
||||
|
||||
-- LLVMTypeHandleRef
|
||||
--
|
||||
type LLVMTypeHandleRef is access all llvm.LLVMOpaqueTypeHandle;
|
||||
|
||||
type LLVMTypeHandleRef_array is
|
||||
array (Interfaces.C.size_t range <>)
|
||||
of aliased llvm.LLVMTypeHandleRef;
|
||||
|
||||
type LLVMTypeHandleRef_view is access all llvm.LLVMTypeHandleRef;
|
||||
|
||||
-- LLVMOpaqueValue
|
||||
--
|
||||
type LLVMOpaqueValue is new Interfaces.C.Extensions.opaque_structure_def;
|
||||
|
||||
type LLVMOpaqueValue_array is
|
||||
array (Interfaces.C.size_t range <>) of aliased llvm.LLVMOpaqueValue;
|
||||
|
||||
type LLVMOpaqueValue_view is access all llvm.LLVMOpaqueValue;
|
||||
|
||||
-- LLVMValueRef
|
||||
--
|
||||
type LLVMValueRef is access all llvm.LLVMOpaqueValue;
|
||||
|
||||
type LLVMValueRef_array is
|
||||
array (Interfaces.C.size_t range <>) of aliased llvm.LLVMValueRef;
|
||||
|
||||
type LLVMValueRef_view is access all llvm.LLVMValueRef;
|
||||
|
||||
-- LLVMOpaqueBasicBlock
|
||||
--
|
||||
type LLVMOpaqueBasicBlock is new
|
||||
Interfaces.C.Extensions.opaque_structure_def;
|
||||
|
||||
type LLVMOpaqueBasicBlock_array is
|
||||
array (Interfaces.C.size_t range <>)
|
||||
of aliased llvm.LLVMOpaqueBasicBlock;
|
||||
|
||||
type LLVMOpaqueBasicBlock_view is access all llvm.LLVMOpaqueBasicBlock;
|
||||
|
||||
-- LLVMBasicBlockRef
|
||||
--
|
||||
type LLVMBasicBlockRef is access all llvm.LLVMOpaqueBasicBlock;
|
||||
|
||||
type LLVMBasicBlockRef_array is
|
||||
array (Interfaces.C.size_t range <>)
|
||||
of aliased llvm.LLVMBasicBlockRef;
|
||||
|
||||
type LLVMBasicBlockRef_view is access all llvm.LLVMBasicBlockRef;
|
||||
|
||||
-- LLVMOpaqueBuilder
|
||||
--
|
||||
type LLVMOpaqueBuilder is new Interfaces.C.Extensions.opaque_structure_def;
|
||||
|
||||
type LLVMOpaqueBuilder_array is
|
||||
array (Interfaces.C.size_t range <>)
|
||||
of aliased llvm.LLVMOpaqueBuilder;
|
||||
|
||||
type LLVMOpaqueBuilder_view is access all llvm.LLVMOpaqueBuilder;
|
||||
|
||||
-- LLVMBuilderRef
|
||||
--
|
||||
type LLVMBuilderRef is access all llvm.LLVMOpaqueBuilder;
|
||||
|
||||
type LLVMBuilderRef_array is
|
||||
array (Interfaces.C.size_t range <>) of aliased llvm.LLVMBuilderRef;
|
||||
|
||||
type LLVMBuilderRef_view is access all llvm.LLVMBuilderRef;
|
||||
|
||||
-- LLVMOpaqueModuleProvider
|
||||
--
|
||||
type LLVMOpaqueModuleProvider is new
|
||||
Interfaces.C.Extensions.opaque_structure_def;
|
||||
|
||||
type LLVMOpaqueModuleProvider_array is
|
||||
array (Interfaces.C.size_t range <>)
|
||||
of aliased llvm.LLVMOpaqueModuleProvider;
|
||||
|
||||
type LLVMOpaqueModuleProvider_view is access all
|
||||
llvm.LLVMOpaqueModuleProvider;
|
||||
|
||||
-- LLVMModuleProviderRef
|
||||
--
|
||||
type LLVMModuleProviderRef is access all llvm.LLVMOpaqueModuleProvider;
|
||||
|
||||
type LLVMModuleProviderRef_array is
|
||||
array (Interfaces.C.size_t range <>)
|
||||
of aliased llvm.LLVMModuleProviderRef;
|
||||
|
||||
type LLVMModuleProviderRef_view is access all llvm.LLVMModuleProviderRef;
|
||||
|
||||
-- LLVMOpaqueMemoryBuffer
|
||||
--
|
||||
type LLVMOpaqueMemoryBuffer is new
|
||||
Interfaces.C.Extensions.opaque_structure_def;
|
||||
|
||||
type LLVMOpaqueMemoryBuffer_array is
|
||||
array (Interfaces.C.size_t range <>)
|
||||
of aliased llvm.LLVMOpaqueMemoryBuffer;
|
||||
|
||||
type LLVMOpaqueMemoryBuffer_view is access all llvm.LLVMOpaqueMemoryBuffer;
|
||||
|
||||
-- LLVMMemoryBufferRef
|
||||
--
|
||||
type LLVMMemoryBufferRef is access all llvm.LLVMOpaqueMemoryBuffer;
|
||||
|
||||
type LLVMMemoryBufferRef_array is
|
||||
array (Interfaces.C.size_t range <>)
|
||||
of aliased llvm.LLVMMemoryBufferRef;
|
||||
|
||||
type LLVMMemoryBufferRef_view is access all llvm.LLVMMemoryBufferRef;
|
||||
|
||||
-- LLVMOpaquePassManager
|
||||
--
|
||||
type LLVMOpaquePassManager is new
|
||||
Interfaces.C.Extensions.opaque_structure_def;
|
||||
|
||||
type LLVMOpaquePassManager_array is
|
||||
array (Interfaces.C.size_t range <>)
|
||||
of aliased llvm.LLVMOpaquePassManager;
|
||||
|
||||
type LLVMOpaquePassManager_view is access all llvm.LLVMOpaquePassManager;
|
||||
|
||||
-- LLVMPassManagerRef
|
||||
--
|
||||
type LLVMPassManagerRef is access all llvm.LLVMOpaquePassManager;
|
||||
|
||||
type LLVMPassManagerRef_array is
|
||||
array (Interfaces.C.size_t range <>)
|
||||
of aliased llvm.LLVMPassManagerRef;
|
||||
|
||||
type LLVMPassManagerRef_view is access all llvm.LLVMPassManagerRef;
|
||||
|
||||
-- LLVMAttribute
|
||||
--
|
||||
type LLVMAttribute is (
|
||||
LLVMZExtAttribute,
|
||||
LLVMSExtAttribute,
|
||||
LLVMNoReturnAttribute,
|
||||
LLVMInRegAttribute,
|
||||
LLVMStructRetAttribute,
|
||||
LLVMNoUnwindAttribute,
|
||||
LLVMNoAliasAttribute,
|
||||
LLVMByValAttribute,
|
||||
LLVMNestAttribute,
|
||||
LLVMReadNoneAttribute,
|
||||
LLVMReadOnlyAttribute,
|
||||
LLVMNoInlineAttribute,
|
||||
LLVMAlwaysInlineAttribute,
|
||||
LLVMOptimizeForSizeAttribute,
|
||||
LLVMStackProtectAttribute,
|
||||
LLVMStackProtectReqAttribute,
|
||||
LLVMNoCaptureAttribute,
|
||||
LLVMNoRedZoneAttribute,
|
||||
LLVMNoImplicitFloatAttribute,
|
||||
LLVMNakedAttribute);
|
||||
|
||||
for LLVMAttribute use
|
||||
(LLVMZExtAttribute => 1,
|
||||
LLVMSExtAttribute => 2,
|
||||
LLVMNoReturnAttribute => 4,
|
||||
LLVMInRegAttribute => 8,
|
||||
LLVMStructRetAttribute => 16,
|
||||
LLVMNoUnwindAttribute => 32,
|
||||
LLVMNoAliasAttribute => 64,
|
||||
LLVMByValAttribute => 128,
|
||||
LLVMNestAttribute => 256,
|
||||
LLVMReadNoneAttribute => 512,
|
||||
LLVMReadOnlyAttribute => 1024,
|
||||
LLVMNoInlineAttribute => 2048,
|
||||
LLVMAlwaysInlineAttribute => 4096,
|
||||
LLVMOptimizeForSizeAttribute => 8192,
|
||||
LLVMStackProtectAttribute => 16384,
|
||||
LLVMStackProtectReqAttribute => 32768,
|
||||
LLVMNoCaptureAttribute => 2097152,
|
||||
LLVMNoRedZoneAttribute => 4194304,
|
||||
LLVMNoImplicitFloatAttribute => 8388608,
|
||||
LLVMNakedAttribute => 16777216);
|
||||
|
||||
pragma Convention (C, LLVMAttribute);
|
||||
|
||||
type LLVMAttribute_array is
|
||||
array (Interfaces.C.size_t range <>) of aliased llvm.LLVMAttribute;
|
||||
|
||||
type LLVMAttribute_view is access all llvm.LLVMAttribute;
|
||||
|
||||
-- LLVMTypeKind
|
||||
--
|
||||
type LLVMTypeKind is (
|
||||
LLVMVoidTypeKind,
|
||||
LLVMFloatTypeKind,
|
||||
LLVMDoubleTypeKind,
|
||||
LLVMX86_FP80TypeKind,
|
||||
LLVMFP128TypeKind,
|
||||
LLVMPPC_FP128TypeKind,
|
||||
LLVMLabelTypeKind,
|
||||
LLVMIntegerTypeKind,
|
||||
LLVMFunctionTypeKind,
|
||||
LLVMStructTypeKind,
|
||||
LLVMArrayTypeKind,
|
||||
LLVMPointerTypeKind,
|
||||
LLVMOpaqueTypeKind,
|
||||
LLVMVectorTypeKind,
|
||||
LLVMMetadataTypeKind);
|
||||
|
||||
for LLVMTypeKind use
|
||||
(LLVMVoidTypeKind => 0,
|
||||
LLVMFloatTypeKind => 1,
|
||||
LLVMDoubleTypeKind => 2,
|
||||
LLVMX86_FP80TypeKind => 3,
|
||||
LLVMFP128TypeKind => 4,
|
||||
LLVMPPC_FP128TypeKind => 5,
|
||||
LLVMLabelTypeKind => 6,
|
||||
LLVMIntegerTypeKind => 7,
|
||||
LLVMFunctionTypeKind => 8,
|
||||
LLVMStructTypeKind => 9,
|
||||
LLVMArrayTypeKind => 10,
|
||||
LLVMPointerTypeKind => 11,
|
||||
LLVMOpaqueTypeKind => 12,
|
||||
LLVMVectorTypeKind => 13,
|
||||
LLVMMetadataTypeKind => 14);
|
||||
|
||||
pragma Convention (C, LLVMTypeKind);
|
||||
|
||||
type LLVMTypeKind_array is
|
||||
array (Interfaces.C.size_t range <>) of aliased llvm.LLVMTypeKind;
|
||||
|
||||
type LLVMTypeKind_view is access all llvm.LLVMTypeKind;
|
||||
|
||||
-- LLVMLinkage
|
||||
--
|
||||
type LLVMLinkage is (
|
||||
LLVMExternalLinkage,
|
||||
LLVMAvailableExternallyLinkage,
|
||||
LLVMLinkOnceAnyLinkage,
|
||||
LLVMLinkOnceODRLinkage,
|
||||
LLVMWeakAnyLinkage,
|
||||
LLVMWeakODRLinkage,
|
||||
LLVMAppendingLinkage,
|
||||
LLVMInternalLinkage,
|
||||
LLVMPrivateLinkage,
|
||||
LLVMDLLImportLinkage,
|
||||
LLVMDLLExportLinkage,
|
||||
LLVMExternalWeakLinkage,
|
||||
LLVMGhostLinkage,
|
||||
LLVMCommonLinkage,
|
||||
LLVMLinkerPrivateLinkage);
|
||||
|
||||
for LLVMLinkage use
|
||||
(LLVMExternalLinkage => 0,
|
||||
LLVMAvailableExternallyLinkage => 1,
|
||||
LLVMLinkOnceAnyLinkage => 2,
|
||||
LLVMLinkOnceODRLinkage => 3,
|
||||
LLVMWeakAnyLinkage => 4,
|
||||
LLVMWeakODRLinkage => 5,
|
||||
LLVMAppendingLinkage => 6,
|
||||
LLVMInternalLinkage => 7,
|
||||
LLVMPrivateLinkage => 8,
|
||||
LLVMDLLImportLinkage => 9,
|
||||
LLVMDLLExportLinkage => 10,
|
||||
LLVMExternalWeakLinkage => 11,
|
||||
LLVMGhostLinkage => 12,
|
||||
LLVMCommonLinkage => 13,
|
||||
LLVMLinkerPrivateLinkage => 14);
|
||||
|
||||
pragma Convention (C, LLVMLinkage);
|
||||
|
||||
type LLVMLinkage_array is
|
||||
array (Interfaces.C.size_t range <>) of aliased llvm.LLVMLinkage;
|
||||
|
||||
type LLVMLinkage_view is access all llvm.LLVMLinkage;
|
||||
|
||||
-- LLVMVisibility
|
||||
--
|
||||
type LLVMVisibility is (
|
||||
LLVMDefaultVisibility,
|
||||
LLVMHiddenVisibility,
|
||||
LLVMProtectedVisibility);
|
||||
|
||||
for LLVMVisibility use
|
||||
(LLVMDefaultVisibility => 0,
|
||||
LLVMHiddenVisibility => 1,
|
||||
LLVMProtectedVisibility => 2);
|
||||
|
||||
pragma Convention (C, LLVMVisibility);
|
||||
|
||||
type LLVMVisibility_array is
|
||||
array (Interfaces.C.size_t range <>) of aliased llvm.LLVMVisibility;
|
||||
|
||||
type LLVMVisibility_view is access all llvm.LLVMVisibility;
|
||||
|
||||
-- LLVMCallConv
|
||||
--
|
||||
type LLVMCallConv is (
|
||||
LLVMCCallConv,
|
||||
LLVMFastCallConv,
|
||||
LLVMColdCallConv,
|
||||
LLVMX86StdcallCallConv,
|
||||
LLVMX86FastcallCallConv);
|
||||
|
||||
for LLVMCallConv use
|
||||
(LLVMCCallConv => 0,
|
||||
LLVMFastCallConv => 8,
|
||||
LLVMColdCallConv => 9,
|
||||
LLVMX86StdcallCallConv => 64,
|
||||
LLVMX86FastcallCallConv => 65);
|
||||
|
||||
pragma Convention (C, LLVMCallConv);
|
||||
|
||||
type LLVMCallConv_array is
|
||||
array (Interfaces.C.size_t range <>) of aliased llvm.LLVMCallConv;
|
||||
|
||||
type LLVMCallConv_view is access all llvm.LLVMCallConv;
|
||||
|
||||
-- LLVMIntPredicate
|
||||
--
|
||||
type LLVMIntPredicate is (
|
||||
LLVMIntEQ,
|
||||
LLVMIntNE,
|
||||
LLVMIntUGT,
|
||||
LLVMIntUGE,
|
||||
LLVMIntULT,
|
||||
LLVMIntULE,
|
||||
LLVMIntSGT,
|
||||
LLVMIntSGE,
|
||||
LLVMIntSLT,
|
||||
LLVMIntSLE);
|
||||
|
||||
for LLVMIntPredicate use
|
||||
(LLVMIntEQ => 32,
|
||||
LLVMIntNE => 33,
|
||||
LLVMIntUGT => 34,
|
||||
LLVMIntUGE => 35,
|
||||
LLVMIntULT => 36,
|
||||
LLVMIntULE => 37,
|
||||
LLVMIntSGT => 38,
|
||||
LLVMIntSGE => 39,
|
||||
LLVMIntSLT => 40,
|
||||
LLVMIntSLE => 41);
|
||||
|
||||
pragma Convention (C, LLVMIntPredicate);
|
||||
|
||||
type LLVMIntPredicate_array is
|
||||
array (Interfaces.C.size_t range <>) of aliased llvm.LLVMIntPredicate;
|
||||
|
||||
type LLVMIntPredicate_view is access all llvm.LLVMIntPredicate;
|
||||
|
||||
-- LLVMRealPredicate
|
||||
--
|
||||
type LLVMRealPredicate is (
|
||||
LLVMRealPredicateFalse,
|
||||
LLVMRealOEQ,
|
||||
LLVMRealOGT,
|
||||
LLVMRealOGE,
|
||||
LLVMRealOLT,
|
||||
LLVMRealOLE,
|
||||
LLVMRealONE,
|
||||
LLVMRealORD,
|
||||
LLVMRealUNO,
|
||||
LLVMRealUEQ,
|
||||
LLVMRealUGT,
|
||||
LLVMRealUGE,
|
||||
LLVMRealULT,
|
||||
LLVMRealULE,
|
||||
LLVMRealUNE,
|
||||
LLVMRealPredicateTrue);
|
||||
|
||||
for LLVMRealPredicate use
|
||||
(LLVMRealPredicateFalse => 0,
|
||||
LLVMRealOEQ => 1,
|
||||
LLVMRealOGT => 2,
|
||||
LLVMRealOGE => 3,
|
||||
LLVMRealOLT => 4,
|
||||
LLVMRealOLE => 5,
|
||||
LLVMRealONE => 6,
|
||||
LLVMRealORD => 7,
|
||||
LLVMRealUNO => 8,
|
||||
LLVMRealUEQ => 9,
|
||||
LLVMRealUGT => 10,
|
||||
LLVMRealUGE => 11,
|
||||
LLVMRealULT => 12,
|
||||
LLVMRealULE => 13,
|
||||
LLVMRealUNE => 14,
|
||||
LLVMRealPredicateTrue => 15);
|
||||
|
||||
pragma Convention (C, LLVMRealPredicate);
|
||||
|
||||
type LLVMRealPredicate_array is
|
||||
array (Interfaces.C.size_t range <>)
|
||||
of aliased llvm.LLVMRealPredicate;
|
||||
|
||||
type LLVMRealPredicate_view is access all llvm.LLVMRealPredicate;
|
||||
|
||||
-- ModuleProvider
|
||||
--
|
||||
type ModuleProvider is new Interfaces.C.Extensions.incomplete_class_def;
|
||||
|
||||
type ModuleProvider_array is
|
||||
array (Interfaces.C.size_t range <>) of aliased llvm.ModuleProvider;
|
||||
|
||||
type ModuleProvider_view is access all llvm.ModuleProvider;
|
||||
|
||||
-- MemoryBuffer
|
||||
--
|
||||
type MemoryBuffer is new Interfaces.C.Extensions.incomplete_class_def;
|
||||
|
||||
type MemoryBuffer_array is
|
||||
array (Interfaces.C.size_t range <>) of aliased llvm.MemoryBuffer;
|
||||
|
||||
type MemoryBuffer_view is access all llvm.MemoryBuffer;
|
||||
|
||||
-- PassManagerBase
|
||||
--
|
||||
type PassManagerBase is new Interfaces.C.Extensions.incomplete_class_def;
|
||||
|
||||
type PassManagerBase_array is
|
||||
array (Interfaces.C.size_t range <>) of aliased llvm.PassManagerBase;
|
||||
|
||||
type PassManagerBase_view is access all llvm.PassManagerBase;
|
||||
|
||||
end llvm;
|
207
bindings/ada/llvm/llvm_link_time_optimizer-binding.ads
Normal file
207
bindings/ada/llvm/llvm_link_time_optimizer-binding.ads
Normal file
@ -0,0 +1,207 @@
|
||||
-- This file is generated by SWIG. Do *not* modify by hand.
|
||||
--
|
||||
|
||||
with Interfaces.C.Strings;
|
||||
|
||||
|
||||
package LLVM_link_time_Optimizer.Binding is
|
||||
|
||||
LTO_H : constant := 1;
|
||||
LTO_API_VERSION : constant := 3;
|
||||
|
||||
function lto_get_version return Interfaces.C.Strings.chars_ptr;
|
||||
|
||||
function lto_get_error_message return Interfaces.C.Strings.chars_ptr;
|
||||
|
||||
function lto_module_is_object_file
|
||||
(path : in Interfaces.C.Strings.chars_ptr)
|
||||
return Interfaces.C.Extensions.bool;
|
||||
|
||||
function lto_module_is_object_file_for_target
|
||||
(path : in Interfaces.C.Strings.chars_ptr;
|
||||
target_triple_prefix : in Interfaces.C.Strings.chars_ptr)
|
||||
return Interfaces.C.Extensions.bool;
|
||||
|
||||
function lto_module_is_object_file_in_memory
|
||||
(mem : access Interfaces.C.Extensions.void;
|
||||
length : in Interfaces.C.size_t)
|
||||
return Interfaces.C.Extensions.bool;
|
||||
|
||||
function lto_module_is_object_file_in_memory_for_target
|
||||
(mem : access Interfaces.C.Extensions.void;
|
||||
length : in Interfaces.C.size_t;
|
||||
target_triple_prefix : in Interfaces.C.Strings.chars_ptr)
|
||||
return Interfaces.C.Extensions.bool;
|
||||
|
||||
function lto_module_create
|
||||
(path : in Interfaces.C.Strings.chars_ptr)
|
||||
return LLVM_link_time_Optimizer.lto_module_t;
|
||||
|
||||
function lto_module_create_from_memory
|
||||
(mem : access Interfaces.C.Extensions.void;
|
||||
length : in Interfaces.C.size_t)
|
||||
return LLVM_link_time_Optimizer.lto_module_t;
|
||||
|
||||
procedure lto_module_dispose
|
||||
(the_mod : in LLVM_link_time_Optimizer.lto_module_t);
|
||||
|
||||
function lto_module_get_target_triple
|
||||
(the_mod : in LLVM_link_time_Optimizer.lto_module_t)
|
||||
return Interfaces.C.Strings.chars_ptr;
|
||||
|
||||
function lto_module_get_num_symbols
|
||||
(the_mod : in LLVM_link_time_Optimizer.lto_module_t)
|
||||
return Interfaces.C.unsigned;
|
||||
|
||||
function lto_module_get_symbol_name
|
||||
(the_mod : in LLVM_link_time_Optimizer.lto_module_t;
|
||||
index : in Interfaces.C.unsigned)
|
||||
return Interfaces.C.Strings.chars_ptr;
|
||||
|
||||
function lto_module_get_symbol_attribute
|
||||
(the_mod : in LLVM_link_time_Optimizer.lto_module_t;
|
||||
index : in Interfaces.C.unsigned)
|
||||
return LLVM_link_time_Optimizer.lto_symbol_attributes;
|
||||
|
||||
function lto_codegen_create return LLVM_link_time_Optimizer.lto_code_gen_t;
|
||||
|
||||
procedure lto_codegen_dispose
|
||||
(arg_1 : in LLVM_link_time_Optimizer.lto_code_gen_t);
|
||||
|
||||
function lto_codegen_add_module
|
||||
(cg : in LLVM_link_time_Optimizer.lto_code_gen_t;
|
||||
the_mod : in LLVM_link_time_Optimizer.lto_module_t)
|
||||
return Interfaces.C.Extensions.bool;
|
||||
|
||||
function lto_codegen_set_debug_model
|
||||
(cg : in LLVM_link_time_Optimizer.lto_code_gen_t;
|
||||
arg_1 : in LLVM_link_time_Optimizer.lto_debug_model)
|
||||
return Interfaces.C.Extensions.bool;
|
||||
|
||||
function lto_codegen_set_pic_model
|
||||
(cg : in LLVM_link_time_Optimizer.lto_code_gen_t;
|
||||
arg_1 : in LLVM_link_time_Optimizer.lto_codegen_model)
|
||||
return Interfaces.C.Extensions.bool;
|
||||
|
||||
procedure lto_codegen_set_gcc_path
|
||||
(cg : in LLVM_link_time_Optimizer.lto_code_gen_t;
|
||||
path : in Interfaces.C.Strings.chars_ptr);
|
||||
|
||||
procedure lto_codegen_set_assembler_path
|
||||
(cg : in LLVM_link_time_Optimizer.lto_code_gen_t;
|
||||
path : in Interfaces.C.Strings.chars_ptr);
|
||||
|
||||
procedure lto_codegen_add_must_preserve_symbol
|
||||
(cg : in LLVM_link_time_Optimizer.lto_code_gen_t;
|
||||
symbol : in Interfaces.C.Strings.chars_ptr);
|
||||
|
||||
function lto_codegen_write_merged_modules
|
||||
(cg : in LLVM_link_time_Optimizer.lto_code_gen_t;
|
||||
path : in Interfaces.C.Strings.chars_ptr)
|
||||
return Interfaces.C.Extensions.bool;
|
||||
|
||||
function lto_codegen_compile
|
||||
(cg : in LLVM_link_time_Optimizer.lto_code_gen_t;
|
||||
length : access Interfaces.C.size_t)
|
||||
return access Interfaces.C.Extensions.void;
|
||||
|
||||
procedure lto_codegen_debug_options
|
||||
(cg : in LLVM_link_time_Optimizer.lto_code_gen_t;
|
||||
arg_1 : in Interfaces.C.Strings.chars_ptr);
|
||||
|
||||
function llvm_create_optimizer return
|
||||
LLVM_link_time_Optimizer.llvm_lto_t;
|
||||
|
||||
procedure llvm_destroy_optimizer
|
||||
(lto : in LLVM_link_time_Optimizer.llvm_lto_t);
|
||||
|
||||
function llvm_read_object_file
|
||||
(lto : in LLVM_link_time_Optimizer.llvm_lto_t;
|
||||
input_filename : in Interfaces.C.Strings.chars_ptr)
|
||||
return LLVM_link_time_Optimizer.llvm_lto_status_t;
|
||||
|
||||
function llvm_optimize_modules
|
||||
(lto : in LLVM_link_time_Optimizer.llvm_lto_t;
|
||||
output_filename : in Interfaces.C.Strings.chars_ptr)
|
||||
return LLVM_link_time_Optimizer.llvm_lto_status_t;
|
||||
|
||||
private
|
||||
|
||||
pragma Import (C, lto_get_version, "Ada_lto_get_version");
|
||||
pragma Import (C, lto_get_error_message, "Ada_lto_get_error_message");
|
||||
pragma Import
|
||||
(C,
|
||||
lto_module_is_object_file,
|
||||
"Ada_lto_module_is_object_file");
|
||||
pragma Import
|
||||
(C,
|
||||
lto_module_is_object_file_for_target,
|
||||
"Ada_lto_module_is_object_file_for_target");
|
||||
pragma Import
|
||||
(C,
|
||||
lto_module_is_object_file_in_memory,
|
||||
"Ada_lto_module_is_object_file_in_memory");
|
||||
pragma Import
|
||||
(C,
|
||||
lto_module_is_object_file_in_memory_for_target,
|
||||
"Ada_lto_module_is_object_file_in_memory_for_target");
|
||||
pragma Import (C, lto_module_create, "Ada_lto_module_create");
|
||||
pragma Import
|
||||
(C,
|
||||
lto_module_create_from_memory,
|
||||
"Ada_lto_module_create_from_memory");
|
||||
pragma Import (C, lto_module_dispose, "Ada_lto_module_dispose");
|
||||
pragma Import
|
||||
(C,
|
||||
lto_module_get_target_triple,
|
||||
"Ada_lto_module_get_target_triple");
|
||||
pragma Import
|
||||
(C,
|
||||
lto_module_get_num_symbols,
|
||||
"Ada_lto_module_get_num_symbols");
|
||||
pragma Import
|
||||
(C,
|
||||
lto_module_get_symbol_name,
|
||||
"Ada_lto_module_get_symbol_name");
|
||||
pragma Import
|
||||
(C,
|
||||
lto_module_get_symbol_attribute,
|
||||
"Ada_lto_module_get_symbol_attribute");
|
||||
pragma Import (C, lto_codegen_create, "Ada_lto_codegen_create");
|
||||
pragma Import (C, lto_codegen_dispose, "Ada_lto_codegen_dispose");
|
||||
pragma Import (C, lto_codegen_add_module, "Ada_lto_codegen_add_module");
|
||||
pragma Import
|
||||
(C,
|
||||
lto_codegen_set_debug_model,
|
||||
"Ada_lto_codegen_set_debug_model");
|
||||
pragma Import
|
||||
(C,
|
||||
lto_codegen_set_pic_model,
|
||||
"Ada_lto_codegen_set_pic_model");
|
||||
pragma Import
|
||||
(C,
|
||||
lto_codegen_set_gcc_path,
|
||||
"Ada_lto_codegen_set_gcc_path");
|
||||
pragma Import
|
||||
(C,
|
||||
lto_codegen_set_assembler_path,
|
||||
"Ada_lto_codegen_set_assembler_path");
|
||||
pragma Import
|
||||
(C,
|
||||
lto_codegen_add_must_preserve_symbol,
|
||||
"Ada_lto_codegen_add_must_preserve_symbol");
|
||||
pragma Import
|
||||
(C,
|
||||
lto_codegen_write_merged_modules,
|
||||
"Ada_lto_codegen_write_merged_modules");
|
||||
pragma Import (C, lto_codegen_compile, "Ada_lto_codegen_compile");
|
||||
pragma Import
|
||||
(C,
|
||||
lto_codegen_debug_options,
|
||||
"Ada_lto_codegen_debug_options");
|
||||
pragma Import (C, llvm_create_optimizer, "Ada_llvm_create_optimizer");
|
||||
pragma Import (C, llvm_destroy_optimizer, "Ada_llvm_destroy_optimizer");
|
||||
pragma Import (C, llvm_read_object_file, "Ada_llvm_read_object_file");
|
||||
pragma Import (C, llvm_optimize_modules, "Ada_llvm_optimize_modules");
|
||||
|
||||
end LLVM_link_time_Optimizer.Binding;
|
184
bindings/ada/llvm/llvm_link_time_optimizer.ads
Normal file
184
bindings/ada/llvm/llvm_link_time_optimizer.ads
Normal file
@ -0,0 +1,184 @@
|
||||
-- This file is generated by SWIG. Do *not* modify by hand.
|
||||
--
|
||||
|
||||
with Interfaces.C.Extensions;
|
||||
|
||||
|
||||
package LLVM_link_time_Optimizer is
|
||||
|
||||
-- lto_symbol_attributes
|
||||
--
|
||||
type lto_symbol_attributes is (
|
||||
LTO_SYMBOL_ALIGNMENT_MASK,
|
||||
LTO_SYMBOL_PERMISSIONS_RODATA,
|
||||
LTO_SYMBOL_PERMISSIONS_CODE,
|
||||
LTO_SYMBOL_PERMISSIONS_DATA,
|
||||
LTO_SYMBOL_PERMISSIONS_MASK,
|
||||
LTO_SYMBOL_DEFINITION_REGULAR,
|
||||
LTO_SYMBOL_DEFINITION_TENTATIVE,
|
||||
LTO_SYMBOL_DEFINITION_WEAK,
|
||||
LTO_SYMBOL_DEFINITION_UNDEFINED,
|
||||
LTO_SYMBOL_DEFINITION_WEAKUNDEF,
|
||||
LTO_SYMBOL_DEFINITION_MASK,
|
||||
LTO_SYMBOL_SCOPE_INTERNAL,
|
||||
LTO_SYMBOL_SCOPE_HIDDEN,
|
||||
LTO_SYMBOL_SCOPE_DEFAULT,
|
||||
LTO_SYMBOL_SCOPE_PROTECTED,
|
||||
LTO_SYMBOL_SCOPE_MASK);
|
||||
|
||||
for lto_symbol_attributes use
|
||||
(LTO_SYMBOL_ALIGNMENT_MASK => 31,
|
||||
LTO_SYMBOL_PERMISSIONS_RODATA => 128,
|
||||
LTO_SYMBOL_PERMISSIONS_CODE => 160,
|
||||
LTO_SYMBOL_PERMISSIONS_DATA => 192,
|
||||
LTO_SYMBOL_PERMISSIONS_MASK => 224,
|
||||
LTO_SYMBOL_DEFINITION_REGULAR => 256,
|
||||
LTO_SYMBOL_DEFINITION_TENTATIVE => 512,
|
||||
LTO_SYMBOL_DEFINITION_WEAK => 768,
|
||||
LTO_SYMBOL_DEFINITION_UNDEFINED => 1024,
|
||||
LTO_SYMBOL_DEFINITION_WEAKUNDEF => 1280,
|
||||
LTO_SYMBOL_DEFINITION_MASK => 1792,
|
||||
LTO_SYMBOL_SCOPE_INTERNAL => 2048,
|
||||
LTO_SYMBOL_SCOPE_HIDDEN => 4096,
|
||||
LTO_SYMBOL_SCOPE_DEFAULT => 6144,
|
||||
LTO_SYMBOL_SCOPE_PROTECTED => 8192,
|
||||
LTO_SYMBOL_SCOPE_MASK => 14336);
|
||||
|
||||
pragma Convention (C, lto_symbol_attributes);
|
||||
|
||||
type lto_symbol_attributes_array is
|
||||
array (Interfaces.C.size_t range <>)
|
||||
of aliased LLVM_link_time_Optimizer.lto_symbol_attributes;
|
||||
|
||||
type lto_symbol_attributes_view is access all
|
||||
LLVM_link_time_Optimizer.lto_symbol_attributes;
|
||||
|
||||
-- lto_debug_model
|
||||
--
|
||||
type lto_debug_model is (LTO_DEBUG_MODEL_NONE, LTO_DEBUG_MODEL_DWARF);
|
||||
|
||||
for lto_debug_model use
|
||||
(LTO_DEBUG_MODEL_NONE => 0,
|
||||
LTO_DEBUG_MODEL_DWARF => 1);
|
||||
|
||||
pragma Convention (C, lto_debug_model);
|
||||
|
||||
type lto_debug_model_array is
|
||||
array (Interfaces.C.size_t range <>)
|
||||
of aliased LLVM_link_time_Optimizer.lto_debug_model;
|
||||
|
||||
type lto_debug_model_view is access all
|
||||
LLVM_link_time_Optimizer.lto_debug_model;
|
||||
|
||||
-- lto_codegen_model
|
||||
--
|
||||
type lto_codegen_model is (
|
||||
LTO_CODEGEN_PIC_MODEL_STATIC,
|
||||
LTO_CODEGEN_PIC_MODEL_DYNAMIC,
|
||||
LTO_CODEGEN_PIC_MODEL_DYNAMIC_NO_PIC);
|
||||
|
||||
for lto_codegen_model use
|
||||
(LTO_CODEGEN_PIC_MODEL_STATIC => 0,
|
||||
LTO_CODEGEN_PIC_MODEL_DYNAMIC => 1,
|
||||
LTO_CODEGEN_PIC_MODEL_DYNAMIC_NO_PIC => 2);
|
||||
|
||||
pragma Convention (C, lto_codegen_model);
|
||||
|
||||
type lto_codegen_model_array is
|
||||
array (Interfaces.C.size_t range <>)
|
||||
of aliased LLVM_link_time_Optimizer.lto_codegen_model;
|
||||
|
||||
type lto_codegen_model_view is access all
|
||||
LLVM_link_time_Optimizer.lto_codegen_model;
|
||||
|
||||
-- LTOModule
|
||||
--
|
||||
type LTOModule is new Interfaces.C.Extensions.opaque_structure_def;
|
||||
|
||||
type LTOModule_array is
|
||||
array (Interfaces.C.size_t range <>)
|
||||
of aliased LLVM_link_time_Optimizer.LTOModule;
|
||||
|
||||
type LTOModule_view is access all LLVM_link_time_Optimizer.LTOModule;
|
||||
|
||||
-- lto_module_t
|
||||
--
|
||||
type lto_module_t is access all LLVM_link_time_Optimizer.LTOModule;
|
||||
|
||||
type lto_module_t_array is
|
||||
array (Interfaces.C.size_t range <>)
|
||||
of aliased LLVM_link_time_Optimizer.lto_module_t;
|
||||
|
||||
type lto_module_t_view is access all LLVM_link_time_Optimizer.lto_module_t;
|
||||
|
||||
-- LTOCodeGenerator
|
||||
--
|
||||
type LTOCodeGenerator is new Interfaces.C.Extensions.opaque_structure_def;
|
||||
|
||||
type LTOCodeGenerator_array is
|
||||
array (Interfaces.C.size_t range <>)
|
||||
of aliased LLVM_link_time_Optimizer.LTOCodeGenerator;
|
||||
|
||||
type LTOCodeGenerator_view is access all
|
||||
LLVM_link_time_Optimizer.LTOCodeGenerator;
|
||||
|
||||
-- lto_code_gen_t
|
||||
--
|
||||
type lto_code_gen_t is access all LLVM_link_time_Optimizer.LTOCodeGenerator;
|
||||
|
||||
type lto_code_gen_t_array is
|
||||
array (Interfaces.C.size_t range <>)
|
||||
of aliased LLVM_link_time_Optimizer.lto_code_gen_t;
|
||||
|
||||
type lto_code_gen_t_view is access all
|
||||
LLVM_link_time_Optimizer.lto_code_gen_t;
|
||||
|
||||
-- llvm_lto_status_t
|
||||
--
|
||||
type llvm_lto_status_t is (
|
||||
LLVM_LTO_UNKNOWN,
|
||||
LLVM_LTO_OPT_SUCCESS,
|
||||
LLVM_LTO_READ_SUCCESS,
|
||||
LLVM_LTO_READ_FAILURE,
|
||||
LLVM_LTO_WRITE_FAILURE,
|
||||
LLVM_LTO_NO_TARGET,
|
||||
LLVM_LTO_NO_WORK,
|
||||
LLVM_LTO_MODULE_MERGE_FAILURE,
|
||||
LLVM_LTO_ASM_FAILURE,
|
||||
LLVM_LTO_NULL_OBJECT);
|
||||
|
||||
for llvm_lto_status_t use
|
||||
(LLVM_LTO_UNKNOWN => 0,
|
||||
LLVM_LTO_OPT_SUCCESS => 1,
|
||||
LLVM_LTO_READ_SUCCESS => 2,
|
||||
LLVM_LTO_READ_FAILURE => 3,
|
||||
LLVM_LTO_WRITE_FAILURE => 4,
|
||||
LLVM_LTO_NO_TARGET => 5,
|
||||
LLVM_LTO_NO_WORK => 6,
|
||||
LLVM_LTO_MODULE_MERGE_FAILURE => 7,
|
||||
LLVM_LTO_ASM_FAILURE => 8,
|
||||
LLVM_LTO_NULL_OBJECT => 9);
|
||||
|
||||
pragma Convention (C, llvm_lto_status_t);
|
||||
|
||||
type llvm_lto_status_t_array is
|
||||
array (Interfaces.C.size_t range <>)
|
||||
of aliased LLVM_link_time_Optimizer.llvm_lto_status_t;
|
||||
|
||||
type llvm_lto_status_t_view is access all
|
||||
LLVM_link_time_Optimizer.llvm_lto_status_t;
|
||||
|
||||
|
||||
-- llvm_lto_t
|
||||
--
|
||||
type llvm_lto_t is access all Interfaces.C.Extensions.void;
|
||||
|
||||
type llvm_lto_t_array is
|
||||
array (Interfaces.C.size_t range <>)
|
||||
of aliased LLVM_link_time_Optimizer.llvm_lto_t;
|
||||
|
||||
type llvm_lto_t_view is access all
|
||||
LLVM_link_time_Optimizer.llvm_lto_t;
|
||||
|
||||
|
||||
end LLVM_link_time_Optimizer;
|
923
bindings/ada/llvm/llvm_linktimeoptimizer_wrap.cxx
Normal file
923
bindings/ada/llvm/llvm_linktimeoptimizer_wrap.cxx
Normal file
@ -0,0 +1,923 @@
|
||||
/* ----------------------------------------------------------------------------
|
||||
* This file was automatically generated by SWIG (http://www.swig.org).
|
||||
* Version 1.3.36
|
||||
*
|
||||
* This file is not intended to be easily readable and contains a number of
|
||||
* coding conventions designed to improve portability and efficiency. Do not make
|
||||
* changes to this file unless you know what you are doing--modify the SWIG
|
||||
* interface file instead.
|
||||
* ----------------------------------------------------------------------------- */
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
template<typename T> class SwigValueWrapper {
|
||||
T *tt;
|
||||
public:
|
||||
SwigValueWrapper() : tt(0) { }
|
||||
SwigValueWrapper(const SwigValueWrapper<T>& rhs) : tt(new T(*rhs.tt)) { }
|
||||
SwigValueWrapper(const T& t) : tt(new T(t)) { }
|
||||
~SwigValueWrapper() { delete tt; }
|
||||
SwigValueWrapper& operator=(const T& t) { delete tt; tt = new T(t); return *this; }
|
||||
operator T&() const { return *tt; }
|
||||
T *operator&() { return tt; }
|
||||
private:
|
||||
SwigValueWrapper& operator=(const SwigValueWrapper<T>& rhs);
|
||||
};
|
||||
|
||||
template <typename T> T SwigValueInit() {
|
||||
return T();
|
||||
}
|
||||
#endif
|
||||
|
||||
/* -----------------------------------------------------------------------------
|
||||
* This section contains generic SWIG labels for method/variable
|
||||
* declarations/attributes, and other compiler dependent labels.
|
||||
* ----------------------------------------------------------------------------- */
|
||||
|
||||
/* template workaround for compilers that cannot correctly implement the C++ standard */
|
||||
#ifndef SWIGTEMPLATEDISAMBIGUATOR
|
||||
# if defined(__SUNPRO_CC) && (__SUNPRO_CC <= 0x560)
|
||||
# define SWIGTEMPLATEDISAMBIGUATOR template
|
||||
# elif defined(__HP_aCC)
|
||||
/* Needed even with `aCC -AA' when `aCC -V' reports HP ANSI C++ B3910B A.03.55 */
|
||||
/* If we find a maximum version that requires this, the test would be __HP_aCC <= 35500 for A.03.55 */
|
||||
# define SWIGTEMPLATEDISAMBIGUATOR template
|
||||
# else
|
||||
# define SWIGTEMPLATEDISAMBIGUATOR
|
||||
# endif
|
||||
#endif
|
||||
|
||||
/* inline attribute */
|
||||
#ifndef SWIGINLINE
|
||||
# if defined(__cplusplus) || (defined(__GNUC__) && !defined(__STRICT_ANSI__))
|
||||
# define SWIGINLINE inline
|
||||
# else
|
||||
# define SWIGINLINE
|
||||
# endif
|
||||
#endif
|
||||
|
||||
/* attribute recognised by some compilers to avoid 'unused' warnings */
|
||||
#ifndef SWIGUNUSED
|
||||
# if defined(__GNUC__)
|
||||
# if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
|
||||
# define SWIGUNUSED __attribute__ ((__unused__))
|
||||
# else
|
||||
# define SWIGUNUSED
|
||||
# endif
|
||||
# elif defined(__ICC)
|
||||
# define SWIGUNUSED __attribute__ ((__unused__))
|
||||
# else
|
||||
# define SWIGUNUSED
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#ifndef SWIGUNUSEDPARM
|
||||
# ifdef __cplusplus
|
||||
# define SWIGUNUSEDPARM(p)
|
||||
# else
|
||||
# define SWIGUNUSEDPARM(p) p SWIGUNUSED
|
||||
# endif
|
||||
#endif
|
||||
|
||||
/* internal SWIG method */
|
||||
#ifndef SWIGINTERN
|
||||
# define SWIGINTERN static SWIGUNUSED
|
||||
#endif
|
||||
|
||||
/* internal inline SWIG method */
|
||||
#ifndef SWIGINTERNINLINE
|
||||
# define SWIGINTERNINLINE SWIGINTERN SWIGINLINE
|
||||
#endif
|
||||
|
||||
/* exporting methods */
|
||||
#if (__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)
|
||||
# ifndef GCC_HASCLASSVISIBILITY
|
||||
# define GCC_HASCLASSVISIBILITY
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#ifndef SWIGEXPORT
|
||||
# if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
|
||||
# if defined(STATIC_LINKED)
|
||||
# define SWIGEXPORT
|
||||
# else
|
||||
# define SWIGEXPORT __declspec(dllexport)
|
||||
# endif
|
||||
# else
|
||||
# if defined(__GNUC__) && defined(GCC_HASCLASSVISIBILITY)
|
||||
# define SWIGEXPORT __attribute__ ((visibility("default")))
|
||||
# else
|
||||
# define SWIGEXPORT
|
||||
# endif
|
||||
# endif
|
||||
#endif
|
||||
|
||||
/* calling conventions for Windows */
|
||||
#ifndef SWIGSTDCALL
|
||||
# if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
|
||||
# define SWIGSTDCALL __stdcall
|
||||
# else
|
||||
# define SWIGSTDCALL
|
||||
# endif
|
||||
#endif
|
||||
|
||||
/* Deal with Microsoft's attempt at deprecating C standard runtime functions */
|
||||
#if !defined(SWIG_NO_CRT_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_CRT_SECURE_NO_DEPRECATE)
|
||||
# define _CRT_SECURE_NO_DEPRECATE
|
||||
#endif
|
||||
|
||||
/* Deal with Microsoft's attempt at deprecating methods in the standard C++ library */
|
||||
#if !defined(SWIG_NO_SCL_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_SCL_SECURE_NO_DEPRECATE)
|
||||
# define _SCL_SECURE_NO_DEPRECATE
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <stdio.h>
|
||||
#if defined(_WIN32) || defined(__CYGWIN32__)
|
||||
# define DllExport __declspec( dllexport )
|
||||
# define SWIGSTDCALL __stdcall
|
||||
#else
|
||||
# define DllExport
|
||||
# define SWIGSTDCALL
|
||||
#endif
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
# include <new>
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
||||
/* Support for throwing Ada exceptions from C/C++ */
|
||||
|
||||
typedef enum
|
||||
{
|
||||
SWIG_AdaException,
|
||||
SWIG_AdaOutOfMemoryException,
|
||||
SWIG_AdaIndexOutOfRangeException,
|
||||
SWIG_AdaDivideByZeroException,
|
||||
SWIG_AdaArgumentOutOfRangeException,
|
||||
SWIG_AdaNullReferenceException
|
||||
} SWIG_AdaExceptionCodes;
|
||||
|
||||
|
||||
typedef void (SWIGSTDCALL* SWIG_AdaExceptionCallback_t)(const char *);
|
||||
|
||||
|
||||
typedef struct
|
||||
{
|
||||
SWIG_AdaExceptionCodes code;
|
||||
SWIG_AdaExceptionCallback_t callback;
|
||||
}
|
||||
SWIG_AdaExceptions_t;
|
||||
|
||||
|
||||
static
|
||||
SWIG_AdaExceptions_t
|
||||
SWIG_ada_exceptions[] =
|
||||
{
|
||||
{ SWIG_AdaException, NULL },
|
||||
{ SWIG_AdaOutOfMemoryException, NULL },
|
||||
{ SWIG_AdaIndexOutOfRangeException, NULL },
|
||||
{ SWIG_AdaDivideByZeroException, NULL },
|
||||
{ SWIG_AdaArgumentOutOfRangeException, NULL },
|
||||
{ SWIG_AdaNullReferenceException, NULL }
|
||||
};
|
||||
|
||||
|
||||
static
|
||||
void
|
||||
SWIG_AdaThrowException (SWIG_AdaExceptionCodes code, const char *msg)
|
||||
{
|
||||
SWIG_AdaExceptionCallback_t callback = SWIG_ada_exceptions[SWIG_AdaException].callback;
|
||||
if (code >=0 && (size_t)code < sizeof(SWIG_ada_exceptions)/sizeof(SWIG_AdaExceptions_t)) {
|
||||
callback = SWIG_ada_exceptions[code].callback;
|
||||
}
|
||||
callback(msg);
|
||||
}
|
||||
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
#endif
|
||||
|
||||
DllExport void SWIGSTDCALL SWIGRegisterExceptionCallbacks_LLVM_link_time_Optimizer (SWIG_AdaExceptionCallback_t systemException,
|
||||
SWIG_AdaExceptionCallback_t outOfMemory,
|
||||
SWIG_AdaExceptionCallback_t indexOutOfRange,
|
||||
SWIG_AdaExceptionCallback_t divideByZero,
|
||||
SWIG_AdaExceptionCallback_t argumentOutOfRange,
|
||||
SWIG_AdaExceptionCallback_t nullReference)
|
||||
{
|
||||
SWIG_ada_exceptions [SWIG_AdaException].callback = systemException;
|
||||
SWIG_ada_exceptions [SWIG_AdaOutOfMemoryException].callback = outOfMemory;
|
||||
SWIG_ada_exceptions [SWIG_AdaIndexOutOfRangeException].callback = indexOutOfRange;
|
||||
SWIG_ada_exceptions [SWIG_AdaDivideByZeroException].callback = divideByZero;
|
||||
SWIG_ada_exceptions [SWIG_AdaArgumentOutOfRangeException].callback = argumentOutOfRange;
|
||||
SWIG_ada_exceptions [SWIG_AdaNullReferenceException].callback = nullReference;
|
||||
}
|
||||
|
||||
|
||||
/* Callback for returning strings to Ada without leaking memory */
|
||||
|
||||
typedef char * (SWIGSTDCALL* SWIG_AdaStringHelperCallback)(const char *);
|
||||
static SWIG_AdaStringHelperCallback SWIG_ada_string_callback = NULL;
|
||||
|
||||
|
||||
|
||||
/* probably obsolete ...
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
#endif
|
||||
DllExport void SWIGSTDCALL SWIGRegisterStringCallback_LLVM_link_time_Optimizer(SWIG_AdaStringHelperCallback callback) {
|
||||
SWIG_ada_string_callback = callback;
|
||||
}
|
||||
*/
|
||||
|
||||
|
||||
|
||||
/* Contract support */
|
||||
|
||||
#define SWIG_contract_assert(nullreturn, expr, msg) if (!(expr)) {SWIG_AdaThrowException(SWIG_AdaArgumentOutOfRangeException, msg); return nullreturn; } else
|
||||
|
||||
|
||||
#define protected public
|
||||
#define private public
|
||||
|
||||
#include "llvm-c/lto.h"
|
||||
#include "llvm-c/LinkTimeOptimizer.h"
|
||||
|
||||
|
||||
|
||||
// struct LLVMCtxt;
|
||||
|
||||
|
||||
#undef protected
|
||||
#undef private
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
DllExport char * SWIGSTDCALL Ada_lto_get_version (
|
||||
)
|
||||
{
|
||||
char * jresult ;
|
||||
char *result = 0 ;
|
||||
|
||||
result = (char *)lto_get_version();
|
||||
jresult = result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport char * SWIGSTDCALL Ada_lto_get_error_message (
|
||||
)
|
||||
{
|
||||
char * jresult ;
|
||||
char *result = 0 ;
|
||||
|
||||
result = (char *)lto_get_error_message();
|
||||
jresult = result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport unsigned int SWIGSTDCALL Ada_lto_module_is_object_file (
|
||||
char * jarg1
|
||||
)
|
||||
{
|
||||
unsigned int jresult ;
|
||||
char *arg1 = (char *) 0 ;
|
||||
bool result;
|
||||
|
||||
arg1 = jarg1;
|
||||
|
||||
result = (bool)lto_module_is_object_file((char const *)arg1);
|
||||
jresult = result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport unsigned int SWIGSTDCALL Ada_lto_module_is_object_file_for_target (
|
||||
char * jarg1
|
||||
,
|
||||
|
||||
char * jarg2
|
||||
)
|
||||
{
|
||||
unsigned int jresult ;
|
||||
char *arg1 = (char *) 0 ;
|
||||
char *arg2 = (char *) 0 ;
|
||||
bool result;
|
||||
|
||||
arg1 = jarg1;
|
||||
|
||||
arg2 = jarg2;
|
||||
|
||||
result = (bool)lto_module_is_object_file_for_target((char const *)arg1,(char const *)arg2);
|
||||
jresult = result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport unsigned int SWIGSTDCALL Ada_lto_module_is_object_file_in_memory (
|
||||
void* jarg1
|
||||
,
|
||||
|
||||
size_t jarg2
|
||||
)
|
||||
{
|
||||
unsigned int jresult ;
|
||||
void *arg1 = (void *) 0 ;
|
||||
size_t arg2 ;
|
||||
bool result;
|
||||
|
||||
arg1 = (void *)jarg1;
|
||||
|
||||
|
||||
arg2 = (size_t) jarg2;
|
||||
|
||||
|
||||
result = (bool)lto_module_is_object_file_in_memory((void const *)arg1,arg2);
|
||||
jresult = result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport unsigned int SWIGSTDCALL Ada_lto_module_is_object_file_in_memory_for_target (
|
||||
void* jarg1
|
||||
,
|
||||
|
||||
size_t jarg2
|
||||
,
|
||||
|
||||
char * jarg3
|
||||
)
|
||||
{
|
||||
unsigned int jresult ;
|
||||
void *arg1 = (void *) 0 ;
|
||||
size_t arg2 ;
|
||||
char *arg3 = (char *) 0 ;
|
||||
bool result;
|
||||
|
||||
arg1 = (void *)jarg1;
|
||||
|
||||
|
||||
arg2 = (size_t) jarg2;
|
||||
|
||||
|
||||
arg3 = jarg3;
|
||||
|
||||
result = (bool)lto_module_is_object_file_in_memory_for_target((void const *)arg1,arg2,(char const *)arg3);
|
||||
jresult = result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void * SWIGSTDCALL Ada_lto_module_create (
|
||||
char * jarg1
|
||||
)
|
||||
{
|
||||
void * jresult ;
|
||||
char *arg1 = (char *) 0 ;
|
||||
lto_module_t result;
|
||||
|
||||
arg1 = jarg1;
|
||||
|
||||
result = (lto_module_t)lto_module_create((char const *)arg1);
|
||||
jresult = (void *) result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void * SWIGSTDCALL Ada_lto_module_create_from_memory (
|
||||
void* jarg1
|
||||
,
|
||||
|
||||
size_t jarg2
|
||||
)
|
||||
{
|
||||
void * jresult ;
|
||||
void *arg1 = (void *) 0 ;
|
||||
size_t arg2 ;
|
||||
lto_module_t result;
|
||||
|
||||
arg1 = (void *)jarg1;
|
||||
|
||||
|
||||
arg2 = (size_t) jarg2;
|
||||
|
||||
|
||||
result = (lto_module_t)lto_module_create_from_memory((void const *)arg1,arg2);
|
||||
jresult = (void *) result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_lto_module_dispose (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
lto_module_t arg1 = (lto_module_t) 0 ;
|
||||
|
||||
arg1 = (lto_module_t)jarg1;
|
||||
|
||||
lto_module_dispose(arg1);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport char * SWIGSTDCALL Ada_lto_module_get_target_triple (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
char * jresult ;
|
||||
lto_module_t arg1 = (lto_module_t) 0 ;
|
||||
char *result = 0 ;
|
||||
|
||||
arg1 = (lto_module_t)jarg1;
|
||||
|
||||
result = (char *)lto_module_get_target_triple(arg1);
|
||||
jresult = result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport unsigned int SWIGSTDCALL Ada_lto_module_get_num_symbols (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
unsigned int jresult ;
|
||||
lto_module_t arg1 = (lto_module_t) 0 ;
|
||||
unsigned int result;
|
||||
|
||||
arg1 = (lto_module_t)jarg1;
|
||||
|
||||
result = (unsigned int)lto_module_get_num_symbols(arg1);
|
||||
jresult = result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport char * SWIGSTDCALL Ada_lto_module_get_symbol_name (
|
||||
void * jarg1
|
||||
,
|
||||
|
||||
unsigned int jarg2
|
||||
)
|
||||
{
|
||||
char * jresult ;
|
||||
lto_module_t arg1 = (lto_module_t) 0 ;
|
||||
unsigned int arg2 ;
|
||||
char *result = 0 ;
|
||||
|
||||
arg1 = (lto_module_t)jarg1;
|
||||
|
||||
|
||||
arg2 = (unsigned int) jarg2;
|
||||
|
||||
|
||||
result = (char *)lto_module_get_symbol_name(arg1,arg2);
|
||||
jresult = result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport int SWIGSTDCALL Ada_lto_module_get_symbol_attribute (
|
||||
void * jarg1
|
||||
,
|
||||
|
||||
unsigned int jarg2
|
||||
)
|
||||
{
|
||||
int jresult ;
|
||||
lto_module_t arg1 = (lto_module_t) 0 ;
|
||||
unsigned int arg2 ;
|
||||
lto_symbol_attributes result;
|
||||
|
||||
arg1 = (lto_module_t)jarg1;
|
||||
|
||||
|
||||
arg2 = (unsigned int) jarg2;
|
||||
|
||||
|
||||
result = (lto_symbol_attributes)lto_module_get_symbol_attribute(arg1,arg2);
|
||||
jresult = result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void * SWIGSTDCALL Ada_lto_codegen_create (
|
||||
)
|
||||
{
|
||||
void * jresult ;
|
||||
lto_code_gen_t result;
|
||||
|
||||
result = (lto_code_gen_t)lto_codegen_create();
|
||||
jresult = (void *) result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_lto_codegen_dispose (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
lto_code_gen_t arg1 = (lto_code_gen_t) 0 ;
|
||||
|
||||
arg1 = (lto_code_gen_t)jarg1;
|
||||
|
||||
lto_codegen_dispose(arg1);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport unsigned int SWIGSTDCALL Ada_lto_codegen_add_module (
|
||||
void * jarg1
|
||||
,
|
||||
|
||||
void * jarg2
|
||||
)
|
||||
{
|
||||
unsigned int jresult ;
|
||||
lto_code_gen_t arg1 = (lto_code_gen_t) 0 ;
|
||||
lto_module_t arg2 = (lto_module_t) 0 ;
|
||||
bool result;
|
||||
|
||||
arg1 = (lto_code_gen_t)jarg1;
|
||||
|
||||
arg2 = (lto_module_t)jarg2;
|
||||
|
||||
result = (bool)lto_codegen_add_module(arg1,arg2);
|
||||
jresult = result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport unsigned int SWIGSTDCALL Ada_lto_codegen_set_debug_model (
|
||||
void * jarg1
|
||||
,
|
||||
|
||||
int jarg2
|
||||
)
|
||||
{
|
||||
unsigned int jresult ;
|
||||
lto_code_gen_t arg1 = (lto_code_gen_t) 0 ;
|
||||
lto_debug_model arg2 ;
|
||||
bool result;
|
||||
|
||||
arg1 = (lto_code_gen_t)jarg1;
|
||||
|
||||
arg2 = (lto_debug_model) jarg2;
|
||||
|
||||
result = (bool)lto_codegen_set_debug_model(arg1,arg2);
|
||||
jresult = result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport unsigned int SWIGSTDCALL Ada_lto_codegen_set_pic_model (
|
||||
void * jarg1
|
||||
,
|
||||
|
||||
int jarg2
|
||||
)
|
||||
{
|
||||
unsigned int jresult ;
|
||||
lto_code_gen_t arg1 = (lto_code_gen_t) 0 ;
|
||||
lto_codegen_model arg2 ;
|
||||
bool result;
|
||||
|
||||
arg1 = (lto_code_gen_t)jarg1;
|
||||
|
||||
arg2 = (lto_codegen_model) jarg2;
|
||||
|
||||
result = (bool)lto_codegen_set_pic_model(arg1,arg2);
|
||||
jresult = result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_lto_codegen_set_gcc_path (
|
||||
void * jarg1
|
||||
,
|
||||
|
||||
char * jarg2
|
||||
)
|
||||
{
|
||||
lto_code_gen_t arg1 = (lto_code_gen_t) 0 ;
|
||||
char *arg2 = (char *) 0 ;
|
||||
|
||||
arg1 = (lto_code_gen_t)jarg1;
|
||||
|
||||
arg2 = jarg2;
|
||||
|
||||
lto_codegen_set_gcc_path(arg1,(char const *)arg2);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_lto_codegen_set_assembler_path (
|
||||
void * jarg1
|
||||
,
|
||||
|
||||
char * jarg2
|
||||
)
|
||||
{
|
||||
lto_code_gen_t arg1 = (lto_code_gen_t) 0 ;
|
||||
char *arg2 = (char *) 0 ;
|
||||
|
||||
arg1 = (lto_code_gen_t)jarg1;
|
||||
|
||||
arg2 = jarg2;
|
||||
|
||||
lto_codegen_set_assembler_path(arg1,(char const *)arg2);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_lto_codegen_add_must_preserve_symbol (
|
||||
void * jarg1
|
||||
,
|
||||
|
||||
char * jarg2
|
||||
)
|
||||
{
|
||||
lto_code_gen_t arg1 = (lto_code_gen_t) 0 ;
|
||||
char *arg2 = (char *) 0 ;
|
||||
|
||||
arg1 = (lto_code_gen_t)jarg1;
|
||||
|
||||
arg2 = jarg2;
|
||||
|
||||
lto_codegen_add_must_preserve_symbol(arg1,(char const *)arg2);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport unsigned int SWIGSTDCALL Ada_lto_codegen_write_merged_modules (
|
||||
void * jarg1
|
||||
,
|
||||
|
||||
char * jarg2
|
||||
)
|
||||
{
|
||||
unsigned int jresult ;
|
||||
lto_code_gen_t arg1 = (lto_code_gen_t) 0 ;
|
||||
char *arg2 = (char *) 0 ;
|
||||
bool result;
|
||||
|
||||
arg1 = (lto_code_gen_t)jarg1;
|
||||
|
||||
arg2 = jarg2;
|
||||
|
||||
result = (bool)lto_codegen_write_merged_modules(arg1,(char const *)arg2);
|
||||
jresult = result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void* SWIGSTDCALL Ada_lto_codegen_compile (
|
||||
void * jarg1
|
||||
,
|
||||
|
||||
size_t* jarg2
|
||||
)
|
||||
{
|
||||
void* jresult ;
|
||||
lto_code_gen_t arg1 = (lto_code_gen_t) 0 ;
|
||||
size_t *arg2 = (size_t *) 0 ;
|
||||
void *result = 0 ;
|
||||
|
||||
arg1 = (lto_code_gen_t)jarg1;
|
||||
|
||||
|
||||
arg2 = (size_t *) jarg2;
|
||||
|
||||
|
||||
result = (void *)lto_codegen_compile(arg1,arg2);
|
||||
jresult = (void *) result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_lto_codegen_debug_options (
|
||||
void * jarg1
|
||||
,
|
||||
|
||||
char * jarg2
|
||||
)
|
||||
{
|
||||
lto_code_gen_t arg1 = (lto_code_gen_t) 0 ;
|
||||
char *arg2 = (char *) 0 ;
|
||||
|
||||
arg1 = (lto_code_gen_t)jarg1;
|
||||
|
||||
arg2 = jarg2;
|
||||
|
||||
lto_codegen_debug_options(arg1,(char const *)arg2);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void* SWIGSTDCALL Ada_llvm_create_optimizer (
|
||||
)
|
||||
{
|
||||
void* jresult ;
|
||||
llvm_lto_t result;
|
||||
|
||||
result = (llvm_lto_t)llvm_create_optimizer();
|
||||
jresult = (void *) result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_llvm_destroy_optimizer (
|
||||
void* jarg1
|
||||
)
|
||||
{
|
||||
llvm_lto_t arg1 = (llvm_lto_t) 0 ;
|
||||
|
||||
arg1 = (llvm_lto_t)jarg1;
|
||||
|
||||
llvm_destroy_optimizer(arg1);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport int SWIGSTDCALL Ada_llvm_read_object_file (
|
||||
void* jarg1
|
||||
,
|
||||
|
||||
char * jarg2
|
||||
)
|
||||
{
|
||||
int jresult ;
|
||||
llvm_lto_t arg1 = (llvm_lto_t) 0 ;
|
||||
char *arg2 = (char *) 0 ;
|
||||
llvm_lto_status_t result;
|
||||
|
||||
arg1 = (llvm_lto_t)jarg1;
|
||||
|
||||
arg2 = jarg2;
|
||||
|
||||
result = (llvm_lto_status_t)llvm_read_object_file(arg1,(char const *)arg2);
|
||||
jresult = result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport int SWIGSTDCALL Ada_llvm_optimize_modules (
|
||||
void* jarg1
|
||||
,
|
||||
|
||||
char * jarg2
|
||||
)
|
||||
{
|
||||
int jresult ;
|
||||
llvm_lto_t arg1 = (llvm_lto_t) 0 ;
|
||||
char *arg2 = (char *) 0 ;
|
||||
llvm_lto_status_t result;
|
||||
|
||||
arg1 = (llvm_lto_t)jarg1;
|
||||
|
||||
arg2 = jarg2;
|
||||
|
||||
result = (llvm_lto_status_t)llvm_optimize_modules(arg1,(char const *)arg2);
|
||||
jresult = result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
8817
bindings/ada/llvm/llvm_wrap.cxx
Normal file
8817
bindings/ada/llvm/llvm_wrap.cxx
Normal file
File diff suppressed because it is too large
Load Diff
138
bindings/ada/target/llvm_target-binding.ads
Normal file
138
bindings/ada/target/llvm_target-binding.ads
Normal file
@ -0,0 +1,138 @@
|
||||
-- This file is generated by SWIG. Do *not* modify by hand.
|
||||
--
|
||||
|
||||
with llvm;
|
||||
with Interfaces.C.Strings;
|
||||
|
||||
|
||||
package LLVM_Target.Binding is
|
||||
|
||||
LLVMBigEndian : constant := 0;
|
||||
LLVMLittleEndian : constant := 1;
|
||||
|
||||
procedure LLVMInitializeAllTargets;
|
||||
|
||||
function LLVMInitializeNativeTarget return Interfaces.C.int;
|
||||
|
||||
function LLVMCreateTargetData
|
||||
(StringRep : in Interfaces.C.Strings.chars_ptr)
|
||||
return LLVM_Target.LLVMTargetDataRef;
|
||||
|
||||
procedure LLVMAddTargetData
|
||||
(arg_2_1 : in LLVM_Target.LLVMTargetDataRef;
|
||||
arg_2_2 : in llvm.LLVMPassManagerRef);
|
||||
|
||||
function LLVMCopyStringRepOfTargetData
|
||||
(arg_1 : in LLVM_Target.LLVMTargetDataRef)
|
||||
return Interfaces.C.Strings.chars_ptr;
|
||||
|
||||
function LLVMByteOrder
|
||||
(arg_1 : in LLVM_Target.LLVMTargetDataRef)
|
||||
return LLVM_Target.LLVMByteOrdering;
|
||||
|
||||
function LLVMPointerSize
|
||||
(arg_1 : in LLVM_Target.LLVMTargetDataRef)
|
||||
return Interfaces.C.unsigned;
|
||||
|
||||
function LLVMIntPtrType
|
||||
(arg_1 : in LLVM_Target.LLVMTargetDataRef)
|
||||
return llvm.LLVMTypeRef;
|
||||
|
||||
function LLVMSizeOfTypeInBits
|
||||
(arg_2_1 : in LLVM_Target.LLVMTargetDataRef;
|
||||
arg_2_2 : in llvm.LLVMTypeRef)
|
||||
return Interfaces.C.Extensions.unsigned_long_long;
|
||||
|
||||
function LLVMStoreSizeOfType
|
||||
(arg_2_1 : in LLVM_Target.LLVMTargetDataRef;
|
||||
arg_2_2 : in llvm.LLVMTypeRef)
|
||||
return Interfaces.C.Extensions.unsigned_long_long;
|
||||
|
||||
function LLVMABISizeOfType
|
||||
(arg_2_1 : in LLVM_Target.LLVMTargetDataRef;
|
||||
arg_2_2 : in llvm.LLVMTypeRef)
|
||||
return Interfaces.C.Extensions.unsigned_long_long;
|
||||
|
||||
function LLVMABIAlignmentOfType
|
||||
(arg_2_1 : in LLVM_Target.LLVMTargetDataRef;
|
||||
arg_2_2 : in llvm.LLVMTypeRef)
|
||||
return Interfaces.C.unsigned;
|
||||
|
||||
function LLVMCallFrameAlignmentOfType
|
||||
(arg_2_1 : in LLVM_Target.LLVMTargetDataRef;
|
||||
arg_2_2 : in llvm.LLVMTypeRef)
|
||||
return Interfaces.C.unsigned;
|
||||
|
||||
function LLVMPreferredAlignmentOfType
|
||||
(arg_2_1 : in LLVM_Target.LLVMTargetDataRef;
|
||||
arg_2_2 : in llvm.LLVMTypeRef)
|
||||
return Interfaces.C.unsigned;
|
||||
|
||||
function LLVMPreferredAlignmentOfGlobal
|
||||
(arg_1 : in LLVM_Target.LLVMTargetDataRef;
|
||||
GlobalVar : in llvm.LLVMValueRef)
|
||||
return Interfaces.C.unsigned;
|
||||
|
||||
function LLVMElementAtOffset
|
||||
(arg_1 : in LLVM_Target.LLVMTargetDataRef;
|
||||
StructTy : in llvm.LLVMTypeRef;
|
||||
Offset : in Interfaces.C.Extensions.unsigned_long_long)
|
||||
return Interfaces.C.unsigned;
|
||||
|
||||
function LLVMOffsetOfElement
|
||||
(arg_1 : in LLVM_Target.LLVMTargetDataRef;
|
||||
StructTy : in llvm.LLVMTypeRef;
|
||||
Element : in Interfaces.C.unsigned)
|
||||
return Interfaces.C.Extensions.unsigned_long_long;
|
||||
|
||||
procedure LLVMInvalidateStructLayout
|
||||
(arg_1 : in LLVM_Target.LLVMTargetDataRef;
|
||||
StructTy : in llvm.LLVMTypeRef);
|
||||
|
||||
procedure LLVMDisposeTargetData
|
||||
(arg_1 : in LLVM_Target.LLVMTargetDataRef);
|
||||
|
||||
private
|
||||
|
||||
pragma Import
|
||||
(C,
|
||||
LLVMInitializeAllTargets,
|
||||
"Ada_LLVMInitializeAllTargets");
|
||||
pragma Import
|
||||
(C,
|
||||
LLVMInitializeNativeTarget,
|
||||
"Ada_LLVMInitializeNativeTarget");
|
||||
pragma Import (C, LLVMCreateTargetData, "Ada_LLVMCreateTargetData");
|
||||
pragma Import (C, LLVMAddTargetData, "Ada_LLVMAddTargetData");
|
||||
pragma Import
|
||||
(C,
|
||||
LLVMCopyStringRepOfTargetData,
|
||||
"Ada_LLVMCopyStringRepOfTargetData");
|
||||
pragma Import (C, LLVMByteOrder, "Ada_LLVMByteOrder");
|
||||
pragma Import (C, LLVMPointerSize, "Ada_LLVMPointerSize");
|
||||
pragma Import (C, LLVMIntPtrType, "Ada_LLVMIntPtrType");
|
||||
pragma Import (C, LLVMSizeOfTypeInBits, "Ada_LLVMSizeOfTypeInBits");
|
||||
pragma Import (C, LLVMStoreSizeOfType, "Ada_LLVMStoreSizeOfType");
|
||||
pragma Import (C, LLVMABISizeOfType, "Ada_LLVMABISizeOfType");
|
||||
pragma Import (C, LLVMABIAlignmentOfType, "Ada_LLVMABIAlignmentOfType");
|
||||
pragma Import
|
||||
(C,
|
||||
LLVMCallFrameAlignmentOfType,
|
||||
"Ada_LLVMCallFrameAlignmentOfType");
|
||||
pragma Import
|
||||
(C,
|
||||
LLVMPreferredAlignmentOfType,
|
||||
"Ada_LLVMPreferredAlignmentOfType");
|
||||
pragma Import
|
||||
(C,
|
||||
LLVMPreferredAlignmentOfGlobal,
|
||||
"Ada_LLVMPreferredAlignmentOfGlobal");
|
||||
pragma Import (C, LLVMElementAtOffset, "Ada_LLVMElementAtOffset");
|
||||
pragma Import (C, LLVMOffsetOfElement, "Ada_LLVMOffsetOfElement");
|
||||
pragma Import
|
||||
(C,
|
||||
LLVMInvalidateStructLayout,
|
||||
"Ada_LLVMInvalidateStructLayout");
|
||||
pragma Import (C, LLVMDisposeTargetData, "Ada_LLVMDisposeTargetData");
|
||||
|
||||
end LLVM_Target.Binding;
|
72
bindings/ada/target/llvm_target.ads
Normal file
72
bindings/ada/target/llvm_target.ads
Normal file
@ -0,0 +1,72 @@
|
||||
-- This file is generated by SWIG. Do *not* modify by hand.
|
||||
--
|
||||
|
||||
with Interfaces.C.Extensions;
|
||||
|
||||
|
||||
package LLVM_Target is
|
||||
|
||||
-- LLVMOpaqueTargetData
|
||||
--
|
||||
type LLVMOpaqueTargetData is new
|
||||
Interfaces.C.Extensions.opaque_structure_def;
|
||||
|
||||
type LLVMOpaqueTargetData_array is
|
||||
array (Interfaces.C.size_t range <>)
|
||||
of aliased LLVM_Target.LLVMOpaqueTargetData;
|
||||
|
||||
type LLVMOpaqueTargetData_view is access all
|
||||
LLVM_Target.LLVMOpaqueTargetData;
|
||||
|
||||
-- LLVMTargetDataRef
|
||||
--
|
||||
type LLVMTargetDataRef is access all LLVM_Target.LLVMOpaqueTargetData;
|
||||
|
||||
type LLVMTargetDataRef_array is
|
||||
array (Interfaces.C.size_t range <>)
|
||||
of aliased LLVM_Target.LLVMTargetDataRef;
|
||||
|
||||
type LLVMTargetDataRef_view is access all LLVM_Target.LLVMTargetDataRef;
|
||||
|
||||
-- LLVMStructLayout
|
||||
--
|
||||
type LLVMStructLayout is new Interfaces.C.Extensions.opaque_structure_def;
|
||||
|
||||
type LLVMStructLayout_array is
|
||||
array (Interfaces.C.size_t range <>)
|
||||
of aliased LLVM_Target.LLVMStructLayout;
|
||||
|
||||
type LLVMStructLayout_view is access all LLVM_Target.LLVMStructLayout;
|
||||
|
||||
-- LLVMStructLayoutRef
|
||||
--
|
||||
type LLVMStructLayoutRef is access all LLVM_Target.LLVMStructLayout;
|
||||
|
||||
type LLVMStructLayoutRef_array is
|
||||
array (Interfaces.C.size_t range <>)
|
||||
of aliased LLVM_Target.LLVMStructLayoutRef;
|
||||
|
||||
type LLVMStructLayoutRef_view is access all LLVM_Target.LLVMStructLayoutRef;
|
||||
|
||||
-- TargetData
|
||||
--
|
||||
type TargetData is new Interfaces.C.Extensions.incomplete_class_def;
|
||||
|
||||
type TargetData_array is
|
||||
array (Interfaces.C.size_t range <>)
|
||||
of aliased LLVM_Target.TargetData;
|
||||
|
||||
type TargetData_view is access all LLVM_Target.TargetData;
|
||||
|
||||
-- LLVMByteOrdering
|
||||
--
|
||||
type LLVMByteOrdering is new Interfaces.C.int;
|
||||
|
||||
type LLVMByteOrdering_array is
|
||||
array (Interfaces.C.size_t range <>)
|
||||
of aliased LLVM_Target.LLVMByteOrdering;
|
||||
|
||||
type LLVMByteOrdering_view is access all LLVM_Target.LLVMByteOrdering;
|
||||
|
||||
|
||||
end LLVM_Target;
|
720
bindings/ada/target/llvm_target_wrap.cxx
Normal file
720
bindings/ada/target/llvm_target_wrap.cxx
Normal file
@ -0,0 +1,720 @@
|
||||
/* ----------------------------------------------------------------------------
|
||||
* This file was automatically generated by SWIG (http://www.swig.org).
|
||||
* Version 1.3.36
|
||||
*
|
||||
* This file is not intended to be easily readable and contains a number of
|
||||
* coding conventions designed to improve portability and efficiency. Do not make
|
||||
* changes to this file unless you know what you are doing--modify the SWIG
|
||||
* interface file instead.
|
||||
* ----------------------------------------------------------------------------- */
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
template<typename T> class SwigValueWrapper {
|
||||
T *tt;
|
||||
public:
|
||||
SwigValueWrapper() : tt(0) { }
|
||||
SwigValueWrapper(const SwigValueWrapper<T>& rhs) : tt(new T(*rhs.tt)) { }
|
||||
SwigValueWrapper(const T& t) : tt(new T(t)) { }
|
||||
~SwigValueWrapper() { delete tt; }
|
||||
SwigValueWrapper& operator=(const T& t) { delete tt; tt = new T(t); return *this; }
|
||||
operator T&() const { return *tt; }
|
||||
T *operator&() { return tt; }
|
||||
private:
|
||||
SwigValueWrapper& operator=(const SwigValueWrapper<T>& rhs);
|
||||
};
|
||||
|
||||
template <typename T> T SwigValueInit() {
|
||||
return T();
|
||||
}
|
||||
#endif
|
||||
|
||||
/* -----------------------------------------------------------------------------
|
||||
* This section contains generic SWIG labels for method/variable
|
||||
* declarations/attributes, and other compiler dependent labels.
|
||||
* ----------------------------------------------------------------------------- */
|
||||
|
||||
/* template workaround for compilers that cannot correctly implement the C++ standard */
|
||||
#ifndef SWIGTEMPLATEDISAMBIGUATOR
|
||||
# if defined(__SUNPRO_CC) && (__SUNPRO_CC <= 0x560)
|
||||
# define SWIGTEMPLATEDISAMBIGUATOR template
|
||||
# elif defined(__HP_aCC)
|
||||
/* Needed even with `aCC -AA' when `aCC -V' reports HP ANSI C++ B3910B A.03.55 */
|
||||
/* If we find a maximum version that requires this, the test would be __HP_aCC <= 35500 for A.03.55 */
|
||||
# define SWIGTEMPLATEDISAMBIGUATOR template
|
||||
# else
|
||||
# define SWIGTEMPLATEDISAMBIGUATOR
|
||||
# endif
|
||||
#endif
|
||||
|
||||
/* inline attribute */
|
||||
#ifndef SWIGINLINE
|
||||
# if defined(__cplusplus) || (defined(__GNUC__) && !defined(__STRICT_ANSI__))
|
||||
# define SWIGINLINE inline
|
||||
# else
|
||||
# define SWIGINLINE
|
||||
# endif
|
||||
#endif
|
||||
|
||||
/* attribute recognised by some compilers to avoid 'unused' warnings */
|
||||
#ifndef SWIGUNUSED
|
||||
# if defined(__GNUC__)
|
||||
# if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
|
||||
# define SWIGUNUSED __attribute__ ((__unused__))
|
||||
# else
|
||||
# define SWIGUNUSED
|
||||
# endif
|
||||
# elif defined(__ICC)
|
||||
# define SWIGUNUSED __attribute__ ((__unused__))
|
||||
# else
|
||||
# define SWIGUNUSED
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#ifndef SWIGUNUSEDPARM
|
||||
# ifdef __cplusplus
|
||||
# define SWIGUNUSEDPARM(p)
|
||||
# else
|
||||
# define SWIGUNUSEDPARM(p) p SWIGUNUSED
|
||||
# endif
|
||||
#endif
|
||||
|
||||
/* internal SWIG method */
|
||||
#ifndef SWIGINTERN
|
||||
# define SWIGINTERN static SWIGUNUSED
|
||||
#endif
|
||||
|
||||
/* internal inline SWIG method */
|
||||
#ifndef SWIGINTERNINLINE
|
||||
# define SWIGINTERNINLINE SWIGINTERN SWIGINLINE
|
||||
#endif
|
||||
|
||||
/* exporting methods */
|
||||
#if (__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)
|
||||
# ifndef GCC_HASCLASSVISIBILITY
|
||||
# define GCC_HASCLASSVISIBILITY
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#ifndef SWIGEXPORT
|
||||
# if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
|
||||
# if defined(STATIC_LINKED)
|
||||
# define SWIGEXPORT
|
||||
# else
|
||||
# define SWIGEXPORT __declspec(dllexport)
|
||||
# endif
|
||||
# else
|
||||
# if defined(__GNUC__) && defined(GCC_HASCLASSVISIBILITY)
|
||||
# define SWIGEXPORT __attribute__ ((visibility("default")))
|
||||
# else
|
||||
# define SWIGEXPORT
|
||||
# endif
|
||||
# endif
|
||||
#endif
|
||||
|
||||
/* calling conventions for Windows */
|
||||
#ifndef SWIGSTDCALL
|
||||
# if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
|
||||
# define SWIGSTDCALL __stdcall
|
||||
# else
|
||||
# define SWIGSTDCALL
|
||||
# endif
|
||||
#endif
|
||||
|
||||
/* Deal with Microsoft's attempt at deprecating C standard runtime functions */
|
||||
#if !defined(SWIG_NO_CRT_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_CRT_SECURE_NO_DEPRECATE)
|
||||
# define _CRT_SECURE_NO_DEPRECATE
|
||||
#endif
|
||||
|
||||
/* Deal with Microsoft's attempt at deprecating methods in the standard C++ library */
|
||||
#if !defined(SWIG_NO_SCL_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_SCL_SECURE_NO_DEPRECATE)
|
||||
# define _SCL_SECURE_NO_DEPRECATE
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <stdio.h>
|
||||
#if defined(_WIN32) || defined(__CYGWIN32__)
|
||||
# define DllExport __declspec( dllexport )
|
||||
# define SWIGSTDCALL __stdcall
|
||||
#else
|
||||
# define DllExport
|
||||
# define SWIGSTDCALL
|
||||
#endif
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
# include <new>
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
||||
/* Support for throwing Ada exceptions from C/C++ */
|
||||
|
||||
typedef enum
|
||||
{
|
||||
SWIG_AdaException,
|
||||
SWIG_AdaOutOfMemoryException,
|
||||
SWIG_AdaIndexOutOfRangeException,
|
||||
SWIG_AdaDivideByZeroException,
|
||||
SWIG_AdaArgumentOutOfRangeException,
|
||||
SWIG_AdaNullReferenceException
|
||||
} SWIG_AdaExceptionCodes;
|
||||
|
||||
|
||||
typedef void (SWIGSTDCALL* SWIG_AdaExceptionCallback_t)(const char *);
|
||||
|
||||
|
||||
typedef struct
|
||||
{
|
||||
SWIG_AdaExceptionCodes code;
|
||||
SWIG_AdaExceptionCallback_t callback;
|
||||
}
|
||||
SWIG_AdaExceptions_t;
|
||||
|
||||
|
||||
static
|
||||
SWIG_AdaExceptions_t
|
||||
SWIG_ada_exceptions[] =
|
||||
{
|
||||
{ SWIG_AdaException, NULL },
|
||||
{ SWIG_AdaOutOfMemoryException, NULL },
|
||||
{ SWIG_AdaIndexOutOfRangeException, NULL },
|
||||
{ SWIG_AdaDivideByZeroException, NULL },
|
||||
{ SWIG_AdaArgumentOutOfRangeException, NULL },
|
||||
{ SWIG_AdaNullReferenceException, NULL }
|
||||
};
|
||||
|
||||
|
||||
static
|
||||
void
|
||||
SWIG_AdaThrowException (SWIG_AdaExceptionCodes code, const char *msg)
|
||||
{
|
||||
SWIG_AdaExceptionCallback_t callback = SWIG_ada_exceptions[SWIG_AdaException].callback;
|
||||
if (code >=0 && (size_t)code < sizeof(SWIG_ada_exceptions)/sizeof(SWIG_AdaExceptions_t)) {
|
||||
callback = SWIG_ada_exceptions[code].callback;
|
||||
}
|
||||
callback(msg);
|
||||
}
|
||||
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
#endif
|
||||
|
||||
DllExport void SWIGSTDCALL SWIGRegisterExceptionCallbacks_LLVM_Target (SWIG_AdaExceptionCallback_t systemException,
|
||||
SWIG_AdaExceptionCallback_t outOfMemory,
|
||||
SWIG_AdaExceptionCallback_t indexOutOfRange,
|
||||
SWIG_AdaExceptionCallback_t divideByZero,
|
||||
SWIG_AdaExceptionCallback_t argumentOutOfRange,
|
||||
SWIG_AdaExceptionCallback_t nullReference)
|
||||
{
|
||||
SWIG_ada_exceptions [SWIG_AdaException].callback = systemException;
|
||||
SWIG_ada_exceptions [SWIG_AdaOutOfMemoryException].callback = outOfMemory;
|
||||
SWIG_ada_exceptions [SWIG_AdaIndexOutOfRangeException].callback = indexOutOfRange;
|
||||
SWIG_ada_exceptions [SWIG_AdaDivideByZeroException].callback = divideByZero;
|
||||
SWIG_ada_exceptions [SWIG_AdaArgumentOutOfRangeException].callback = argumentOutOfRange;
|
||||
SWIG_ada_exceptions [SWIG_AdaNullReferenceException].callback = nullReference;
|
||||
}
|
||||
|
||||
|
||||
/* Callback for returning strings to Ada without leaking memory */
|
||||
|
||||
typedef char * (SWIGSTDCALL* SWIG_AdaStringHelperCallback)(const char *);
|
||||
static SWIG_AdaStringHelperCallback SWIG_ada_string_callback = NULL;
|
||||
|
||||
|
||||
|
||||
/* probably obsolete ...
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
#endif
|
||||
DllExport void SWIGSTDCALL SWIGRegisterStringCallback_LLVM_Target(SWIG_AdaStringHelperCallback callback) {
|
||||
SWIG_ada_string_callback = callback;
|
||||
}
|
||||
*/
|
||||
|
||||
|
||||
|
||||
/* Contract support */
|
||||
|
||||
#define SWIG_contract_assert(nullreturn, expr, msg) if (!(expr)) {SWIG_AdaThrowException(SWIG_AdaArgumentOutOfRangeException, msg); return nullreturn; } else
|
||||
|
||||
|
||||
#define protected public
|
||||
#define private public
|
||||
|
||||
#include "llvm-c/Target.h"
|
||||
|
||||
|
||||
|
||||
// struct LLVMCtxt;
|
||||
|
||||
|
||||
#undef protected
|
||||
#undef private
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
DllExport void SWIGSTDCALL Ada_LLVMInitializeAllTargets (
|
||||
)
|
||||
{
|
||||
LLVMInitializeAllTargets();
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport int SWIGSTDCALL Ada_LLVMInitializeNativeTarget (
|
||||
)
|
||||
{
|
||||
int jresult ;
|
||||
int result;
|
||||
|
||||
result = (int)LLVMInitializeNativeTarget();
|
||||
jresult = result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void * SWIGSTDCALL Ada_LLVMCreateTargetData (
|
||||
char * jarg1
|
||||
)
|
||||
{
|
||||
void * jresult ;
|
||||
char *arg1 = (char *) 0 ;
|
||||
LLVMTargetDataRef result;
|
||||
|
||||
arg1 = jarg1;
|
||||
|
||||
result = (LLVMTargetDataRef)LLVMCreateTargetData((char const *)arg1);
|
||||
jresult = (void *) result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_LLVMAddTargetData (
|
||||
void * jarg1
|
||||
,
|
||||
|
||||
void * jarg2
|
||||
)
|
||||
{
|
||||
LLVMTargetDataRef arg1 = (LLVMTargetDataRef) 0 ;
|
||||
LLVMPassManagerRef arg2 = (LLVMPassManagerRef) 0 ;
|
||||
|
||||
arg1 = (LLVMTargetDataRef)jarg1;
|
||||
|
||||
arg2 = (LLVMPassManagerRef)jarg2;
|
||||
|
||||
LLVMAddTargetData(arg1,arg2);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport char * SWIGSTDCALL Ada_LLVMCopyStringRepOfTargetData (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
char * jresult ;
|
||||
LLVMTargetDataRef arg1 = (LLVMTargetDataRef) 0 ;
|
||||
char *result = 0 ;
|
||||
|
||||
arg1 = (LLVMTargetDataRef)jarg1;
|
||||
|
||||
result = (char *)LLVMCopyStringRepOfTargetData(arg1);
|
||||
jresult = result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport int SWIGSTDCALL Ada_LLVMByteOrder (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
int jresult ;
|
||||
LLVMTargetDataRef arg1 = (LLVMTargetDataRef) 0 ;
|
||||
LLVMByteOrdering result;
|
||||
|
||||
arg1 = (LLVMTargetDataRef)jarg1;
|
||||
|
||||
result = (LLVMByteOrdering)LLVMByteOrder(arg1);
|
||||
jresult = result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport unsigned int SWIGSTDCALL Ada_LLVMPointerSize (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
unsigned int jresult ;
|
||||
LLVMTargetDataRef arg1 = (LLVMTargetDataRef) 0 ;
|
||||
unsigned int result;
|
||||
|
||||
arg1 = (LLVMTargetDataRef)jarg1;
|
||||
|
||||
result = (unsigned int)LLVMPointerSize(arg1);
|
||||
jresult = result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void * SWIGSTDCALL Ada_LLVMIntPtrType (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
void * jresult ;
|
||||
LLVMTargetDataRef arg1 = (LLVMTargetDataRef) 0 ;
|
||||
LLVMTypeRef result;
|
||||
|
||||
arg1 = (LLVMTargetDataRef)jarg1;
|
||||
|
||||
result = (LLVMTypeRef)LLVMIntPtrType(arg1);
|
||||
jresult = (void *) result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport unsigned long long SWIGSTDCALL Ada_LLVMSizeOfTypeInBits (
|
||||
void * jarg1
|
||||
,
|
||||
|
||||
void * jarg2
|
||||
)
|
||||
{
|
||||
unsigned long long jresult ;
|
||||
LLVMTargetDataRef arg1 = (LLVMTargetDataRef) 0 ;
|
||||
LLVMTypeRef arg2 = (LLVMTypeRef) 0 ;
|
||||
unsigned long long result;
|
||||
|
||||
arg1 = (LLVMTargetDataRef)jarg1;
|
||||
|
||||
arg2 = (LLVMTypeRef)jarg2;
|
||||
|
||||
result = (unsigned long long)LLVMSizeOfTypeInBits(arg1,arg2);
|
||||
jresult = result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport unsigned long long SWIGSTDCALL Ada_LLVMStoreSizeOfType (
|
||||
void * jarg1
|
||||
,
|
||||
|
||||
void * jarg2
|
||||
)
|
||||
{
|
||||
unsigned long long jresult ;
|
||||
LLVMTargetDataRef arg1 = (LLVMTargetDataRef) 0 ;
|
||||
LLVMTypeRef arg2 = (LLVMTypeRef) 0 ;
|
||||
unsigned long long result;
|
||||
|
||||
arg1 = (LLVMTargetDataRef)jarg1;
|
||||
|
||||
arg2 = (LLVMTypeRef)jarg2;
|
||||
|
||||
result = (unsigned long long)LLVMStoreSizeOfType(arg1,arg2);
|
||||
jresult = result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport unsigned long long SWIGSTDCALL Ada_LLVMABISizeOfType (
|
||||
void * jarg1
|
||||
,
|
||||
|
||||
void * jarg2
|
||||
)
|
||||
{
|
||||
unsigned long long jresult ;
|
||||
LLVMTargetDataRef arg1 = (LLVMTargetDataRef) 0 ;
|
||||
LLVMTypeRef arg2 = (LLVMTypeRef) 0 ;
|
||||
unsigned long long result;
|
||||
|
||||
arg1 = (LLVMTargetDataRef)jarg1;
|
||||
|
||||
arg2 = (LLVMTypeRef)jarg2;
|
||||
|
||||
result = (unsigned long long)LLVMABISizeOfType(arg1,arg2);
|
||||
jresult = result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport unsigned int SWIGSTDCALL Ada_LLVMABIAlignmentOfType (
|
||||
void * jarg1
|
||||
,
|
||||
|
||||
void * jarg2
|
||||
)
|
||||
{
|
||||
unsigned int jresult ;
|
||||
LLVMTargetDataRef arg1 = (LLVMTargetDataRef) 0 ;
|
||||
LLVMTypeRef arg2 = (LLVMTypeRef) 0 ;
|
||||
unsigned int result;
|
||||
|
||||
arg1 = (LLVMTargetDataRef)jarg1;
|
||||
|
||||
arg2 = (LLVMTypeRef)jarg2;
|
||||
|
||||
result = (unsigned int)LLVMABIAlignmentOfType(arg1,arg2);
|
||||
jresult = result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport unsigned int SWIGSTDCALL Ada_LLVMCallFrameAlignmentOfType (
|
||||
void * jarg1
|
||||
,
|
||||
|
||||
void * jarg2
|
||||
)
|
||||
{
|
||||
unsigned int jresult ;
|
||||
LLVMTargetDataRef arg1 = (LLVMTargetDataRef) 0 ;
|
||||
LLVMTypeRef arg2 = (LLVMTypeRef) 0 ;
|
||||
unsigned int result;
|
||||
|
||||
arg1 = (LLVMTargetDataRef)jarg1;
|
||||
|
||||
arg2 = (LLVMTypeRef)jarg2;
|
||||
|
||||
result = (unsigned int)LLVMCallFrameAlignmentOfType(arg1,arg2);
|
||||
jresult = result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport unsigned int SWIGSTDCALL Ada_LLVMPreferredAlignmentOfType (
|
||||
void * jarg1
|
||||
,
|
||||
|
||||
void * jarg2
|
||||
)
|
||||
{
|
||||
unsigned int jresult ;
|
||||
LLVMTargetDataRef arg1 = (LLVMTargetDataRef) 0 ;
|
||||
LLVMTypeRef arg2 = (LLVMTypeRef) 0 ;
|
||||
unsigned int result;
|
||||
|
||||
arg1 = (LLVMTargetDataRef)jarg1;
|
||||
|
||||
arg2 = (LLVMTypeRef)jarg2;
|
||||
|
||||
result = (unsigned int)LLVMPreferredAlignmentOfType(arg1,arg2);
|
||||
jresult = result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport unsigned int SWIGSTDCALL Ada_LLVMPreferredAlignmentOfGlobal (
|
||||
void * jarg1
|
||||
,
|
||||
|
||||
void * jarg2
|
||||
)
|
||||
{
|
||||
unsigned int jresult ;
|
||||
LLVMTargetDataRef arg1 = (LLVMTargetDataRef) 0 ;
|
||||
LLVMValueRef arg2 = (LLVMValueRef) 0 ;
|
||||
unsigned int result;
|
||||
|
||||
arg1 = (LLVMTargetDataRef)jarg1;
|
||||
|
||||
arg2 = (LLVMValueRef)jarg2;
|
||||
|
||||
result = (unsigned int)LLVMPreferredAlignmentOfGlobal(arg1,arg2);
|
||||
jresult = result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport unsigned int SWIGSTDCALL Ada_LLVMElementAtOffset (
|
||||
void * jarg1
|
||||
,
|
||||
|
||||
void * jarg2
|
||||
,
|
||||
|
||||
unsigned long long jarg3
|
||||
)
|
||||
{
|
||||
unsigned int jresult ;
|
||||
LLVMTargetDataRef arg1 = (LLVMTargetDataRef) 0 ;
|
||||
LLVMTypeRef arg2 = (LLVMTypeRef) 0 ;
|
||||
unsigned long long arg3 ;
|
||||
unsigned int result;
|
||||
|
||||
arg1 = (LLVMTargetDataRef)jarg1;
|
||||
|
||||
arg2 = (LLVMTypeRef)jarg2;
|
||||
|
||||
|
||||
arg3 = (unsigned long long) jarg3;
|
||||
|
||||
|
||||
result = (unsigned int)LLVMElementAtOffset(arg1,arg2,arg3);
|
||||
jresult = result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport unsigned long long SWIGSTDCALL Ada_LLVMOffsetOfElement (
|
||||
void * jarg1
|
||||
,
|
||||
|
||||
void * jarg2
|
||||
,
|
||||
|
||||
unsigned int jarg3
|
||||
)
|
||||
{
|
||||
unsigned long long jresult ;
|
||||
LLVMTargetDataRef arg1 = (LLVMTargetDataRef) 0 ;
|
||||
LLVMTypeRef arg2 = (LLVMTypeRef) 0 ;
|
||||
unsigned int arg3 ;
|
||||
unsigned long long result;
|
||||
|
||||
arg1 = (LLVMTargetDataRef)jarg1;
|
||||
|
||||
arg2 = (LLVMTypeRef)jarg2;
|
||||
|
||||
|
||||
arg3 = (unsigned int) jarg3;
|
||||
|
||||
|
||||
result = (unsigned long long)LLVMOffsetOfElement(arg1,arg2,arg3);
|
||||
jresult = result;
|
||||
|
||||
|
||||
|
||||
return jresult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_LLVMInvalidateStructLayout (
|
||||
void * jarg1
|
||||
,
|
||||
|
||||
void * jarg2
|
||||
)
|
||||
{
|
||||
LLVMTargetDataRef arg1 = (LLVMTargetDataRef) 0 ;
|
||||
LLVMTypeRef arg2 = (LLVMTypeRef) 0 ;
|
||||
|
||||
arg1 = (LLVMTargetDataRef)jarg1;
|
||||
|
||||
arg2 = (LLVMTypeRef)jarg2;
|
||||
|
||||
LLVMInvalidateStructLayout(arg1,arg2);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_LLVMDisposeTargetData (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
LLVMTargetDataRef arg1 = (LLVMTargetDataRef) 0 ;
|
||||
|
||||
arg1 = (LLVMTargetDataRef)jarg1;
|
||||
|
||||
LLVMDisposeTargetData(arg1);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
206
bindings/ada/transforms/llvm_transforms-binding.ads
Normal file
206
bindings/ada/transforms/llvm_transforms-binding.ads
Normal file
@ -0,0 +1,206 @@
|
||||
-- This file is generated by SWIG. Do *not* modify by hand.
|
||||
--
|
||||
|
||||
with llvm;
|
||||
|
||||
|
||||
package LLVM_Transforms.Binding is
|
||||
|
||||
procedure LLVMAddArgumentPromotionPass (PM : in llvm.LLVMPassManagerRef);
|
||||
|
||||
procedure LLVMAddConstantMergePass (PM : in llvm.LLVMPassManagerRef);
|
||||
|
||||
procedure LLVMAddDeadArgEliminationPass
|
||||
(PM : in llvm.LLVMPassManagerRef);
|
||||
|
||||
procedure LLVMAddDeadTypeEliminationPass
|
||||
(PM : in llvm.LLVMPassManagerRef);
|
||||
|
||||
procedure LLVMAddFunctionAttrsPass (PM : in llvm.LLVMPassManagerRef);
|
||||
|
||||
procedure LLVMAddFunctionInliningPass (PM : in llvm.LLVMPassManagerRef);
|
||||
|
||||
procedure LLVMAddGlobalDCEPass (PM : in llvm.LLVMPassManagerRef);
|
||||
|
||||
procedure LLVMAddGlobalOptimizerPass (PM : in llvm.LLVMPassManagerRef);
|
||||
|
||||
procedure LLVMAddIPConstantPropagationPass
|
||||
(PM : in llvm.LLVMPassManagerRef);
|
||||
|
||||
procedure LLVMAddLowerSetJmpPass (PM : in llvm.LLVMPassManagerRef);
|
||||
|
||||
procedure LLVMAddPruneEHPass (PM : in llvm.LLVMPassManagerRef);
|
||||
|
||||
procedure LLVMAddRaiseAllocationsPass (PM : in llvm.LLVMPassManagerRef);
|
||||
|
||||
procedure LLVMAddStripDeadPrototypesPass
|
||||
(PM : in llvm.LLVMPassManagerRef);
|
||||
|
||||
procedure LLVMAddStripSymbolsPass (PM : in llvm.LLVMPassManagerRef);
|
||||
|
||||
procedure LLVMAddAggressiveDCEPass (PM : in llvm.LLVMPassManagerRef);
|
||||
|
||||
procedure LLVMAddCFGSimplificationPass (PM : in llvm.LLVMPassManagerRef);
|
||||
|
||||
procedure LLVMAddCondPropagationPass (PM : in llvm.LLVMPassManagerRef);
|
||||
|
||||
procedure LLVMAddDeadStoreEliminationPass
|
||||
(PM : in llvm.LLVMPassManagerRef);
|
||||
|
||||
procedure LLVMAddGVNPass (PM : in llvm.LLVMPassManagerRef);
|
||||
|
||||
procedure LLVMAddIndVarSimplifyPass (PM : in llvm.LLVMPassManagerRef);
|
||||
|
||||
procedure LLVMAddInstructionCombiningPass
|
||||
(PM : in llvm.LLVMPassManagerRef);
|
||||
|
||||
procedure LLVMAddJumpThreadingPass (PM : in llvm.LLVMPassManagerRef);
|
||||
|
||||
procedure LLVMAddLICMPass (PM : in llvm.LLVMPassManagerRef);
|
||||
|
||||
procedure LLVMAddLoopDeletionPass (PM : in llvm.LLVMPassManagerRef);
|
||||
|
||||
procedure LLVMAddLoopIndexSplitPass (PM : in llvm.LLVMPassManagerRef);
|
||||
|
||||
procedure LLVMAddLoopRotatePass (PM : in llvm.LLVMPassManagerRef);
|
||||
|
||||
procedure LLVMAddLoopUnrollPass (PM : in llvm.LLVMPassManagerRef);
|
||||
|
||||
procedure LLVMAddLoopUnswitchPass (PM : in llvm.LLVMPassManagerRef);
|
||||
|
||||
procedure LLVMAddMemCpyOptPass (PM : in llvm.LLVMPassManagerRef);
|
||||
|
||||
procedure LLVMAddPromoteMemoryToRegisterPass
|
||||
(PM : in llvm.LLVMPassManagerRef);
|
||||
|
||||
procedure LLVMAddReassociatePass (PM : in llvm.LLVMPassManagerRef);
|
||||
|
||||
procedure LLVMAddSCCPPass (PM : in llvm.LLVMPassManagerRef);
|
||||
|
||||
procedure LLVMAddScalarReplAggregatesPass
|
||||
(PM : in llvm.LLVMPassManagerRef);
|
||||
|
||||
procedure LLVMAddSimplifyLibCallsPass (PM : in llvm.LLVMPassManagerRef);
|
||||
|
||||
procedure LLVMAddTailCallEliminationPass
|
||||
(PM : in llvm.LLVMPassManagerRef);
|
||||
|
||||
procedure LLVMAddConstantPropagationPass
|
||||
(PM : in llvm.LLVMPassManagerRef);
|
||||
|
||||
procedure LLVMAddDemoteMemoryToRegisterPass
|
||||
(PM : in llvm.LLVMPassManagerRef);
|
||||
|
||||
private
|
||||
|
||||
pragma Import
|
||||
(C,
|
||||
LLVMAddArgumentPromotionPass,
|
||||
"Ada_LLVMAddArgumentPromotionPass");
|
||||
pragma Import
|
||||
(C,
|
||||
LLVMAddConstantMergePass,
|
||||
"Ada_LLVMAddConstantMergePass");
|
||||
pragma Import
|
||||
(C,
|
||||
LLVMAddDeadArgEliminationPass,
|
||||
"Ada_LLVMAddDeadArgEliminationPass");
|
||||
pragma Import
|
||||
(C,
|
||||
LLVMAddDeadTypeEliminationPass,
|
||||
"Ada_LLVMAddDeadTypeEliminationPass");
|
||||
pragma Import
|
||||
(C,
|
||||
LLVMAddFunctionAttrsPass,
|
||||
"Ada_LLVMAddFunctionAttrsPass");
|
||||
pragma Import
|
||||
(C,
|
||||
LLVMAddFunctionInliningPass,
|
||||
"Ada_LLVMAddFunctionInliningPass");
|
||||
pragma Import (C, LLVMAddGlobalDCEPass, "Ada_LLVMAddGlobalDCEPass");
|
||||
pragma Import
|
||||
(C,
|
||||
LLVMAddGlobalOptimizerPass,
|
||||
"Ada_LLVMAddGlobalOptimizerPass");
|
||||
pragma Import
|
||||
(C,
|
||||
LLVMAddIPConstantPropagationPass,
|
||||
"Ada_LLVMAddIPConstantPropagationPass");
|
||||
pragma Import (C, LLVMAddLowerSetJmpPass, "Ada_LLVMAddLowerSetJmpPass");
|
||||
pragma Import (C, LLVMAddPruneEHPass, "Ada_LLVMAddPruneEHPass");
|
||||
pragma Import
|
||||
(C,
|
||||
LLVMAddRaiseAllocationsPass,
|
||||
"Ada_LLVMAddRaiseAllocationsPass");
|
||||
pragma Import
|
||||
(C,
|
||||
LLVMAddStripDeadPrototypesPass,
|
||||
"Ada_LLVMAddStripDeadPrototypesPass");
|
||||
pragma Import (C, LLVMAddStripSymbolsPass, "Ada_LLVMAddStripSymbolsPass");
|
||||
pragma Import
|
||||
(C,
|
||||
LLVMAddAggressiveDCEPass,
|
||||
"Ada_LLVMAddAggressiveDCEPass");
|
||||
pragma Import
|
||||
(C,
|
||||
LLVMAddCFGSimplificationPass,
|
||||
"Ada_LLVMAddCFGSimplificationPass");
|
||||
pragma Import
|
||||
(C,
|
||||
LLVMAddCondPropagationPass,
|
||||
"Ada_LLVMAddCondPropagationPass");
|
||||
pragma Import
|
||||
(C,
|
||||
LLVMAddDeadStoreEliminationPass,
|
||||
"Ada_LLVMAddDeadStoreEliminationPass");
|
||||
pragma Import (C, LLVMAddGVNPass, "Ada_LLVMAddGVNPass");
|
||||
pragma Import
|
||||
(C,
|
||||
LLVMAddIndVarSimplifyPass,
|
||||
"Ada_LLVMAddIndVarSimplifyPass");
|
||||
pragma Import
|
||||
(C,
|
||||
LLVMAddInstructionCombiningPass,
|
||||
"Ada_LLVMAddInstructionCombiningPass");
|
||||
pragma Import
|
||||
(C,
|
||||
LLVMAddJumpThreadingPass,
|
||||
"Ada_LLVMAddJumpThreadingPass");
|
||||
pragma Import (C, LLVMAddLICMPass, "Ada_LLVMAddLICMPass");
|
||||
pragma Import (C, LLVMAddLoopDeletionPass, "Ada_LLVMAddLoopDeletionPass");
|
||||
pragma Import
|
||||
(C,
|
||||
LLVMAddLoopIndexSplitPass,
|
||||
"Ada_LLVMAddLoopIndexSplitPass");
|
||||
pragma Import (C, LLVMAddLoopRotatePass, "Ada_LLVMAddLoopRotatePass");
|
||||
pragma Import (C, LLVMAddLoopUnrollPass, "Ada_LLVMAddLoopUnrollPass");
|
||||
pragma Import (C, LLVMAddLoopUnswitchPass, "Ada_LLVMAddLoopUnswitchPass");
|
||||
pragma Import (C, LLVMAddMemCpyOptPass, "Ada_LLVMAddMemCpyOptPass");
|
||||
pragma Import
|
||||
(C,
|
||||
LLVMAddPromoteMemoryToRegisterPass,
|
||||
"Ada_LLVMAddPromoteMemoryToRegisterPass");
|
||||
pragma Import (C, LLVMAddReassociatePass, "Ada_LLVMAddReassociatePass");
|
||||
pragma Import (C, LLVMAddSCCPPass, "Ada_LLVMAddSCCPPass");
|
||||
pragma Import
|
||||
(C,
|
||||
LLVMAddScalarReplAggregatesPass,
|
||||
"Ada_LLVMAddScalarReplAggregatesPass");
|
||||
pragma Import
|
||||
(C,
|
||||
LLVMAddSimplifyLibCallsPass,
|
||||
"Ada_LLVMAddSimplifyLibCallsPass");
|
||||
pragma Import
|
||||
(C,
|
||||
LLVMAddTailCallEliminationPass,
|
||||
"Ada_LLVMAddTailCallEliminationPass");
|
||||
pragma Import
|
||||
(C,
|
||||
LLVMAddConstantPropagationPass,
|
||||
"Ada_LLVMAddConstantPropagationPass");
|
||||
pragma Import
|
||||
(C,
|
||||
LLVMAddDemoteMemoryToRegisterPass,
|
||||
"Ada_LLVMAddDemoteMemoryToRegisterPass");
|
||||
|
||||
end LLVM_Transforms.Binding;
|
6
bindings/ada/transforms/llvm_transforms.ads
Normal file
6
bindings/ada/transforms/llvm_transforms.ads
Normal file
@ -0,0 +1,6 @@
|
||||
-- This file is generated by SWIG. Do *not* modify by hand.
|
||||
--
|
||||
|
||||
package LLVM_Transforms is
|
||||
|
||||
end LLVM_Transforms;
|
828
bindings/ada/transforms/llvm_transforms_wrap.cxx
Normal file
828
bindings/ada/transforms/llvm_transforms_wrap.cxx
Normal file
@ -0,0 +1,828 @@
|
||||
/* ----------------------------------------------------------------------------
|
||||
* This file was automatically generated by SWIG (http://www.swig.org).
|
||||
* Version 1.3.36
|
||||
*
|
||||
* This file is not intended to be easily readable and contains a number of
|
||||
* coding conventions designed to improve portability and efficiency. Do not make
|
||||
* changes to this file unless you know what you are doing--modify the SWIG
|
||||
* interface file instead.
|
||||
* ----------------------------------------------------------------------------- */
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
template<typename T> class SwigValueWrapper {
|
||||
T *tt;
|
||||
public:
|
||||
SwigValueWrapper() : tt(0) { }
|
||||
SwigValueWrapper(const SwigValueWrapper<T>& rhs) : tt(new T(*rhs.tt)) { }
|
||||
SwigValueWrapper(const T& t) : tt(new T(t)) { }
|
||||
~SwigValueWrapper() { delete tt; }
|
||||
SwigValueWrapper& operator=(const T& t) { delete tt; tt = new T(t); return *this; }
|
||||
operator T&() const { return *tt; }
|
||||
T *operator&() { return tt; }
|
||||
private:
|
||||
SwigValueWrapper& operator=(const SwigValueWrapper<T>& rhs);
|
||||
};
|
||||
|
||||
template <typename T> T SwigValueInit() {
|
||||
return T();
|
||||
}
|
||||
#endif
|
||||
|
||||
/* -----------------------------------------------------------------------------
|
||||
* This section contains generic SWIG labels for method/variable
|
||||
* declarations/attributes, and other compiler dependent labels.
|
||||
* ----------------------------------------------------------------------------- */
|
||||
|
||||
/* template workaround for compilers that cannot correctly implement the C++ standard */
|
||||
#ifndef SWIGTEMPLATEDISAMBIGUATOR
|
||||
# if defined(__SUNPRO_CC) && (__SUNPRO_CC <= 0x560)
|
||||
# define SWIGTEMPLATEDISAMBIGUATOR template
|
||||
# elif defined(__HP_aCC)
|
||||
/* Needed even with `aCC -AA' when `aCC -V' reports HP ANSI C++ B3910B A.03.55 */
|
||||
/* If we find a maximum version that requires this, the test would be __HP_aCC <= 35500 for A.03.55 */
|
||||
# define SWIGTEMPLATEDISAMBIGUATOR template
|
||||
# else
|
||||
# define SWIGTEMPLATEDISAMBIGUATOR
|
||||
# endif
|
||||
#endif
|
||||
|
||||
/* inline attribute */
|
||||
#ifndef SWIGINLINE
|
||||
# if defined(__cplusplus) || (defined(__GNUC__) && !defined(__STRICT_ANSI__))
|
||||
# define SWIGINLINE inline
|
||||
# else
|
||||
# define SWIGINLINE
|
||||
# endif
|
||||
#endif
|
||||
|
||||
/* attribute recognised by some compilers to avoid 'unused' warnings */
|
||||
#ifndef SWIGUNUSED
|
||||
# if defined(__GNUC__)
|
||||
# if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
|
||||
# define SWIGUNUSED __attribute__ ((__unused__))
|
||||
# else
|
||||
# define SWIGUNUSED
|
||||
# endif
|
||||
# elif defined(__ICC)
|
||||
# define SWIGUNUSED __attribute__ ((__unused__))
|
||||
# else
|
||||
# define SWIGUNUSED
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#ifndef SWIGUNUSEDPARM
|
||||
# ifdef __cplusplus
|
||||
# define SWIGUNUSEDPARM(p)
|
||||
# else
|
||||
# define SWIGUNUSEDPARM(p) p SWIGUNUSED
|
||||
# endif
|
||||
#endif
|
||||
|
||||
/* internal SWIG method */
|
||||
#ifndef SWIGINTERN
|
||||
# define SWIGINTERN static SWIGUNUSED
|
||||
#endif
|
||||
|
||||
/* internal inline SWIG method */
|
||||
#ifndef SWIGINTERNINLINE
|
||||
# define SWIGINTERNINLINE SWIGINTERN SWIGINLINE
|
||||
#endif
|
||||
|
||||
/* exporting methods */
|
||||
#if (__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)
|
||||
# ifndef GCC_HASCLASSVISIBILITY
|
||||
# define GCC_HASCLASSVISIBILITY
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#ifndef SWIGEXPORT
|
||||
# if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
|
||||
# if defined(STATIC_LINKED)
|
||||
# define SWIGEXPORT
|
||||
# else
|
||||
# define SWIGEXPORT __declspec(dllexport)
|
||||
# endif
|
||||
# else
|
||||
# if defined(__GNUC__) && defined(GCC_HASCLASSVISIBILITY)
|
||||
# define SWIGEXPORT __attribute__ ((visibility("default")))
|
||||
# else
|
||||
# define SWIGEXPORT
|
||||
# endif
|
||||
# endif
|
||||
#endif
|
||||
|
||||
/* calling conventions for Windows */
|
||||
#ifndef SWIGSTDCALL
|
||||
# if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
|
||||
# define SWIGSTDCALL __stdcall
|
||||
# else
|
||||
# define SWIGSTDCALL
|
||||
# endif
|
||||
#endif
|
||||
|
||||
/* Deal with Microsoft's attempt at deprecating C standard runtime functions */
|
||||
#if !defined(SWIG_NO_CRT_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_CRT_SECURE_NO_DEPRECATE)
|
||||
# define _CRT_SECURE_NO_DEPRECATE
|
||||
#endif
|
||||
|
||||
/* Deal with Microsoft's attempt at deprecating methods in the standard C++ library */
|
||||
#if !defined(SWIG_NO_SCL_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_SCL_SECURE_NO_DEPRECATE)
|
||||
# define _SCL_SECURE_NO_DEPRECATE
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <stdio.h>
|
||||
#if defined(_WIN32) || defined(__CYGWIN32__)
|
||||
# define DllExport __declspec( dllexport )
|
||||
# define SWIGSTDCALL __stdcall
|
||||
#else
|
||||
# define DllExport
|
||||
# define SWIGSTDCALL
|
||||
#endif
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
# include <new>
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
||||
/* Support for throwing Ada exceptions from C/C++ */
|
||||
|
||||
typedef enum
|
||||
{
|
||||
SWIG_AdaException,
|
||||
SWIG_AdaOutOfMemoryException,
|
||||
SWIG_AdaIndexOutOfRangeException,
|
||||
SWIG_AdaDivideByZeroException,
|
||||
SWIG_AdaArgumentOutOfRangeException,
|
||||
SWIG_AdaNullReferenceException
|
||||
} SWIG_AdaExceptionCodes;
|
||||
|
||||
|
||||
typedef void (SWIGSTDCALL* SWIG_AdaExceptionCallback_t)(const char *);
|
||||
|
||||
|
||||
typedef struct
|
||||
{
|
||||
SWIG_AdaExceptionCodes code;
|
||||
SWIG_AdaExceptionCallback_t callback;
|
||||
}
|
||||
SWIG_AdaExceptions_t;
|
||||
|
||||
|
||||
static
|
||||
SWIG_AdaExceptions_t
|
||||
SWIG_ada_exceptions[] =
|
||||
{
|
||||
{ SWIG_AdaException, NULL },
|
||||
{ SWIG_AdaOutOfMemoryException, NULL },
|
||||
{ SWIG_AdaIndexOutOfRangeException, NULL },
|
||||
{ SWIG_AdaDivideByZeroException, NULL },
|
||||
{ SWIG_AdaArgumentOutOfRangeException, NULL },
|
||||
{ SWIG_AdaNullReferenceException, NULL }
|
||||
};
|
||||
|
||||
|
||||
static
|
||||
void
|
||||
SWIG_AdaThrowException (SWIG_AdaExceptionCodes code, const char *msg)
|
||||
{
|
||||
SWIG_AdaExceptionCallback_t callback = SWIG_ada_exceptions[SWIG_AdaException].callback;
|
||||
if (code >=0 && (size_t)code < sizeof(SWIG_ada_exceptions)/sizeof(SWIG_AdaExceptions_t)) {
|
||||
callback = SWIG_ada_exceptions[code].callback;
|
||||
}
|
||||
callback(msg);
|
||||
}
|
||||
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
#endif
|
||||
|
||||
DllExport void SWIGSTDCALL SWIGRegisterExceptionCallbacks_LLVM_Transforms (SWIG_AdaExceptionCallback_t systemException,
|
||||
SWIG_AdaExceptionCallback_t outOfMemory,
|
||||
SWIG_AdaExceptionCallback_t indexOutOfRange,
|
||||
SWIG_AdaExceptionCallback_t divideByZero,
|
||||
SWIG_AdaExceptionCallback_t argumentOutOfRange,
|
||||
SWIG_AdaExceptionCallback_t nullReference)
|
||||
{
|
||||
SWIG_ada_exceptions [SWIG_AdaException].callback = systemException;
|
||||
SWIG_ada_exceptions [SWIG_AdaOutOfMemoryException].callback = outOfMemory;
|
||||
SWIG_ada_exceptions [SWIG_AdaIndexOutOfRangeException].callback = indexOutOfRange;
|
||||
SWIG_ada_exceptions [SWIG_AdaDivideByZeroException].callback = divideByZero;
|
||||
SWIG_ada_exceptions [SWIG_AdaArgumentOutOfRangeException].callback = argumentOutOfRange;
|
||||
SWIG_ada_exceptions [SWIG_AdaNullReferenceException].callback = nullReference;
|
||||
}
|
||||
|
||||
|
||||
/* Callback for returning strings to Ada without leaking memory */
|
||||
|
||||
typedef char * (SWIGSTDCALL* SWIG_AdaStringHelperCallback)(const char *);
|
||||
static SWIG_AdaStringHelperCallback SWIG_ada_string_callback = NULL;
|
||||
|
||||
|
||||
|
||||
/* probably obsolete ...
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
#endif
|
||||
DllExport void SWIGSTDCALL SWIGRegisterStringCallback_LLVM_Transforms(SWIG_AdaStringHelperCallback callback) {
|
||||
SWIG_ada_string_callback = callback;
|
||||
}
|
||||
*/
|
||||
|
||||
|
||||
|
||||
/* Contract support */
|
||||
|
||||
#define SWIG_contract_assert(nullreturn, expr, msg) if (!(expr)) {SWIG_AdaThrowException(SWIG_AdaArgumentOutOfRangeException, msg); return nullreturn; } else
|
||||
|
||||
|
||||
#define protected public
|
||||
#define private public
|
||||
|
||||
#include "llvm-c/Transforms/IPO.h"
|
||||
#include "llvm-c/Transforms/Scalar.h"
|
||||
|
||||
|
||||
|
||||
// struct LLVMCtxt;
|
||||
|
||||
|
||||
#undef protected
|
||||
#undef private
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
DllExport void SWIGSTDCALL Ada_LLVMAddArgumentPromotionPass (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
LLVMPassManagerRef arg1 = (LLVMPassManagerRef) 0 ;
|
||||
|
||||
arg1 = (LLVMPassManagerRef)jarg1;
|
||||
|
||||
LLVMAddArgumentPromotionPass(arg1);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_LLVMAddConstantMergePass (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
LLVMPassManagerRef arg1 = (LLVMPassManagerRef) 0 ;
|
||||
|
||||
arg1 = (LLVMPassManagerRef)jarg1;
|
||||
|
||||
LLVMAddConstantMergePass(arg1);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_LLVMAddDeadArgEliminationPass (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
LLVMPassManagerRef arg1 = (LLVMPassManagerRef) 0 ;
|
||||
|
||||
arg1 = (LLVMPassManagerRef)jarg1;
|
||||
|
||||
LLVMAddDeadArgEliminationPass(arg1);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_LLVMAddDeadTypeEliminationPass (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
LLVMPassManagerRef arg1 = (LLVMPassManagerRef) 0 ;
|
||||
|
||||
arg1 = (LLVMPassManagerRef)jarg1;
|
||||
|
||||
LLVMAddDeadTypeEliminationPass(arg1);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_LLVMAddFunctionAttrsPass (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
LLVMPassManagerRef arg1 = (LLVMPassManagerRef) 0 ;
|
||||
|
||||
arg1 = (LLVMPassManagerRef)jarg1;
|
||||
|
||||
LLVMAddFunctionAttrsPass(arg1);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_LLVMAddFunctionInliningPass (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
LLVMPassManagerRef arg1 = (LLVMPassManagerRef) 0 ;
|
||||
|
||||
arg1 = (LLVMPassManagerRef)jarg1;
|
||||
|
||||
LLVMAddFunctionInliningPass(arg1);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_LLVMAddGlobalDCEPass (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
LLVMPassManagerRef arg1 = (LLVMPassManagerRef) 0 ;
|
||||
|
||||
arg1 = (LLVMPassManagerRef)jarg1;
|
||||
|
||||
LLVMAddGlobalDCEPass(arg1);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_LLVMAddGlobalOptimizerPass (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
LLVMPassManagerRef arg1 = (LLVMPassManagerRef) 0 ;
|
||||
|
||||
arg1 = (LLVMPassManagerRef)jarg1;
|
||||
|
||||
LLVMAddGlobalOptimizerPass(arg1);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_LLVMAddIPConstantPropagationPass (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
LLVMPassManagerRef arg1 = (LLVMPassManagerRef) 0 ;
|
||||
|
||||
arg1 = (LLVMPassManagerRef)jarg1;
|
||||
|
||||
LLVMAddIPConstantPropagationPass(arg1);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_LLVMAddLowerSetJmpPass (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
LLVMPassManagerRef arg1 = (LLVMPassManagerRef) 0 ;
|
||||
|
||||
arg1 = (LLVMPassManagerRef)jarg1;
|
||||
|
||||
LLVMAddLowerSetJmpPass(arg1);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_LLVMAddPruneEHPass (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
LLVMPassManagerRef arg1 = (LLVMPassManagerRef) 0 ;
|
||||
|
||||
arg1 = (LLVMPassManagerRef)jarg1;
|
||||
|
||||
LLVMAddPruneEHPass(arg1);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_LLVMAddRaiseAllocationsPass (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
LLVMPassManagerRef arg1 = (LLVMPassManagerRef) 0 ;
|
||||
|
||||
arg1 = (LLVMPassManagerRef)jarg1;
|
||||
|
||||
LLVMAddRaiseAllocationsPass(arg1);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_LLVMAddStripDeadPrototypesPass (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
LLVMPassManagerRef arg1 = (LLVMPassManagerRef) 0 ;
|
||||
|
||||
arg1 = (LLVMPassManagerRef)jarg1;
|
||||
|
||||
LLVMAddStripDeadPrototypesPass(arg1);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_LLVMAddStripSymbolsPass (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
LLVMPassManagerRef arg1 = (LLVMPassManagerRef) 0 ;
|
||||
|
||||
arg1 = (LLVMPassManagerRef)jarg1;
|
||||
|
||||
LLVMAddStripSymbolsPass(arg1);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_LLVMAddAggressiveDCEPass (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
LLVMPassManagerRef arg1 = (LLVMPassManagerRef) 0 ;
|
||||
|
||||
arg1 = (LLVMPassManagerRef)jarg1;
|
||||
|
||||
LLVMAddAggressiveDCEPass(arg1);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_LLVMAddCFGSimplificationPass (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
LLVMPassManagerRef arg1 = (LLVMPassManagerRef) 0 ;
|
||||
|
||||
arg1 = (LLVMPassManagerRef)jarg1;
|
||||
|
||||
LLVMAddCFGSimplificationPass(arg1);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_LLVMAddCondPropagationPass (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
LLVMPassManagerRef arg1 = (LLVMPassManagerRef) 0 ;
|
||||
|
||||
arg1 = (LLVMPassManagerRef)jarg1;
|
||||
|
||||
LLVMAddCondPropagationPass(arg1);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_LLVMAddDeadStoreEliminationPass (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
LLVMPassManagerRef arg1 = (LLVMPassManagerRef) 0 ;
|
||||
|
||||
arg1 = (LLVMPassManagerRef)jarg1;
|
||||
|
||||
LLVMAddDeadStoreEliminationPass(arg1);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_LLVMAddGVNPass (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
LLVMPassManagerRef arg1 = (LLVMPassManagerRef) 0 ;
|
||||
|
||||
arg1 = (LLVMPassManagerRef)jarg1;
|
||||
|
||||
LLVMAddGVNPass(arg1);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_LLVMAddIndVarSimplifyPass (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
LLVMPassManagerRef arg1 = (LLVMPassManagerRef) 0 ;
|
||||
|
||||
arg1 = (LLVMPassManagerRef)jarg1;
|
||||
|
||||
LLVMAddIndVarSimplifyPass(arg1);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_LLVMAddInstructionCombiningPass (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
LLVMPassManagerRef arg1 = (LLVMPassManagerRef) 0 ;
|
||||
|
||||
arg1 = (LLVMPassManagerRef)jarg1;
|
||||
|
||||
LLVMAddInstructionCombiningPass(arg1);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_LLVMAddJumpThreadingPass (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
LLVMPassManagerRef arg1 = (LLVMPassManagerRef) 0 ;
|
||||
|
||||
arg1 = (LLVMPassManagerRef)jarg1;
|
||||
|
||||
LLVMAddJumpThreadingPass(arg1);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_LLVMAddLICMPass (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
LLVMPassManagerRef arg1 = (LLVMPassManagerRef) 0 ;
|
||||
|
||||
arg1 = (LLVMPassManagerRef)jarg1;
|
||||
|
||||
LLVMAddLICMPass(arg1);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_LLVMAddLoopDeletionPass (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
LLVMPassManagerRef arg1 = (LLVMPassManagerRef) 0 ;
|
||||
|
||||
arg1 = (LLVMPassManagerRef)jarg1;
|
||||
|
||||
LLVMAddLoopDeletionPass(arg1);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_LLVMAddLoopIndexSplitPass (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
LLVMPassManagerRef arg1 = (LLVMPassManagerRef) 0 ;
|
||||
|
||||
arg1 = (LLVMPassManagerRef)jarg1;
|
||||
|
||||
LLVMAddLoopIndexSplitPass(arg1);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_LLVMAddLoopRotatePass (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
LLVMPassManagerRef arg1 = (LLVMPassManagerRef) 0 ;
|
||||
|
||||
arg1 = (LLVMPassManagerRef)jarg1;
|
||||
|
||||
LLVMAddLoopRotatePass(arg1);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_LLVMAddLoopUnrollPass (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
LLVMPassManagerRef arg1 = (LLVMPassManagerRef) 0 ;
|
||||
|
||||
arg1 = (LLVMPassManagerRef)jarg1;
|
||||
|
||||
LLVMAddLoopUnrollPass(arg1);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_LLVMAddLoopUnswitchPass (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
LLVMPassManagerRef arg1 = (LLVMPassManagerRef) 0 ;
|
||||
|
||||
arg1 = (LLVMPassManagerRef)jarg1;
|
||||
|
||||
LLVMAddLoopUnswitchPass(arg1);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_LLVMAddMemCpyOptPass (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
LLVMPassManagerRef arg1 = (LLVMPassManagerRef) 0 ;
|
||||
|
||||
arg1 = (LLVMPassManagerRef)jarg1;
|
||||
|
||||
LLVMAddMemCpyOptPass(arg1);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_LLVMAddPromoteMemoryToRegisterPass (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
LLVMPassManagerRef arg1 = (LLVMPassManagerRef) 0 ;
|
||||
|
||||
arg1 = (LLVMPassManagerRef)jarg1;
|
||||
|
||||
LLVMAddPromoteMemoryToRegisterPass(arg1);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_LLVMAddReassociatePass (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
LLVMPassManagerRef arg1 = (LLVMPassManagerRef) 0 ;
|
||||
|
||||
arg1 = (LLVMPassManagerRef)jarg1;
|
||||
|
||||
LLVMAddReassociatePass(arg1);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_LLVMAddSCCPPass (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
LLVMPassManagerRef arg1 = (LLVMPassManagerRef) 0 ;
|
||||
|
||||
arg1 = (LLVMPassManagerRef)jarg1;
|
||||
|
||||
LLVMAddSCCPPass(arg1);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_LLVMAddScalarReplAggregatesPass (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
LLVMPassManagerRef arg1 = (LLVMPassManagerRef) 0 ;
|
||||
|
||||
arg1 = (LLVMPassManagerRef)jarg1;
|
||||
|
||||
LLVMAddScalarReplAggregatesPass(arg1);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_LLVMAddSimplifyLibCallsPass (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
LLVMPassManagerRef arg1 = (LLVMPassManagerRef) 0 ;
|
||||
|
||||
arg1 = (LLVMPassManagerRef)jarg1;
|
||||
|
||||
LLVMAddSimplifyLibCallsPass(arg1);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_LLVMAddTailCallEliminationPass (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
LLVMPassManagerRef arg1 = (LLVMPassManagerRef) 0 ;
|
||||
|
||||
arg1 = (LLVMPassManagerRef)jarg1;
|
||||
|
||||
LLVMAddTailCallEliminationPass(arg1);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_LLVMAddConstantPropagationPass (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
LLVMPassManagerRef arg1 = (LLVMPassManagerRef) 0 ;
|
||||
|
||||
arg1 = (LLVMPassManagerRef)jarg1;
|
||||
|
||||
LLVMAddConstantPropagationPass(arg1);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
DllExport void SWIGSTDCALL Ada_LLVMAddDemoteMemoryToRegisterPass (
|
||||
void * jarg1
|
||||
)
|
||||
{
|
||||
LLVMPassManagerRef arg1 = (LLVMPassManagerRef) 0 ;
|
||||
|
||||
arg1 = (LLVMPassManagerRef)jarg1;
|
||||
|
||||
LLVMAddDemoteMemoryToRegisterPass(arg1);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
Loading…
Reference in New Issue
Block a user