diff options
| author | Egor Tensin <egor@tensin.name> | 2026-07-23 23:44:07 +0200 |
|---|---|---|
| committer | Egor Tensin <egor@tensin.name> | 2026-07-23 23:44:07 +0200 |
| commit | 8f649e4ae0101000c32cfd1fef608f2422650ca9 (patch) | |
| tree | 792b464e3b3deb563db7a4662c6b22cd24a82aae /aes/src/asm64 | |
| parent | aes: add 64-bit ASM implementation (diff) | |
| download | aes-tools-8f649e4ae0101000c32cfd1fef608f2422650ca9.tar.gz aes-tools-8f649e4ae0101000c32cfd1fef608f2422650ca9.zip | |
aes: add a few notes to ASM files
Diffstat (limited to '')
| -rw-r--r-- | aes/src/asm64/aes128.asm | 5 | ||||
| -rw-r--r-- | aes/src/asm64/aes192.asm | 5 | ||||
| -rw-r--r-- | aes/src/asm64/aes256.asm | 5 |
3 files changed, 12 insertions, 3 deletions
diff --git a/aes/src/asm64/aes128.asm b/aes/src/asm64/aes128.asm index c1349f4..4b18384 100644 --- a/aes/src/asm64/aes128.asm +++ b/aes/src/asm64/aes128.asm @@ -3,7 +3,10 @@ ; For details, see https://github.com/egor-tensin/aes-tools. ; Distributed under the MIT License. -; Copied from asm/aes128.asm +; Copied from asm/aes128.asm, accounting for the calling convention changes. +; The biggest difference is that __m128 arguments are passed via a pointer, not +; via XMM registers like in 32-bit __fastcall. The best source is Agner's doc: +; https://www.agner.org/optimize/calling_conventions.pdf .code diff --git a/aes/src/asm64/aes192.asm b/aes/src/asm64/aes192.asm index 2ffb28b..1530842 100644 --- a/aes/src/asm64/aes192.asm +++ b/aes/src/asm64/aes192.asm @@ -3,7 +3,10 @@ ; For details, see https://github.com/egor-tensin/aes-tools. ; Distributed under the MIT License. -; Copied from asm/aes192.asm +; Copied from asm/aes192.asm, accounting for the calling convention changes. +; The biggest difference is that __m128 arguments are passed via a pointer, not +; via XMM registers like in 32-bit __fastcall. The best source is Agner's doc: +; https://www.agner.org/optimize/calling_conventions.pdf .code diff --git a/aes/src/asm64/aes256.asm b/aes/src/asm64/aes256.asm index 33cb7f2..0ef66d7 100644 --- a/aes/src/asm64/aes256.asm +++ b/aes/src/asm64/aes256.asm @@ -3,7 +3,10 @@ ; For details, see https://github.com/egor-tensin/aes-tools. ; Distributed under the MIT License. -; Copied from asm/aes256.asm +; Copied from asm/aes256.asm, accounting for the calling convention changes. +; The biggest difference is that __m128 arguments are passed via a pointer, not +; via XMM registers like in 32-bit __fastcall. The best source is Agner's doc: +; https://www.agner.org/optimize/calling_conventions.pdf .code |
