ffa_ch9_exodus.kv       1 
ffa_ch9_exodus.kv       2 
ffa_ch9_exodus.kv       3 
ffa_ch9_exodus.kv       4 
ffa_ch15_gcd.kv         5 
ffa_ch9_exodus.kv       6 
ffa_ch9_exodus.kv       7 
ffa_ch9_exodus.kv       8 
ffa_ch9_exodus.kv       9 
ffa_ch9_exodus.kv      10 
ffa_ch9_exodus.kv      11 
ffa_ch9_exodus.kv      12 
ffa_ch9_exodus.kv      13 
ffa_ch9_exodus.kv      14 
ffa_ch9_exodus.kv      15 
ffa_ch9_exodus.kv      16 
ffa_ch9_exodus.kv      17 
ffa_ch9_exodus.kv      18 
ffa_ch9_exodus.kv      19 
ffa_ch9_exodus.kv      20 with Words; use Words;
ffa_ch9_exodus.kv      21 
ffa_ch9_exodus.kv      22 
ffa_ch9_exodus.kv      23 package W_Mul is
ffa_ch9_exodus.kv      24    
ffa_ch9_exodus.kv      25    pragma Pure;
ffa_ch9_exodus.kv      26    
ffa_ch9_exodus.kv      27    
ffa_ch9_exodus.kv      28    HalfBitness : constant Positive := Bitness / 2;
ffa_ch9_exodus.kv      29    subtype HalfWord is Word range 0 .. 2**HalfBitness;
ffa_ch9_exodus.kv      30    
ffa_ch9_exodus.kv      31    
ffa_ch9_exodus.kv      32    HalfByteness : constant Positive := Byteness / 2;
ffa_ch9_exodus.kv      33    
ffa_ch10_karatsub...   34    
ffa_ch10_karatsub...   35    function Mul_HalfWord_Iron(X : in HalfWord; Y : in HalfWord) return Word;
ffa_ch11_tuning_a...   36    pragma Inline_Always(Mul_HalfWord_Iron);
ffa_ch10_karatsub...   37    
ffa_ch10_karatsub...   38    
ffa_ch10_karatsub...   39    function Mul_HalfWord_Soft(X : in HalfWord; Y : in HalfWord) return Word;
ffa_ch11_tuning_a...   40    pragma Inline_Always(Mul_HalfWord_Soft);
ffa_ch9_exodus.kv      41    
ffa_ch9_exodus.kv      42    
ffa_ch9_exodus.kv      43    function BottomHW(W : in Word) return HalfWord;
ffa_ch11_tuning_a...   44    pragma Inline_Always(BottomHW);
ffa_ch9_exodus.kv      45    
ffa_ch9_exodus.kv      46    
ffa_ch9_exodus.kv      47    function TopHW(W : in Word) return HalfWord;
ffa_ch11_tuning_a...   48    pragma Inline_Always(TopHW);
ffa_ch9_exodus.kv      49    
ffa_ch10_karatsub...   50    
ffa_ch11_tuning_a...   51    procedure Mul_Word(X     : in Word;  Y     : in Word;
ffa_ch11_tuning_a...   52                       XY_LW : out Word; XY_HW : out Word);
ffa_ch11_tuning_a...   53    pragma Inline_Always(Mul_Word);
ffa_ch9_exodus.kv      54    
ffa_ch12_karatsub...   55    
ffa_ch12_karatsub...   56    procedure Sqr_Word(X       : in  Word;
ffa_ch12_karatsub...   57                       XX_LW   : out Word;
ffa_ch12_karatsub...   58                       XX_HW   : out Word);
ffa_ch12_karatsub...   59    pragma Inline_Always(Sqr_Word);
ffa_ch12_karatsub...   60    
ffa_ch9_exodus.kv      61 end W_Mul;