[Bug rtl-optimization/33638] [4.3 regression]: wrong code with -fforce-addr

2007-10-10 Thread ebotcazou at gcc dot gnu dot org
--- Comment #24 from ebotcazou at gcc dot gnu dot org 2007-10-11 05:33 --- Subject: Bug 33638 Author: ebotcazou Date: Thu Oct 11 05:33:04 2007 New Revision: 129226 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=129226 Log: PR rtl-optimization/33638 * dse.c (stru

[Bug rtl-optimization/33638] [4.3 regression]: wrong code with -fforce-addr

2007-10-08 Thread Kenneth dot Zadeck at NaturalBridge dot com
--- Comment #23 from Kenneth dot Zadeck at NaturalBridge dot com 2007-10-08 12:35 --- Subject: Re: [4.3 regression]: wrong code with -fforce-addr Your (a) solution would only paper over the problem: dse assumes that it can see all of the loads and stores off of the frame in more plac

[Bug rtl-optimization/33638] [4.3 regression]: wrong code with -fforce-addr

2007-10-08 Thread ubizjak at gmail dot com
--- Comment #22 from ubizjak at gmail dot com 2007-10-08 12:15 --- Patch at http://gcc.gnu.org/ml/gcc-patches/2007-10/msg00420.html -- ubizjak at gmail dot com changed: What|Removed |Added ---

[Bug rtl-optimization/33638] [4.3 regression]: wrong code with -fforce-addr

2007-10-08 Thread ubizjak at gmail dot com
--- Comment #21 from ubizjak at gmail dot com 2007-10-08 08:56 --- The problem is, that we don't have correct REG_DEP_TRUE expr of the call to powf after we have pushed ebp+const into temp register. I'm testing following patch to explow.c: Index: explow.c ==

[Bug rtl-optimization/33638] [4.3 regression]: wrong code with -fforce-addr

2007-10-06 Thread zadeck at naturalbridge dot com
--- Comment #20 from zadeck at naturalbridge dot com 2007-10-06 21:20 --- Subject: Re: [4.3 regression]: wrong code with -fforce-addr ubizjak at gmail dot com wrote: > --- Comment #19 from ubizjak at gmail dot com 2007-10-06 19:58 --- > In dse.c, scan_insn(), we have: > >

[Bug rtl-optimization/33638] [4.3 regression]: wrong code with -fforce-addr

2007-10-06 Thread ubizjak at gmail dot com
--- Comment #19 from ubizjak at gmail dot com 2007-10-06 19:58 --- In dse.c, scan_insn(), we have: if ((GET_CODE (PATTERN (insn)) == CLOBBER) || volatile_refs_p (PATTERN (insn)) || (flag_non_call_exceptions && may_trap_p (PATTERN (insn))) || (RTX_FRAME_RELATED_P (ins

[Bug rtl-optimization/33638] [4.3 regression]: wrong code with -fforce-addr

2007-10-06 Thread zadeck at naturalbridge dot com
--- Comment #18 from zadeck at naturalbridge dot com 2007-10-06 13:07 --- Subject: Re: [4.3 regression]: wrong code with -fforce-addr ubizjak at gmail dot com wrote: > --- Comment #16 from ubizjak at gmail dot com 2007-10-06 06:49 --- > (In reply to comment #14) > >> The

[Bug rtl-optimization/33638] [4.3 regression]: wrong code with -fforce-addr

2007-10-06 Thread zadeck at naturalbridge dot com
--- Comment #17 from zadeck at naturalbridge dot com 2007-10-06 12:27 --- Subject: Re: [4.3 regression]: wrong code with -fforce-addr ubizjak at gmail dot com wrote: > --- Comment #16 from ubizjak at gmail dot com 2007-10-06 06:49 --- > (In reply to comment #14) > >> The

[Bug rtl-optimization/33638] [4.3 regression]: wrong code with -fforce-addr

2007-10-05 Thread ubizjak at gmail dot com
--- Comment #16 from ubizjak at gmail dot com 2007-10-06 06:49 --- (In reply to comment #14) > The testcase works for me, that is, it produces the expected output good.out. Uh, you have to un-comment the line 315 of the comunpack.f test. The testcase, as attached, produces good code. Un

[Bug rtl-optimization/33638] [4.3 regression]: wrong code with -fforce-addr

2007-10-05 Thread zadeck at naturalbridge dot com
--- Comment #15 from zadeck at naturalbridge dot com 2007-10-05 20:17 --- Subject: Re: [4.3 regression]: wrong code with -fforce-addr kargl at gcc dot gnu dot org wrote: > --- Comment #13 from kargl at gcc dot gnu dot org 2007-10-05 17:50 > --- > (In reply to comment #9) >

[Bug rtl-optimization/33638] [4.3 regression]: wrong code with -fforce-addr

2007-10-05 Thread rguenth at gcc dot gnu dot org
--- Comment #14 from rguenth at gcc dot gnu dot org 2007-10-05 20:16 --- The testcase works for me, that is, it produces the expected output good.out. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33638

[Bug rtl-optimization/33638] [4.3 regression]: wrong code with -fforce-addr

2007-10-05 Thread kargl at gcc dot gnu dot org
--- Comment #13 from kargl at gcc dot gnu dot org 2007-10-05 17:50 --- (In reply to comment #9) > > Hope this helps. > Sure, I've got the problem. The problem is actually in RTL optimization, where > dse1 pass removes wrong insn. > > Suprisingly, the problem is in line 61 of comunpack.f

[Bug rtl-optimization/33638] [4.3 regression]: wrong code with -fforce-addr

2007-10-05 Thread zadeck at naturalbridge dot com
--- Comment #12 from zadeck at naturalbridge dot com 2007-10-05 13:02 --- Subject: Re: [4.3 regression]: wrong code with -fforce-addr rguenth at gcc dot gnu dot org wrote: > --- Comment #11 from rguenth at gcc dot gnu dot org 2007-10-05 12:36 > --- > But powf is pure/const,

[Bug rtl-optimization/33638] [4.3 regression]: wrong code with -fforce-addr

2007-10-05 Thread rguenth at gcc dot gnu dot org
--- Comment #11 from rguenth at gcc dot gnu dot org 2007-10-05 12:36 --- But powf is pure/const, so the call is not a use. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33638

[Bug rtl-optimization/33638] [4.3 regression]: wrong code with -fforce-addr

2007-10-05 Thread zadeck at naturalbridge dot com
-- zadeck at naturalbridge dot com changed: What|Removed |Added AssignedTo|unassigned at gcc dot gnu |zadeck at naturalbridge dot |dot org

[Bug rtl-optimization/33638] [4.3 regression]: wrong code with -fforce-addr

2007-10-05 Thread ubizjak at gmail dot com
--- Comment #10 from ubizjak at gmail dot com 2007-10-05 11:40 --- (In reply to comment #9) > This is wrong. dse1 pass should _not_ remove (insn 1312). (insn 1322) is > storing to the same address as (insn 1312), but we have a call to powf in > between, so new store insn doesn't kill pr

[Bug rtl-optimization/33638] [4.3 regression]: wrong code with -fforce-addr

2007-10-05 Thread ubizjak at gmail dot com
--- Comment #9 from ubizjak at gmail dot com 2007-10-05 10:47 --- > Hope this helps. Sure, I've got the problem. The problem is actually in RTL optimization, where dse1 pass removes wrong insn. Suprisingly, the problem is in line 61 of comunpack.f: --> bscale = 2.0**real(idrstmpl(2))