Hi Toma, > g++.dg/lto/pr69589_0.C is currently failing for mips-mti-elf with the > following error: > > xg++: error: unrecognized command line option '-rdynamic' > > However, it passes just fine for mips-mti-linux-gnu. > I think that we should skip this test for mips-mti-elf.
could it be that mips/sde.h is just missing -rdynamic handling in LINK_SPEC? At least some bare-metal targets using gld *do* support -rdynamic (cf. xtensa/elf.h and aarch64/aarch64-elf-raw.h)... That said, I like the general direction of this patch, even when the new keyword is only used in one place. > This patch achieves this by adding support for check_effective_target_rdynamic > and then using it in g++.dg/lto/pr69589_0.C. > > This patch also removes the existing dg-skip-if, as it is made redundant by > the > effective target check. The latter is also more convenient, as we won't have > to > keep tweaking the dg-skip-if for failing targets anymore. > > This is similar to my recent check_effective_target_gettimeofday patch, > which was greatly improved by Rainer Orth's review. > > Tested with mips-mti-elf and mips-mti-linux-gnu. > > Does this look good ? [...] > diff --git a/gcc/testsuite/lib/target-supports.exp > b/gcc/testsuite/lib/target-supports.exp > index 2766af4..f46f0ba 100644 > --- a/gcc/testsuite/lib/target-supports.exp > +++ b/gcc/testsuite/lib/target-supports.exp > @@ -1484,6 +1484,16 @@ proc check_effective_target_static_libgfortran { } { > } "-static"] > } > > +# Return 1 if we can use the -rdynamic option, 0 otherwise. > +# > +# When the target name changes, replace the cached result. I think this line isn't necessary. Just keep the first. Ok for mainline with that fixed. Thanks. Rainer -- ----------------------------------------------------------------------------- Rainer Orth, Center for Biotechnology, Bielefeld University