https://gcc.gnu.org/g:c3f4dedfdadfe9b85a50ebd493428e72f111ac80
commit c3f4dedfdadfe9b85a50ebd493428e72f111ac80 Author: Thomas Schwinge <tschwi...@baylibre.com> Date: Wed Apr 16 16:52:08 2025 +0200 Remove 'ALWAYS_INLINE' workaround in 'libgomp.c++/target-exceptions-pr118794-1.C' With commit ca9cffe737d20953082333dacebb65d4261e0d0c "For nvptx offloading, make sure to emit C++ constructor, destructor aliases [PR97106]", we're able to remove the 'ALWAYS_INLINE' workaround added in commit fe283dba774be57b705a7a871b000d2894d2e553 "GCN, nvptx: Support '-mfake-exceptions', and use it for offloading compilation [PR118794]". libgomp/ * testsuite/libgomp.c++/target-exceptions-pr118794-1.C: Remove 'ALWAYS_INLINE' workaround. (cherry picked from commit 518efed8cb7d003cd85477060b1fe926a2d7a53b) Diff: --- libgomp/ChangeLog.omp | 6 ++++++ libgomp/testsuite/libgomp.c++/target-exceptions-pr118794-1.C | 6 ------ 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/libgomp/ChangeLog.omp b/libgomp/ChangeLog.omp index 0c3741fd0031..44cc3227bbda 100644 --- a/libgomp/ChangeLog.omp +++ b/libgomp/ChangeLog.omp @@ -3,6 +3,12 @@ Backported from trunk: 2025-04-16 Thomas Schwinge <tschwi...@baylibre.com> + * testsuite/libgomp.c++/target-exceptions-pr118794-1.C: Remove + 'ALWAYS_INLINE' workaround. + + Backported from trunk: + 2025-04-16 Thomas Schwinge <tschwi...@baylibre.com> + PR target/106445 * testsuite/libgomp.c++/pr106445-1.C: New. * testsuite/libgomp.c++/pr106445-1-O0.C: Likewise. diff --git a/libgomp/testsuite/libgomp.c++/target-exceptions-pr118794-1.C b/libgomp/testsuite/libgomp.c++/target-exceptions-pr118794-1.C index a73e7f897be7..24e3d076a1b1 100644 --- a/libgomp/testsuite/libgomp.c++/target-exceptions-pr118794-1.C +++ b/libgomp/testsuite/libgomp.c++/target-exceptions-pr118794-1.C @@ -9,10 +9,6 @@ /* See also '../../../gcc/testsuite/g++.target/gcn/exceptions-pr118794-1.C', '../../../gcc/testsuite/g++.target/nvptx/exceptions-pr118794-1.C'. */ -/* Help nvptx offloading overcome a code generation issue; - PR106445, PR118518. */ -#define ALWAYS_INLINE __attribute__((always_inline)) - #pragma omp begin declare target bool ok = false; @@ -20,12 +16,10 @@ bool ok = false; template <typename T> struct C { - ALWAYS_INLINE C() { ok = true; } - ALWAYS_INLINE C(int) {}; ~C() {};