This is the mail archive of the
mailing list for the GCC project.
Re: libgomp support for RTEMS
- From: Sebastian Huber <sebastian dot huber at embedded-brains dot de>
- To: Jakub Jelinek <jakub at redhat dot com>
- Cc: GCC <gcc at gcc dot gnu dot org>
- Date: Fri, 30 Jan 2015 13:03:18 +0100
- Subject: Re: libgomp support for RTEMS
- Authentication-results: sourceware.org; auth=none
- References: <54CB6792 dot 6010907 at embedded-brains dot de> <20150130115023 dot GC1746 at tucnak dot redhat dot com>
On 30/01/15 12:50, Jakub Jelinek wrote:
On Fri, Jan 30, 2015 at 12:14:26PM +0100, Sebastian Huber wrote:
>I would like to add support for libgomp for the RTEMS operating system. I
>likely cannot use the standard Pthread API for this in some places since I
>have to account for RTEMS specifics related to partitioned/clustered
>scheduling and the priority based scheduler. If I implement for example
>functions like this
>void gomp_init_thread_affinity (pthread_attr_t *attr, unsigned int place)
>outside of the GCC provided libgomp (e.g. in the RTEMS sources) can I choose
>an arbitrary license for this or do I have to use the GPLv3 with the GCC
>Runtime Library Exception for it?
>Is it possible to add a gomp_free() to complement the gomp_malloc() etc.?
>This would enable the usage of a dedicated heap for OpenMP in RTEMS.
Why would you want to implement it outside of libgomp?
libgomp has a config/ tree, so just add config/rtems/ in there and implement
it in there.
RTEMS uses the same method for the thread model. It is easier to
maintain since I don't have to build and install a new compiler just to
change the libgomp support. The RTEMS API header file <rtems.h> is not
available during GCC build. I would like to make some parts application
configurable via function pointers (e.g. the heap functions). On RTEMS
we have a single address space for the operating system, support
libraries and the application. In the application we have parts of
different criticality and dynamic behaviour, so the management of
dynamic memory is highly application dependent. Some systems must run
months without a re-boot.
I would like to add a config/rtems and implement most of the stuff
inside the RTEMS source tree or let even the application provide the
Sebastian Huber, embedded brains GmbH
Address : Dornierstr. 4, D-82178 Puchheim, Germany
Phone : +49 89 189 47 41-16
Fax : +49 89 189 47 41-09
E-Mail : firstname.lastname@example.org
PGP : Public key available on request.
Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.