From: Jan Hubicka <jh@suse.cz>
To: Jan Hubicka <jh@suse.cz>
Cc: Mark Mitchell <mark@codesourcery.com>,
gcc-patches@gcc.gnu.org, David Edelsohn <dje@watson.ibm.com>,
Zack Weinberg <zack@codesourcery.com>,
"gcc@gcc.gnu.org" <gcc@gcc.gnu.org>,
"libstdc++@gcc.gnu.org" <libstdc++@gcc.gnu.org>,
Richard Henderson <rth@redhat.com>
Subject: Re: Implicit generation of runtime calls
Date: Tue, 17 Dec 2002 14:51:00 -0000 [thread overview]
Message-ID: <20021217221817.GG7486@kam.mff.cuni.cz> (raw)
In-Reply-To: <20021217221411.GF7486@kam.mff.cuni.cz>
>
> Hi,
> this patch adds the infrastructure to determine whether the function call can
> be produced implicitly or not. I am doing that by new array of declarations
> implicit_built_in_decls that has entry nonzero just for those builtins that are
> safe.
> In future we may want to modify the declarations so the builtin expansion can
> behave differently for implicit calls as they do already for __builtin_XXX calls
> and XXX calls.
>
> DEF_BUILTIN now allows to declare whehter the function is available and I've
> categorized the functions according to C99 and C90 standards.
> I also added the TARGET_C99_FUNCTIONS defined to 1 by default and function
> to get the declaration in proper mode so conversions can be done easilly.
>
> Thats it. In the next step I would like to re-enable the transformation as
> next step once this part is polished. I would also like to turn
> TARGET_MEM_FUNCTIONS into this scheme. I intended to do this in one step but
> the patch is getting bigger than I would like it to be already.
>
> I will happily add -fno-c99-builtins switch to configure and manage it to
> control TARGET_C99_FUNCTIONS if someone will make me believe that this is good.
> I think this is static knowledge about the particular port and the problems
> with autoconfiguration being different in different contexts, so it will
> bring us problems in reproducing failures reported in cross envorinment
> and so on.
>
> I also don't think it makes sense to allow controlling each function
> individually. We already support about 10-20 such functions and the number of
> them will increase. I don't think runtimes are crazy enought to commonly
> support just arbitary subset of these, so this would just anoy. We can invent
> 1-2 new categories (perhaps there can be category for runtimes deifning sinf
> but not sinl or cabs if such exists)
>
> Bootstrapped/regtested mainline.
I also tested that it disables/enables the transformation as needed :)
In the followup I will add testcase to the testsuite so ports where
default is wrong will get caught and re-enable the transformation
Honza
next prev parent reply other threads:[~2002-12-17 22:18 UTC|newest]
Thread overview: 67+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-12-16 13:52 basic-improvements merge status David Edelsohn
2002-12-16 13:57 ` Zack Weinberg
2002-12-16 14:23 ` David Edelsohn
2002-12-16 14:27 ` Jan Hubicka
2002-12-16 14:47 ` Neil Booth
2002-12-16 15:10 ` Jan Hubicka
2002-12-17 0:50 ` Gabriel Dos Reis
2002-12-17 15:54 ` Richard Henderson
2002-12-17 16:14 ` Gabriel Dos Reis
2002-12-18 5:29 ` Jan Hubicka
2002-12-17 16:19 ` Matt Austern
2002-12-17 16:31 ` Phil Edwards
2002-12-16 21:32 ` Joseph S. Myers
2002-12-16 17:01 ` Mark Mitchell
2002-12-17 0:47 ` Gabriel Dos Reis
2002-12-17 0:54 ` Jan Hubicka
2002-12-17 1:19 ` Gabriel Dos Reis
2002-12-16 14:29 ` Jan Hubicka
2002-12-16 14:29 ` David Edelsohn
2002-12-16 14:35 ` Jan Hubicka
2002-12-17 0:55 ` Gabriel Dos Reis
2002-12-17 0:58 ` Jan Hubicka
2002-12-17 1:53 ` Gabriel Dos Reis
2002-12-17 4:16 ` Jan Hubicka
2002-12-17 4:29 ` Fergus Henderson
2002-12-17 8:39 ` Gabriel Dos Reis
2002-12-17 13:58 ` Jan Hubicka
2002-12-16 14:44 ` David Edelsohn
2002-12-16 14:45 ` Jan Hubicka
2002-12-16 14:52 ` David Edelsohn
2002-12-16 14:54 ` Jan Hubicka
2002-12-16 17:05 ` Mark Mitchell
2002-12-17 0:44 ` Jan Hubicka
2002-12-17 0:46 ` Mark Mitchell
2002-12-17 0:51 ` Jan Hubicka
2002-12-17 4:10 ` Joseph S. Myers
2002-12-17 7:06 ` Gabriel Dos Reis
2002-12-17 11:42 ` Joseph S. Myers
2002-12-17 9:43 ` Mark Mitchell
2002-12-17 14:06 ` Jan Hubicka
2002-12-17 14:18 ` Gabriel Dos Reis
2002-12-17 14:36 ` Implicit generation of runtime calls Jan Hubicka
2002-12-17 14:51 ` Jan Hubicka [this message]
2002-12-17 0:54 ` basic-improvements merge status Jan Hubicka
2002-12-17 3:24 ` Gabriel Dos Reis
2002-12-17 4:28 ` Hot to configure sinf? Jan Hubicka
2002-12-17 8:24 ` Gabriel Dos Reis
2002-12-17 1:51 ` basic-improvements merge status Gabriel Dos Reis
2002-12-17 21:31 ` Alexandre Oliva
2002-12-17 21:21 ` Alexandre Oliva
2002-12-18 5:44 ` Jan Hubicka
2002-12-17 1:16 ` Gabriel Dos Reis
2002-12-16 15:05 ` [libstdc++] " Jan Hubicka
2002-12-16 15:40 ` Dale Johannesen
2002-12-16 16:16 ` Jan Hubicka
2002-12-16 17:12 ` Dale Johannesen
2002-12-16 19:16 ` Fergus Henderson
2002-12-17 1:14 ` Gabriel Dos Reis
2002-12-17 3:48 ` Joseph S. Myers
2002-12-16 15:55 ` Benjamin Kosnik
2002-12-16 16:10 ` Jan Hubicka
2002-12-16 15:56 ` Andrew Pinski
2002-12-17 0:53 ` Gabriel Dos Reis
2002-12-17 0:56 ` Jan Hubicka
2002-12-17 1:22 ` Gabriel Dos Reis
2002-12-17 3:20 ` Gabriel Dos Reis
2002-12-17 2:12 ` Gabriel Dos Reis
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20021217221817.GG7486@kam.mff.cuni.cz \
--to=jh@suse.cz \
--cc=dje@watson.ibm.com \
--cc=gcc-patches@gcc.gnu.org \
--cc=gcc@gcc.gnu.org \
--cc=libstdc++@gcc.gnu.org \
--cc=mark@codesourcery.com \
--cc=rth@redhat.com \
--cc=zack@codesourcery.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).