This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [Committed][ARM][AArch64] Patches previously ok'd for stage1
- From: Kyrill Tkachov <kyrylo dot tkachov at arm dot com>
- To: Ryan Mansfield <rmansfield at qnx dot com>
- Cc: "gcc-patches at gcc dot gnu dot org" <gcc-patches at gcc dot gnu dot org>
- Date: Thu, 24 Apr 2014 17:12:22 +0100
- Subject: Re: [Committed][ARM][AArch64] Patches previously ok'd for stage1
- Authentication-results: sourceware.org; auth=none
- References: <5357DE5F dot 8000600 at arm dot com> <5359153E dot 2090508 at qnx dot com>
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.tkachov@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.tkachov@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);
}