public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug tree-optimization/32383] [4.3 regression] ICE with reciprocals and -ffast-math
  2007-06-17 23:03 [Bug tree-optimization/32383] New: [4.3 regression] ICE with reciprocals and -ffast-math reichelt at gcc dot gnu dot org
@ 2007-06-17 23:03 ` reichelt at gcc dot gnu dot org
  2007-06-17 23:21 ` reichelt at gcc dot gnu dot org
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: reichelt at gcc dot gnu dot org @ 2007-06-17 23:03 UTC (permalink / raw)
  To: gcc-bugs



-- 

reichelt at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|---                         |4.3.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32383


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

* [Bug tree-optimization/32383]  New: [4.3 regression] ICE with reciprocals and -ffast-math
@ 2007-06-17 23:03 reichelt at gcc dot gnu dot org
  2007-06-17 23:03 ` [Bug tree-optimization/32383] " reichelt at gcc dot gnu dot org
                   ` (4 more replies)
  0 siblings, 5 replies; 6+ messages in thread
From: reichelt at gcc dot gnu dot org @ 2007-06-17 23:03 UTC (permalink / raw)
  To: gcc-bugs

The following code snippet triggers an ICE on mainline when compiled with
"g++ -O -ffast-math":

=====================================================
struct A
{
  ~A();
};

double& foo();

inline void bar (double d) { foo() /= d; }

void baz()
{
  A a;
  bar(2);
}
=====================================================

This is a very recent regression (not present in 4.3-20070607).

Uros, I'd guess your patch is responsible for the regression:

2007-06-16  Uros Bizjak

        PR middle-end/31723
        * hooks.c (hook_tree_tree_bool_null): New hook.
        * hooks.h (hook_tree_tree_bool_null): Add prototype.
        * tree-pass.h (pass_convert_to_rsqrt): Declare.
        * passes.c (init_optimization_passes): Add pass_convert_to_rsqrt.
        * tree-ssa-math-opts.c (execute_cse_reciprocals): Scan for a/func(b)
        and convert it to reciprocal a*rfunc(b).


-- 
           Summary: [4.3 regression] ICE with reciprocals and -ffast-math
           Product: gcc
           Version: 4.3.0
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code, monitored
          Severity: normal
          Priority: P3
         Component: tree-optimization
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: reichelt at gcc dot gnu dot org
OtherBugsDependingO 31723
             nThis:


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32383


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

* [Bug tree-optimization/32383] [4.3 regression] ICE with reciprocals and -ffast-math
  2007-06-17 23:03 [Bug tree-optimization/32383] New: [4.3 regression] ICE with reciprocals and -ffast-math reichelt at gcc dot gnu dot org
  2007-06-17 23:03 ` [Bug tree-optimization/32383] " reichelt at gcc dot gnu dot org
@ 2007-06-17 23:21 ` reichelt at gcc dot gnu dot org
  2007-06-18  6:41 ` ubizjak at gmail dot com
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: reichelt at gcc dot gnu dot org @ 2007-06-17 23:21 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #1 from reichelt at gcc dot gnu dot org  2007-06-17 23:21 -------
Btw., the error message is:

bug.cc: In function 'void baz()':
bug.cc:10: internal compiler error: tree check: expected ssa_name, have
real_cst in execute_cse_reciprocals, at tree-ssa-math-opts.c:510
Please submit a full bug report, [etc.]


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32383


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

* [Bug tree-optimization/32383] [4.3 regression] ICE with reciprocals and -ffast-math
  2007-06-17 23:03 [Bug tree-optimization/32383] New: [4.3 regression] ICE with reciprocals and -ffast-math reichelt at gcc dot gnu dot org
  2007-06-17 23:03 ` [Bug tree-optimization/32383] " reichelt at gcc dot gnu dot org
  2007-06-17 23:21 ` reichelt at gcc dot gnu dot org
@ 2007-06-18  6:41 ` ubizjak at gmail dot com
  2007-06-18  8:31 ` uros at gcc dot gnu dot org
  2007-06-18  8:33 ` ubizjak at gmail dot com
  4 siblings, 0 replies; 6+ messages in thread
From: ubizjak at gmail dot com @ 2007-06-18  6:41 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #2 from ubizjak at gmail dot com  2007-06-18 06:41 -------
Patch in testing.


-- 

ubizjak at gmail dot com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|unassigned at gcc dot gnu   |ubizjak at gmail dot com
                   |dot org                     |
             Status|UNCONFIRMED                 |ASSIGNED
     Ever Confirmed|0                           |1
   Last reconfirmed|0000-00-00 00:00:00         |2007-06-18 06:41:08
               date|                            |


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32383


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

* [Bug tree-optimization/32383] [4.3 regression] ICE with reciprocals and -ffast-math
  2007-06-17 23:03 [Bug tree-optimization/32383] New: [4.3 regression] ICE with reciprocals and -ffast-math reichelt at gcc dot gnu dot org
                   ` (2 preceding siblings ...)
  2007-06-18  6:41 ` ubizjak at gmail dot com
@ 2007-06-18  8:31 ` uros at gcc dot gnu dot org
  2007-06-18  8:33 ` ubizjak at gmail dot com
  4 siblings, 0 replies; 6+ messages in thread
From: uros at gcc dot gnu dot org @ 2007-06-18  8:31 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #3 from uros at gcc dot gnu dot org  2007-06-18 08:31 -------
Subject: Bug 32383

Author: uros
Date: Mon Jun 18 08:30:47 2007
New Revision: 125790

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=125790
Log:
        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.


Added:
    trunk/gcc/testsuite/g++.dg/opt/pr32383.C
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/config/i386/i386.c
    trunk/gcc/doc/tm.texi
    trunk/gcc/target.h
    trunk/gcc/targhooks.c
    trunk/gcc/targhooks.h
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/tree-ssa-math-opts.c


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32383


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

* [Bug tree-optimization/32383] [4.3 regression] ICE with reciprocals and -ffast-math
  2007-06-17 23:03 [Bug tree-optimization/32383] New: [4.3 regression] ICE with reciprocals and -ffast-math reichelt at gcc dot gnu dot org
                   ` (3 preceding siblings ...)
  2007-06-18  8:31 ` uros at gcc dot gnu dot org
@ 2007-06-18  8:33 ` ubizjak at gmail dot com
  4 siblings, 0 replies; 6+ messages in thread
From: ubizjak at gmail dot com @ 2007-06-18  8:33 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #4 from ubizjak at gmail dot com  2007-06-18 08:33 -------
Fixed.


-- 

ubizjak at gmail dot com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|                            |FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32383


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

end of thread, other threads:[~2007-06-18  8:33 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-06-17 23:03 [Bug tree-optimization/32383] New: [4.3 regression] ICE with reciprocals and -ffast-math reichelt at gcc dot gnu dot org
2007-06-17 23:03 ` [Bug tree-optimization/32383] " reichelt at gcc dot gnu dot org
2007-06-17 23:21 ` reichelt at gcc dot gnu dot org
2007-06-18  6:41 ` ubizjak at gmail dot com
2007-06-18  8:31 ` uros at gcc dot gnu dot org
2007-06-18  8:33 ` ubizjak at gmail dot com

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