From e989d24678510303f6a76a1109e9ca82b2be1345 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Niels=20M=C3=B6ller?= <nisse@lysator.liu.se> Date: Sun, 20 Nov 2011 22:36:20 +0100 Subject: [PATCH] Added some notes on the w64 ABI. Rev: nettle/x86_64/README:1.3 --- nettle/x86_64/README | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/nettle/x86_64/README b/nettle/x86_64/README index 11c2be156..8506b719a 100644 --- a/nettle/x86_64/README +++ b/nettle/x86_64/README @@ -23,3 +23,31 @@ Registers May be Argument %r13 %r14 %r15 + +w64 ABI, according to +http://msdn.microsoft.com/en-us/library/9z1stfyw.aspx: + +Registers May be Argument + clobbered number + +%rax Y +%rbx +%rcx Y 1 +%rdx Y 2 +%rbp +%rsi +%rdi +%rsp (SP) +%r8 Y 3 +%r9 Y 4 +%r10 Y +%r11 Y +%r12 +%r13 +%r14 +%r15 + +Additional arguments are passed on the stack. "backing store" on the +stack for the four register arguments is also required. %xmm6 and +%xmm7 are callee-saved. The "long" type is just 32 bits. Nettle +currently does *NOT* support this ABI. -- GitLab