PATCH: Simplify x86 load/store builtin expand

H.J. Lu hjl.tools@gmail.com
Wed Apr 30 00:52:00 GMT 2008


On Tue, Apr 29, 2008 at 12:10 PM, Uros Bizjak <ubizjak@gmail.com> wrote:
> H.J. Lu wrote:
>
>
> >
> > >
> > > > Here is the updated patch. OK to install?
> > > >
> > > >
> > > >
> > >  For the moment, please leave builtins, defined explicitly with
> > > builtin_const () function where they are. I propose that const builtins
> only
> > > are converted in this patch, and non-const builtins to be handled in the
> > > last step, in a separate patch when all const builtins are converted.
> This
> > > way, they won't mix in any case.
> > >
> > >
> >
> > Did you mean I should break it into 2 patches:
> >
> > 1. Use an array loop on def_builtin_const.
> > 2. Use an array loop on def_builtin.
> >
> >
>
>  Yes, but ATM, only commit the first patch.
>
>

> > > >
> > >  The part above should be committed as a separate patch to avoid mixing
> > > const and non-const builtins. (Also, we should use some other name than
> > > "complex" for the reason described above).
> > >
> > >
> > >
> >
> > How about ix86_memory_builtin_type,  bdesc_memory_args
> > and ix86_expand_memory_args_builtin?
> >
> >
>  Hm, perhaps ..._pointer_...  instead of ..._memory_...?
>

I will use _pointer_ and submit a patch after all const builtin are converted.

>  Uros.
>
>

This is the patch I am checking in.

Thanks.


H.J.
---
2008-04-29  H.J. Lu  <hongjiu.lu@intel.com>

        * config/i386/i386.c (ix86_builtins): Replace Prescott New
        Instructions in comments with SSE3.
        (ix86_builtin_type): This.  Add FLOAT128_FTYPE_FLOAT128,
        INT64_FTYPE_V4SF, INT64_FTYPE_V2DF, INT_FTYPE_V16QI,
        INT_FTYPE_V8QI, INT_FTYPE_V4SF, INT_FTYPE_V2DF,
        V16QI_FTYPE_V16QI, V8HI_FTYPE_V8HI, V8HI_FTYPE_V16QI,
        V8QI_FTYPE_V8QI, V4SI_FTYPE_V4SI, V4SI_FTYPE_V16QI,
        V4SI_FTYPE_V4SF, V4SI_FTYPE_V8HI, V4SI_FTYPE_V2DF,
        V4HI_FTYPE_V4HI, V4SF_FTYPE_V4SF, V4SF_FTYPE_V4SI,
        V4SF_FTYPE_V2DF, V2DI_FTYPE_V2DI, V2DI_FTYPE_V16QI,
        V2DI_FTYPE_V8HI, V2DI_FTYPE_V4SI, V2DF_FTYPE_V2DF,
        V2DF_FTYPE_V4SI, V2DF_FTYPE_V4SF, V2DF_FTYPE_V2SI,
        V2SI_FTYPE_V2SI, V2SI_FTYPE_V4SF, V2SI_FTYPE_V2SF,
        V2SI_FTYPE_V2DF, V2SF_FTYPE_V2SF and V2SF_FTYPE_V2SI.
        (bdesc_sse_args): Renamed to ...
        (bdesc_args): This.  Add IX86_BUILTIN_PF2ID, IX86_BUILTIN_PFRCP,
        IX86_BUILTIN_PFRSQRT, IX86_BUILTIN_PI2FD, IX86_BUILTIN_PF2IW,
        IX86_BUILTIN_PSWAPDSI, IX86_BUILTIN_PSWAPDSF and
        IX86_BUILTIN_FABSQ.
        (bdesc_1arg): Moved to ...
        (bdesc_args): Here.
        (ix86_init_mmx_sse_builtins): Updated.  Replace Prescott New
        Instructions in comments with SSE3.
        (ix86_expand_sse_operands_builtin): Renamed to ...
        (ix86_expand_args_builtin): This.  Updated.
        (ix86_expand_unop1_builtin): Update comments.
        (ix86_expand_builtin): Updated.
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: expand-1.txt
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20080430/d3f64136/attachment.txt>


More information about the Gcc-patches mailing list