- 0A3C652DEF28676A7BE3A8C8A76C1BF1542C42C993718D9B72CA7B74F87C41BA4491609560F2980D3DB266ED00FA3ACE57A1D7BE43F6BF6837BEED880D5B9460
+ 0B95A8D43DF2253DD2677A8D52DADB5673A6089FF5C745FE57FA46C58CB1FBA62681973DB9EE76AE7828C9BB4DF98378F2DA8928097F787825E025D5C5665335
ffa/libffa/w_mul.ads
(31 . 8)(31 . 11)
514 -- The number of bytes in a Half-Word
515 HalfByteness : constant Positive := Byteness / 2;
516
517 -- Multiply half-words X and Y, producing a Word-sized product
518 function Mul_HalfWord(X : in HalfWord; Y : in HalfWord) return Word;
519 -- Multiply half-words X and Y, producing a Word-sized product (Iron)
520 function Mul_HalfWord_Iron(X : in HalfWord; Y : in HalfWord) return Word;
521
522 -- Multiply half-words X and Y, producing a Word-sized product (Egyptian)
523 function Mul_HalfWord_Soft(X : in HalfWord; Y : in HalfWord) return Word;
524
525 -- Get the bottom half of a Word
526 function BottomHW(W : in Word) return HalfWord;
(40 . 7)(43 . 7)
528 -- Get the top half of a Word
529 function TopHW(W : in Word) return HalfWord;
530
531 -- Carry out X*Y mult, return lower word XY_LW and upper word XY_HW.
532 -- Carry out X*Y mult, return lower word XY_LW and upper word XY_HW (Iron)
533 procedure Mul_Word(X : in Word; Y : in Word; XY_LW : out Word; XY_HW : out Word);
534
535 end W_Mul;