History log of /openbsd-current/lib/libcrypto/bn/arch/powerpc64/bn_arch.h
Revision Date Author Comments
# 1.4 16-Feb-2023 jsing

Rename bn_umul_hilo() to bn_mulw().

This keeps the naming consistent with the other bignum primitives that have
been recently introduced. Also, use 1/0 intead of h/l (e.g. a1 instead of
ah), as this keeps consistency with other primitives and allows for naming
that works with double word, triple word and quadruple word inputs/outputs.

Discussed with tb@


# 1.3 04-Feb-2023 jsing

Fix output constraints for bn_umul_hilo().

When bn_umul_hilo() is implemented using an instruction pair, mark the
first output with a constraint that prevents the output from overlapping
with the inputs ("&"). Otherwise the first instruction can overwrite the
inputs, which then results in the second instruction producing incorrect
value.


# 1.2 31-Jan-2023 jsing

Provide inline assembly bn_umul_hilo() for alpha/powerpc64/riscv64.

These should work, but are currently untested and disabled.

ok tb@


# 1.1 20-Jan-2023 jsing

Provide a per machine bn_arch.h.

This will provide a location for machine specific defines, prototypes and
inline functions.

ok tb@


# 1.3 04-Feb-2023 jsing

Fix output constraints for bn_umul_hilo().

When bn_umul_hilo() is implemented using an instruction pair, mark the
first output with a constraint that prevents the output from overlapping
with the inputs ("&"). Otherwise the first instruction can overwrite the
inputs, which then results in the second instruction producing incorrect
value.


# 1.2 31-Jan-2023 jsing

Provide inline assembly bn_umul_hilo() for alpha/powerpc64/riscv64.

These should work, but are currently untested and disabled.

ok tb@


# 1.1 20-Jan-2023 jsing

Provide a per machine bn_arch.h.

This will provide a location for machine specific defines, prototypes and
inline functions.

ok tb@


# 1.2 31-Jan-2023 jsing

Provide inline assembly bn_umul_hilo() for alpha/powerpc64/riscv64.

These should work, but are currently untested and disabled.

ok tb@


# 1.1 20-Jan-2023 jsing

Provide a per machine bn_arch.h.

This will provide a location for machine specific defines, prototypes and
inline functions.

ok tb@