mirror of
https://sourceware.org/git/glibc.git
synced 2024-11-09 23:00:07 +00:00
Add rtld-memset.S for x86_64
Resolves: BZ #15627 Add an assembler version of rtld-memset to avoid using SSE registers.
This commit is contained in:
parent
1b2feed264
commit
747ef469ff
@ -1,3 +1,10 @@
|
||||
2013-06-14 Siddhesh Poyarekar <siddhesh@redhat.com>
|
||||
H.J. Lu <hjl.tools@gmail.com>
|
||||
|
||||
[BZ #15627]
|
||||
* sysdeps/x86_64/rtld-memset.c: Remove file.
|
||||
* sysdeps/x86_64/rtld-memset.S: New file.
|
||||
|
||||
2013-06-14 Joseph Myers <joseph@codesourcery.com>
|
||||
|
||||
* stdlib/tst-strtod-round.c: Include <math-tests.h>.
|
||||
|
2
NEWS
2
NEWS
@ -20,7 +20,7 @@ Version 2.18
|
||||
15380, 15381, 15394, 15395, 15405, 15406, 15409, 15416, 15418, 15419,
|
||||
15423, 15424, 15426, 15429, 15431, 15432, 15441, 15442, 15448, 15465,
|
||||
15480, 15485, 15488, 15490, 15493, 15497, 15506, 15529, 15536, 15553,
|
||||
15577, 15583, 15618.
|
||||
15577, 15583, 15618, 15627.
|
||||
|
||||
* CVE-2013-0242 Buffer overrun in regexp matcher has been fixed (Bugzilla
|
||||
#15078).
|
||||
|
37
sysdeps/x86_64/rtld-memset.S
Normal file
37
sysdeps/x86_64/rtld-memset.S
Normal file
@ -0,0 +1,37 @@
|
||||
/* memset implementation for the dynamic linker. This is separate from the
|
||||
libc implementation to avoid writing to SSE registers.
|
||||
Copyright (C) 2013 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
The GNU C Library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with the GNU C Library; if not, see
|
||||
<http://www.gnu.org/licenses/>. */
|
||||
|
||||
#include <sysdep.h>
|
||||
#include "asm-syntax.h"
|
||||
|
||||
|
||||
.text
|
||||
/* void *memset (void *dest, char c, size_t count)
|
||||
dest => %rdi
|
||||
c => %rsi
|
||||
count => %rdx */
|
||||
ENTRY (memset)
|
||||
mov %rdx, %rcx
|
||||
movzbl %sil, %eax
|
||||
mov %rdi, %rdx
|
||||
rep stosb
|
||||
mov %rdx, %rax
|
||||
ret
|
||||
END (memset)
|
||||
libc_hidden_builtin_def (memset)
|
@ -1 +0,0 @@
|
||||
#include <string/memset.c>
|
Loading…
Reference in New Issue
Block a user