... to not run into a SIGSEGV if a non-'malloc'-based allocation is 'free'd
here.
Fix-up for og12 commit
c5d1d7651297a273321154a5fe1b01eba9dcf604
"libgomp, nvptx: low-latency memory allocator".
libgomp/
* allocator.c (omp_realloc): Route 'free' through 'MEMSPACE_FREE'.
2023-02-16 Thomas Schwinge <thomas@codesourcery.com>
+ * allocator.c (omp_realloc): Route 'free' through 'MEMSPACE_FREE'.
+
* config/linux/allocator.c (linux_memspace_alloc)
(linux_memspace_calloc): Clarify zero-initialization for pinned
memory.
gomp_mutex_unlock (&free_allocator_data->lock);
#endif
}
- free (data->ptr);
+ {
+ omp_memspace_handle_t was_memspace __attribute__((unused))
+ = (free_allocator_data
+ ? free_allocator_data->memspace
+ : predefined_alloc_mapping[free_allocator]);
+ int was_pinned __attribute__((unused))
+ = (free_allocator_data
+ ? free_allocator_data->pinned
+ : free_allocator == ompx_pinned_mem_alloc);
+ MEMSPACE_FREE (was_memspace, data->ptr, data->size, was_pinned);
+ }
return ret;
fail: