merge from gcc
This commit is contained in:
		| @@ -1,3 +1,11 @@ | |||||||
|  | 2014-10-28  Richard Henderson  <rth@redhat.com> | ||||||
|  |  | ||||||
|  | 	* longlong.h [__alpha] (umul_ppmm): Disable for c++. | ||||||
|  |  | ||||||
|  | 2014-10-28  Yury Gribov  <y.gribov@samsung.com> | ||||||
|  |  | ||||||
|  | 	* libiberty.h (strtol, strtoul, strtoll, strtoull): New prototypes. | ||||||
|  |  | ||||||
| 2014-10-27  Phil Muldoon  <pmuldoon@redhat.com> | 2014-10-27  Phil Muldoon  <pmuldoon@redhat.com> | ||||||
| 	    Jan Kratochvil  <jan.kratochvil@redhat.com> | 	    Jan Kratochvil  <jan.kratochvil@redhat.com> | ||||||
| 	    Tom Tromey  <tromey@redhat.com> | 	    Tom Tromey  <tromey@redhat.com> | ||||||
|   | |||||||
| @@ -655,6 +655,33 @@ extern size_t strnlen (const char *, size_t); | |||||||
| extern int strverscmp (const char *, const char *); | extern int strverscmp (const char *, const char *); | ||||||
| #endif | #endif | ||||||
|  |  | ||||||
|  | #if defined(HAVE_DECL_STRTOL) && !HAVE_DECL_STRTOL | ||||||
|  | extern long int strtol (const char *nptr, | ||||||
|  |                         char **endptr, int base); | ||||||
|  | #endif | ||||||
|  |  | ||||||
|  | #if defined(HAVE_DECL_STRTOUL) && !HAVE_DECL_STRTOUL | ||||||
|  | extern unsigned long int strtoul (const char *nptr, | ||||||
|  |                                   char **endptr, int base); | ||||||
|  | #endif | ||||||
|  |  | ||||||
|  | #if defined(HAVE_LONG_LONG) && defined(HAVE_DECL_STRTOLL) && !HAVE_DECL_STRTOLL | ||||||
|  | __extension__ | ||||||
|  | extern long long int strtoll (const char *nptr, | ||||||
|  |                               char **endptr, int base); | ||||||
|  | #endif | ||||||
|  |  | ||||||
|  | #if defined(HAVE_LONG_LONG) && defined(HAVE_DECL_STRTOULL) && !HAVE_DECL_STRTOULL | ||||||
|  | __extension__ | ||||||
|  | extern unsigned long long int strtoull (const char *nptr, | ||||||
|  |                                         char **endptr, int base); | ||||||
|  | #endif | ||||||
|  |  | ||||||
|  | #if defined(HAVE_DECL_STRVERSCMP) && !HAVE_DECL_STRVERSCMP | ||||||
|  | /* Compare version strings.  */ | ||||||
|  | extern int strverscmp (const char *, const char *); | ||||||
|  | #endif | ||||||
|  |  | ||||||
| /* Set the title of a process */ | /* Set the title of a process */ | ||||||
| extern void setproctitle (const char *name, ...); | extern void setproctitle (const char *name, ...); | ||||||
|  |  | ||||||
|   | |||||||
| @@ -139,6 +139,9 @@ extern const UQItype __clz_tab[256] attribute_hidden; | |||||||
| #endif /* __aarch64__ */ | #endif /* __aarch64__ */ | ||||||
|  |  | ||||||
| #if defined (__alpha) && W_TYPE_SIZE == 64 | #if defined (__alpha) && W_TYPE_SIZE == 64 | ||||||
|  | /* There is a bug in g++ before version 5 that | ||||||
|  |    errors on __builtin_alpha_umulh.  */ | ||||||
|  | #if !defined(__cplusplus) || __GNUC__ >= 5 | ||||||
| #define umul_ppmm(ph, pl, m0, m1) \ | #define umul_ppmm(ph, pl, m0, m1) \ | ||||||
|   do {									\ |   do {									\ | ||||||
|     UDItype __m0 = (m0), __m1 = (m1);					\ |     UDItype __m0 = (m0), __m1 = (m1);					\ | ||||||
| @@ -146,6 +149,7 @@ extern const UQItype __clz_tab[256] attribute_hidden; | |||||||
|     (pl) = __m0 * __m1;							\ |     (pl) = __m0 * __m1;							\ | ||||||
|   } while (0) |   } while (0) | ||||||
| #define UMUL_TIME 46 | #define UMUL_TIME 46 | ||||||
|  | #endif /* !c++ */ | ||||||
| #ifndef LONGLONG_STANDALONE | #ifndef LONGLONG_STANDALONE | ||||||
| #define udiv_qrnnd(q, r, n1, n0, d) \ | #define udiv_qrnnd(q, r, n1, n0, d) \ | ||||||
|   do { UDItype __r;							\ |   do { UDItype __r;							\ | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user