This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Google Summer of Code 2018: Call for mentors and ideas
- From: Joseph Myers <joseph at codesourcery dot com>
- To: Martin Jambor <mjambor at suse dot cz>
- Cc: <gcc at gcc dot gnu dot org>, Jakub Jelinek <jakub at redhat dot com>, Martin Liska <mliska at suse dot cz>, David Edelsohn <dje dot gcc at gmail dot com>
- Date: Wed, 17 Jan 2018 21:06:19 +0000
- Subject: Re: Google Summer of Code 2018: Call for mentors and ideas
- Authentication-results: sourceware.org; auth=none
- References: <ri6efmoxtek.fsf@suse.cz>
On Wed, 17 Jan 2018, Martin Jambor wrote:
> 3?) Joseph Myers brought up idea to do "built-in functions for TS 18661
> floating-point functions - which has the feature that there are a
> lot of similar built-in functions for C99/C11 functions to serve as
> a guide for how to implement things)" ...Joseph, would you be
> willing to mentor it?
Yes, provided at least one other mentor is available as well as I may not
be around all the time during the GSoC period, including one of the
evaluation periods.
(The outline I put on the wiki page is:
GCC supports built-in functions for math.h and complex.h functions in
the C99/C11 standards (both folding calls for constant arguments, and
expanding inline when the processor supports appropriate functionality).
More such functions have been added in ISO/IEC TS 18661, supporting
features of IEEE 754-2008. It would be useful to have built-in functions
for those, both folding for constant arguments, and expanding inline
where appropriate (e.g. for roundeven and the functions rounding result
to narrower type, on some processors; roundeven can be inlined on x86
for SSE4.1 and later, and the narrowing functions on IA64 and POWER8,
for example). Existing built-in functions would provide a guide for how
to do this.
This project has the feature that there are lots of smaller subprojects
each of which would be a useful enhancement to GCC, so a student could
start off with e.g. roundeven built-in functions, closely following how
existing code handles round / floor / ceil / trunc, before going on to
more complicated functions such as the narrowing ones or the fromfp
functions - with scope for functions from TS 18661-3 and TS 18661-4 if
they run out of useful functions from TS 18661-1. If a student were
interested I could provide more detailed lists of possible subprojects.)
--
Joseph S. Myers
joseph@codesourcery.com