From eec8e84c9923cc11a52d8273b5b28af9403e3462 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Niels=20M=C3=B6ller?= <nisse@lysator.liu.se> Date: Wed, 10 Sep 2008 22:15:26 +0200 Subject: [PATCH] *** empty log message *** Rev: nettle/ChangeLog:1.16 Rev: nettle/x86_64/README:1.1 --- ChangeLog | 5 +++++ x86_64/README | 25 +++++++++++++++++++++++++ 2 files changed, 30 insertions(+) create mode 100644 x86_64/README diff --git a/ChangeLog b/ChangeLog index 38f85c16..30791c07 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2008-09-10 Niels M�ller <nisse@lysator.liu.se> + + * x86_64/sha1-compress.asm: Avoid using registers %rbx and %rbp, + which must be preserved. + 2008-09-08 Niels M�ller <nisse@lysator.liu.se> * Makefile.in (stamp-h.in): Use $(AUTOHEADER). diff --git a/x86_64/README b/x86_64/README new file mode 100644 index 00000000..95db7fee --- /dev/null +++ b/x86_64/README @@ -0,0 +1,25 @@ +ABI, according to http://www.x86-64.org/documentation/abi-0.99.pdf: + +Up to 6 integer and pointer arguments are passed in registers. Nine +registers, %rax, %rcx, %rdx, %rsi, %rdi and %r8-%r12 can be used +freely. Integers and pointers are returned in %rax. + +Registers May be Argument + clobbered number + +%rax Y +%rbx +%rcx Y 4 +%rdx Y 3 +%rbp +%rsi Y 2 +%rdi Y 1 +%rsp (SP) +%r8 Y 5 +%r9 Y 6 +%r10 Y +%r11 Y +%r12 +%r13 +%r14 +%r15 -- GitLab