about summary refs log tree commit diff
diff options
context:
space:
mode:
authorAndreas Schwab <schwab@redhat.com>2011-10-13 13:33:58 +0200
committerAndreas Schwab <schwab@redhat.com>2011-10-13 13:34:41 +0200
commit81dcc7fb74a766f970800b9975e85b5fe7f6ea38 (patch)
tree06438881eb125e621e8cad6bdb2412e71c68856f
parent5298ffa828f2a7fe9e16c7f8971273a36a7530e6 (diff)
downloadglibc-81dcc7fb74a766f970800b9975e85b5fe7f6ea38.tar.gz
glibc-81dcc7fb74a766f970800b9975e85b5fe7f6ea38.tar.xz
glibc-81dcc7fb74a766f970800b9975e85b5fe7f6ea38.zip
Check for zero size in memrchr for x86_64
-rw-r--r--ChangeLog2
-rw-r--r--sysdeps/x86_64/memrchr.S3
2 files changed, 5 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index a917b6e51e..36cd1e23e9 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,7 @@
 2011-10-13  Andreas Schwab  <schwab@redhat.com>
 
+	* sysdeps/x86_64/memrchr.S: Check for zero size.
+
 	* string/stratcliff.c: Add memrchr tests.
 
 2011-10-12  Liubov Dmitrieva  <liubov.dmitrieva@gmail.com>
diff --git a/sysdeps/x86_64/memrchr.S b/sysdeps/x86_64/memrchr.S
index 81b7a1c320..70adca379c 100644
--- a/sysdeps/x86_64/memrchr.S
+++ b/sysdeps/x86_64/memrchr.S
@@ -282,6 +282,9 @@ L(return_null):
 
 	.p2align 4
 L(length_less16_offset0):
+	test	%edx, %edx
+	jz	L(return_null)
+
 	mov	%dl, %cl
 	pcmpeqb	(%rdi), %xmm1