Skip to content

Commit

Permalink
LLVM Ada language bindings. Credit to Rod Kay and the AuroraUX team.
Browse files Browse the repository at this point in the history
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79295 91177308-0d34-0410-b5e6-96231b3b80d8
  • Loading branch information
eocallaghan committed Aug 18, 2009
1 parent 25103a2 commit e1b80b6
Show file tree
Hide file tree
Showing 26 changed files with 17,093 additions and 0 deletions.
4 changes: 4 additions & 0 deletions CREDITS.TXT
Original file line number Diff line number Diff line change
Expand Up @@ -182,6 +182,10 @@ N: Sumant Kowshik
E: [email protected]
D: Author of the original C backend

N: Rod Kay
E: [email protected]
D: Author of LLVM Ada bindings

N: Christopher Lamb
E: [email protected]
D: aligned load/store support, parts of noalias and restrict support
Expand Down
32 changes: 32 additions & 0 deletions bindings/ada/analysis/llvm_analysis-binding.ads
Original file line number Diff line number Diff line change
@@ -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 changes: 30 additions & 0 deletions bindings/ada/analysis/llvm_analysis.ads
Original file line number Diff line number Diff line change
@@ -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;
Loading

0 comments on commit e1b80b6

Please sign in to comment.