This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: PATCH: Enable TFmode for x86
- From: Ian Lance Taylor <iant at google dot com>
- To: "H.J. Lu" <hjl dot tools at gmail dot com>
- Cc: "Joseph S. Myers" <joseph at codesourcery dot com>, Uros Bizjak <ubizjak at gmail dot com>, Ian Lance Taylor <ian at airs dot com>, GCC Patches <gcc-patches at gcc dot gnu dot org>
- Date: Wed, 02 Jul 2008 07:45:13 -0700
- Subject: Re: PATCH: Enable TFmode for x86
- References: <20080629191054.GA2797@lucon.org> <Pine.LNX.4.64.0806292008350.15026@digraph.polyomino.org.uk> <6dc9ffc80806291357w40e70638ie5e19fa799438cf5@mail.gmail.com> <Pine.LNX.4.64.0806292153200.17773@digraph.polyomino.org.uk> <20080630000955.GA26829@lucon.org> <5787cf470806300547p435c4ae7o84ad9c880a09761@mail.gmail.com> <20080630140746.GA1108@lucon.org> <486924EE.10706@gmail.com> <6dc9ffc80807011443k731bdff8h7b51cdb20c7e3dcf@mail.gmail.com> <Pine.LNX.4.64.0807012154050.5121@digraph.polyomino.org.uk> <20080702031402.GA4693@lucon.org>
"H.J. Lu" <hjl.tools@gmail.com> writes:
> gcc/
>
> 2008-07-01 H.J. Lu <hongjiu.lu@intel.com>
>
> PR target/36669
> * config/i386/libgcc-glibc.ver: New.
>
> * config/i386/libgcc-x86_64-glibc.ver: Removed.
>
> 2008-07-01 H.J. Lu <hongjiu.lu@intel.com>
>
> * config.gcc: Remove i386/t-fprules-softfp64 soft-fp/t-softfp
> from tmake_file from i[34567]86-*-darwin*, x86_64-*-darwin*,
> i[34567]86-*-linux*, x86_64-*-linux*. Add
> i386/t-fprules-softfp and soft-fp/t-softfp to tmake_file for
> i[34567]86-*-darwin*, x86_64-*-darwin*, i[34567]86-*-linux*,
> x86_64-*-linux*. Add i386/t-linux to tmake_file for
> i[34567]86-*-linux*, x86_64-*-linux*.
>
> * libgcc-std.ver: Add empty GCC_4.4.0.
>
> * mkmap-symver.awk: Support multiple versions per symbol.
>
> * config/libgcc-glibc.ver: Add %exclude.
>
> * config/i386/i386.c (ix86_init_builtins): Always define
> __builtin_fabsq and __builtin_copysignq with fallbacks.
> (ix86_expand_builtin): Emit normal call for __builtin_fabsq
> and __builtin_copysignq if SSE2 isn't available.
>
> * config/i386/linux.h (LIBGCC2_HAS_TF_MODE): Defined.
> (LIBGCC2_TF_CEXT): Likwise.
> (TF_SIZE): Likwise.
>
> * config/i386/linux64.h (LIBGCC2_HAS_TF_MODE): Defined as 1.
>
> * config/i386/sfp-machine.h: Moved to libgcc.
>
> * config/i386/sfp-machine.h: New.
> * config/i386/t-linux: Likwise.
>
> * config/i386/t-darwin: Remove softfp_wrap_start and
> softfp_wrap_end.
> * config/i386/t-darwin64: Likewise.
>
> * config/i386/t-fprules-softfp64: Renamed to ...
> * config/i386/t-fprules-softfp: This.
>
> * config/i386/t-linux64: Remove SHLIB_MAPFILES, softfp_wrap_start
> and softfp_wrap_end.
>
> libgcc/
>
> 2008-07-01 H.J. Lu <hongjiu.lu@intel.com>
>
> PR target/36669
> * shared-object.mk ($(base)_s$(objext)): Add -DSHARED.
>
> * config/i386/64/_divtc3-compat.c: New.
> * config/i386/64/_multc3-compat.c: Likewise.
> * config/i386/64/_powitf2-compat.c: Likewise.
> * config/i386/64/eqtf2.c: Likewise.
> * config/i386/64/getf2.c: Likewise.
> * config/i386/64/letf2.c: Likewise.
> * config/i386/64/t-fprules-softfp: Likewise.
>
> 2008-07-01 H.J. Lu <hongjiu.lu@intel.com>
>
> * config.host: Add i386/${host_address}/t-fprules-softfp to
> tmake_file for i[34567]86-*-darwin*, x86_64-*-darwin*,
> i[34567]86-*-linux*, x86_64-*-linux*.
>
> * configure.ac: Set host_address to 64 or 32 for x86.
> * configure: Regenerated.
>
> * Makefile.in (config.status): Also depend on
> $(srcdir)/config.host.
>
> * config/i386/32/t-fprules-softfp: New.
> * config/i386/32/tf-signs.c: Likewise.
>
> * config/i386/64/sfp-machine.h: New. Moved from gcc.
>
> 2008-07-01 H.J. Lu <hongjiu.lu@intel.com>
> Uros Bizjak <ubizjak@gmail.com>
>
> * config/i386/32/sfp-machine.h: New.
> +%ifdef __x86_64__
> +GCC_3.0 {
> + __gttf2
> + __lttf2
> + __netf2
> +}
> +
> +GCC_4.0.0 {
> + __divtc3
> + __multc3
> + __powitf2
> +}
Please add some comments explaining why we are doing this.
This is OK with that change.
Thanks.
Ian