[llvm-commits] [compiler-rt] r158658 - in /compiler-rt/trunk/lib/sanitizer_common: sanitizer_libc.cc sanitizer_libc.h
Alexey Samsonov
samsonov at google.com
Mon Jun 18 07:34:59 PDT 2012
Author: samsonov
Date: Mon Jun 18 09:34:59 2012
New Revision: 158658
URL: http://llvm.org/viewvc/llvm-project?rev=158658&view=rev
Log:
[Sanitizer] add internal_strncmp to sanitizer libc
Modified:
compiler-rt/trunk/lib/sanitizer_common/sanitizer_libc.cc
compiler-rt/trunk/lib/sanitizer_common/sanitizer_libc.h
Modified: compiler-rt/trunk/lib/sanitizer_common/sanitizer_libc.cc
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/sanitizer_common/sanitizer_libc.cc?rev=158658&r1=158657&r2=158658&view=diff
==============================================================================
--- compiler-rt/trunk/lib/sanitizer_common/sanitizer_libc.cc (original)
+++ compiler-rt/trunk/lib/sanitizer_common/sanitizer_libc.cc Mon Jun 18 09:34:59 2012
@@ -76,6 +76,18 @@
return 0;
}
+int internal_strncmp(const char *s1, const char *s2, uptr n) {
+ for (uptr i = 0; i < n; i++) {
+ unsigned c1 = *s1;
+ unsigned c2 = *s2;
+ if (c1 != c2) return (c1 < c2) ? -1 : 1;
+ if (c1 == 0) break;
+ s1++;
+ s2++;
+ }
+ return 0;
+}
+
char* internal_strchr(const char *s, int c) {
while (true) {
if (*s == (char)c)
Modified: compiler-rt/trunk/lib/sanitizer_common/sanitizer_libc.h
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/sanitizer_common/sanitizer_libc.h?rev=158658&r1=158657&r2=158658&view=diff
==============================================================================
--- compiler-rt/trunk/lib/sanitizer_common/sanitizer_libc.h (original)
+++ compiler-rt/trunk/lib/sanitizer_common/sanitizer_libc.h Mon Jun 18 09:34:59 2012
@@ -33,6 +33,7 @@
char *internal_strdup(const char *s);
uptr internal_strlen(const char *s);
char *internal_strncat(char *dst, const char *src, uptr n);
+int internal_strncmp(const char *s1, const char *s2, uptr n);
char *internal_strncpy(char *dst, const char *src, uptr n);
uptr internal_strnlen(const char *s, uptr maxlen);
char *internal_strrchr(const char *s, int c);
More information about the llvm-commits
mailing list