diff options
author | Tristan Gingold | 2014-03-12 03:44:18 +0100 |
---|---|---|
committer | Tristan Gingold | 2014-03-12 03:44:18 +0100 |
commit | 8fc7559a26a3c634b7c87ada03744f5f31637b32 (patch) | |
tree | 125b7264888d5f87f72865f20bda953a120846e8 /ortho/agcc/agcc-fe.ads | |
parent | 0594d17c40ce054f61d2a5679e377467ebc7c796 (diff) | |
download | ghdl-8fc7559a26a3c634b7c87ada03744f5f31637b32.tar.gz ghdl-8fc7559a26a3c634b7c87ada03744f5f31637b32.tar.bz2 ghdl-8fc7559a26a3c634b7c87ada03744f5f31637b32.zip |
Remove old and unused agcc and gcc34 subdirs.
Diffstat (limited to 'ortho/agcc/agcc-fe.ads')
-rw-r--r-- | ortho/agcc/agcc-fe.ads | 238 |
1 files changed, 0 insertions, 238 deletions
diff --git a/ortho/agcc/agcc-fe.ads b/ortho/agcc/agcc-fe.ads deleted file mode 100644 index 7c2b110..0000000 --- a/ortho/agcc/agcc-fe.ads +++ /dev/null @@ -1,238 +0,0 @@ --- Ada bindings for GCC internals. --- Copyright (C) 2002, 2003, 2004, 2005 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 Agcc.Trees; use Agcc.Trees; -with Agcc.Machmode; use Agcc.Machmode; -with Agcc.Hwint; use Agcc.Hwint; -with Agcc.Options; use Agcc.Options; -with Interfaces.C_Streams; use Interfaces.C_Streams; -with C; use C; - -package Agcc.Fe is - -- Subprograms that must be defined by the front-end. - - -- Defined in langhooks.h - function Lang_Init_Options (Argc : Integer; Argv : C_String_Array) - return Integer; - - -- Front-end function expected by GCC. - function Lang_Handle_Option (Code : Opt_Code; - Arg : C_String; - Value : Integer) - return Integer; - - type C_String_Acc is access C_String; - pragma Convention (C, C_String_Acc); - - function Lang_Post_Options (Filename : C_String_Acc) return C_Bool; - - function Lang_Init return C_Bool; - - procedure Lang_Finish; - - --procedure Lang_Clear_Binding_Stack; - - -- Return the typed-based alias set for T, which may be an expression - -- or a type. Return -1 if we don't do anything special. - -- O means can alias everything. - function Lang_Get_Alias_Set (T : Tree) return HOST_WIDE_INT; - - --function Lang_Expand_Constant (N : Tree) return Tree; - - --function Lang_Safe_From_P (Target : Rtx; Exp : Tree) return C_Bool; - - procedure Lang_Parse_File (Debug : C_Bool); - - -- Called by the back-end or by the front-end when the address of EXP - -- must be taken. - -- This function should found the base object (if any), and mark it as - -- addressable (via TREE_ADDRESSABLE). It may emit a warning if this - -- object cannot be addressable (front-end restriction). - -- Returns TRUE in case of success, FALSE in case of failure. - -- Note that the status is never checked by the back-end. - function Mark_Addressable (Exp : Tree) return C_Bool; - - -- Possibly apply default attributes to function FUNC represented by - -- a FUNCTION_DECL. - procedure Insert_Default_Attributes (Func : Tree); - - -- Lexical scopes. - -- Roughly speaking, it is used to mark declarations regions. - - -- Enter in a new lexical scope. INSIDE should be FALSE (TRUE iff called - -- from the inside of the front end, ie from gcc internal code). - procedure Pushlevel (Inside : C_Bool); - - -- Add a declaration to the current scope. - -- Note: GCC backend expect PUSHDECL to return its argument; however, - -- it is only seldom used. Both forms exist and are aliased with a third - -- one which is exported under the C name. - -- (Unfortunatly, it is not possible to export the function and to import - -- the procedure). - procedure Pushdecl (Decl : Tree); - function Pushdecl (Decl : Tree) return Tree; - - -- This function has to be defined. - function Exported_Pushdecl (Decl : Tree) return Tree; - - -- Get the declarations of the current scope. - function Getdecls return Tree; - - procedure Set_Block (Block : Tree); - - -- Return non-zero if we are currently in the global binding level. - function Global_Bindings_P return Integer; - - -- Insert BLOCK at the end of the list of subblocks of the - -- current binding level. This is used when a BIND_EXPR is expanded, - -- to handle the BLOCK node inside the BIND_EXPR. - procedure Insert_Block (Block : Tree); - - -- Exit the current scope. - -- FUNCTIONBODY is TRUE iff the scope corresponds to a subprogram scope. - -- Used forms (both imported). - procedure Poplevel (Keep : C_Bool; Revers : C_Bool; Functionbody : C_Bool); - function Poplevel (Keep : C_Bool; Revers : C_Bool; Functionbody : C_Bool) - return Tree; - - -- Exported form. - function Exported_Poplevel - (Keep : C_Bool; Revers : C_Bool; Functionbody : C_Bool) - return Tree; - - -- Perform all the initialization steps that are language-specific. - --procedure Lang_Init; - - -- Perform all the finalization steps that are language-specific. - --procedure Lang_Finish; - - -- Return an integer type with the number of bits of precision given by - -- PRECISION. UNSIGNEDP is nonzero if the type is unsigned; otherwise - -- it is a signed type. - function Type_For_Size (Precision : Natural; Unsignedp : C_Bool) - return Tree; - - -- Return a data type that has machine mode MODE. UNSIGNEDP selects - -- an unsigned type; otherwise a signed type is returned. - function Type_For_Mode (Mode : Machine_Mode; Unsignedp : C_Bool) - return Tree; - - -- Return the unsigned version of a TYPE_NODE, a scalar type. - function Unsigned_Type (Type_Node : Tree) return Tree; - - -- Return the signed version of a TYPE_NODE, a scalar type. - function Signed_Type (Type_Node : Tree) return Tree; - - -- Return a type the same as TYPE except unsigned or signed according to - -- UNSIGNEDP. - function Signed_Or_Unsigned_Type (Unsignedp : C_Bool; Atype : Tree) - return Tree; - - -- Return a definition for a builtin function named NAME and whose data - -- type is TYPE. TYPE should be a function type with argument types. - -- FUNCTION_CODE tells later passes how to compile calls to this function. - -- See tree.h for its possible values. - -- - -- If LIBRARY_NAME is nonzero, use that for DECL_ASSEMBLER_NAME, - -- the name to be called if we can't opencode the function. - function Builtin_Function - (Name: System.Address; - Ftype : Tree; - Function_Code : Built_In_Function; - Class : Built_In_Class; - Library_Name : System.Address) - return Tree; - - -- Set debug flag of the parser. - procedure Set_Yydebug (Flag : C_Bool); - - - -- Hooks for print-tree.c: - procedure Print_Lang_Decl (File : FILEs; Node : Tree; Indent : natural); - procedure Print_Lang_Type (File : FILEs; Node : Tree; Indent : Natural); - procedure Print_Lang_Identifier - (File : FILEs; Node : Tree; Indent : Natural); - procedure Lang_Print_Xnode (File : FILEs; Node : Tree; Indent : Natural); - - -- Print any language-specific compilation statistics. - procedure Print_Lang_Statistics; - - - -- Finish to copy a ..._DECL node (the LANG_DECL_SPECIFIC field). - procedure Copy_Lang_Decl (Node : Tree); - - -- Normalize boolean value EXPR. - function Truthvalue_Conversion (Expr : Tree) return Tree; - - -- Procedure called in case of sizeof applied to an incomplete type. - procedure Incomplete_Type_Error (Value : Tree; Atype : Tree); - - -- This function must be defined in the language-specific files. - -- expand_expr calls it to build the cleanup-expression for a TARGET_EXPR. - function Maybe_Build_Cleanup (Decl : Tree) return Tree; - - --Language_String : constant Chars; - Flag_Traditional : Integer := 0; -private - pragma Export (C, Lang_Init_Options); - pragma Export (C, Lang_Handle_Option); - pragma Export (C, Lang_Post_Options); - pragma Export (C, Lang_Init); - pragma Export (C, Lang_Finish); - pragma Export (C, Lang_Get_Alias_Set); - - pragma Export (C, Lang_Parse_File); - - pragma Export (C, Mark_Addressable); - pragma Export (C, Insert_Default_Attributes); - - pragma Import (C, Pushdecl); - pragma Export (C, Exported_Pushdecl, "pushdecl"); - pragma Export (C, Pushlevel); - pragma Export (C, Set_Block); - pragma Export (C, Insert_Block); - pragma Export (C, Global_Bindings_P); - pragma Import (C, Poplevel); - pragma Export (C, Exported_Poplevel, "poplevel"); - pragma Export (C, Getdecls); - - pragma Export (C, Type_For_Size); - pragma Export (C, Type_For_Mode); - pragma Export (C, Unsigned_Type); - pragma Export (C, Signed_Type); - pragma Export (C, Signed_Or_Unsigned_Type); - - pragma Export (C, Builtin_Function); - - - pragma Export (C, Set_Yydebug); - - pragma Export (C, Print_Lang_Decl); - pragma Export (C, Print_Lang_Type); - pragma Export (C, Print_Lang_Identifier); - pragma Export (C, Lang_Print_Xnode); - - pragma Export (C, Print_Lang_Statistics); - pragma Export (C, Copy_Lang_Decl); - - pragma Export (C, Truthvalue_Conversion); - pragma Export (C, Incomplete_Type_Error); - pragma Export (C, Maybe_Build_Cleanup); - - pragma Export (C, Flag_Traditional); -end Agcc.Fe; - |