Add check_effective_target_rdynamic and use it in g++.dg/lto/pr69589_0.C.
gcc/ * doc/sourcebuild.texi (Effective-Target Keywords, Other attributes): Document rdynamic. gcc/testsuite/ * g++.dg/lto/pr69589_0.C: Add dg-require-effective-target for rdynamic. Remove dg-skip-if for targets which don't support -rdynamic. * lib/target-supports.exp (check_effective_target_rdynamic): New proc. From-SVN: r246004
This commit is contained in:
parent
9125b9fc80
commit
1f1fd3e272
|
@ -1,3 +1,8 @@
|
||||||
|
2017-03-09 Toma Tabacu <toma.tabacu@imgtec.com>
|
||||||
|
|
||||||
|
* doc/sourcebuild.texi (Effective-Target Keywords, Other attributes):
|
||||||
|
Document rdynamic.
|
||||||
|
|
||||||
2017-03-09 Vladimir Makarov <vmakarov@redhat.com>
|
2017-03-09 Vladimir Makarov <vmakarov@redhat.com>
|
||||||
|
|
||||||
PR rtl-optimization/79949
|
PR rtl-optimization/79949
|
||||||
|
|
|
@ -2068,6 +2068,9 @@ Target supports @option{-mpe-aligned-commons}.
|
||||||
@item pie
|
@item pie
|
||||||
Target supports @option{-pie}, @option{-fpie} and @option{-fPIE}.
|
Target supports @option{-pie}, @option{-fpie} and @option{-fPIE}.
|
||||||
|
|
||||||
|
@item rdynamic
|
||||||
|
Target supports @option{-rdynamic}.
|
||||||
|
|
||||||
@item section_anchors
|
@item section_anchors
|
||||||
Target supports section anchors.
|
Target supports section anchors.
|
||||||
|
|
||||||
|
|
|
@ -1,3 +1,10 @@
|
||||||
|
2017-03-09 Toma Tabacu <toma.tabacu@imgtec.com>
|
||||||
|
|
||||||
|
* g++.dg/lto/pr69589_0.C: Add dg-require-effective-target for
|
||||||
|
rdynamic. Remove dg-skip-if for targets which don't support -rdynamic.
|
||||||
|
* lib/target-supports.exp (check_effective_target_rdynamic):
|
||||||
|
New proc.
|
||||||
|
|
||||||
2017-03-09 Richard Biener <rguenther@suse.de>
|
2017-03-09 Richard Biener <rguenther@suse.de>
|
||||||
|
|
||||||
PR middle-end/79971
|
PR middle-end/79971
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
// { dg-lto-do link }
|
// { dg-lto-do link }
|
||||||
// { dg-lto-options "-O2 -rdynamic" }
|
// { dg-lto-options "-O2 -rdynamic" }
|
||||||
// { dg-extra-ld-options "-r -nostdlib" }
|
// { dg-extra-ld-options "-r -nostdlib" }
|
||||||
// { dg-skip-if "Skip targets without -rdynamic support" { arm*-none-eabi aarch64*-*-elf nios2-*-elf } { "*" } { "" } }
|
// { dg-require-effective-target rdynamic }
|
||||||
|
|
||||||
#pragma GCC visibility push(hidden)
|
#pragma GCC visibility push(hidden)
|
||||||
struct A { int &operator[] (long); };
|
struct A { int &operator[] (long); };
|
||||||
|
|
|
@ -1489,6 +1489,14 @@ proc check_effective_target_static_libgfortran { } {
|
||||||
} "-static"]
|
} "-static"]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# Return 1 if we can use the -rdynamic option, 0 otherwise.
|
||||||
|
|
||||||
|
proc check_effective_target_rdynamic { } {
|
||||||
|
return [check_no_compiler_messages rdynamic executable {
|
||||||
|
int main() { return 0; }
|
||||||
|
} "-rdynamic"]
|
||||||
|
}
|
||||||
|
|
||||||
# Return 1 if cilk-plus is supported by the target, 0 otherwise.
|
# Return 1 if cilk-plus is supported by the target, 0 otherwise.
|
||||||
|
|
||||||
proc check_effective_target_cilkplus { } {
|
proc check_effective_target_cilkplus { } {
|
||||||
|
|
Loading…
Reference in New Issue