DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 Tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - downloadIndex: ┃ T V ┃
Length: 6192 (0x1830) Types: TextFile Names: »V«
└─⟦d10a02448⟧ Bits:30000409 8mm tape, Rational 1000, ENVIRONMENT, D_12_7_3 └─ ⟦fc9b38f02⟧ »DATA« └─⟦9b46a407a⟧ └─⟦12c68c704⟧ └─⟦this⟧ └─⟦5f3412b64⟧ Bits:30000745 8mm tape, Rational 1000, ENVIRONMENT 12_6_5 TOOLS └─ ⟦91c658230⟧ »DATA« └─⟦458657fb6⟧ └─⟦220843204⟧ └─⟦this⟧
with System; with Machine; with Action; with Diana; with Error_Messages; with Directory; with Switch_Implementation; with Units_In_Program; package R1000_Code_Generator is package Switch renames Switch_Implementation; pragma Consume_Offset; package Switches is procedure Set_Global_Tracing (On : Boolean := True); -- each form of Set may raise switch.undefined_switch_name procedure Set (Switches : in out Switch.File; Switch : String; Value : Boolean; Action_Id : Action.Id := Action.Null_Id); procedure Set (Switches : in out Switch.File; Switch : String; Value : Integer; Action_Id : Action.Id := Action.Null_Id); procedure Set (Switches : in out Switch.File; Switch : String; Value : String; Action_Id : Action.Id := Action.Null_Id); procedure Cmd_Set (Switch : String; Value : Boolean); procedure Cmd_Set (Switch : String; Value : Integer); procedure Cmd_Set (Switch : String; Value : String); end Switches; -- the following generic should be instantiated with the same -- put and new_line procedures used to instantiate diana.symbolic_io; -- the result is passed to symbolic_io as print_other_attrs. generic with procedure Put (S : String); with procedure New_Line; package Attr_Display is procedure Print_Cg_Attrs (Node : Diana.Tree; Indent : Integer); end Attr_Display; package Exported_Attrs is -- FILE ATTRIBUTES function Has_Code_Segment (T : Diana.Tree) return Boolean; function Get_Code_Segment (T : Diana.Tree) return Directory.Object; function Has_List_File (T : Diana.Tree) return Boolean; function Get_List_File (T : Diana.Tree) return Directory.Object; function Has_Asm_File (T : Diana.Tree) return Boolean; function Get_Asm_File (T : Diana.Tree) return Directory.Object; function Has_Debug_List_File (T : Diana.Tree) return Boolean; function Get_Debug_List_File (T : Diana.Tree) return Directory.Object; function Has_Elab_Code_Segment (T : Diana.Tree) return Boolean; function Get_Elab_Code_Segment (T : Diana.Tree) return Directory.Object; function Has_Elab_List_File (T : Diana.Tree) return Boolean; function Get_Elab_List_File (T : Diana.Tree) return Directory.Object; function Has_Elab_Asm_File (T : Diana.Tree) return Boolean; function Get_Elab_Asm_File (T : Diana.Tree) return Directory.Object; -- CG_LEVEL -- The control stack lexical level for an object -- Attached to all id nodes which correspond to runtime objects function Get_Level (Node : Diana.Tree) return Integer; -- CG_OFFSET -- The control stack offset of a variable -- or the field index of a record field -- Attached to all id nodes which correspond to runtime objects or -- are record fields function Get_Offset (Node : Diana.Tree) return Integer; function Has_Offset (Node : Diana.Tree) return Boolean; -- CG_INT_VALUE -- simplified value of expression for debugger -- can be attached to any expression function Has_Int_Value (Node : Diana.Tree) return Boolean; function Get_Int_Value (Node : Diana.Tree) return Integer; -- CG_VARIABLE_SIZE_FIELD -- True if the field type has a dependent discriminant constraint -- Attached to field_ids function Is_Variable_Size (Defn : Diana.Tree) return Boolean; -- CG_VARIANT_FIELD -- True if the field is a variant field -- Attached to field_ids function Is_Variant_Field (Defn : Diana.Tree) return Boolean; -- CG_STMT_NUMBER -- Attached to all dn_accept nodes and dn_block nodes which represent -- block statements. -- Gives the source statement number of the accept or block. function Has_Stmt_Number (Node : Diana.Tree) return Boolean; function Get_Stmt_Number (Node : Diana.Tree) return Integer; -- RCG_MAJOR_VERSION -- RCG_MINOR_VERSION -- attached to comp_unit -- indicates version of Rcg that was last used on this unit function Has_Rcg_Major_Version (Node : Diana.Tree) return Boolean; function Get_Rcg_Major_Version (Node : Diana.Tree) return Integer; function Has_Rcg_Minor_Version (Node : Diana.Tree) return Boolean; function Get_Rcg_Minor_Version (Node : Diana.Tree) return Integer; -- CG_COUPLER_SUBPROGRAM -- indicates whether subprogram is special coupler subprogram function Is_Coupler_Subprogram (Node : Diana.Tree) return Boolean; -- CG_UNITS_IN_PROGRAM function Get_Units_In_Program (Main_Unit_Id : Diana.Tree) return Units_In_Program.Library_Unit_List; function Has_Units_In_Program (Main_Unit_Id : Diana.Tree) return Boolean; -- CG_ELAB_SEG_NUMBER function Has_Elab_Seg_Number (Main_Unit_Id : Diana.Tree) return Boolean; function Get_Elab_Seg_Number (Main_Unit_Id : Diana.Tree) return Integer; -- CG_SEG_NUMBER function Has_Seg_Number (Unit_Id : Diana.Tree) return Boolean; function Get_Seg_Number (Unit_Id : Diana.Tree) return Integer; function Is_Inline_Frame (Frame : Diana.Tree) return Boolean; -- Kind (Frame) is: dn_block (a block statement) -- dn_proc_id, dn_function_id, dn_def_op -- (as_designator of first id of subprogram) function Is_Integrated_Package (Package_Id : Diana.Tree) return Boolean; -- Kind (Package_id) is dn_package_id (the cg_first id). end Exported_Attrs; pragma Subsystem (R1000_Code_Gen); pragma Module_Name (4, 1601); end R1000_Code_Generator;