<feed xmlns='http://www.w3.org/2005/Atom'>
<title>openbsd/src/lib/libcrypto/arch/aarch64, branch libressl-v4.1.2</title>
<subtitle>A mirror of https://github.com/libressl/openbsd.git
</subtitle>
<id>https://git.lua4.win/openbsd/atom?h=libressl-v4.1.2</id>
<link rel='self' href='https://git.lua4.win/openbsd/atom?h=libressl-v4.1.2'/>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/'/>
<updated>2025-03-12T14:13:41+00:00</updated>
<entry>
<title>Provide an accelerated SHA-512 assembly implementation for aarch64.</title>
<updated>2025-03-12T14:13:41+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2025-03-12T14:13:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=dcd1700591c767d997c903eba3f3953d562bf23a'/>
<id>urn:sha1:dcd1700591c767d997c903eba3f3953d562bf23a</id>
<content type='text'>
This provides a SHA-512 assembly implementation that makes use of the ARM
Cryptographic Extension (CE), which is found on many arm64 CPUs. This gives
a performance gain of up to 2.5x on an Apple M2 (dependent on block size).
If an aarch64 machine does not have SHA512 support, then we'll fall back to
using the existing C implementation.

ok kettenis@ tb@
</content>
</entry>
<entry>
<title>Support OPENSSL_NO_FILENAMES</title>
<updated>2025-03-09T15:12:18+00:00</updated>
<author>
<name>tb</name>
<email></email>
</author>
<published>2025-03-09T15:12:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=b8acfd2983c50474382bf8ed132a5b7e7bdedb34'/>
<id>urn:sha1:b8acfd2983c50474382bf8ed132a5b7e7bdedb34</id>
<content type='text'>
Some people are concerned that leaking a user name is a privacy issue.
Allow disabling the __FILE__ and __LINE__ argument in the error stack
to avoid this. This can be improved a bit in tree.

From Viktor Szakats in https://github.com/libressl/portable/issues/761

ok bcook jsing
</content>
</entry>
<entry>
<title>Provide an accelerated SHA-256 assembly implementation for aarch64.</title>
<updated>2025-03-07T14:21:22+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2025-03-07T14:21:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=504b1d708a6f318c44655b84b6f33ec1734e0375'/>
<id>urn:sha1:504b1d708a6f318c44655b84b6f33ec1734e0375</id>
<content type='text'>
This provides a SHA-256 assembly implementation that makes use of the ARM
Cryptographic Extension (CE), which is found on many arm64 CPUs. This gives
a performance gain of up to 7.5x on an Apple M2 (dependent on block size).
If an aarch64 machine does not have SHA2 support, then we'll fall back to
using the existing C implementation.

ok kettenis@ tb@
</content>
</entry>
<entry>
<title>Mop up RC4_INDEX.</title>
<updated>2025-01-27T14:02:32+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2025-01-27T14:02:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=d97873f8db01cd052f45675db2ed3d9584c93c44'/>
<id>urn:sha1:d97873f8db01cd052f45675db2ed3d9584c93c44</id>
<content type='text'>
The RC4_INDEX define switches between base pointer indexing and per-byte
pointer increment. This supposedly made a huge difference to performance
on x86 at some point, however compilers have improved somewhat since then.
There is no change (or effectively no change) in generated assembly on
a the majority of LLVM platforms and even when there is some change
(e.g. aarch64), there is no noticable performance difference.

Simplify the (still messy) macros/code and mop up RC4_INDEX.

ok tb@
</content>
</entry>
<entry>
<title>Add comment for crypto_cpu_caps_aarch64.</title>
<updated>2024-11-12T13:52:31+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2024-11-12T13:52:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=5bc4d9203907ca849aae248e24e0af4e9cd498a4'/>
<id>urn:sha1:5bc4d9203907ca849aae248e24e0af4e9cd498a4</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Replace aarch64 CPU capabilities detection code.</title>
<updated>2024-11-08T13:34:24+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2024-11-08T13:34:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=b0d9dbfb6f43ca4ff7a16ac1cf3b374342111ffa'/>
<id>urn:sha1:b0d9dbfb6f43ca4ff7a16ac1cf3b374342111ffa</id>
<content type='text'>
Replace the aarch64 CPU detection code with a version that parses ISAR0,
avoiding signal handling and SIGILL. This gets ISAR0 via sysctl(), but this
can be adapted to other mechanisms for other platforms (or alternatively
the same can be achieved via HWCAP).

This now follows the same naming/design as used by amd64 and i386, hence
define HAVE_CRYPTO_CPU_CAPS_INIT for aarch64.

ok kettenis@ tb@
</content>
</entry>
<entry>
<title>cryptlib.h: adjust header guard for upcoming surgery</title>
<updated>2024-11-05T06:09:12+00:00</updated>
<author>
<name>tb</name>
<email></email>
</author>
<published>2024-11-05T06:09:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=843a9f265f386c844efd76e86f84452741cb03d6'/>
<id>urn:sha1:843a9f265f386c844efd76e86f84452741cb03d6</id>
<content type='text'>
It is gross that an internal detail leaked into a public header, but,
hey, it's openssl. No hack is too terrible to appear in this library.
opensslconf.h needs major pruning but the day that happens is not today.

ok jsing
</content>
</entry>
<entry>
<title>repair bizzare indents; ok tb</title>
<updated>2024-08-29T03:30:05+00:00</updated>
<author>
<name>deraadt</name>
<email></email>
</author>
<published>2024-08-29T03:30:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=a3a2318c82ab1c8073cc4b0a0abe520fb9c5ec4c'/>
<id>urn:sha1:a3a2318c82ab1c8073cc4b0a0abe520fb9c5ec4c</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Provide and use crypto_arch.h.</title>
<updated>2024-08-11T13:02:39+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2024-08-11T13:02:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=5dcef2b3ea9eb7ace8ed74c27534785fc0b87130'/>
<id>urn:sha1:5dcef2b3ea9eb7ace8ed74c27534785fc0b87130</id>
<content type='text'>
Provide a per architecture crypto_arch.h - this will be used in a similar
manner to bn_arch.h and will allow for architecture specific #defines and
static inline functions. Move the HAVE_AES_* and HAVE_RC4_* defines here.

ok tb@
</content>
</entry>
<entry>
<title>Move camellia to primary Makefile.</title>
<updated>2024-03-29T07:24:09+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2024-03-29T07:24:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=720ec2c3adcad1ded38a6104e4ca139b4a62ac19'/>
<id>urn:sha1:720ec2c3adcad1ded38a6104e4ca139b4a62ac19</id>
<content type='text'>
These files are now built on all platforms.
</content>
</entry>
</feed>
