> -----Original Message-----
> From: Petar Jovanovic [mailto:petar.jovano...@rt-rk.com]
> Sent: Friday, April 17, 2015 2:23 PM
> To: Petar Jovanovic
> Cc: Maciej W. Rozycki; Matthew Fortune; gcc-patches@gcc.gnu.org; Moore,
> Catherine
> Subject: RE: [PATCH v2][MIPS] fix CRT_CALL_STATIC_FUNCTION macro
>
> Resending the previous message in a plain text format.
>
> > -------- Original Message --------
> > Subject: RE: [PATCH v2][MIPS] fix CRT_CALL_STATIC_FUNCTION macro
> > Date: Thursday, April 16, 2015 10:38 PM CEST
> > From: "Moore, Catherine" <catherine_mo...@mentor.com>
> > To: "Maciej W. Rozycki" <ma...@linux-mips.org>, Petar
> > Jovanovic<petar.jovano...@rt-rk.com>
> > CC: 'Matthew Fortune' <matthew.fort...@imgtec.com>,
> > "gcc-patches@gcc.gnu.org"<gcc-patches@gcc.gnu.org>
> > References:
> > <003e01d04179$ccc38bc0$664aa340$@rt-
> rk.com><6D39441BF12EF246A7ABCE6654
> >
> b0235320fca...@lemail01.le.imgtec.org><000201d04723$f69b1350$e3d13
> 9f0$
> > @rt-rk.com><000501d07865$e26f2830$a74d7890$@rt-rk.com>
> > Hi Petar,
> > It looks like I answered a little too quickly the first time around. I'm
> > sorry.
> > In any case, Maciej is correct. I think a link-time test should do it.
> > Thanks,
> > Catherine
> >
> > > You'd need `objdump' for doing that and there is no ready-to-use
> > > solution within the GCC test suite available, you'd have to cook
> > > something up yourself, perhaps starting with `[find_binutils_prog
> objdump]'.
> > >
> > > Another solution might be using an auxiliary linker script (`-Wl,-T,...'
> > > or maybe just an implicit linker script will do; see the LD manual
> > > for
> > > details) to place the sections the jump is made between apart
> > > manually at addresses appropriate for JAL to fail. They span does
> > > not have to be large -- when placed correctly, even `JAL .' can jump
> > > to the wrong place, which is what LD is supposed to catch as a
> > > relocation error -- so a test executable successfully linked with
> > > your correction in place won't be large, it doesn't have to take more than
> 2 virtual pages.
> > >
> > > The downside of the latter solution are possible portability issues
> > > with the linker script. You won't have to run your executable AFAICT
> > > from glibc BZ
> > > #17601 as you'll get a link error if a jump target is out of range.
> > > So you could make it a mere link test, no need to run it.
> > >
> > > Maciej
> >
> >
>
> Hi Maciej, Catherine,
>
> This issue will not trigger a linker error (I believe it treats the symbol
> referred by the relocation as a local symbol). This is a follow up to GLIBC
> BZ
> #17601, the problem is seen only at runtime. So, I think this brings back the
> need to run the test. I can look into separating sections with -Wl,-T.. (that
> may also require extending mips_option_groups in mips/mips.exp), if
> running executable is OK.
>
Hi Petar,
Running the executable is fine, but didn't you say that your test case takes
hours to execute?
If so, that's not acceptable. Is it possible to construct a test case that
will run more quickly?
Thanks,
Catherine