PR tree-optimization/32383
authoruros <uros@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 18 Jun 2007 08:30:47 +0000 (08:30 +0000)
committeruros <uros@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 18 Jun 2007 08:30:47 +0000 (08:30 +0000)
commit2cd360b676114938f74bfae8da993a67a25c9929
treea70a489abddc4e7f99e532e8ae5b8057df6f9b21
parente9ffa5ca84e36ab04fd62d888f514159ea00834c
PR tree-optimization/32383
* targhooks.c (default_builtin_reciprocal): Add new bool argument.
* targhooks.h (default_builtin_reciprocal): Update prototype.
* target.h (struct gcc_target): Update builtin_reciprocal.
* doc/tm.texi (TARGET_BUILTIN_RECIPROCAL): Update description.
* tree-ssa-math-opts (execute_cse_reciprocals): Skip statements
where arg1 is not SSA_NAME.  Pass true to targetm.builtin_reciprocal
when fndecl is in BUILT_IN_MD class.
(execute_convert_to_rsqrt): Ditto.

* config/i386/i386.c (ix86_builtin_reciprocal): Update for new bool
argument.  Convert IX86_BUILTIN_SQRTPS code only when md_fn is true.
Convert BUILT_IN_SQRTF code only  when md_fn is false.

testsuite/ChangeLog:

PR tree-optimization/32383
* testsuite/g++.dg/opt/pr32383.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@125790 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/config/i386/i386.c
gcc/doc/tm.texi
gcc/target.h
gcc/targhooks.c
gcc/targhooks.h
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/opt/pr32383.C [new file with mode: 0644]
gcc/tree-ssa-math-opts.c