This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [Bug gcc/12279] Re: GCC 3.4-20030913 VAX lossage.


Matt Thomas <matt@3am-software.com> writes:

> > This patch fixes the VAX ICE.  It looks to me like the cfgcleanup.c
> > portion of this patch
> >
> > 2003-09-15  Ian Lance Taylor  <ian@wasabisystems.com>
> >
> > 	* cfgcleanup.c (label_is_jump_target_p): Correct use of table
> > 	returned by tablejump_p.
> 
> It helps but now the ICE has just moved down a few lines.
> 
> Program received signal SIGSEGV, Segmentation fault.
> 0x08307008 in label_is_jump_target_p (label=0x488a6988,
> jump_insn=0x488a7340)
>      at /u2/toolchain/gcc/gcc/cfgcleanup.c:669
> 669             if (XEXP (RTVEC_ELT (vec, i), 0) == label)
> (gdb) list
> 664           rtvec vec = XVEC (tmp,
> 665                  GET_CODE (PATTERN (tmp)) == ADDR_DIFF_VEC);
> 666           int i, veclen = GET_NUM_ELEM (vec);
> 667
> 668           for (i = 0; i < veclen; ++i)
> 669             if (XEXP (RTVEC_ELT (vec, i), 0) == label)
> 670               return true;
> 671         }
> 672
> 673       return false;
> (gdb) print i
> $1 = 0

How did you apply the patch?  The above is not right.  Line 664 should
be
      rtvec vec = XVEC (PATTERN (tmp),

Ian


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]