diff options
Diffstat (limited to 'toolchain-layer/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106878.patch')
-rw-r--r-- | toolchain-layer/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106878.patch | 69 |
1 files changed, 0 insertions, 69 deletions
diff --git a/toolchain-layer/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106878.patch b/toolchain-layer/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106878.patch deleted file mode 100644 index fc1633d36e..0000000000 --- a/toolchain-layer/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106878.patch +++ /dev/null @@ -1,69 +0,0 @@ -2012-03-08 Michael Hope <michael.hope@linaro.org> - - Backport proposed patch: - - gcc/ - 2012-01-31 Richard Henderson <rth@redhat.com> - - * longlong.h [arm] (umul_ppmm): Use umull. Enable for thumb2. - [arm] (count_trailing_zeros): Use __builtin_ctz. - -=== modified file 'gcc/longlong.h' ---- old/gcc/longlong.h 2011-10-04 07:28:50 +0000 -+++ new/gcc/longlong.h 2012-02-22 01:51:14 +0000 -@@ -203,7 +203,7 @@ - UDItype __umulsidi3 (USItype, USItype); - #endif - --#if defined (__arm__) && !defined (__thumb__) && W_TYPE_SIZE == 32 -+#if defined (__arm__) && (defined (__thumb2__) || !defined (__thumb__)) && W_TYPE_SIZE == 32 - #define add_ssaaaa(sh, sl, ah, al, bh, bl) \ - __asm__ ("adds %1, %4, %5\n\tadc %0, %2, %3" \ - : "=r" ((USItype) (sh)), \ -@@ -220,9 +220,12 @@ - "rI" ((USItype) (bh)), \ - "r" ((USItype) (al)), \ - "rI" ((USItype) (bl)) __CLOBBER_CC) --#define umul_ppmm(xh, xl, a, b) \ --{register USItype __t0, __t1, __t2; \ -- __asm__ ("%@ Inlined umul_ppmm\n" \ -+# if defined(__ARM_ARCH_2__) || defined(__ARM_ARCH_2A__) \ -+ || defined(__ARM_ARCH_3__) -+# define umul_ppmm(xh, xl, a, b) \ -+ do { \ -+ register USItype __t0, __t1, __t2; \ -+ __asm__ ("%@ Inlined umul_ppmm\n" \ - " mov %2, %5, lsr #16\n" \ - " mov %0, %6, lsr #16\n" \ - " bic %3, %5, %2, lsl #16\n" \ -@@ -239,14 +242,26 @@ - "=r" ((USItype) (xl)), \ - "=&r" (__t0), "=&r" (__t1), "=r" (__t2) \ - : "r" ((USItype) (a)), \ -- "r" ((USItype) (b)) __CLOBBER_CC );} --#define UMUL_TIME 20 --#define UDIV_TIME 100 -+ "r" ((USItype) (b)) __CLOBBER_CC ); \ -+ } while (0) -+# define UMUL_TIME 20 -+# else -+# define umul_ppmm(xh, xl, a, b) \ -+ do { \ -+ /* Generate umull, under compiler control. */ \ -+ register UDItype __t0 = (UDItype)(USItype)(a) * (USItype)(b); \ -+ (xl) = (USItype)__t0; \ -+ (xh) = (USItype)(__t0 >> 32); \ -+ } while (0) -+# define UMUL_TIME 3 -+# endif -+# define UDIV_TIME 100 - #endif /* __arm__ */ - - #if defined(__arm__) - /* Let gcc decide how best to implement count_leading_zeros. */ - #define count_leading_zeros(COUNT,X) ((COUNT) = __builtin_clz (X)) -+#define count_trailing_zeros(COUNT,X) ((COUNT) = __builtin_ctz (X)) - #define COUNT_LEADING_ZEROS_0 32 - #endif - - |