Hello,
чт, 4 июл. 2019 г. в 10:06, Niels Möller nisse@lysator.liu.se:
Dmitry Eremin-Solenikov dbaryshkov@gmail.com writes:
Hmm. This patch has to wait a bit, sent it without actual testing. nettle_block16.w is used by eax (easy to copy with) and gcm (might need performance checks on 32-bit architectures).
I would expect that using the uint64_t field is as efficient (or better, if compilers do it really well), but I haven't checked the generated code on 32-bit archs.
Can we delete the w field from the union without considering it an abi break? I'd expect size and alignment of the union to be unchanged on all but the most obscure architectures. If not, that part of the change has to wait.
I don't know. Size remains the same. And I'd assume that alignment is controlled by uint64_t in this case (rather than unsigned long). However these 3 patches (eax, gcm, nettle-types) are completely undependent from the rest of CMAC-64, so they can be applied at any order.