-
+ C41300D143792A5D7C9F2FE4F9EB94324E99A91EB2BA164504ACF37137802AC0B00B5F3BBD00A9D23A9043B3B8731DB50B763E0B23CE061093ABD436A6B2B286
ffa/libffa/fz_basic.ads
(0 . 0)(1 . 26)
385 with Words; use Words;
386 with FZ_Type; use FZ_Type;
387
388
389 package FZ_Basic is
390
391 pragma Pure;
392
393 -- N := 0
394 procedure FZ_Clear(N : out FZ);
395
396 -- First word of N := Source
397 procedure FZ_Set_Head(N : out FZ; Source : in Word);
398
399 -- First word of N
400 function FZ_Get_Head(N : in FZ) return Word;
401
402 -- Exchange X and Y
403 procedure FZ_Swap(X : in out FZ; Y : in out FZ);
404 pragma Precondition(X'Length = Y'Length);
405
406 -- Constant-time MUX: Sel = 0: Result := X; Sel = 1: Result := Y
407 procedure FZ_Mux(X : in FZ; Y : in FZ; Result : out FZ; Sel : in WBool);
408 pragma Precondition(X'Length = Y'Length and X'Length = Result'Length);
409
410 end FZ_Basic;