diff options
author | Richard Maw <richard.maw@codethink.co.uk> | 2012-01-19 10:33:31 +0000 |
---|---|---|
committer | Richard Maw <richard.maw@codethink.co.uk> | 2012-01-19 10:33:31 +0000 |
commit | 29137c6ff7a9e370e2332d855ab46616ad4e9cc9 (patch) | |
tree | fbca7aa7cfa645df1b059aeba7e81739620b013c /mpn/x86_64/rsh1aors_n.asm | |
parent | 962de8d4b353178d38c2c70e952944686b9fd47b (diff) | |
parent | 2c033efc02631f22e6e180ce737a2faf81b09ccc (diff) | |
download | gmp-29137c6ff7a9e370e2332d855ab46616ad4e9cc9.tar.gz |
Merge branch 'master' into baserock/morph
Diffstat (limited to 'mpn/x86_64/rsh1aors_n.asm')
-rw-r--r-- | mpn/x86_64/rsh1aors_n.asm | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/mpn/x86_64/rsh1aors_n.asm b/mpn/x86_64/rsh1aors_n.asm index c4a336446..1b6a103f1 100644 --- a/mpn/x86_64/rsh1aors_n.asm +++ b/mpn/x86_64/rsh1aors_n.asm @@ -1,7 +1,7 @@ dnl AMD64 mpn_rsh1add_n -- rp[] = (up[] + vp[]) >> 1 dnl AMD64 mpn_rsh1sub_n -- rp[] = (up[] - vp[]) >> 1 -dnl Copyright 2003, 2005, 2009 Free Software Foundation, Inc. +dnl Copyright 2003, 2005, 2009, 2011 Free Software Foundation, Inc. dnl This file is part of the GNU MP Library. @@ -53,11 +53,24 @@ ifdef(`OPERATION_rsh1sub_n', ` MULFUNC_PROLOGUE(mpn_rsh1add_n mpn_rsh1add_nc mpn_rsh1sub_n mpn_rsh1sub_nc) +ifdef(`HOST_DOS64',` + define(`IFDOS', `$1') + define(`IFELF', `') +',` + define(`IFDOS', `') + define(`IFELF', `$1') +') + +ABI_SUPPORT(DOS64) +ABI_SUPPORT(ELF64) + ASM_START() TEXT ALIGN(16) PROLOGUE(func_nc) + DOS64_ENTRY(4) +IFDOS(` mov 56(%rsp), %r8 ') push %rbx xor R32(%rax), R32(%rax) @@ -69,6 +82,7 @@ EPILOGUE() ALIGN(16) PROLOGUE(func_n) + DOS64_ENTRY(4) push %rbx xor R32(%rax), R32(%rax) @@ -169,5 +183,6 @@ L(top): add %rbx, %rbx C rotate carry limb, restore acy L(end): mov %rbx, (rp) pop %rbx + DOS64_EXIT() ret EPILOGUE() |