diff options
author | Denys Vlasenko <vda.linux@googlemail.com> | 2021-11-27 11:28:11 +0100 |
---|---|---|
committer | Denys Vlasenko <vda.linux@googlemail.com> | 2021-11-27 11:28:11 +0100 |
commit | 4bc9da10718df7ed9e992b1ddd2e80d53d894177 (patch) | |
tree | 3225ca484904b0f3d85a40cbbad02636b27f7aa7 /include/platform.h | |
parent | 15f7d618ea7f8c3a0277c98309268b709e20d77c (diff) | |
download | busybox-w32-4bc9da10718df7ed9e992b1ddd2e80d53d894177.tar.gz busybox-w32-4bc9da10718df7ed9e992b1ddd2e80d53d894177.tar.bz2 busybox-w32-4bc9da10718df7ed9e992b1ddd2e80d53d894177.zip |
tls: P256: 64-bit optimizations
function old new delta
sp_256_proj_point_dbl_8 421 428 +7
sp_256_point_from_bin2x32 78 84 +6
sp_256_cmp_8 38 42 +4
sp_256_to_bin_8 28 31 +3
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 4/0 up/down: 20/0) Total: 20 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'include/platform.h')
-rw-r--r-- | include/platform.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/platform.h b/include/platform.h index 9e1fb047d..ad27bb31a 100644 --- a/include/platform.h +++ b/include/platform.h | |||
@@ -239,6 +239,7 @@ typedef uint64_t bb__aliased_uint64_t FIX_ALIASING; | |||
239 | # define move_from_unaligned_long(v, longp) ((v) = *(bb__aliased_long*)(longp)) | 239 | # define move_from_unaligned_long(v, longp) ((v) = *(bb__aliased_long*)(longp)) |
240 | # define move_from_unaligned16(v, u16p) ((v) = *(bb__aliased_uint16_t*)(u16p)) | 240 | # define move_from_unaligned16(v, u16p) ((v) = *(bb__aliased_uint16_t*)(u16p)) |
241 | # define move_from_unaligned32(v, u32p) ((v) = *(bb__aliased_uint32_t*)(u32p)) | 241 | # define move_from_unaligned32(v, u32p) ((v) = *(bb__aliased_uint32_t*)(u32p)) |
242 | # define move_from_unaligned64(v, u64p) ((v) = *(bb__aliased_uint64_t*)(u64p)) | ||
242 | # define move_to_unaligned16(u16p, v) (*(bb__aliased_uint16_t*)(u16p) = (v)) | 243 | # define move_to_unaligned16(u16p, v) (*(bb__aliased_uint16_t*)(u16p) = (v)) |
243 | # define move_to_unaligned32(u32p, v) (*(bb__aliased_uint32_t*)(u32p) = (v)) | 244 | # define move_to_unaligned32(u32p, v) (*(bb__aliased_uint32_t*)(u32p) = (v)) |
244 | # define move_to_unaligned64(u64p, v) (*(bb__aliased_uint64_t*)(u64p) = (v)) | 245 | # define move_to_unaligned64(u64p, v) (*(bb__aliased_uint64_t*)(u64p) = (v)) |
@@ -250,6 +251,7 @@ typedef uint64_t bb__aliased_uint64_t FIX_ALIASING; | |||
250 | # define move_from_unaligned_long(v, longp) (memcpy(&(v), (longp), sizeof(long))) | 251 | # define move_from_unaligned_long(v, longp) (memcpy(&(v), (longp), sizeof(long))) |
251 | # define move_from_unaligned16(v, u16p) (memcpy(&(v), (u16p), 2)) | 252 | # define move_from_unaligned16(v, u16p) (memcpy(&(v), (u16p), 2)) |
252 | # define move_from_unaligned32(v, u32p) (memcpy(&(v), (u32p), 4)) | 253 | # define move_from_unaligned32(v, u32p) (memcpy(&(v), (u32p), 4)) |
254 | # define move_from_unaligned64(v, u64p) (memcpy(&(v), (u64p), 8)) | ||
253 | # define move_to_unaligned16(u16p, v) do { \ | 255 | # define move_to_unaligned16(u16p, v) do { \ |
254 | uint16_t __t = (v); \ | 256 | uint16_t __t = (v); \ |
255 | memcpy((u16p), &__t, 2); \ | 257 | memcpy((u16p), &__t, 2); \ |