TorchLean API

FloatLib.Floats.ExecFloat.Backends.Word.ProductRound.Runtime

Shared native-word product finishing #

The one-word and two-word multiplication kernels use different representations for the exact product. After rounding that product to a UInt64 significand, both kernels perform the same carry adjustment, overflow test, and field packing. Keeping that final stage here gives the two backends one executable definition as well as one proof.

finishWord returns a word rather than an Option; its caller chooses a decline marker outside the valid packed range. Both definitions request inlining. The overflow threshold and exponent offset are formed from NativeSmallWord.biasWord using machine-word arithmetic.

@[inline]

Finish a rounded native-word product already in the normal range, declining on overflow.

Instances For
    @[inline]

    Finish a rounded native-word product without constructing an Option.

    On overflow the function returns decline; otherwise it returns the packed storage word.

    Instances For