From: Ramana Radhakrishnan Date: Thu, 4 Jun 2009 14:59:12 +0000 (+0000) Subject: arm.c (thumb2_legitimate_index_p): Initialize val after checking for integers. X-Git-Tag: releases/gcc-4.5.0~5375 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=e07e020bbc7c6a0a103a21dccbfa69a110f3e819;p=thirdparty%2Fgcc.git arm.c (thumb2_legitimate_index_p): Initialize val after checking for integers. 2009-06-04 Ramana Radhakrishnan * config/arm/arm.c (thumb2_legitimate_index_p): Initialize val after checking for integers. From-SVN: r148170 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 84bf21958d0c..9c3de317f309 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2009-06-04 Ramana Radhakrishnan + + * config/arm/arm.c (thumb2_legitimate_index_p): Initialize + val after checking for integers. + 2009-06-04 Uros Bizjak * config/i386/i386.h (X86_64_MS_REGPARM_MAX): Rename from diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c index 141a4b846a61..1f5c3ae9e8d8 100644 --- a/gcc/config/arm/arm.c +++ b/gcc/config/arm/arm.c @@ -4266,15 +4266,17 @@ thumb2_legitimate_index_p (enum machine_mode mode, rtx index, int strict_p) if (mode == DImode || mode == DFmode) { - HOST_WIDE_INT val = INTVAL (index); - /* ??? Can we assume ldrd for thumb2? */ - /* Thumb-2 ldrd only has reg+const addressing modes. */ - if (code != CONST_INT) + if (code == CONST_INT) + { + HOST_WIDE_INT val = INTVAL (index); + /* ??? Can we assume ldrd for thumb2? */ + /* Thumb-2 ldrd only has reg+const addressing modes. */ + /* ldrd supports offsets of +-1020. + However the ldr fallback does not. */ + return val > -256 && val < 256 && (val & 3) == 0; + } + else return 0; - - /* ldrd supports offsets of +-1020. - However the ldr fallback does not. */ - return val > -256 && val < 256 && (val & 3) == 0; } if (code == MULT)