diff --git a/ChangeLog b/ChangeLog index fc86116912..c181042349 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2016-04-01 Adhemerval Zanella + + * string/strcspn.c (strcspn): Use PTR_ALIGN_DOWN. + * string/strspn.c (strspn): Likewise. + 2016-04-01 H.J. Lu * benchtests/bench-memset.c (do_test): Support 64-byte diff --git a/string/strcspn.c b/string/strcspn.c index c535dd1c3d..0e01193bc5 100644 --- a/string/strcspn.c +++ b/string/strcspn.c @@ -17,6 +17,7 @@ #include #include +#include #undef strcspn @@ -52,7 +53,7 @@ STRCSPN (const char *str, const char *reject) if (p[s[2]]) return 2; if (p[s[3]]) return 3; - s = (unsigned char *) ((uintptr_t)(s) & ~3); + s = (unsigned char *) PTR_ALIGN_DOWN (s, 4); unsigned int c0, c1, c2, c3; do diff --git a/string/strspn.c b/string/strspn.c index f98340b1b2..86f76ea988 100644 --- a/string/strspn.c +++ b/string/strspn.c @@ -17,6 +17,7 @@ #include #include +#include #undef strspn #ifndef STRSPN @@ -58,7 +59,8 @@ STRSPN (const char *str, const char *accept) if (!p[s[2]]) return 2; if (!p[s[3]]) return 3; - s = (unsigned char *) ((uintptr_t)(s) & ~3); + s = (unsigned char *) PTR_ALIGN_DOWN (s, 4); + unsigned int c0, c1, c2, c3; do { s += 4;