]> git.ipfire.org Git - thirdparty/gcc.git/commit
libgomp.c++/target-std__multimap-concurrent.C: Fix USM memory freeing
authorTobias Burnus <tburnus@baylibre.com>
Wed, 5 Nov 2025 15:25:54 +0000 (16:25 +0100)
committerTobias Burnus <tburnus@baylibre.com>
Wed, 5 Nov 2025 15:25:54 +0000 (16:25 +0100)
commit90f2ab4b6e1463d8cb89c70585e19987a58f3de1
treead1c1282b1afa207c466268d0ebc64e05d79dd77
parent4983e9745edae3807243693e8865835b45f08c95
libgomp.c++/target-std__multimap-concurrent.C: Fix USM memory freeing

Fix the unified-shared memory test,
   libgomp.c++/target-std__multimap-concurrent-usm.C
added in commit r16-1010-g83ca283853f195
   libgomp: Add testcases for concurrent access to standard C++ containers
   on offload targets, a number of USM variants
This tests includes the actual code of target-std__multimap-concurrent.C.

The issue is that multimap.insert allocates memory – which is freed by
the destructor. However, if the memory is allocated on a device
('insert'), it also needs to be freed there ('clear') as in general
freeing device-allocated memory is not possible on the host.

libgomp/ChangeLog:

* testsuite/libgomp.c++/target-std__multimap-concurrent.C: Fix memory
freeing of device allocated memory with USM.
libgomp/testsuite/libgomp.c++/target-std__multimap-concurrent.C