diff options
author | Tristan Gingold | 2014-03-09 10:25:08 +0100 |
---|---|---|
committer | Tristan Gingold | 2014-03-09 10:25:08 +0100 |
commit | 6f66ce096fed773c00a3278fb3aced424fa3e5be (patch) | |
tree | d23a5dcacc598c45983d51ba5491706906a98513 /ortho/llvm/ortho_code_main.adb | |
parent | 6a8dd0ee9bd3ec2ffe6ff7fa821af92968008e55 (diff) | |
download | ghdl-6f66ce096fed773c00a3278fb3aced424fa3e5be.tar.gz ghdl-6f66ce096fed773c00a3278fb3aced424fa3e5be.tar.bz2 ghdl-6f66ce096fed773c00a3278fb3aced424fa3e5be.zip |
Remove ortho_llvm-main.
Diffstat (limited to 'ortho/llvm/ortho_code_main.adb')
-rw-r--r-- | ortho/llvm/ortho_code_main.adb | 22 |
1 files changed, 18 insertions, 4 deletions
diff --git a/ortho/llvm/ortho_code_main.adb b/ortho/llvm/ortho_code_main.adb index eec8490..300bb32 100644 --- a/ortho/llvm/ortho_code_main.adb +++ b/ortho/llvm/ortho_code_main.adb @@ -18,8 +18,9 @@ with Ada.Command_Line; use Ada.Command_Line; with Ada.Unchecked_Deallocation; +with Ada.Unchecked_Conversion; with Ada.Text_IO; use Ada.Text_IO; -with Ortho_LLVM.Main; use Ortho_LLVM.Main; + with Ortho_Front; use Ortho_Front; with LLVM.BitWriter; with LLVM.Core; use LLVM.Core; @@ -28,11 +29,11 @@ with LLVM.Target; use LLVM.Target; with LLVM.TargetMachine; use LLVM.TargetMachine; with LLVM.Analysis; with LLVM.Transforms.Scalar; +with Ortho_LLVM; use Ortho_LLVM; with Interfaces; with Interfaces.C; use Interfaces.C; -procedure Ortho_Code_Main -is +procedure Ortho_Code_Main is -- Name of the output filename (given by option '-o'). Output : String_Acc := null; @@ -84,6 +85,19 @@ is end if; end Dump_Llvm; + function To_String (C : Cstring) return String is + function Strlen (C : Cstring) return Natural; + pragma Import (C, Strlen); + + subtype Fat_String is String (Positive); + type Fat_String_Acc is access Fat_String; + + function To_Fat_String_Acc is new + Ada.Unchecked_Conversion (Cstring, Fat_String_Acc); + begin + return To_Fat_String_Acc (C)(1 .. Strlen (C)); + end To_String; + Codegen : CodeGenFileType := ObjectFile; Msg : aliased Cstring; @@ -235,7 +249,7 @@ begin -- Target_Data := CreateTargetData (Triple); end if; - Ortho_LLVM.Main.Init; + Ortho_LLVM.Init; Set_Exit_Status (Failure); |