[Bug target/50099] ICE: internal compiler error: in extract_insn, at recog.c:2113 while building lttng-ust

michael.hope at linaro dot org gcc-bugzilla@gcc.gnu.org
Mon Sep 5 00:06:00 GMT 2011


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50099

--- Comment #7 from Michael Hope <michael.hope at linaro dot org> 2011-09-05 00:05:23 UTC ---
arm_legitimate_index_p() seems to be wrong.  Near the end it has:

  /* For ARM v4 we may be doing a sign-extend operation during the
     load.  */
  if (arm_arch4)
    {
      if (mode == HImode
      || mode == HFmode
      || (outer == SIGN_EXTEND && mode == QImode))
    range = 256;
      else
    range = 4096;
    }
  else
    range = (mode == HImode || mode == HFmode) ? 4095 : 4096;

The final 4096 range is incorrect for ARM mode sign extends.  The arm_arch4
path looks good.



More information about the Gcc-bugs mailing list