openmp: Add basic library allocator support
Sebastian Huber
sebastian.huber@embedded-brains.de
Tue Jun 2 09:26:37 GMT 2020
Hello,
On 19/05/2020 10:24, Jakub Jelinek via Gcc-patches wrote:
> + gomp_mutex_lock (&allocator_data->lock);
> + if (__builtin_add_overflow (allocator_data->used_pool_size, new_size,
> + &used_pool_size)
> + || used_pool_size > allocator_data->pool_size)
> + {
> + gomp_mutex_unlock (&allocator_data->lock);
> + goto fail;
> + }
> + allocator_data->used_pool_size = used_pool_size;
> + gomp_mutex_unlock (&allocator_data->lock);
> +#endif
> + ptr = malloc (new_size);
> + if (ptr == NULL)
> + {
> +#ifdef HAVE_SYNC_BUILTINS
> + __atomic_add_fetch (&allocator_data->used_pool_size, -new_size,
> + MEMMODEL_RELAXED);
> +#else
> + gomp_mutex_lock (&allocator_data->lock);
> + allocator_data->used_pool_size -= new_size;
> + gomp_mutex_unlock (&allocator_data->lock);
> +#endif
with this patch I get the following error for target arm-rtems6:
../../../gnu-mirror-gcc-86b14bb/libgomp/allocator.c: In function 'omp_free':
../../../gnu-mirror-gcc-86b14bb/libgomp/allocator.c:351:42: error:
'struct omp_mem_header' has no member named 'new_size'
351 | allocator_data->used_pool_size -= data->new_size;
| ^~
More information about the Gcc-patches
mailing list