<feed xmlns='http://www.w3.org/2005/Atom'>
<title>openbsd/src/lib/libcrypto/arch, branch OPENBSD_7_3_BASE</title>
<subtitle>A mirror of https://github.com/libressl/openbsd.git
</subtitle>
<id>https://git.lua4.win/openbsd/atom?h=OPENBSD_7_3_BASE</id>
<link rel='self' href='https://git.lua4.win/openbsd/atom?h=OPENBSD_7_3_BASE'/>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/'/>
<updated>2023-02-22T05:57:19+00:00</updated>
<entry>
<title>Replace bn_sub_part_words() with bn_sub().</title>
<updated>2023-02-22T05:57:19+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2023-02-22T05:57:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=7236757e326b2c939f79a4239220a0cc2bf30ef5'/>
<id>urn:sha1:7236757e326b2c939f79a4239220a0cc2bf30ef5</id>
<content type='text'>
Now that bn_sub() handles word arrays with potentially different lengths,
we no longer need bn_sub_part_words() - call bn_sub() instead. This allows
us to entirely remove the unnecessarily complex bn_sub_part_words() code.

ok tb@
</content>
</entry>
<entry>
<title>Enable s2n-bignum word_clz() on amd64.</title>
<updated>2023-02-16T11:13:05+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2023-02-16T11:13:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=02f91f3325f965a313f0cffe5053a084d05a84ea'/>
<id>urn:sha1:02f91f3325f965a313f0cffe5053a084d05a84ea</id>
<content type='text'>
The BN_num_bits_word() function is a hot path, being called more than
80 million times during a libcrypto regress run. The word_clz()
implementation uses five instructions to do the same as the generic code
that uses more than 60 instructions.

Discussed with tb@
</content>
</entry>
<entry>
<title>Remove the now empty bn_asm.c.</title>
<updated>2023-01-31T06:17:11+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2023-01-31T06:17:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=0019a0499b5d8bc46dc5e1e2f3991c796603d31a'/>
<id>urn:sha1:0019a0499b5d8bc46dc5e1e2f3991c796603d31a</id>
<content type='text'>
This rather misnamed file (bn_asm.c) previously contained the C code that
was needed to build libcrypto bignum on platforms that did not have
assembly implementations of the functions it contained.
</content>
</entry>
<entry>
<title>Remove sparc related files from libcrypto.</title>
<updated>2023-01-31T05:09:34+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2023-01-31T05:09:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=813266ead2a42465155e4af3e2daa71bcc88d54d'/>
<id>urn:sha1:813266ead2a42465155e4af3e2daa71bcc88d54d</id>
<content type='text'>
The sparc platform got retired a while back, however some parts remained
hiding in libcrypto. Mop these up (along with the bn_arch.h that I
introduced).

Spotted by and ok tb@
</content>
</entry>
<entry>
<title>Use s2n-bignum assembly implementations for libcrypto bignum on amd64.</title>
<updated>2023-01-29T14:00:41+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2023-01-29T14:00:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=4e1fab63a267fba43456f4cf3909f8d17ca6aee7'/>
<id>urn:sha1:4e1fab63a267fba43456f4cf3909f8d17ca6aee7</id>
<content type='text'>
This switches the core bignum assembly implementations from x86_64-gcc.c to
s2n-bignum for amd64.

ok miod@ tb@
</content>
</entry>
<entry>
<title>Provide an implementation of bn_sqr() that calls s2n-bignum's bignum_sqr().</title>
<updated>2023-01-21T17:29:56+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2023-01-21T17:29:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=f0336de474be059a63ecd6670f0c82b4aa9f9888'/>
<id>urn:sha1:f0336de474be059a63ecd6670f0c82b4aa9f9888</id>
<content type='text'>
ok tb@
</content>
</entry>
<entry>
<title>Replace BN_DIV3W with HAVE_BN_DIV_3_WORDS (in bn_arch.h).</title>
<updated>2023-01-20T10:07:52+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2023-01-20T10:07:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=f0cba741581d1b230d658b4fcc93b802ac49a5f1'/>
<id>urn:sha1:f0cba741581d1b230d658b4fcc93b802ac49a5f1</id>
<content type='text'>
ok tb@
</content>
</entry>
<entry>
<title>Remove non-visible and unused OPENSSL_wipe_cpu and OPENSSL_atomic_add</title>
<updated>2023-01-17T15:04:27+00:00</updated>
<author>
<name>miod</name>
<email></email>
</author>
<published>2023-01-17T15:04:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=a7f48cec18a6702191b620e72d8ffa41cd9173bc'/>
<id>urn:sha1:a7f48cec18a6702191b620e72d8ffa41cd9173bc</id>
<content type='text'>
interfaces, and remove empty assembly OPENSSL_cpuid_setup routines - the
default empty C fallback will work as good.

ok jsing@
</content>
</entry>
<entry>
<title>Remove unused Elliptic Curve code.</title>
<updated>2023-01-14T15:45:44+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2023-01-14T15:45:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=2caf68e3ec46ff4ba172978eb728e2aa23948684'/>
<id>urn:sha1:2caf68e3ec46ff4ba172978eb728e2aa23948684</id>
<content type='text'>
For various reasons, the ecp_nistp* and ecp_nistz* code is unused. While
ecp_nistp* was being compiled, it is disabled due to
OPENSSL_NO_EC_NISTP_64_GCC_128 being defined. On the other hand,
ecp_nistz* was not even being built.

We will bring in new versions or alternative versions of such code, if we
end up enabling it in the future. For now it is just causing complexity
(and grep noise) while trying to improve the EC code.

Discussed with tb@
</content>
</entry>
<entry>
<title>Move all data tables from .text section to .rodata, and update the code to</title>
<updated>2023-01-13T17:27:26+00:00</updated>
<author>
<name>miod</name>
<email></email>
</author>
<published>2023-01-13T17:27:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=25c59400a04e7301aaa6acb604b5ebef9d2f4cf1'/>
<id>urn:sha1:25c59400a04e7301aaa6acb604b5ebef9d2f4cf1</id>
<content type='text'>
fetch them correctly when building PIC. Also drop unused data, and remove
--no-execute-only from linker flags.

ok kettenis@
</content>
</entry>
</feed>
