Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeff Johnston <jjohnstn@redhat.com>2009-02-05 23:10:21 +0300
committerJeff Johnston <jjohnstn@redhat.com>2009-02-05 23:10:21 +0300
commit18cbf1d39430c6980bac7eb956d02857e51217e8 (patch)
treed2d1fc9f9880c72be5785e5208596d6ccc778946 /newlib/libc/machine/x86_64
parent11acb173d9ae169511d70c1adcca80a2d7afd697 (diff)
2009-02-05 Neal H. Walfield <neal@gnu.org>
* libc/machine/x86_64/memcpy.S (memcpy): Don't use the red zone.
Diffstat (limited to 'newlib/libc/machine/x86_64')
-rw-r--r--newlib/libc/machine/x86_64/memcpy.S16
1 files changed, 8 insertions, 8 deletions
diff --git a/newlib/libc/machine/x86_64/memcpy.S b/newlib/libc/machine/x86_64/memcpy.S
index 3178dfae2..81dd0c423 100644
--- a/newlib/libc/machine/x86_64/memcpy.S
+++ b/newlib/libc/machine/x86_64/memcpy.S
@@ -30,10 +30,10 @@ quadword_aligned:
cmpq $256, rdx
jb quadword_copy
- movq rax, -8 (rsp)
- movq r12, -16 (rsp)
- movq r13, -24 (rsp)
- movq r14, -32 (rsp)
+ pushq rax
+ pushq r12
+ pushq r13
+ pushq r14
movq rdx, rcx /* Copy 128 bytes at a time with minimum cache polution */
shrq $7, rcx
@@ -89,10 +89,10 @@ loop:
movq rdx, rcx
andq $127, rcx
rep movsb
- movq -8 (rsp), rax
- movq -16 (rsp), r12
- movq -24 (rsp), r13
- movq -32 (rsp), r14
+ popq r14
+ popq r13
+ popq r12
+ popq rax
ret