History log of /freebsd-current/secure/lib/libcrypto/Makefile.asm
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
# e655cc70 03-Dec-2023 Mark Johnston <markj@FreeBSD.org>

ossl: Move arm_arch.h to a common subdirectory

OpenSSL itself keeps only a single copy of this header. Do the same in
sys/crypto/openssl to avoid the extra maintenance burden. This requires
adjusting the include paths for generated asm files.

No functional change intended.

Reported by: jrtc27
Reviewed by: jhb
MFC after: 3 months
Differential Revision: https://reviews.freebsd.org/D42866


# c97a82d4 21-Sep-2023 Andrew Turner <andrew@FreeBSD.org>

libcrypto: Copy the arm64 header when building asm

It may be needed when it's updated so is best to keep in sync with the
assembly files.

Reviewed by: emaste
Sponsored by: Arm Ltd
Differential Revision: https://reviews.freebsd.org/D41938


# c0fe6b9d 29-Aug-2023 John Baldwin <jhb@FreeBSD.org>

libcrypto: Refactor Makefile.asm so it can be run outside of buildenv

Currently Makefile.asm relies on the current buildenv to set CFLAGS
for i386. The current approach also leaves various temporary *.s
files around in the current directory. To make this a bit better:

- Instead of using CFLAGS from buildenv for i386, define the actual
flags the perl scripts need: -DOPENSSL_IA32_SSE2 to enable SSE2.

- Change i386 to have the perl scripts write to /dev/stdout to avoid
creating temporaries. Previously i386 was generating the temporary
files in the OpenSSL contrib src.

- Cleanup temporary *.s files in the all target after generating the
real *.S files for architectures which need them.

- Remove a duplicate rule for aes-armv4.S.

Reviewed by: markj
Differential Revision: https://reviews.freebsd.org/D41589


# 7406b6f9 29-Aug-2023 John Baldwin <jhb@FreeBSD.org>

Makefile.asm: Simplify variable expansions in generated headers

The :R:S expressions removed the .pl extension only to add it back
again, so just trim them to using :T alone.

Reviewed by: Pierre Pronchery <pierre@freebsdfoundation.org>, markj, emaste
Differential Revision: https://reviews.freebsd.org/D41588


# 80e9ea42 22-Aug-2023 John Baldwin <jhb@FreeBSD.org>

Makefile.asm: Drop mention of $FreeBSD$ from instructions.


# f3cac6c0 21-Aug-2023 John Baldwin <jhb@FreeBSD.org>

libcrypto: Add new assembly files added in OpenSSL 3.0.

This only affects amd64 and i386, but in particular includes wrappers
for AES encryption/decryption that gate all of the accelerated AES.

Reviewed by: gallatin, ngie, emaste
Differential Revision: https://reviews.freebsd.org/D41537


# 7a56f5af 21-Aug-2023 John Baldwin <jhb@FreeBSD.org>

libcrypto: Don't embed $FreeBSD$ in generated assembly files

Reviewed by: gallatin, ngie, emaste
Differential Revision: https://reviews.freebsd.org/D41536


# d0b2dbfa 16-Aug-2023 Warner Losh <imp@FreeBSD.org>

Remove $FreeBSD$: one-line sh pattern

Remove /^\s*#[#!]?\s*\$FreeBSD\$.*$\n/


# aa795734 09-Aug-2023 Pierre Pronchery <pierre@freebsdfoundation.org>

OpenSSL: update to 3.0.10

OpenSSL 3.0.10 addresses:
- CVE-2023-3817
- CVE-2023-3446
- CVE-2023-2975

(Note that the vendor branch commit incorrectly referenced 3.0.9.)

Relnotes: Yes
Pull request: https://github.com/freebsd/freebsd-src/pull/808
Sponsored by: The FreeBSD Foundation


# b077aed3 23-Jun-2023 Pierre Pronchery <pierre@freebsdfoundation.org>

Merge OpenSSL 3.0.9

Migrate to OpenSSL 3.0 in advance of FreeBSD 14.0. OpenSSL 1.1.1 (the
version we were previously using) will be EOL as of 2023-09-11.

Most of the base system has already been updated for a seamless switch
to OpenSSL 3.0. For many components we've added
`-DOPENSSL_API_COMPAT=0x10100000L` to CFLAGS to specify the API version,
which avoids deprecation warnings from OpenSSL 3.0. Changes have also
been made to avoid OpenSSL APIs that were already deprecated in OpenSSL
1.1.1. The process of updating to contemporary APIs can continue after
this merge.

Additional changes are still required for libarchive and Kerberos-
related libraries or tools; workarounds will immediately follow this
commit. Fixes are in progress in the upstream projects and will be
incorporated when those are next updated.

There are some performance regressions in benchmarks (certain tests in
`openssl speed`) and in some OpenSSL consumers in ports (e.g. haproxy).
Investigation will continue for these.

Netflix's testing showed no functional regression and a rather small,
albeit statistically significant, increase in CPU consumption with
OpenSSL 3.0.

Thanks to ngie@ and des@ for updating base system components, to
antoine@ and bofh@ for ports exp-runs and port fixes/workarounds, and to
Netflix and everyone who tested prior to commit or contributed to this
update in other ways.

PR: 271615
PR: 271656 [exp-run]
Relnotes: Yes
Sponsored by: The FreeBSD Foundation


# 3a608692 21-Nov-2021 Piotr Kubaj <pkubaj@FreeBSD.org>

Add assembly optimized code for OpenSSL on powerpc, powerpc64 and powerpc64le

Summary:
1. https://github.com/openssl/openssl/commit/34ab13b7d8e3e723adb60be8142e38b7c9cd382a
needs to be merged for ELFv2 support on big-endian.
2. crypto/openssl/crypto/ppccap.c needs to be patched.
Same reason as in https://github.com/openssl/openssl/pull/17082.

Approved by: jkim, jhibbits
MFC after: 1 month
Differential Revision: https://reviews.freebsd.org/D33076

# da327cd2 10-Sep-2019 Jung-uk Kim <jkim@FreeBSD.org>

Merge OpenSSL 1.1.1d.


# 61fab323 21-Sep-2018 Jung-uk Kim <jkim@FreeBSD.org>

Regen cpuid assembly files for aarch64 and arm.

# 2c17169a 21-Sep-2018 Jung-uk Kim <jkim@FreeBSD.org>

Regen assembly files for arm.

# bde62812 21-Sep-2018 Jung-uk Kim <jkim@FreeBSD.org>

Regen assemply files for aarch64.

# d0f1d030 20-Sep-2018 Jung-uk Kim <jkim@FreeBSD.org>

Regen assembly files for i386.

# c28e4d84 17-Sep-2018 Jung-uk Kim <jkim@FreeBSD.org>

Do not generate unused AVX2 and AVX-512 assembly files for amd64.

# 9b21da0e 13-Sep-2018 Jung-uk Kim <jkim@FreeBSD.org>

Regen amd64 assembly files for OpenSSL 1.1.1.

# 7518a9bd 26-Oct-2016 Jung-uk Kim <jkim@FreeBSD.org>

Build OpenSSL assembly sources for aarch64. Tested with ThunderX by andrew.

# 69afce5e 22-Aug-2016 Jung-uk Kim <jkim@FreeBSD.org>

Prefer C-style comments in assembly sources.

# 0f7bb790 22-Aug-2016 Jung-uk Kim <jkim@FreeBSD.org>

Fix white spaces in assembly sources.

# 43e4bca7 22-Aug-2016 Jung-uk Kim <jkim@FreeBSD.org>

Build OpenSSL assembly sources for arm. Tested with Raspberry Pi 2 Model B.

MFC after: 1 week

# d8a16c14 17-Aug-2016 Jung-uk Kim <jkim@FreeBSD.org>

Disable assembly sources when compiler/assembler cannot compile certain
instructions. For example, GCC 4.2.1 + binutils 2.17.50 does not support
AVX instructions.

Reported by: bde
MFC after: 2 weeks

# 207be921 11-May-2016 Jung-uk Kim <jkim@FreeBSD.org>

Set CC environment variable for Perl scripts. This is for detecting
assembler/compiler capabilities, e.g., AVX instructions.

# 82d668d2 11-May-2016 Jung-uk Kim <jkim@FreeBSD.org>

Refine comments to add its origin.

# 94e989e7 11-May-2016 Ed Maste <emaste@FreeBSD.org>

libcrypto: add "Do not modify" comment to generated source files

Reviewed by: jkim
Differential Revision: https://reviews.freebsd.org/D6237

# cdeae6df 10-May-2016 Jung-uk Kim <jkim@FreeBSD.org>

Make libcrypto.so position independent on i386.

# 7bded2db 30-Oct-2015 Jung-uk Kim <jkim@FreeBSD.org>

Merge OpenSSL 1.0.2d.


# 1f13597d 12-Jul-2012 Jung-uk Kim <jkim@FreeBSD.org>

Merge OpenSSL 1.0.1c.

Approved by: benl (maintainer)


# d6608aaa 24-Feb-2005 Jacques Vidrine <nectar@FreeBSD.org>

Update OpenSSL 0.9.7d -> 0.9.7e.

# f3d90904 23-Mar-2004 Mark Murray <markm@FreeBSD.org>

Re-add the hand-optimised assembler versions of some of the ciphers
to the build.

Should have done this ages ago: markm
Reminded above to do this: peter

# 715430f8 13-Feb-2003 Jacques Vidrine <nectar@FreeBSD.org>

Correct path for finding asm-generating files.

# dcb22793 06-Nov-2002 David E. O'Brien <obrien@FreeBSD.org>

Style sync with rest of FreeBSD.

# 81fb684c 02-May-2002 Peter Wemm <peter@FreeBSD.org>

Pre-generate the optimized x86 crypto code and check it in rather than
depending on perl at build time. Makefile.asm is a helper for after the
next import.

With my cvs@ hat on, the relatively small repo cost of this is acceptable,
especially given that we have other (much bigger) things like
lib*.so.gz.uu checked in under src/lib/compat/*.

Reviewed by: kris (maintainer)

# b077aed3 23-Jun-2023 Pierre Pronchery <pierre@freebsdfoundation.org>

Merge OpenSSL 3.0.9

Migrate to OpenSSL 3.0 in advance of FreeBSD 14.0. OpenSSL 1.1.1 (the
version we were previously using) will be EOL as of 2023-09-11.

Most of the base system has already been updated for a seamless switch
to OpenSSL 3.0. For many components we've added
`-DOPENSSL_API_COMPAT=0x10100000L` to CFLAGS to specify the API version,
which avoids deprecation warnings from OpenSSL 3.0. Changes have also
been made to avoid OpenSSL APIs that were already deprecated in OpenSSL
1.1.1. The process of updating to contemporary APIs can continue after
this merge.

Additional changes are still required for libarchive and Kerberos-
related libraries or tools; workarounds will immediately follow this
commit. Fixes are in progress in the upstream projects and will be
incorporated when those are next updated.

There are some performance regressions in benchmarks (certain tests in
`openssl speed`) and in some OpenSSL consumers in ports (e.g. haproxy).
Investigation will continue for these.

Netflix's testing showed no functional regression and a rather small,
albeit statistically significant, increase in CPU consumption with
OpenSSL 3.0.

Thanks to ngie@ and des@ for updating base system components, to
antoine@ and bofh@ for ports exp-runs and port fixes/workarounds, and to
Netflix and everyone who tested prior to commit or contributed to this
update in other ways.

PR: 271615
PR: 271656 [exp-run]
Relnotes: Yes
Sponsored by: The FreeBSD Foundation


# 3a608692 21-Nov-2021 Piotr Kubaj <pkubaj@FreeBSD.org>

Add assembly optimized code for OpenSSL on powerpc, powerpc64 and powerpc64le

Summary:
1. https://github.com/openssl/openssl/commit/34ab13b7d8e3e723adb60be8142e38b7c9cd382a
needs to be merged for ELFv2 support on big-endian.
2. crypto/openssl/crypto/ppccap.c needs to be patched.
Same reason as in https://github.com/openssl/openssl/pull/17082.

Approved by: jkim, jhibbits
MFC after: 1 month
Differential Revision: https://reviews.freebsd.org/D33076

# da327cd2 10-Sep-2019 Jung-uk Kim <jkim@FreeBSD.org>

Merge OpenSSL 1.1.1d.


# 61fab323 21-Sep-2018 Jung-uk Kim <jkim@FreeBSD.org>

Regen cpuid assembly files for aarch64 and arm.

# 2c17169a 21-Sep-2018 Jung-uk Kim <jkim@FreeBSD.org>

Regen assembly files for arm.

# bde62812 21-Sep-2018 Jung-uk Kim <jkim@FreeBSD.org>

Regen assemply files for aarch64.

# d0f1d030 20-Sep-2018 Jung-uk Kim <jkim@FreeBSD.org>

Regen assembly files for i386.

# c28e4d84 17-Sep-2018 Jung-uk Kim <jkim@FreeBSD.org>

Do not generate unused AVX2 and AVX-512 assembly files for amd64.

# 9b21da0e 13-Sep-2018 Jung-uk Kim <jkim@FreeBSD.org>

Regen amd64 assembly files for OpenSSL 1.1.1.

# 7518a9bd 26-Oct-2016 Jung-uk Kim <jkim@FreeBSD.org>

Build OpenSSL assembly sources for aarch64. Tested with ThunderX by andrew.

# 69afce5e 22-Aug-2016 Jung-uk Kim <jkim@FreeBSD.org>

Prefer C-style comments in assembly sources.

# 0f7bb790 22-Aug-2016 Jung-uk Kim <jkim@FreeBSD.org>

Fix white spaces in assembly sources.

# 43e4bca7 22-Aug-2016 Jung-uk Kim <jkim@FreeBSD.org>

Build OpenSSL assembly sources for arm. Tested with Raspberry Pi 2 Model B.

MFC after: 1 week

# d8a16c14 17-Aug-2016 Jung-uk Kim <jkim@FreeBSD.org>

Disable assembly sources when compiler/assembler cannot compile certain
instructions. For example, GCC 4.2.1 + binutils 2.17.50 does not support
AVX instructions.

Reported by: bde
MFC after: 2 weeks

# 207be921 11-May-2016 Jung-uk Kim <jkim@FreeBSD.org>

Set CC environment variable for Perl scripts. This is for detecting
assembler/compiler capabilities, e.g., AVX instructions.

# 82d668d2 11-May-2016 Jung-uk Kim <jkim@FreeBSD.org>

Refine comments to add its origin.

# 94e989e7 11-May-2016 Ed Maste <emaste@FreeBSD.org>

libcrypto: add "Do not modify" comment to generated source files

Reviewed by: jkim
Differential Revision: https://reviews.freebsd.org/D6237

# cdeae6df 10-May-2016 Jung-uk Kim <jkim@FreeBSD.org>

Make libcrypto.so position independent on i386.

# 7bded2db 30-Oct-2015 Jung-uk Kim <jkim@FreeBSD.org>

Merge OpenSSL 1.0.2d.


# 1f13597d 12-Jul-2012 Jung-uk Kim <jkim@FreeBSD.org>

Merge OpenSSL 1.0.1c.

Approved by: benl (maintainer)


# d6608aaa 24-Feb-2005 Jacques Vidrine <nectar@FreeBSD.org>

Update OpenSSL 0.9.7d -> 0.9.7e.

# f3d90904 23-Mar-2004 Mark Murray <markm@FreeBSD.org>

Re-add the hand-optimised assembler versions of some of the ciphers
to the build.

Should have done this ages ago: markm
Reminded above to do this: peter

# 715430f8 13-Feb-2003 Jacques Vidrine <nectar@FreeBSD.org>

Correct path for finding asm-generating files.

# dcb22793 06-Nov-2002 David E. O'Brien <obrien@FreeBSD.org>

Style sync with rest of FreeBSD.

# 81fb684c 02-May-2002 Peter Wemm <peter@FreeBSD.org>

Pre-generate the optimized x86 crypto code and check it in rather than
depending on perl at build time. Makefile.asm is a helper for after the
next import.

With my cvs@ hat on, the relatively small repo cost of this is acceptable,
especially given that we have other (much bigger) things like
lib*.so.gz.uu checked in under src/lib/compat/*.

Reviewed by: kris (maintainer)

# 3a608692 21-Nov-2021 Piotr Kubaj <pkubaj@FreeBSD.org>

Add assembly optimized code for OpenSSL on powerpc, powerpc64 and powerpc64le

Summary:
1. https://github.com/openssl/openssl/commit/34ab13b7d8e3e723adb60be8142e38b7c9cd382a
needs to be merged for ELFv2 support on big-endian.
2. crypto/openssl/crypto/ppccap.c needs to be patched.
Same reason as in https://github.com/openssl/openssl/pull/17082.

Approved by: jkim, jhibbits
MFC after: 1 month
Differential Revision: https://reviews.freebsd.org/D33076


# 61fab323 21-Sep-2018 Jung-uk Kim <jkim@FreeBSD.org>

Regen cpuid assembly files for aarch64 and arm.


# 2c17169a 21-Sep-2018 Jung-uk Kim <jkim@FreeBSD.org>

Regen assembly files for arm.


# bde62812 21-Sep-2018 Jung-uk Kim <jkim@FreeBSD.org>

Regen assemply files for aarch64.


# d0f1d030 20-Sep-2018 Jung-uk Kim <jkim@FreeBSD.org>

Regen assembly files for i386.


# c28e4d84 17-Sep-2018 Jung-uk Kim <jkim@FreeBSD.org>

Do not generate unused AVX2 and AVX-512 assembly files for amd64.


# 9b21da0e 13-Sep-2018 Jung-uk Kim <jkim@FreeBSD.org>

Regen amd64 assembly files for OpenSSL 1.1.1.


# 7518a9bd 26-Oct-2016 Jung-uk Kim <jkim@FreeBSD.org>

Build OpenSSL assembly sources for aarch64. Tested with ThunderX by andrew.


# 69afce5e 22-Aug-2016 Jung-uk Kim <jkim@FreeBSD.org>

Prefer C-style comments in assembly sources.


# 0f7bb790 22-Aug-2016 Jung-uk Kim <jkim@FreeBSD.org>

Fix white spaces in assembly sources.


# 43e4bca7 22-Aug-2016 Jung-uk Kim <jkim@FreeBSD.org>

Build OpenSSL assembly sources for arm. Tested with Raspberry Pi 2 Model B.

MFC after: 1 week


# d8a16c14 17-Aug-2016 Jung-uk Kim <jkim@FreeBSD.org>

Disable assembly sources when compiler/assembler cannot compile certain
instructions. For example, GCC 4.2.1 + binutils 2.17.50 does not support
AVX instructions.

Reported by: bde
MFC after: 2 weeks


# 207be921 11-May-2016 Jung-uk Kim <jkim@FreeBSD.org>

Set CC environment variable for Perl scripts. This is for detecting
assembler/compiler capabilities, e.g., AVX instructions.


# 82d668d2 11-May-2016 Jung-uk Kim <jkim@FreeBSD.org>

Refine comments to add its origin.


# 94e989e7 11-May-2016 Ed Maste <emaste@FreeBSD.org>

libcrypto: add "Do not modify" comment to generated source files

Reviewed by: jkim
Differential Revision: https://reviews.freebsd.org/D6237


# cdeae6df 10-May-2016 Jung-uk Kim <jkim@FreeBSD.org>

Make libcrypto.so position independent on i386.


# a7d5f7eb 19-Oct-2010 Jamie Gritton <jamie@FreeBSD.org>

A new jail(8) with a configuration file, to replace the work currently done
by /etc/rc.d/jail.


# fe0506d7 09-Mar-2010 Marcel Moolenaar <marcel@FreeBSD.org>

Create the altix project branch. The altix project will add support
for the SGI Altix 350 to FreeBSD/ia64. The hardware used for porting
is a two-module system, consisting of a base compute module and a
CPU expansion module. SGI's NUMAFlex architecture can be an excellent
platform to test CPU affinity and NUMA-aware features in FreeBSD.


# d7f03759 19-Oct-2008 Ulf Lilleengen <lulf@FreeBSD.org>

- Import the HEAD csup code which is the basis for the cvsmode work.


# d6608aaa 24-Feb-2005 Jacques Vidrine <nectar@FreeBSD.org>

Update OpenSSL 0.9.7d -> 0.9.7e.


# f3d90904 23-Mar-2004 Mark Murray <markm@FreeBSD.org>

Re-add the hand-optimised assembler versions of some of the ciphers
to the build.

Should have done this ages ago: markm
Reminded above to do this: peter


# 715430f8 13-Feb-2003 Jacques Vidrine <nectar@FreeBSD.org>

Correct path for finding asm-generating files.


# dcb22793 06-Nov-2002 David E. O'Brien <obrien@FreeBSD.org>

Style sync with rest of FreeBSD.


# 81fb684c 02-May-2002 Peter Wemm <peter@FreeBSD.org>

Pre-generate the optimized x86 crypto code and check it in rather than
depending on perl at build time. Makefile.asm is a helper for after the
next import.

With my cvs@ hat on, the relatively small repo cost of this is acceptable,
especially given that we have other (much bigger) things like
lib*.so.gz.uu checked in under src/lib/compat/*.

Reviewed by: kris (maintainer)