|
|
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: 1715 (0x6b3)
Types: TextFile
Names: »B«
└─⟦180fe333a⟧ Bits:30000405 8mm tape, Rational 1000, SW CATALOG, 10_20_0
└─⟦180fe333a⟧ Bits:30000537 8mm tape, Rational 1000, SW Catalog 10_20_0
└─⟦5cb1d1d7f⟧ »DATA«
└─⟦3b1ee7bd8⟧
└─⟦this⟧
with Instrument;
use Instrument;
------------------------
-- Parameter Association 01
------------------------
-- This test evaluates the code efficiency of a call to a procedure
-- that has a single formal in out parameter of the formal generic type.
-- The procedure Param_Assoc is called in the test version using the
-- global variable as the actual parameter. The global variable is
-- referenced inside the procedure through the formal parameter to ensure
-- that the required parameter passing is performed. In the noise
-- version, the procedure Param_Assoc is parameterless and references
-- the global variable directly so that there is no parameter passing
-- overhead incurred. Both the test and noise versions of the procedure
-- perform the same camouflaged assignment.
-- The test does not preclude the opportunity for the compiler to optimize
-- each version of the procedure call since this would not compromise
-- the code efficiency metrics.
procedure Fpana1 is
package Pc_Cs is new Procs (Integer);
use Pc_Cs;
procedure Param_Assoc
-- (Formal : in out T) -- included in test version
is
begin
-- Let(Formal, Ident(Formal)); -- included in test version
Let (Global, Ident (Global)); -- included in noise version
end Param_Assoc;
begin
Start ("FPANA1",
"Formal in/out Param. Assoc. w/1 param., Non-access type (Control)");
for I in 1 .. 10000 loop
Let (Global, Ident (Init));
-- Param_Assoc(Global); -- included in test version
Param_Assoc; -- included in noise version
end loop;
Stop;
end Fpana1;