public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
* Handling of builtins
@ 2010-03-03  9:28 Paulo J. Matos
  2010-03-03 10:17 ` Richard Guenther
  0 siblings, 1 reply; 3+ messages in thread
From: Paulo J. Matos @ 2010-03-03  9:28 UTC (permalink / raw)
  To: gcc

Hello,

When handling builtin functions there's the fold_builtin and the
expand_builtin that can be defined. They seem to do their work at
different times but I am not exactly sure if they are alternatives or
complementary.

Can't find anywhere explaining their use besides what's found in the
internals document. Can anyone have a go at explaining when one or the
other should be used?

Cheers,

-- 
PMatos

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Handling of builtins
  2010-03-03  9:28 Handling of builtins Paulo J. Matos
@ 2010-03-03 10:17 ` Richard Guenther
  2010-03-05 14:26   ` Paulo J. Matos
  0 siblings, 1 reply; 3+ messages in thread
From: Richard Guenther @ 2010-03-03 10:17 UTC (permalink / raw)
  To: Paulo J. Matos; +Cc: gcc

On Wed, Mar 3, 2010 at 10:28 AM, Paulo J. Matos <pocmatos@gmail.com> wrote:
> Hello,
>
> When handling builtin functions there's the fold_builtin and the
> expand_builtin that can be defined. They seem to do their work at
> different times but I am not exactly sure if they are alternatives or
> complementary.
>
> Can't find anywhere explaining their use besides what's found in the
> internals document. Can anyone have a go at explaining when one or the
> other should be used?

They are complementary.  The fold_ variants are for simplifications
throughout tree passes while the expand_ variant translates
builtin calls to target-specific RTL (with falling back to libcalls).

Richard.

> Cheers,
>
> --
> PMatos
>

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Handling of builtins
  2010-03-03 10:17 ` Richard Guenther
@ 2010-03-05 14:26   ` Paulo J. Matos
  0 siblings, 0 replies; 3+ messages in thread
From: Paulo J. Matos @ 2010-03-05 14:26 UTC (permalink / raw)
  To: Richard Guenther; +Cc: gcc

On Wed, Mar 3, 2010 at 10:17 AM, Richard Guenther
<richard.guenther@gmail.com> wrote:
>
> They are complementary.  The fold_ variants are for simplifications
> throughout tree passes while the expand_ variant translates
> builtin calls to target-specific RTL (with falling back to libcalls).
>

Thanks Richard, that's exactly what I needed to know.

> Richard.
>
>> Cheers,
>>
>> --
>> PMatos
>>
>



-- 
PMatos

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2010-03-05 14:26 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-03-03  9:28 Handling of builtins Paulo J. Matos
2010-03-03 10:17 ` Richard Guenther
2010-03-05 14:26   ` Paulo J. Matos

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).