summaryrefslogtreecommitdiff
path: root/src/lib/libcrypto/modes/asm/ghash-x86_64.pl (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Add a few missing endbr64 to libcryptotb2024-02-241-0/+2
| | | | | | | | gcm_{gmult,ghash}_4bit(), aesni_ccm64_decrypt_blocks(), aes_cbc_encrypt(), and aesni_xts_{en,de}crypt() were overlooked in previous passes. Found with a diff for ld.lld by kettenis ok kettenis
* Replace uses of endbr64 with _CET_ENDBR from cet.htb2024-02-241-4/+4
| | | | | | | | | cet.h is needed for other platforms to emit the relevant .gnu.properties sections that are necessary for them to enable IBT. It also avoids issues with older toolchains on macOS that explode on encountering endbr64. based on a diff by kettenis ok beck kettenis
* Avoid a four byte overread in gcm_ghash_4bit() on amd64.jsing2024-01-241-1/+1
| | | | | | | | | | | | | | The assembly code for gcm_ghash_4bit() reads one too many times from Xi, resulting in a four byte overread. Prevent this by not loading the next value in the final iteration of the loop. If another full iteration is required the next Xi value will be loaded at the top of the outer_loop. Many thanks to Douglas Gliner <Douglas.Gliner at sony dot com> for finding and reporting this issue, along with a detailed reproducer. Same diff from deraadt@ ok tb@
* Add endbr64 where needed by inspection. Passes regresson tests.deraadt2023-04-251-0/+4
| | | | ok jsing, and kind of tb an earlier version
* Use explicit .text instead of .previous to please Windows/MinGW on amd64tb2023-02-231-1/+1
| | | | ok miod
* Use .section .rodata instead of a plain .rodatatb2023-02-091-1/+1
| | | | | | | | At least gcc 12 on Fedora is very unhappy about a plain .rodata and throws Error: unknown pseudo-op: `.rodata'. So add a .section in front of it to make it happy. ok deraadt miod
* Move constants out of text segment into rodata to prepare for xonly supportderaadt2023-01-141-2/+2
| | | | | on amd64. no pic handling is neccessary since amd64 has full reach. ok kettenis
* Import OpenSSL 1.0.1gmiod2014-04-131-1/+2
|
* import OpenSSL-1.0.1cdjm2012-10-131-0/+805