• Nicolas Pitre's avatar
    __div64_const32(): abstract out the actual 128-bit cross product code · f682b27c
    Nicolas Pitre authored
    The default C implementation for the 128-bit cross product is abstracted
    into the __arch_xprod_64() macro that can be overridden to let
    architectures provide their own assembly optimized implementation.
    
    There are many advantages to an assembly version for this operation.
    Carry bit handling becomes trivial, and 32-bit shifts may be achieved
    simply by inverting register pairs on some architectures.  This has the
    potential to be quite faster and use much fewer instructions.
    Signed-off-by: default avatarNicolas Pitre <nico@linaro.org>
    f682b27c
div64.h 6.87 KB