gcc/gcc ChangeLog reg-stack.c config/i386/i386 ...
sayle@gcc.gnu.org
sayle@gcc.gnu.org
Sun Jun 15 13:32:00 GMT 2003
CVSROOT: /cvs/gcc
Module name: gcc
Changes by: sayle@gcc.gnu.org 2003-06-15 13:32:32
Modified files:
gcc : ChangeLog reg-stack.c
gcc/config/i386: i386.md
gcc/testsuite : ChangeLog
gcc/testsuite/gcc.dg: i386-387-1.c i386-387-2.c
Added files:
gcc/testsuite/gcc.dg: builtins-22.c
Log message:
* config/i386/i386.md (expsf2, expdf2, expxf2): New patterns to
implement exp, expf and expl built-ins as inline x87 intrinsics.
(UNSPEC_FSCALE, UNSPEC_FRNDINT, UNSPEC_F2XM1): New unspecs to
represent x87's fscale, frndint and f2xm1 insns respectively.
(*fscale_sfxf3, *fscale_dfxf3, *fscale_xf3): New insn patterns
to encode x87's "fscale" instruction followed by a pop.
(*frndintxf2): New insn pattern for "frndint".
(*f2xm1xf2): New insn pattern for "f2xm1".
* reg-stack.c (subst_stack_regs_pat): Handle UNSPEC_FRNDINT and
UNSPEC_F2XM1 like UNSPEC_{SIN,COS} and handle UNSPEC_FSCALE like
UNSPEC_FPATAN.
* gcc.dg/builtins-22.c: New test case.
* gcc.dg/i386-387-1.c: Update to test exp.
* gcc.dg/i386-387-2.c: Likewise.
Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&r1=1.18226&r2=1.18227
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/reg-stack.c.diff?cvsroot=gcc&r1=1.127&r2=1.128
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/i386/i386.md.diff?cvsroot=gcc&r1=1.469&r2=1.470
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/ChangeLog.diff?cvsroot=gcc&r1=1.2768&r2=1.2769
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gcc.dg/builtins-22.c.diff?cvsroot=gcc&r1=NONE&r2=1.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gcc.dg/i386-387-1.c.diff?cvsroot=gcc&r1=1.5&r2=1.6
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gcc.dg/i386-387-2.c.diff?cvsroot=gcc&r1=1.4&r2=1.5
More information about the Gcc-cvs
mailing list