summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWaldemar Brodkorb <wbx@openadk.org>2017-06-30 21:06:36 +0200
committerWaldemar Brodkorb <wbx@openadk.org>2017-06-30 21:06:36 +0200
commit7c9269c66cd733a373104551d803a09928029327 (patch)
tree3c476b39a29edf1c25ab98e336c4d6b76fb95ab4
parent6df169714d0266269b24036e12d8841419da7b79 (diff)
avr32: fix toolchain compile with newer host compiler
-rw-r--r--toolchain/gcc/patches/4.4.7/fix-compile-with-newer-gcc.patch42
1 files changed, 42 insertions, 0 deletions
diff --git a/toolchain/gcc/patches/4.4.7/fix-compile-with-newer-gcc.patch b/toolchain/gcc/patches/4.4.7/fix-compile-with-newer-gcc.patch
new file mode 100644
index 000000000..be2603c05
--- /dev/null
+++ b/toolchain/gcc/patches/4.4.7/fix-compile-with-newer-gcc.patch
@@ -0,0 +1,42 @@
+diff -Nur gcc-4.4.7.orig/gcc/toplev.h gcc-4.4.7/gcc/toplev.h
+--- gcc-4.4.7.orig/gcc/toplev.h 2009-02-20 16:20:38.000000000 +0100
++++ gcc-4.4.7/gcc/toplev.h 2017-06-30 21:00:00.981033517 +0200
+@@ -167,38 +167,6 @@
+ extern bool fast_math_flags_set_p (void);
+ extern bool fast_math_flags_struct_set_p (struct cl_optimization *);
+
+-/* Return log2, or -1 if not exact. */
+-extern int exact_log2 (unsigned HOST_WIDE_INT);
+-
+-/* Return floor of log2, with -1 for zero. */
+-extern int floor_log2 (unsigned HOST_WIDE_INT);
+-
+-/* Inline versions of the above for speed. */
+-#if GCC_VERSION >= 3004
+-# if HOST_BITS_PER_WIDE_INT == HOST_BITS_PER_LONG
+-# define CLZ_HWI __builtin_clzl
+-# define CTZ_HWI __builtin_ctzl
+-# elif HOST_BITS_PER_WIDE_INT == HOST_BITS_PER_LONGLONG
+-# define CLZ_HWI __builtin_clzll
+-# define CTZ_HWI __builtin_ctzll
+-# else
+-# define CLZ_HWI __builtin_clz
+-# define CTZ_HWI __builtin_ctz
+-# endif
+-
+-extern inline int
+-floor_log2 (unsigned HOST_WIDE_INT x)
+-{
+- return x ? HOST_BITS_PER_WIDE_INT - 1 - (int) CLZ_HWI (x) : -1;
+-}
+-
+-extern inline int
+-exact_log2 (unsigned HOST_WIDE_INT x)
+-{
+- return x == (x & -x) && x ? (int) CTZ_HWI (x) : -1;
+-}
+-#endif /* GCC_VERSION >= 3004 */
+-
+ /* Functions used to get and set GCC's notion of in what directory
+ compilation was started. */
+