Other Items:
|
|
|
|
|
|
|
|
|
|
function XOR5 (V0, V1, V2, V3, V4 : Types.Word32) return Types.Word32;
pragma Inline (XOR5);
|
Perform XOR on four 32-bit words V0 , V1 , V2 , V3 and V4
return V0 xor V1 xor V2 xor V3 xor V4;
|
|
procedure Block_XOR
(Left : in Types.Word32_Array_Type;
Right : in Types.Word32_Array_Type;
Result : out Types.Word32_Array_Type);
pragma Inline (Block_XOR);
|
Perform XOR on two arrays of 32-bit words
Left - First input array
Right - Second input array
Result - Result array
derives
Result from Left, Right;
pre
Left'First = Right'First and
Left'Last = Right'Last and
Right'First = Result'First and
Right'Last = Result'Last;
post
(for all I in Types.Index range Left'First .. Left'Last =>
(Result (I) = XOR2 (Left (I), Right (I))));
|
|
procedure Block_Copy
(Source : in Types.Word32_Array_Type;
Dest : in out Types.Word32_Array_Type);
pragma Inline (Block_Copy);
|
Copy all elements of Source to Dest . Should Source be shorter than
Dest , remaining elements stay unchanged.
derives
Dest from *, Source;
pre
Source'First = Dest'First and
Source'Last <= Dest'Last;
post
(for all P in Types.Index range Source'First .. Source'Last =>
(Dest (P) = Source (P)));
|
|