|
|
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 - metrics - downloadIndex: B T
Length: 9671 (0x25c7)
Types: TextFile
Names: »B«
└─⟦afbc8121e⟧ Bits:30000532 8mm tape, Rational 1000, MC68020_OS2000 7_2_2
└─⟦77aa8350c⟧ »DATA«
└─⟦f794ecd1d⟧
└─⟦24d1ddd49⟧
└─⟦this⟧
separate (Shared_Code_Generic_Support)
procedure Binary_Dispatch (Type_Desc : Type_Descriptor;
Exp_1 : Expression;
Exp_1_Kind : Expression_Kind;
Exp_2 : Expression;
Exp_2_Kind : Expression_Kind) is
pragma Routine_Number (Runtime_Ids.Internal);
pragma Suppress_All;
-- The implementation of Binary_Dispatch is by double instantiations
-- of Unary_Dispatch.
procedure Exp_1_2_Value_Op (Exp_1 : Expression) is
pragma Routine_Number (Runtime_Ids.Internal);
procedure Exp_2_Value_Op (Exp_2 : Expression) is
pragma Routine_Number (Runtime_Ids.Internal);
begin
Binary_Value_Op (Exp_1, Exp_2);
end Exp_2_Value_Op;
-- pragma Inline (Exp_2_Value_Op);
procedure Exp_2_Data_Op (Exp_2_Data : in out Data) is
pragma Routine_Number (Runtime_Ids.Internal);
begin
Binary_Value_Data_Op (Exp_1, Exp_2_Data);
end Exp_2_Data_Op;
-- pragma Inline (Exp_2_Data_Op);
-- Since Exp_1 is a value, Exp_2 cannot be an unconstrained
-- array or record.
procedure Dispatch_2 is new Unary_Dispatch
(Unary_Value_Op => Exp_2_Value_Op,
Unary_Data_Op => Exp_2_Data_Op,
Unary_Unconstrained_Array_Op =>
Bogus_Unconstrained_Array_Op,
Unary_Unconstrained_Record_Op =>
Bogus_Unconstrained_Record_Op,
Get_Value_Size => Get_Value_Size);
-- pragma Inline (Dispatch_2);
begin
Dispatch_2 (Type_Desc, Exp_2, Exp_2_Kind);
end Exp_1_2_Value_Op;
-- pragma Inline (Exp_1_2_Value_Op);
procedure Exp_1_2_Data_Op (Exp_1_Data : in out Data) is
pragma Routine_Number (Runtime_Ids.Internal);
procedure Exp_2_Value_Op (Exp_2 : Expression) is
pragma Routine_Number (Runtime_Ids.Internal);
begin
Binary_Data_Value_Op (Exp_1_Data, Exp_2);
end Exp_2_Value_Op;
-- pragma Inline (Exp_2_Value_Op);
procedure Exp_2_Data_Op (Exp_2_Data : in out Data) is
pragma Routine_Number (Runtime_Ids.Internal);
begin
Binary_Data_Op (Exp_1_Data, Exp_2_Data);
end Exp_2_Data_Op;
-- pragma Inline (Exp_2_Data_Op);
procedure Exp_2_Unconstrained_Array_Op (Exp_2_Dope : Dope_Vector;
Exp_2_Data : in out Data) is
pragma Routine_Number (Runtime_Ids.Internal);
Dope_Vector_Size : constant Integer :=
Get_Dope_Vector_Size (Type_Desc.Constraints);
package Dv_Subtype is
new Establish_Dope_Vector_Subtype (Dope_Vector_Size);
Dope_Ref : constant Dv_Subtype.Dope_Ref :=
Dv_Subtype.Cnvt (Get_Dope_Vector_Address
(Type_Desc.Constraints));
Exp_1_Dope : Dv_Subtype.Actual_Dope renames Dope_Ref.all;
begin
Binary_Unconstrained_Array_Op (Exp_1_Dope => Exp_1_Dope,
Exp_1_Data => Exp_1_Data,
Exp_2_Dope => Exp_2_Dope,
Exp_2_Data => Exp_2_Data);
end Exp_2_Unconstrained_Array_Op;
-- pragma Inline (Exp_2_Unconstrained_Array_Op);
procedure Exp_2_Unconstrained_Record_Op
(Exp_2_Constrained : Boolean; Exp_2_Data : in out Data) is
pragma Routine_Number (Runtime_Ids.Internal);
begin
Binary_Unconstrained_Record_Op
(Exp_1_Constrained => True,
Exp_1_Data => Exp_1_Data,
Exp_2_Constrained => Exp_2_Constrained,
Exp_2_Data => Exp_2_Data);
end Exp_2_Unconstrained_Record_Op;
-- pragma Inline (Exp_2_Unconstrained_Record_Op);
procedure Dispatch_2 is new Unary_Dispatch
(Unary_Value_Op => Exp_2_Value_Op,
Unary_Data_Op => Exp_2_Data_Op,
Unary_Unconstrained_Array_Op =>
Exp_2_Unconstrained_Array_Op,
Unary_Unconstrained_Record_Op =>
Exp_2_Unconstrained_Record_Op,
Get_Value_Size => Get_Value_Size);
-- pragma Inline (Dispatch_2);
begin
Dispatch_2 (Type_Desc, Exp_2, Exp_2_Kind);
end Exp_1_2_Data_Op;
-- pragma Inline (Exp_1_2_Data_Op);
procedure Exp_1_2_Unconstrained_Array_Op
(Exp_1_Dope : Dope_Vector;
Exp_1_Data : in out Data) is
pragma Routine_Number (Runtime_Ids.Internal);
procedure Exp_2_Data_Op (Exp_2_Data : in out Data) is
pragma Routine_Number (Runtime_Ids.Internal);
Dope_Vector_Size : constant Integer :=
Get_Dope_Vector_Size (Type_Desc.Constraints);
package Dv_Subtype is
new Establish_Dope_Vector_Subtype (Dope_Vector_Size);
Dope_Ref : constant Dv_Subtype.Dope_Ref :=
Dv_Subtype.Cnvt (Get_Dope_Vector_Address
(Type_Desc.Constraints));
Exp_2_Dope : Dv_Subtype.Actual_Dope renames Dope_Ref.all;
begin
Binary_Unconstrained_Array_Op (Exp_1_Dope, Exp_1_Data,
Exp_2_Dope, Exp_2_Data);
end Exp_2_Data_Op;
-- pragma Inline (Exp_2_Data_Op);
procedure Exp_2_Unconstrained_Array_Op (Exp_2_Dope : Dope_Vector;
Exp_2_Data : in out Data) is
pragma Routine_Number (Runtime_Ids.Internal);
begin
Binary_Unconstrained_Array_Op (Exp_1_Dope, Exp_1_Data,
Exp_2_Dope, Exp_2_Data);
end Exp_2_Unconstrained_Array_Op;
-- pragma Inline (Exp_2_Unconstrained_Array_Op);
procedure Dispatch_2 is new Unary_Dispatch
(Unary_Value_Op => Bogus_Value_Op,
Unary_Data_Op => Exp_2_Data_Op,
Unary_Unconstrained_Array_Op =>
Exp_2_Unconstrained_Array_Op,
Unary_Unconstrained_Record_Op =>
Bogus_Unconstrained_Record_Op,
Get_Value_Size => Get_Value_Size);
-- pragma Inline (Dispatch_2);
begin
Dispatch_2 (Type_Desc, Exp_2, Exp_2_Kind);
end Exp_1_2_Unconstrained_Array_Op;
-- pragma Inline (Exp_1_2_Unconstrained_Array_Op);
procedure Exp_1_2_Unconstrained_Record_Op
(Exp_1_Constrained : Boolean;
Exp_1_Data : in out Data) is
pragma Routine_Number (Runtime_Ids.Internal);
procedure Exp_2_Data_Op (Exp_2_Data : in out Data) is
pragma Routine_Number (Runtime_Ids.Internal);
begin
Binary_Unconstrained_Record_Op
(Exp_1_Constrained => Exp_1_Constrained,
Exp_1_Data => Exp_1_Data,
Exp_2_Constrained => True,
Exp_2_Data => Exp_2_Data);
end Exp_2_Data_Op;
-- pragma Inline (Exp_2_Data_Op);
procedure Exp_2_Unconstrained_Record_Op (Exp_2_Constrained : Boolean;
Exp_2_Data : in out Data) is
pragma Routine_Number (Runtime_Ids.Internal);
begin
Binary_Unconstrained_Record_Op (Exp_1_Constrained, Exp_1_Data,
Exp_2_Constrained, Exp_2_Data);
end Exp_2_Unconstrained_Record_Op;
-- pragma Inline (Exp_2_Unconstrained_Record_Op);
procedure Dispatch_2 is new Unary_Dispatch
(Unary_Value_Op => Bogus_Value_Op,
Unary_Data_Op => Exp_2_Data_Op,
Unary_Unconstrained_Array_Op =>
Bogus_Unconstrained_Array_Op,
Unary_Unconstrained_Record_Op =>
Exp_2_Unconstrained_Record_Op,
Get_Value_Size => Get_Value_Size);
-- pragma Inline (Dispatch_2);
begin
Dispatch_2 (Type_Desc, Exp_2, Exp_2_Kind);
end Exp_1_2_Unconstrained_Record_Op;
-- pragma Inline (Exp_1_2_Unconstrained_Record_Op);
procedure Dispatch_1 is new Unary_Dispatch (Exp_1_2_Value_Op,
Exp_1_2_Data_Op,
Exp_1_2_Unconstrained_Array_Op,
Exp_1_2_Unconstrained_Record_Op,
Get_Value_Size);
-- pragma Inline (Dispatch_1);
begin
Dispatch_1 (Type_Desc, Exp_1, Exp_1_Kind);
end Binary_Dispatch;
pragma Runtime_Unit (Unit_Number => Runtime_Ids.Runtime_Compunit,
Elab_Routine_Number => Runtime_Ids.Internal);