This is the mail archive of the glibc-cvs@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

GNU C Library master sources branch hjl/ifunc/test updated. glibc-2.16-ports-merge-402-ge92a2bc


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".

The branch, hjl/ifunc/test has been updated
       via  e92a2bce5f9373c6b98d403c8ca47cc9cc590e3e (commit)
      from  06931c26e241d8b0b6d0950ea2d384b7da17e5ed (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://sources.redhat.com/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=e92a2bce5f9373c6b98d403c8ca47cc9cc590e3e

commit e92a2bce5f9373c6b98d403c8ca47cc9cc590e3e
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Fri Sep 21 16:55:59 2012 -0700

    Add x86-64 wcscpy/wmemcmp ifunc tests

diff --git a/ChangeLog.test-ifunc b/ChangeLog.test-ifunc
index c75a857..254e66d 100644
--- a/ChangeLog.test-ifunc
+++ b/ChangeLog.test-ifunc
@@ -1,5 +1,19 @@
 2012-09-21  H.J. Lu  <hongjiu.lu@intel.com>
 
+	* sysdeps/x86_64/multiarch/libc-test.c: Include <wchar.h>.
+	(find_wcscpy): New.
+	(find_wmemcmp): Likewise.
+	(__wcscpy_sse2): Likewise.
+	(__wcscpy_ssse3): Likewise.
+	(wcscpy_list): Likewise.
+	(__wmemcmp_sse2): Likewise.
+	(__wmemcmp_ssse3): Likewise.
+	(__wmemcmp_sse4_1): Likewise.
+	(wmemcmp_list): Likewise.
+	(__libc_func): Support wcscpy and wmemcmp.
+
+2012-09-21  H.J. Lu  <hongjiu.lu@intel.com>
+
 	* string/test-memcmp.c (TEST_NAME): Defined to "wmemcmp" if
 	WIDE is defined.
 	* string/test-rawmemchr.c (TEST_NAME): New macro.
diff --git a/sysdeps/x86_64/multiarch/libc-test.c b/sysdeps/x86_64/multiarch/libc-test.c
index 6267e23..809bf76 100644
--- a/sysdeps/x86_64/multiarch/libc-test.c
+++ b/sysdeps/x86_64/multiarch/libc-test.c
@@ -18,6 +18,7 @@
 
 #include <stdlib.h>
 #include <string.h>
+#include <wchar.h>
 #include <libc-test.h>
 #include "init-arch.h"
 
@@ -50,6 +51,8 @@
 #define find_strrchr()		NULL
 #define find_strspn()		NULL
 #define find_strstr()		NULL
+#define find_wcscpy()		NULL
+#define find_wmemcmp()		NULL
 
 #ifndef NOT_IN_libc
 
@@ -521,6 +524,44 @@ find_strstr (void)
   return strstr_list + (HAS_SSE4_2 ? 0 : 1);
 }
 
+extern __typeof (wcscpy) __wcscpy_sse2;
+extern __typeof (wcscpy) __wcscpy_ssse3;
+
+static const struct libc_func_test wcscpy_list[] =
+{
+  LIBC_FUNC_INIT (__wcscpy_ssse3),
+  LIBC_FUNC_INIT (__wcscpy_sse2),
+  { NULL, NULL },
+};
+
+# undef find_wcscpy
+
+static const struct libc_func_test *
+find_wcscpy (void)
+{
+  return wcscpy_list + (HAS_SSSE3 ? 0 : 1);
+}
+
+extern __typeof (wmemcmp) __wmemcmp_sse2;
+extern __typeof (wmemcmp) __wmemcmp_ssse3;
+extern __typeof (wmemcmp) __wmemcmp_sse4_1;
+
+static const struct libc_func_test wmemcmp_list[] =
+{
+  LIBC_FUNC_INIT (__wmemcmp_sse4_1),
+  LIBC_FUNC_INIT (__wmemcmp_ssse3),
+  LIBC_FUNC_INIT (__wmemcmp_sse2),
+  { NULL, NULL },
+};
+
+# undef find_wmemcmp
+
+static const struct libc_func_test *
+find_wmemcmp (void)
+{
+  return wmemcmp_list + (HAS_SSE4_1 ? 0 : (HAS_SSSE3 ? 1 : 2));
+}
+
 # ifdef SHARED
 extern __typeof (memcmp) __memcmp_sse2;
 extern __typeof (memcmp) __memcmp_ssse3;
@@ -738,5 +779,11 @@ __libc_func (const char *name)
   if (strcmp (name, "strstr") == 0)
     return find_strstr ();
 
+  if (strcmp (name, "wcscpy") == 0)
+    return find_wcscpy ();
+
+  if (strcmp (name, "wmemcmp") == 0)
+    return find_wmemcmp ();
+
   return NULL;
 }

-----------------------------------------------------------------------

Summary of changes:
 ChangeLog.test-ifunc                 |   14 ++++++++++
 sysdeps/x86_64/multiarch/libc-test.c |   47 ++++++++++++++++++++++++++++++++++
 2 files changed, 61 insertions(+), 0 deletions(-)


hooks/post-receive
-- 
GNU C Library master sources


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]