aboutsummaryrefslogtreecommitdiffstats
path: root/ortho/llvm/ortho_llvm-main.adb
diff options
context:
space:
mode:
Diffstat (limited to 'ortho/llvm/ortho_llvm-main.adb')
-rw-r--r--ortho/llvm/ortho_llvm-main.adb77
1 files changed, 0 insertions, 77 deletions
diff --git a/ortho/llvm/ortho_llvm-main.adb b/ortho/llvm/ortho_llvm-main.adb
deleted file mode 100644
index f315fe44f..000000000
--- a/ortho/llvm/ortho_llvm-main.adb
+++ /dev/null
@@ -1,77 +0,0 @@
--- LLVM back-end for ortho.
--- Copyright (C) 2014 Tristan Gingold
---
--- GHDL is free software; you can redistribute it and/or modify it under
--- the terms of the GNU General Public License as published by the Free
--- Software Foundation; either version 2, or (at your option) any later
--- version.
---
--- GHDL is distributed in the hope that it will be useful, but WITHOUT ANY
--- WARRANTY; without even the implied warranty of MERCHANTABILITY or
--- FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
--- for more details.
---
--- You should have received a copy of the GNU General Public License
--- along with GCC; see the file COPYING. If not, write to the Free
--- Software Foundation, 59 Temple Place - Suite 330, Boston, MA
--- 02111-1307, USA.
-
-with Ada.Unchecked_Conversion;
-
-package body Ortho_LLVM.Main is
- Dbg_Str : constant String := "dbg";
-
- 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;
-
- procedure Init is
- begin
- Builder := CreateBuilder;
- Decl_Builder := CreateBuilder;
-
- Char_Type := New_Unsigned_Type (8);
- New_Type_Decl (Get_Identifier ("__llvm_char"), Char_Type);
-
- if False then
- Char_Ptr_Type := New_Access_Type (Char_Type);
- New_Type_Decl (Get_Identifier ("__llvm_char_ptr"), Char_Ptr_Type);
-
- Stacksave_Fun := AddFunction
- (Module, Stacksave_Name'Address,
- FunctionType (Get_LLVM_Type (Char_Ptr_Type),
- TypeRefArray'(1 .. 0 => Null_TypeRef), 0, 0));
-
- Stackrestore_Fun := AddFunction
- (Module, Stackrestore_Name'Address,
- FunctionType
- (VoidType,
- TypeRefArray'(1 => Get_LLVM_Type (Char_Ptr_Type)), 1, 0));
- end if;
-
- if Flag_Debug then
- Debug_ID := GetMDKindID (Dbg_Str, Dbg_Str'Length);
-
- declare
- Atypes : TypeRefArray (1 .. 2);
- Ftype : TypeRef;
- Name : String := "llvm.dbg.declare" & ASCII.NUL;
- begin
- Atypes := (MetadataType, MetadataType);
- Ftype := FunctionType (VoidType, Atypes, Atypes'Length, 0);
- Llvm_Dbg_Declare := AddFunction (Module, Name'Address, Ftype);
- AddFunctionAttr (Llvm_Dbg_Declare,
- NoUnwindAttribute + ReadNoneAttribute);
- end;
- end if;
- end Init;
-end Ortho_LLVM.Main;