diff options
author | Torbjorn Granlund <tg@gmplib.org> | 2017-04-25 22:23:51 +0200 |
---|---|---|
committer | Torbjorn Granlund <tg@gmplib.org> | 2017-04-25 22:23:51 +0200 |
commit | 1bd24a773fd83c45da557b512bffc07db89119e8 (patch) | |
tree | ab4fec371adffd9c627f44a84f5425c9eafcda0b | |
parent | da40edd3d33bb3363eded7f958f27d0cf1ab61d1 (diff) | |
download | gmp-1bd24a773fd83c45da557b512bffc07db89119e8.tar.gz |
Allocate correct DOS64 frame.
-rw-r--r-- | mpn/x86_64/divrem_2.asm | 2 | ||||
-rw-r--r-- | mpn/x86_64/fat/fat_entry.asm | 2 | ||||
-rw-r--r-- | mpn/x86_64/mod_1_1.asm | 2 | ||||
-rw-r--r-- | mpn/x86_64/mod_1_2.asm | 2 | ||||
-rw-r--r-- | mpn/x86_64/mod_1_4.asm | 2 |
5 files changed, 10 insertions, 0 deletions
diff --git a/mpn/x86_64/divrem_2.asm b/mpn/x86_64/divrem_2.asm index 296c9b673..20811ccbc 100644 --- a/mpn/x86_64/divrem_2.asm +++ b/mpn/x86_64/divrem_2.asm @@ -100,8 +100,10 @@ L(2): push %r11 IFSTD(` mov %r11, %rdi ') IFDOS(` mov %r11, %rcx ') +IFDOS(` sub $32, %rsp ') ASSERT(nz, `test $15, %rsp') CALL( mpn_invert_limb) +IFDOS(` add $32, %rsp ') pop %r11 pop %r10 pop %r8 diff --git a/mpn/x86_64/fat/fat_entry.asm b/mpn/x86_64/fat/fat_entry.asm index 8f7599dd5..5f244ac2b 100644 --- a/mpn/x86_64/fat/fat_entry.asm +++ b/mpn/x86_64/fat/fat_entry.asm @@ -167,7 +167,9 @@ IFSTD(` push %rsi ') push %r8 push %r9 push %rax +IFDOS(` sub $32, %rsp ') CALL( __gmpn_cpuvec_init) +IFDOS(` add $32, %rsp ') pop %rax pop %r9 pop %r8 diff --git a/mpn/x86_64/mod_1_1.asm b/mpn/x86_64/mod_1_1.asm index 09b5dd1e1..255305f3f 100644 --- a/mpn/x86_64/mod_1_1.asm +++ b/mpn/x86_64/mod_1_1.asm @@ -198,8 +198,10 @@ PROLOGUE(mpn_mod_1_1p_cps) sal R8(%rcx), %r12 IFSTD(` mov %r12, %rdi ') C pass parameter IFDOS(` mov %r12, %rcx ') C pass parameter +IFDOS(` sub $32, %rsp ') ASSERT(nz, `test $15, %rsp') CALL( mpn_invert_limb) +IFDOS(` add $32, %rsp ') neg %r12 mov %r12, %r8 mov %rax, (%rbx) C store bi diff --git a/mpn/x86_64/mod_1_2.asm b/mpn/x86_64/mod_1_2.asm index 09d856e6e..40fcaebf4 100644 --- a/mpn/x86_64/mod_1_2.asm +++ b/mpn/x86_64/mod_1_2.asm @@ -183,8 +183,10 @@ PROLOGUE(mpn_mod_1s_2p_cps) sal R8(%rcx), %r12 C b << cnt IFSTD(` mov %r12, %rdi ') C pass parameter IFDOS(` mov %r12, %rcx ') C pass parameter +IFDOS(` sub $32, %rsp ') ASSERT(nz, `test $15, %rsp') CALL( mpn_invert_limb) +IFDOS(` add $32, %rsp ') mov %r12, %r8 mov %rax, %r11 mov %rax, (%rbx) C store bi diff --git a/mpn/x86_64/mod_1_4.asm b/mpn/x86_64/mod_1_4.asm index ae34617c7..6cf304cf2 100644 --- a/mpn/x86_64/mod_1_4.asm +++ b/mpn/x86_64/mod_1_4.asm @@ -190,8 +190,10 @@ PROLOGUE(mpn_mod_1s_4p_cps) sal R8(%rcx), %r12 C b << cnt IFSTD(` mov %r12, %rdi ') C pass parameter IFDOS(` mov %r12, %rcx ') C pass parameter +IFDOS(` sub $32, %rsp ') ASSERT(nz, `test $15, %rsp') CALL( mpn_invert_limb) +IFDOS(` add $32, %rsp ') mov %r12, %r8 mov %rax, %r11 mov %rax, (%rbx) C store bi |