On 24/04/14 14:44, Ryan Mansfield wrote:
On 14-04-23 11:38 AM, Kyrill Tkachov wrote:
http://gcc.gnu.org/ml/gcc-patches/2014-03/msg00934.html
(http://gcc.gnu.org/ml/gcc-patches/2014-03/msg01634.html)
This patch breaks building arm-eabi with a 32bit host gcc.
Hi Ryan,
Does this patch fix it for you?
I'll test and bootstrap it on arm.
Kyrill
2014-04-24 Kyrylo Tkachov <kyrylo.tkac...@arm.com>
* config/arm/aarch-common.c (aarch_rev16_shright_mask_imm_p):
Use HOST_WIDE_INT_C for mask literal.
(aarch_rev16_shleft_mask_imm_p): Likewise.
e.g
../../gcc/config/arm/aarch-common.c
../../gcc/config/arm/aarch-common.c:198: error: integer constant is too
large for 'long' type
../../gcc/config/arm/aarch-common.c:205: error: integer constant is too
large for 'long' type
../../gcc/config/arm/t-arm:83: recipe for target 'aarch-common.o' failed
make[2]: *** [aarch-common.o] Error 1
Regards,
Ryan Mansfield
commit 83b40d14694e0c89f293f19071f006c11a54ad22
Author: Kyrylo Tkachov <kyrylo.tkac...@arm.com>
Date: Thu Apr 24 15:33:57 2014 +0100
[ARM] Use HOST_WIDE_INT_C
diff --git a/gcc/config/arm/aarch-common.c b/gcc/config/arm/aarch-common.c
index 884d4b3..d31191a 100644
--- a/gcc/config/arm/aarch-common.c
+++ b/gcc/config/arm/aarch-common.c
@@ -195,14 +195,18 @@ bool
aarch_rev16_shright_mask_imm_p (rtx val, enum machine_mode mode)
{
return CONST_INT_P (val)
- && INTVAL (val) == trunc_int_for_mode (0xff00ff00ff00ff, mode);
+ && INTVAL (val)
+ == trunc_int_for_mode (HOST_WIDE_INT_C (0xff00ff00ff00ff),
+ mode);
}
bool
aarch_rev16_shleft_mask_imm_p (rtx val, enum machine_mode mode)
{
return CONST_INT_P (val)
- && INTVAL (val) == trunc_int_for_mode (0xff00ff00ff00ff00, mode);
+ && INTVAL (val)
+ == trunc_int_for_mode (HOST_WIDE_INT_C (0xff00ff00ff00ff00),
+ mode);
}