public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug tree-optimization/29738] New: Missed constant propagation into loops
@ 2006-11-06 11:01 rguenth at gcc dot gnu dot org
2006-11-06 11:48 ` [Bug tree-optimization/29738] " sebastian dot pop at cri dot ensmp dot fr
` (14 more replies)
0 siblings, 15 replies; 17+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2006-11-06 11:01 UTC (permalink / raw)
To: gcc-bugs
For the following testcase
int i;
void foo (void);
void bar (void)
{
int j;
i = 0;
for (j = 0; j < 10000; j++)
if (i)
foo ();
}
we cannot see that foo is never called and so the loop is empty. The problem
is that i is part of the loop evolution and so appears in a PHI node so we
cannot figure out i is zero:
<bb 2>:
# i_3 = V_MUST_DEF <i_2>;
i = 0;
# NONLOCAL.6_19 = PHI <NONLOCAL.6_9(5), NONLOCAL.6_11(2)>;
# i_18 = PHI <i_7(5), i_3(2)>;
# j_17 = PHI <j_6(5), 0(2)>;
<L0>:;
# VUSE <i_18>;
i.0_5 = i;
if (i.0_5 != 0) goto <L1>; else goto <L2>;
<L1>:;
# i_12 = V_MAY_DEF <i_18>;
# NONLOCAL.6_13 = V_MAY_DEF <NONLOCAL.6_19>;
foo ();
# NONLOCAL.6_9 = PHI <NONLOCAL.6_19(3), NONLOCAL.6_13(4)>;
# i_7 = PHI <i_18(3), i_12(4)>;
<L2>:;
j_6 = j_17 + 1;
if (j_6 <= 9999) goto <L0>; else goto <L4>;
I have no idea what optimization could catch this, though ;)
--
Summary: Missed constant propagation into loops
Product: gcc
Version: 4.3.0
Status: UNCONFIRMED
Keywords: missed-optimization
Severity: normal
Priority: P3
Component: tree-optimization
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: rguenth at gcc dot gnu dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29738
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug tree-optimization/29738] Missed constant propagation into loops
2006-11-06 11:01 [Bug tree-optimization/29738] New: Missed constant propagation into loops rguenth at gcc dot gnu dot org
@ 2006-11-06 11:48 ` sebastian dot pop at cri dot ensmp dot fr
2006-11-06 11:51 ` rakdver at gcc dot gnu dot org
` (13 subsequent siblings)
14 siblings, 0 replies; 17+ messages in thread
From: sebastian dot pop at cri dot ensmp dot fr @ 2006-11-06 11:48 UTC (permalink / raw)
To: gcc-bugs
------- Comment #1 from sebastian dot pop at cri dot ensmp dot fr 2006-11-06 11:48 -------
Subject: Re: Missed constant propagation into loops
I think the problem is that "i" is a global variable and thus foo is
potentially
considered as modifying "i". Have you tried
void foo (void);
void bar (void)
{
int i, j;
i = 0;
for (j = 0; j < 10000; j++)
if (i)
foo ();
}
This should be a simpler case that either is correctly simplified or I know
what to do for making it work.
For the original problem, why don't we propagate constants in
# i_3 = V_MUST_DEF <i_2>;
i = 0;
# NONLOCAL.6_19 = PHI <NONLOCAL.6_9(5), NONLOCAL.6_11(2)>;
# i_18 = PHI <i_7(5), i_3(2)>;
i.e. replacing the use of i_3 with just the constant 0?
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29738
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug tree-optimization/29738] Missed constant propagation into loops
2006-11-06 11:01 [Bug tree-optimization/29738] New: Missed constant propagation into loops rguenth at gcc dot gnu dot org
2006-11-06 11:48 ` [Bug tree-optimization/29738] " sebastian dot pop at cri dot ensmp dot fr
@ 2006-11-06 11:51 ` rakdver at gcc dot gnu dot org
2006-11-06 12:04 ` rguenther at suse dot de
` (12 subsequent siblings)
14 siblings, 0 replies; 17+ messages in thread
From: rakdver at gcc dot gnu dot org @ 2006-11-06 11:51 UTC (permalink / raw)
To: gcc-bugs
------- Comment #2 from rakdver at gcc dot gnu dot org 2006-11-06 11:51 -------
> Have you tried
>
> void foo (void);
> void bar (void)
> {
> int i, j;
> i = 0;
> for (j = 0; j < 10000; j++)
> if (i)
> foo ();
> }
This would work, obviously.
> For the original problem, why don't we propagate constants in
>
> # i_3 = V_MUST_DEF <i_2>;
> i = 0;
>
> # NONLOCAL.6_19 = PHI <NONLOCAL.6_9(5), NONLOCAL.6_11(2)>;
> # i_18 = PHI <i_7(5), i_3(2)>;
>
> i.e. replacing the use of i_3 with just the constant 0?
Because i is a virtual operand, not real one.
CCP could probably be taught to handle this case, I will check how difficult
that would be.
--
rakdver at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
AssignedTo|unassigned at gcc dot gnu |rakdver at gcc dot gnu dot
|dot org |org
Status|UNCONFIRMED |ASSIGNED
Ever Confirmed|0 |1
Last reconfirmed|0000-00-00 00:00:00 |2006-11-06 11:51:38
date| |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29738
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug tree-optimization/29738] Missed constant propagation into loops
2006-11-06 11:01 [Bug tree-optimization/29738] New: Missed constant propagation into loops rguenth at gcc dot gnu dot org
2006-11-06 11:48 ` [Bug tree-optimization/29738] " sebastian dot pop at cri dot ensmp dot fr
2006-11-06 11:51 ` rakdver at gcc dot gnu dot org
@ 2006-11-06 12:04 ` rguenther at suse dot de
2006-11-06 12:07 ` rguenth at gcc dot gnu dot org
` (11 subsequent siblings)
14 siblings, 0 replies; 17+ messages in thread
From: rguenther at suse dot de @ 2006-11-06 12:04 UTC (permalink / raw)
To: gcc-bugs
------- Comment #3 from rguenther at suse dot de 2006-11-06 12:04 -------
Subject: Re: Missed constant propagation into
loops
On Mon, 6 Nov 2006, rakdver at gcc dot gnu dot org wrote:
>
>
> ------- Comment #2 from rakdver at gcc dot gnu dot org 2006-11-06 11:51 -------
> > Have you tried
> >
> > void foo (void);
> > void bar (void)
> > {
> > int i, j;
> > i = 0;
> > for (j = 0; j < 10000; j++)
> > if (i)
> > foo ();
> > }
>
> This would work, obviously.
>
> > For the original problem, why don't we propagate constants in
> >
> > # i_3 = V_MUST_DEF <i_2>;
> > i = 0;
> >
> > # NONLOCAL.6_19 = PHI <NONLOCAL.6_9(5), NONLOCAL.6_11(2)>;
> > # i_18 = PHI <i_7(5), i_3(2)>;
> >
> > i.e. replacing the use of i_3 with just the constant 0?
>
> Because i is a virtual operand, not real one.
But that doesn't help that i is loop-carried and so we don't
propagate it to the if () stmt - we use i_18 there. Or am I missing
something?
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29738
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug tree-optimization/29738] Missed constant propagation into loops
2006-11-06 11:01 [Bug tree-optimization/29738] New: Missed constant propagation into loops rguenth at gcc dot gnu dot org
` (2 preceding siblings ...)
2006-11-06 12:04 ` rguenther at suse dot de
@ 2006-11-06 12:07 ` rguenth at gcc dot gnu dot org
2006-11-06 12:08 ` rakdver at atrey dot karlin dot mff dot cuni dot cz
` (10 subsequent siblings)
14 siblings, 0 replies; 17+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2006-11-06 12:07 UTC (permalink / raw)
To: gcc-bugs
------- Comment #4 from rguenth at gcc dot gnu dot org 2006-11-06 12:07 -------
Btw, store_ccp should catch the propagation to the PHI node, but somehow it
doesn't.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29738
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug tree-optimization/29738] Missed constant propagation into loops
2006-11-06 11:01 [Bug tree-optimization/29738] New: Missed constant propagation into loops rguenth at gcc dot gnu dot org
` (3 preceding siblings ...)
2006-11-06 12:07 ` rguenth at gcc dot gnu dot org
@ 2006-11-06 12:08 ` rakdver at atrey dot karlin dot mff dot cuni dot cz
2006-11-06 12:18 ` rguenth at gcc dot gnu dot org
` (9 subsequent siblings)
14 siblings, 0 replies; 17+ messages in thread
From: rakdver at atrey dot karlin dot mff dot cuni dot cz @ 2006-11-06 12:08 UTC (permalink / raw)
To: gcc-bugs
------- Comment #5 from rakdver at atrey dot karlin dot mff dot cuni dot cz 2006-11-06 12:08 -------
Subject: Re: Missed constant propagation into loops
> > ------- Comment #2 from rakdver at gcc dot gnu dot org 2006-11-06 11:51 -------
> > > Have you tried
> > >
> > > void foo (void);
> > > void bar (void)
> > > {
> > > int i, j;
> > > i = 0;
> > > for (j = 0; j < 10000; j++)
> > > if (i)
> > > foo ();
> > > }
> >
> > This would work, obviously.
> >
> > > For the original problem, why don't we propagate constants in
> > >
> > > # i_3 = V_MUST_DEF <i_2>;
> > > i = 0;
> > >
> > > # NONLOCAL.6_19 = PHI <NONLOCAL.6_9(5), NONLOCAL.6_11(2)>;
> > > # i_18 = PHI <i_7(5), i_3(2)>;
> > >
> > > i.e. replacing the use of i_3 with just the constant 0?
> >
> > Because i is a virtual operand, not real one.
>
> But that doesn't help that i is loop-carried and so we don't
> propagate it to the if () stmt - we use i_18 there. Or am I missing
> something?
ccp can handle this for real operands.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29738
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug tree-optimization/29738] Missed constant propagation into loops
2006-11-06 11:01 [Bug tree-optimization/29738] New: Missed constant propagation into loops rguenth at gcc dot gnu dot org
` (4 preceding siblings ...)
2006-11-06 12:08 ` rakdver at atrey dot karlin dot mff dot cuni dot cz
@ 2006-11-06 12:18 ` rguenth at gcc dot gnu dot org
2006-11-06 12:33 ` rakdver at atrey dot karlin dot mff dot cuni dot cz
` (8 subsequent siblings)
14 siblings, 0 replies; 17+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2006-11-06 12:18 UTC (permalink / raw)
To: gcc-bugs
------- Comment #6 from rguenth at gcc dot gnu dot org 2006-11-06 12:18 -------
But obviously for real operands, foo () won't clobber them. I.e. the following
also could be optimized but is not:
void foo (int *);
void bar (void)
{
int j;
int i;
i = 0;
for (j = 0; j < 10000; j++)
if (i)
foo (&i);
}
foo () will be never executed, so the clobbering of i is not "executed",
so we don't need i as PHI arg/result for the loop. This is what I'm looking
for as optimization.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29738
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug tree-optimization/29738] Missed constant propagation into loops
2006-11-06 11:01 [Bug tree-optimization/29738] New: Missed constant propagation into loops rguenth at gcc dot gnu dot org
` (5 preceding siblings ...)
2006-11-06 12:18 ` rguenth at gcc dot gnu dot org
@ 2006-11-06 12:33 ` rakdver at atrey dot karlin dot mff dot cuni dot cz
2006-11-06 12:38 ` rguenther at suse dot de
` (7 subsequent siblings)
14 siblings, 0 replies; 17+ messages in thread
From: rakdver at atrey dot karlin dot mff dot cuni dot cz @ 2006-11-06 12:33 UTC (permalink / raw)
To: gcc-bugs
------- Comment #7 from rakdver at atrey dot karlin dot mff dot cuni dot cz 2006-11-06 12:33 -------
Subject: Re: Missed constant propagation into loops
> But obviously for real operands, foo () won't clobber them. I.e. the following
> also could be optimized but is not:
>
> void foo (int *);
> void bar (void)
> {
> int j;
> int i;
> i = 0;
> for (j = 0; j < 10000; j++)
> if (i)
> foo (&i);
> }
>
> foo () will be never executed, so the clobbering of i is not "executed",
> so we don't need i as PHI arg/result for the loop. This is what I'm looking
> for as optimization.
now you have lost me, I have no idea what you are trying to tell. What
I mean is that this is exactly the same case like
void bar (void)
{
int j;
int i;
i = 0;
for (j = 0; j < 10000; j++)
if (i)
i = 1;
}
Except that in the testcase for the PR, "i" is not a real operand.
Since we already have some support for virtual operands in ccp, it
should not be too difficult to make it handle this case as well.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29738
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug tree-optimization/29738] Missed constant propagation into loops
2006-11-06 11:01 [Bug tree-optimization/29738] New: Missed constant propagation into loops rguenth at gcc dot gnu dot org
` (6 preceding siblings ...)
2006-11-06 12:33 ` rakdver at atrey dot karlin dot mff dot cuni dot cz
@ 2006-11-06 12:38 ` rguenther at suse dot de
2006-11-07 10:55 ` rakdver at gcc dot gnu dot org
` (6 subsequent siblings)
14 siblings, 0 replies; 17+ messages in thread
From: rguenther at suse dot de @ 2006-11-06 12:38 UTC (permalink / raw)
To: gcc-bugs
------- Comment #8 from rguenther at suse dot de 2006-11-06 12:37 -------
Subject: Re: Missed constant propagation into
loops
On Mon, 6 Nov 2006, rakdver at atrey dot karlin dot mff dot cuni dot cz wrote:
>
>
> ------- Comment #7 from rakdver at atrey dot karlin dot mff dot cuni dot cz 2006-11-06 12:33 -------
> Subject: Re: Missed constant propagation into loops
>
> > But obviously for real operands, foo () won't clobber them. I.e. the following
> > also could be optimized but is not:
> >
> > void foo (int *);
> > void bar (void)
> > {
> > int j;
> > int i;
> > i = 0;
> > for (j = 0; j < 10000; j++)
> > if (i)
> > foo (&i);
> > }
> >
> > foo () will be never executed, so the clobbering of i is not "executed",
> > so we don't need i as PHI arg/result for the loop. This is what I'm looking
> > for as optimization.
>
> now you have lost me, I have no idea what you are trying to tell. What
> I mean is that this is exactly the same case like
>
> void bar (void)
> {
> int j;
> int i;
> i = 0;
> for (j = 0; j < 10000; j++)
> if (i)
> i = 1;
> }
>
> Except that in the testcase for the PR, "i" is not a real operand.
> Since we already have some support for virtual operands in ccp, it
> should not be too difficult to make it handle this case as well.
Ah, I see. You are of course completely right. Now the question is,
why does store_ccp not handle it? (Maybe it is as dis-functional as
store_copyprop was until I fixed it?)
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29738
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug tree-optimization/29738] Missed constant propagation into loops
2006-11-06 11:01 [Bug tree-optimization/29738] New: Missed constant propagation into loops rguenth at gcc dot gnu dot org
` (7 preceding siblings ...)
2006-11-06 12:38 ` rguenther at suse dot de
@ 2006-11-07 10:55 ` rakdver at gcc dot gnu dot org
2006-11-09 0:10 ` rakdver at gcc dot gnu dot org
` (5 subsequent siblings)
14 siblings, 0 replies; 17+ messages in thread
From: rakdver at gcc dot gnu dot org @ 2006-11-07 10:55 UTC (permalink / raw)
To: gcc-bugs
------- Comment #9 from rakdver at gcc dot gnu dot org 2006-11-07 10:55 -------
> Ah, I see. You are of course completely right. Now the question is,
> why does store_ccp not handle it? (Maybe it is as dis-functional as
> store_copyprop was until I fixed it?)
I ended up rewriting large parts of store_ccp, so this indeed might be the case
(I am testing the patch now).
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29738
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug tree-optimization/29738] Missed constant propagation into loops
2006-11-06 11:01 [Bug tree-optimization/29738] New: Missed constant propagation into loops rguenth at gcc dot gnu dot org
` (8 preceding siblings ...)
2006-11-07 10:55 ` rakdver at gcc dot gnu dot org
@ 2006-11-09 0:10 ` rakdver at gcc dot gnu dot org
2006-11-11 12:54 ` rguenth at gcc dot gnu dot org
` (4 subsequent siblings)
14 siblings, 0 replies; 17+ messages in thread
From: rakdver at gcc dot gnu dot org @ 2006-11-09 0:10 UTC (permalink / raw)
To: gcc-bugs
------- Comment #10 from rakdver at gcc dot gnu dot org 2006-11-09 00:09 -------
Subject: Bug 29738
Author: rakdver
Date: Thu Nov 9 00:09:43 2006
New Revision: 118602
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=118602
Log:
PR tree-optimization/29738
* tree-ssa-ccp.c: Remove UNKNOWN_VAL from comments.
(ccp_lattice_t): Remove UNKNOWN_VAL.
(dump_lattice_value, ccp_lattice_meet, ccp_visit_phi_node):
Do not handle UNKNOWN_VAL.
(get_default_value): Set initial value of virtual operands to
VARYING.
(get_value): Always use get_default_value on uninitialized
operands.
(set_value_varying, surely_varying_stmt_p): New functions.
(set_lattice_value): Do not pass argument to get_value.
Do not handle UNKNOWN_VAL.
(likely_value): Follow the semantics described in the comment.
(ccp_initialize): Use surely_varying_stmt_p. Do not mark
phi nodes DONT_SIMULATE_AGAIN.
(ccp_fold): Do not pass argument to get_value.
(fold_const_aggregate_ref, visit_assignment): Ditto. Do not
handle UNKNOWN_VAL.
* gcc.dg/tree-ssa/ssa-ccp-14.c: New test.
* gcc.dg/tree-ssa/ssa-ccp-15.c: New test.
Added:
trunk/gcc/testsuite/gcc.dg/tree-ssa/ssa-ccp-14.c
trunk/gcc/testsuite/gcc.dg/tree-ssa/ssa-ccp-15.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/testsuite/ChangeLog
trunk/gcc/tree-ssa-ccp.c
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29738
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug tree-optimization/29738] Missed constant propagation into loops
2006-11-06 11:01 [Bug tree-optimization/29738] New: Missed constant propagation into loops rguenth at gcc dot gnu dot org
` (9 preceding siblings ...)
2006-11-09 0:10 ` rakdver at gcc dot gnu dot org
@ 2006-11-11 12:54 ` rguenth at gcc dot gnu dot org
2006-12-01 0:38 ` chaoyingfu at gcc dot gnu dot org
` (3 subsequent siblings)
14 siblings, 0 replies; 17+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2006-11-11 12:54 UTC (permalink / raw)
To: gcc-bugs
------- Comment #11 from rguenth at gcc dot gnu dot org 2006-11-11 12:54 -------
Fixed on the mainline.
--
rguenth at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|ASSIGNED |RESOLVED
Resolution| |FIXED
Target Milestone|--- |4.3.0
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29738
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug tree-optimization/29738] Missed constant propagation into loops
2006-11-06 11:01 [Bug tree-optimization/29738] New: Missed constant propagation into loops rguenth at gcc dot gnu dot org
` (10 preceding siblings ...)
2006-11-11 12:54 ` rguenth at gcc dot gnu dot org
@ 2006-12-01 0:38 ` chaoyingfu at gcc dot gnu dot org
2008-08-19 15:03 ` rguenth at gcc dot gnu dot org
` (2 subsequent siblings)
14 siblings, 0 replies; 17+ messages in thread
From: chaoyingfu at gcc dot gnu dot org @ 2006-12-01 0:38 UTC (permalink / raw)
To: gcc-bugs
------- Comment #12 from chaoyingfu at gcc dot gnu dot org 2006-12-01 00:35 -------
Subject: Bug 29738
Author: chaoyingfu
Date: Fri Dec 1 00:32:38 2006
New Revision: 119391
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=119391
Log:
Merged revisions 118545-118650 via svnmerge from
svn+ssh://chaoyingfu@sources.redhat.com/svn/gcc/trunk
........
r118545 | burnus | 2006-11-07 05:27:53 -0800 (Tue, 07 Nov 2006) | 29 lines
fortran/
2006-11-06 Tobias Burnus <burnus@net-b.de>
PR fortran/29601
* symbol.c (check_conflict, gfc_add_volatile): Add volatile support.
* decl.c (match_attr_spec, gfc_match_volatile): Add volatile support.
* gfortran.h (symbol_attribute): Add volatile_ to struct.
* resolve.c (was_declared): Add volatile support.
* trans-decl.c (gfc_finish_var_decl): Add volatile support.
* match.h: Declare gfc_match_volatile.
* parse.c (decode_statement): Recognize volatile.
* modules.c (ab_attribute, attr_bits, mio_symbol_attribute):
Add volatile support.
* dump-parse-tree.c (gfc_show_attr): Add volatile support.
testsuite/
2006-11-06 Tobias Burnus <burnus@net-b.de>
PR fortran/29601
* gfortran.dg/volatile.f90: Add.
* gfortran.dg/volatile2.f90: Add.
* gfortran.dg/volatile3.f90: Add.
* gfortran.dg/volatile4.f90: Add.
* gfortran.dg/volatile5.f90: Add.
* gfortran.dg/volatile6.f90: Add.
* gfortran.dg/volatile7.f90: Add.
........
r118546 | davidu | 2006-11-07 06:08:55 -0800 (Tue, 07 Nov 2006) | 3 lines
* config/mips/mips.h (ISA_HAS_PREFETCHX): Add ISA_MIPS32R2 to the
list.
........
r118547 | jiez | 2006-11-07 06:24:58 -0800 (Tue, 07 Nov 2006) | 3 lines
* gcc.c (process_command): Treat -b as normal switch if its argument
has no dash.
........
r118550 | davidu | 2006-11-07 06:28:08 -0800 (Tue, 07 Nov 2006) | 5 lines
* config/mips/mips.c (mips_rtx_cost_optimize_size): New table of
costs when optimizing for size.
(override_options): Use mips_rtx_cost_optimize_size table for cost
calculations.
........
r118552 | jules | 2006-11-07 07:16:07 -0800 (Tue, 07 Nov 2006) | 6 lines
* floatformat.c (get_field): Fix segfault with little-endian word
order on 64-bit hosts.
(put_field): Likewise.
(min): Move definition.
........
r118553 | pault | 2006-11-07 07:17:17 -0800 (Tue, 07 Nov 2006) | 17 lines
2006-11-07 Paul Thomas <pault@gcc.gnu.org>
PR fortran/29539
PR fortran/29634
* decl.c (variable_decl): Add test for presence of proc_name.
* error.c (gfc_error_flag_test): New function.
* gfortran.h : Prototype for gfc_error_flag_test.
2006-11-07 Paul Thomas <pault@gcc.gnu.org>
PR fortran/29539
* gfortran.dg/gfortran.dg/blockdata_3.f90: New test.
PR fortran/29634
* gfortran.dg/gfortran.dg/derived_function_interface_1.f90: New
test.
........
r118554 | bkoz | 2006-11-07 08:55:49 -0800 (Tue, 07 Nov 2006) | 49 lines
2006-11-07 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/pb_ds/exception.hpp (pb_ds): Modify for -fno-exceptions.
(__throw_container_error): New. Conditionalize based on __EXCEPTIONS.
(__throw_insert_error): New.
(__throw_join_error): New.
(__throw_resize_error): New.
* include/ext/pb_ds/detail/resize_policy/
hash_prime_size_policy_imp.hpp: Use them.
* include/ext/pb_ds/detail/resize_policy/
hash_exponential_size_policy_imp.hpp: Same.
* include/ext/pb_ds/detail/resize_policy/
hash_load_check_resize_trigger_imp.hpp: Same.
* include/ext/pb_ds/detail/resize_policy/
hash_standard_resize_policy_imp.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp
* include/ext/pb_ds/detail/cc_hash_table_map_/
constructor_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp
* include/ext/pb_ds/detail/pat_trie_/split_join_branch_bag.hpp
* include/ext/pb_ds/detail/pat_trie_/
constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/bin_search_tree_/
constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/bin_search_tree_/
split_join_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
insert_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
resize_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
insert_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
constructor_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
resize_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/
constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/
constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/list_update_map_/
constructor_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/exception.hpp: Same.
* src/functexcept.cc: Qualify abort with std.
........
r118555 | rguenth | 2006-11-07 09:29:34 -0800 (Tue, 07 Nov 2006) | 8 lines
2006-11-07 Richard Guenther <rguenther@suse.de>
PR tree-optimization/29610
* tree-cfgcleanup.c (cleanup_control_flow): Honor return value
of tree_purge_dead_eh_edges as it may free dominators.
* g++.dg/other/pr29610.C: New testcase.
........
r118558 | rguenth | 2006-11-07 09:34:40 -0800 (Tue, 07 Nov 2006) | 6 lines
2006-11-07 Richard Guenther <rguenther@suse.de>
* inclhack.def (glibc_c99_inline_2): Adjust for glibc 2.3
systems.
* fixincl.x: Regenerate.
........
r118559 | jconner | 2006-11-07 09:40:13 -0800 (Tue, 07 Nov 2006) | 6 lines
2006-11-07 Josh Conner <jconner@apple.com>
* doc/invoke.texi (fstrict-aliasing): Move implementation
details...
* doc/tree-ssa.texi (Alias analysis): ...here.
........
r118562 | rsandifo | 2006-11-07 10:05:52 -0800 (Tue, 07 Nov 2006) | 3 lines
gcc/
* config/mips/mips.h (ISA_HAS_PREFETCHX): Fix typo.
........
r118563 | aesok | 2006-11-07 10:33:57 -0800 (Tue, 07 Nov 2006) | 7 lines
* config/avr/avr-protos.h (mask_one_bit_p, const_int_pow2_p): Remove
prototype.
* config/avr/avr.c (mask_one_bit_p, const_int_pow2_p): Remove.
(output_movhi, ashlhi3_out, ashlsi3_out, ashrhi3_out, ashrsi3_out,
lshrhi3_out, lshrsi3_out): Remove unnecessary code for handling value
which start in an odd register.
........
r118564 | bkoz | 2006-11-07 10:36:32 -0800 (Tue, 07 Nov 2006) | 15 lines
2006-11-07 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/29722
* include/ext/concurrence.h (concurrence_lock_error): New.
(concurrence_unlock_error): New.
(__throw_concurrence_lock_error): New.
(__throw_concurrence_unlock_error): New.
(__mutex): Use functions.
(__recursive_mutex): Same.
* testsuite/abi/cxx_runtime_only_linkage.cc: New.
* include/ext/pb_ds/exception.hpp: Keep exception classes defined
even when -fno-exceptions is passed, consistent with other usage.
........
r118565 | sje | 2006-11-07 11:14:27 -0800 (Tue, 07 Nov 2006) | 6 lines
PR other/25028
* config/ia64/t-hpux (LIB1ASMFUNCS): Filter out _fixtfdi,
_fixunstfdi, and _floatditf
* gcc.dg/torture/fp-int-convert-float128-timode.c: Do not XFAIL
on HP-UX.
........
r118567 | jakub | 2006-11-07 15:01:23 -0800 (Tue, 07 Nov 2006) | 8 lines
* c-common.c (c_common_attributes): Add gnu_inline attribyte.
(handle_gnu_inline_attribute): New function.
* c-decl.c (diagnose_mismatched_decls): Handle gnu_inline attribute.
(merge_decls, start_decl, start_function): Likewise.
* doc/extend.texi: Document gnu_inline attribute.
* gcc.dg/inline-17.c: New test.
........
r118568 | ghazi | 2006-11-07 15:40:54 -0800 (Tue, 07 Nov 2006) | 5 lines
* configure.in: Robustify error message for missing GMP/MPFR.
* configure: Regenerate.
........
r118573 | gccadmin | 2006-11-07 16:17:57 -0800 (Tue, 07 Nov 2006) | 1 line
Daily bump.
........
r118576 | echristo | 2006-11-07 18:24:26 -0800 (Tue, 07 Nov 2006) | 13 lines
2006-11-07 Eric Christopher <echristo@apple.com>
* libgcc2.c (__bswapdi2): Rename from bswapDI2.
(__bswapsi2): Ditto.
* libgcc2.h: Remove transformation of bswap routines.
* config/i386/i386.md (bswapsi2): New.
(bswapdi2): Ditto.
2006-11-07 Eric Christopher <echristo@apple.com>
* gcc.target/i386/builtin-bswap-1.c: Rewrite for 64-bit.
Test using scan-assembler-not.
........
r118577 | dorit | 2006-11-07 23:32:44 -0800 (Tue, 07 Nov 2006) | 175 lines
2006-11-08 Dorit Nuzman <dorit@il.ibm.com>
* tree-vect-analyze.c (vect_mark_relevant, vect_stmt_relevant_p):
Take
enum argument instead of bool.
(vect_analyze_operations): Call vectorizable_type_promotion.
* tree-vectorizer.h (type_promotion_vec_info_type): New enum
stmt_vec_info_type value.
(supportable_widening_operation, vectorizable_type_promotion): New
function declarations.
* tree-vect-transform.c (vect_gen_widened_results_half): New
function.
(vectorizable_type_promotion): New function.
(vect_transform_stmt): Call vectorizable_type_promotion.
* tree-vect-analyze.c (supportable_widening_operation): New function.
* tree-vect-patterns.c (vect_recog_dot_prod_pattern):
Add implementation.
* tree-vect-generic.c (expand_vector_operations_1): Consider correct
mode.
* tree.def (VEC_WIDEN_MULT_HI_EXPR, VEC_WIDEN_MULT_LO_EXPR):
(VEC_UNPACK_HI_EXPR, VEC_UNPACK_LO_EXPR): New tree-codes.
* tree-inline.c (estimate_num_insns_1): Add cases for above new
tree-codes.
* tree-pretty-print.c (dump_generic_node, op_prio): Likewise.
* expr.c (expand_expr_real_1): Likewise.
* optabs.c (optab_for_tree_code): Likewise.
(init_optabs): Initialize new optabs.
* genopinit.c (vec_widen_umult_hi_optab, vec_widen_smult_hi_optab,
vec_widen_smult_hi_optab, vec_widen_smult_lo_optab,
vec_unpacks_hi_optab, vec_unpacks_lo_optab, vec_unpacku_hi_optab,
vec_unpacku_lo_optab): Initialize new optabs.
* optabs.h (OTI_vec_widen_umult_hi, OTI_vec_widen_umult_lo):
(OTI_vec_widen_smult_h, OTI_vec_widen_smult_lo, OTI_vec_unpacks_hi,
OTI_vec_unpacks_lo, OTI_vec_unpacku_hi, OTI_vec_unpacku_lo): New
optab indices.
(vec_widen_umult_hi_optab, vec_widen_umult_lo_optab):
(vec_widen_smult_hi_optab, vec_widen_smult_lo_optab):
(vec_unpacks_hi_optab, vec_unpacku_hi_optab, vec_unpacks_lo_optab):
(vec_unpacku_lo_optab): New optabs.
* doc/md.texi (vec_unpacks_hi, vec_unpacks_lo, vec_unpacku_hi):
(vec_unpacku_lo, vec_widen_umult_hi, vec_widen_umult_lo):
(vec_widen_smult_hi, vec_widen_smult_lo): New.
* doc/c-tree.texi (VEC_LSHIFT_EXPR, VEC_RSHIFT_EXPR):
(VEC_WIDEN_MULT_HI_EXPR, VEC_WIDEN_MULT_LO_EXPR, VEC_UNPACK_HI_EXPR):
(VEC_UNPACK_LO_EXPR, VEC_PACK_MOD_EXPR, VEC_PACK_SAT_EXPR): New.
* config/rs6000/altivec.md (UNSPEC_VMULWHUB, UNSPEC_VMULWLUB):
(UNSPEC_VMULWHSB, UNSPEC_VMULWLSB, UNSPEC_VMULWHUH, UNSPEC_VMULWLUH):
(UNSPEC_VMULWHSH, UNSPEC_VMULWLSH): New.
(UNSPEC_VPERMSI, UNSPEC_VPERMHI): New.
(vec_vperm_v8hiv4si, vec_vperm_v16qiv8hi): New patterns used to
implement the unsigned unpacking patterns.
(vec_unpacks_hi_v16qi, vec_unpacks_hi_v8hi, vec_unpacks_lo_v16qi):
(vec_unpacks_lo_v8hi): New signed unpacking patterns.
(vec_unpacku_hi_v16qi, vec_unpacku_hi_v8hi, vec_unpacku_lo_v16qi):
(vec_unpacku_lo_v8hi): New unsigned unpacking patterns.
(vec_widen_umult_hi_v16qi, vec_widen_umult_lo_v16qi):
(vec_widen_smult_hi_v16qi, vec_widen_smult_lo_v16qi):
(vec_widen_umult_hi_v8hi, vec_widen_umult_lo_v8hi):
(vec_widen_smult_hi_v8hi, vec_widen_smult_lo_v8hi): New widening
multiplication patterns.
* target.h (builtin_mul_widen_even, builtin_mul_widen_odd): New.
* target-def.h (TARGET_VECTORIZE_BUILTIN_MUL_WIDEN_EVEN):
(TARGET_VECTORIZE_BUILTIN_MUL_WIDEN_ODD): New.
* config/rs6000/rs6000.c (rs6000_builtin_mul_widen_even): New.
(rs6000_builtin_mul_widen_odd): New.
(TARGET_VECTORIZE_BUILTIN_MUL_WIDEN_EVEN): Defined.
(TARGET_VECTORIZE_BUILTIN_MUL_WIDEN_ODD): Defined.
* tree-vectorizer.h (enum vect_relevant): New enum type.
(_stmt_vec_info): Field relevant chaned from bool to enum
vect_relevant.
(STMT_VINFO_RELEVANT_P): Updated.
(STMT_VINFO_RELEVANT): New.
* tree-vectorizer.c (new_stmt_vec_info): Use STMT_VINFO_RELEVANT
instead of STMT_VINFO_RELEVANT_P.
* tree-vect-analyze.c (vect_mark_relevant, vect_stmt_relevant_p):
Replace calls to STMT_VINFO_RELEVANT_P with STMT_VINFO_RELEVANT,
and boolean variable with enum vect_relevant.
(vect_mark_stmts_to_be_vectorized): Likewise + update documentation.
* doc/tm.texi (TARGET_VECTORIZE_BUILTIN_MUL_WIDEN_EVEN): New.
(TARGET_VECTORIZE_BUILTIN_MUL_WIDEN_ODD): New.
2006-11-08 Richard Henderson <rth@redhat.com>
* config/i386/sse.md (vec_widen_umult_hi_v8hi,
vec_widen_umult_lo_v8hi): New.
(vec_widen_smult_hi_v4si, vec_widen_smult_lo_v4si,
vec_widen_umult_hi_v4si, vec_widen_umult_lo_v4si): New.
* config/i386/i386.c (ix86_expand_sse_unpack): New.
* config/i386/i386-protos.h (ix86_expand_sse_unpack): New.
* config/i386/sse.md (vec_unpacku_hi_v16qi, vec_unpacks_hi_v16qi,
vec_unpacku_lo_v16qi, vec_unpacks_lo_v16qi, vec_unpacku_hi_v8hi,
vec_unpacks_hi_v8hi, vec_unpacku_lo_v8hi, vec_unpacks_lo_v8hi,
vec_unpacku_hi_v4si, vec_unpacks_hi_v4si, vec_unpacku_lo_v4si,
vec_unpacks_lo_v4si): New.
2006-11-08 Dorit Nuzman <dorit@il.ibm.com>
* tree-vect-transform.c (vectorizable_type_demotion): New function.
(vect_transform_stmt): Add case for type_demotion_vec_info_type.
(vect_analyze_operations): Call vectorizable_type_demotion.
* tree-vectorizer.h (type_demotion_vec_info_type): New enum
stmt_vec_info_type value.
(vectorizable_type_demotion): New function declaration.
* tree-vect-generic.c (expand_vector_operations_1): Consider correct
mode.
* tree.def (VEC_PACK_MOD_EXPR, VEC_PACK_SAT_EXPR): New tree-codes.
* expr.c (expand_expr_real_1): Add case for VEC_PACK_MOD_EXPR and
VEC_PACK_SAT_EXPR.
* tree-iniline.c (estimate_num_insns_1): Likewise.
* tree-pretty-print.c (dump_generic_node, op_prio): Likewise.
* optabs.c (optab_for_tree_code): Likewise.
* optabs.c (expand_binop): In case of vec_pack_*_optabs the mode
compared against the predicate of the result is not 'mode' (the input
to the function) but a mode with half the size of 'mode'.
(init_optab): Initialize new optabs.
* optabs.h (OTI_vec_pack_mod, OTI_vec_pack_ssat, OTI_vec_pack_usat):
New optab indices.
(vec_pack_mod_optab, vec_pack_ssat_optab, vec_pack_usat_optab): New
optabs.
* genopinit.c (vec_pack_mod_optab, vec_pack_ssat_optab):
(vec_pack_usat_optab): Initialize new optabs.
* doc/md.texi (vec_pack_mod, vec_pack_ssat, vec_pack_usat): New.
* config/rs6000/altivec.md (vec_pack_mod_v8hi, vec_pack_mod_v4si):
New.
2006-11-08 Richard Henderson <rth@redehat.com>
* config/i386/sse.md (vec_pack_mod_v8hi, vec_pack_mod_v4si):
(vec_pack_mod_v2di, vec_interleave_highv16qi,
vec_interleave_lowv16qi):
(vec_interleave_highv8hi, vec_interleave_lowv8hi):
(vec_interleave_highv4si, vec_interleave_lowv4si):
(vec_interleave_highv2di, vec_interleave_lowv2di): New.
2006-11-08 Dorit Nuzman <dorit@il.ibm.com>
* tree-vect-transform.c (vectorizable_reduction): Support multiple
datatypes.
(vect_transform_stmt): Removed redundant code.
2006-11-08 Dorit Nuzman <dorit@il.ibm.com>
* tree-vect-transform.c (vectorizable_operation): Support multiple
datatypes.
2006-11-08 Dorit Nuzman <dorit@il.ibm.com>
* tree-vect-transform.c (vect_align_data_ref): Removed.
(vect_create_data_ref_ptr): Added additional argument - ptr_incr.
Updated function documentation. Return the increment stmt in
ptr_incr.
(bump_vector_ptr): New function.
(vect_get_vec_def_for_stmt_copy): New function.
(vect_finish_stmt_generation): Create a stmt_info to newly created
vector stmts.
(vect_setup_realignment): Call vect_create_data_ref_ptr with
additional
argument.
(vectorizable_reduction, vectorizable_assignment): Not supported yet
if
VF is greater than the number of elements that can fit in one vector
word.
(vectorizable_operation, vectorizable_condition): Likewise.
(vectorizable_store, vectorizable_load): Support the case that the VF
is greater than the number of elements that can fit in one vector
word.
(vect_transform_loop): Don't fail in case of multiple data-types.
* tree-vect-analyze.c (vect_determine_vectorization_factor): Don't
fail
in case of multiple data-types; the smallest type determines the VF.
(vect_analyze_data_ref_dependence): Don't record datarefs as
same_align
if they are of different sizes.
(vect_update_misalignment_for_peel): Compare misalignments in terms
of
number of elements rather than number of bytes.
(vect_enhance_data_refs_alignment): Fix/Add dump printouts.
(vect_can_advance_ivs_p): Fix a dump printout
........
r118578 | burnus | 2006-11-08 01:23:53 -0800 (Wed, 08 Nov 2006) | 7 lines
2006-11-08 Tobias Burnus <burnus@net-b.de>
* gfortran.texi: Add volatile and internal-file
namelist to Fortran 2003 status.
* intrinsic.texi: Correct CHMOD entry.
........
r118588 | carlos | 2006-11-08 08:52:05 -0800 (Wed, 08 Nov 2006) | 9 lines
gcc/
2006-11-08 Carlos O'Donell <carlos@codesourcery.com>
* configure.ac: Do not set PREFIX_INCLUDE_DIR if $prefix is NONE.
* configure: Regenerate.
........
r118593 | sayle | 2006-11-08 09:39:35 -0800 (Wed, 08 Nov 2006) | 11 lines
* tree-ssa-propagate.c (set_rhs): Restructure validity tests as a
test for inclusion rather than as a test for exclusion.
* tree-ssa-ccp.c (fold_stmt_r) <COND_EXPR>: Use set_rhs to modify
the condition after calling fold_binary.
* fold-const.c (fold_inf_compare): Remove in_gimple_form check.
(fold_binary) <LT_EXPR, GT_EXPR, LE_EXPR, GE_EXPR>: Likewise.
* builtins.c (fold_builtin_isascii): Likewise.
(fold_builtin_isdigit): Likewise.
........
r118595 | vprus | 2006-11-08 10:16:27 -0800 (Wed, 08 Nov 2006) | 7 lines
2006-11-08 Vladimir Prus <vladimir@codesourcery.com>
* pex-win32.c (no_suffixes): Remove.
(std_suffixes): Add "" as first element.
(find_executable): Remove detection of already-present
extension. Try all suffixes in std_suffixes.
........
r118597 | pinskia | 2006-11-08 11:50:49 -0800 (Wed, 08 Nov 2006) | 8 lines
2006-11-08 Andrew Pinski <Andrew_Pinski@playstation.sony.com>
* tree-pretty-print.c (dump_generic_node) <INTEGER_CST>: Use
HOST_WIDE_INT_PRINT_DOUBLE_HEX instead of format buffer.
........
r118600 | ghazi | 2006-11-08 13:53:02 -0800 (Wed, 08 Nov 2006) | 3 lines
* gcc.dg/torture/builtin-math-3.c: Add more sincos tests.
........
r118602 | rakdver | 2006-11-08 16:09:43 -0800 (Wed, 08 Nov 2006) | 23 lines
PR tree-optimization/29738
* tree-ssa-ccp.c: Remove UNKNOWN_VAL from comments.
(ccp_lattice_t): Remove UNKNOWN_VAL.
(dump_lattice_value, ccp_lattice_meet, ccp_visit_phi_node):
Do not handle UNKNOWN_VAL.
(get_default_value): Set initial value of virtual operands to
VARYING.
(get_value): Always use get_default_value on uninitialized
operands.
(set_value_varying, surely_varying_stmt_p): New functions.
(set_lattice_value): Do not pass argument to get_value.
Do not handle UNKNOWN_VAL.
(likely_value): Follow the semantics described in the comment.
(ccp_initialize): Use surely_varying_stmt_p. Do not mark
phi nodes DONT_SIMULATE_AGAIN.
(ccp_fold): Do not pass argument to get_value.
(fold_const_aggregate_ref, visit_assignment): Ditto. Do not
handle UNKNOWN_VAL.
* gcc.dg/tree-ssa/ssa-ccp-14.c: New test.
* gcc.dg/tree-ssa/ssa-ccp-15.c: New test.
........
r118607 | gccadmin | 2006-11-08 16:17:40 -0800 (Wed, 08 Nov 2006) | 1 line
Daily bump.
........
r118611 | jvdelisle | 2006-11-08 19:03:40 -0800 (Wed, 08 Nov 2006) | 5 lines
2006-11-08 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/29752
* io/transfer.c (finalize_transfer): Flush on ADVANCE_NO.
........
r118613 | kargl | 2006-11-08 19:57:44 -0800 (Wed, 08 Nov 2006) | 5 lines
2006-11-08 Steven G. Kargl <kargl@gcc.gnu.org>
* io/read. (max_value): Hide "int n" in an #ifdef.
........
r118614 | brooks | 2006-11-08 22:41:55 -0800 (Wed, 08 Nov 2006) | 7 lines
* lang.opt: Remove non-working -qkind= option.
* gfortran.h (gfc_option_t): Remove q_kind member.
* options.c (gfc_init_options): Remove q_kind initialization.
(gfc_handle_option): Remove -qkind= option handling.
* primary.c: (match_real_constant): Remove 'Q' exponent.
........
r118615 | brooks | 2006-11-08 22:53:05 -0800 (Wed, 08 Nov 2006) | 16 lines
* lang.opt: Add -fmax-errors= option.
* gfortran.h (gfc_option_t): Add max_errors element.
* options.c (gfc_init_options): Set max_errors default value
to 25.
(gfc_handle_options): Assign -fmax_errors value to
gfc_option.max_errors.
* error.c (gfc_increment_error_count): New function, which
also checks whether the error count exceeds max_errors.
(gfc_warning): Use it.
(gfc_warning_now): Use it.
(gfc_notify_std): Use it.
(gfc_error): Use it.
(gfc_error_now): Use it.
(gfc_error_check): Use it.
........
r118616 | brooks | 2006-11-09 00:23:21 -0800 (Thu, 09 Nov 2006) | 3 lines
* invoke.texi: Added documentation for -fmax-errors option.
........
r118617 | brooks | 2006-11-09 00:25:12 -0800 (Thu, 09 Nov 2006) | 3 lines
* doc/invoke.texi: Minor formatting fixes in option lists.
........
r118619 | burnus | 2006-11-09 02:26:10 -0800 (Thu, 09 Nov 2006) | 6 lines
2006-11-09 Tobias Burnus <burnus@net-b.de>
* gfortran.dg/io_constraints_3.f90: Fixed by using -fmax-errors.
* gfortran.dg/gomp/reduction1.f90: Fixed by using -fmax-errors.
........
r118621 | ghazi | 2006-11-09 06:42:19 -0800 (Thu, 09 Nov 2006) | 3 lines
* gcc.dg/builtins-20.c: Use fabs, not __builtin_fabs.
........
r118622 | krebbel | 2006-11-09 09:56:04 -0800 (Thu, 09 Nov 2006) | 10 lines
2006-11-09 Andreas Krebbel <krebbel1@de.ibm.com>
* simplify-rtx.c (avoid_constant_pool_reference): Avoid calling
simplify_subreg with BLKmode outer mode.
2006-11-09 Andreas Krebbel <krebbel1@de.ibm.com>
* gcc.dg/20061109-1.c: New testcase.
........
r118624 | pault | 2006-11-09 10:42:28 -0800 (Thu, 09 Nov 2006) | 35 lines
2006-11-09 Paul Thomas <pault@gcc.gnu.org>
PR fortran/29699
* trans-array.c (structure_alloc_comps): Detect pointers to
arrays and use indirect reference to declaration.
* resolve.c (resolve_fl_variable): Tidy up condition.
(resolve_symbol): The same and only add initialization code if
the symbol is referenced.
* trans-decl.c (gfc_trans_deferred_vars): Call gfc_trans_
deferred_array before gfc_trans_auto_array_allocation.
PR fortran/21730
* symbol.c (check_done): Remove.
(gfc_add_attribute): Remove reference to check_done and remove
the argument attr_intent.
(gfc_add_allocatable, gfc_add_dimension, gfc_add_external,
gfc_add_intrinsic, gfc_add_optional, gfc_add_pointer,
gfc_add_cray_pointer, gfc_add_cray_pointee, gfc_add_result,
gfc_add_target, gfc_add_in_common, gfc_add_elemental,
gfc_add_pure, gfc_add_recursive, gfc_add_procedure,
gfc_add_type): Remove references to check_done.
* decl.c (attr_decl1): Eliminate third argument in call to
gfc_add_attribute.
* gfortran.h : Change prototype for gfc_add_attribute.
2006-11-09 Paul Thomas <pault@gcc.gnu.org>
PR fortran/29699
* gfortran.dg/alloc_comp_auto_array_1.f90: New test.
PR fortran/21730
* gfortran.dg/change_symbol_attributes_1.f90: New test.
........
r118625 | sayle | 2006-11-09 11:24:32 -0800 (Thu, 09 Nov 2006) | 11 lines
2006-11-09 Serge Belyshev <belyshev@depni.sinp.msu.ru>
PR middle-end/29726
* fold-const.c (fold_binary) <EQ_EXPR>: Fix typo in variable name.
* gcc.dg/fold-eqandshift-1.c (test5): Uncomment function.
(test6): Ditto.
(dg-final): Add scan-tree-dump-times patterns for test5 and test6.
* gcc.dg/fold-eqandshift-3.c: New test case.
........
r118626 | uros | 2006-11-09 11:41:36 -0800 (Thu, 09 Nov 2006) | 4 lines
* env.c (parse_schedule): Reject out of range values.
(parse_unsigned_long): Reject out of range, negative or zero values.
........
r118627 | pault | 2006-11-09 12:22:19 -0800 (Thu, 09 Nov 2006) | 13 lines
2006-11-09 Paul Thomas <pault@gcc.gnu.org>
PR fortran/29744
* trans-types.c (gfc_get_derived_type): Ensure that the
proc_name namespace is not the same as the owner namespace and
that identical derived types in the same namespace share the
same backend_decl.
2006-11-09 Paul Thomas <pault@gcc.gnu.org>
PR fortran/29744
* gfortran.dg/used_types_12.f90: New test.
........
r118630 | drow | 2006-11-09 14:14:27 -0800 (Thu, 09 Nov 2006) | 2 lines
* config/arm/t-linux (LIBGCC2_DEBUG_CFLAGS): Delete.
........
r118631 | pault | 2006-11-09 14:49:12 -0800 (Thu, 09 Nov 2006) | 10 lines
2006-11-09 Paul Thomas <pault@gcc.gnu.org>
PR fortran/29431
* trans-array.c (get_array_ctor_strlen): If we fall through to
default, use a constant character length if it is available.
2006-11-09 Paul Thomas <pault@gcc.gnu.org>
PR fortran/29431
* gfortran.dg/array_constructor_13.f90: New test.
........
r118632 | sje | 2006-11-09 15:48:55 -0800 (Thu, 09 Nov 2006) | 3 lines
* config/ia64/ia64.c (ia64_hpux_init_libfuncs): Use HP-UX millicode
routines for integer division.
........
r118633 | echristo | 2006-11-09 15:56:57 -0800 (Thu, 09 Nov 2006) | 12 lines
2006-11-09 Eric Christopher <echristo@apple.com>
PR bootstrap/26892
PR bootstrap/27814
PR other/28994
* configure.ac: Match powerpc*-*-darwin* for powerpc darwin checks.
* config.gcc (powerpc64-*-darwin*): New target.
* config.host: Ditto.
* config/rs6000/darwin64.h: New file.
* config/rs6000/x-darwin64: Ditto.
* config/rs6000/host-ppc64-darwin.c: Ditto.
........
r118639 | gccadmin | 2006-11-09 16:17:39 -0800 (Thu, 09 Nov 2006) | 1 line
Daily bump.
........
r118647 | brooks | 2006-11-09 19:38:43 -0800 (Thu, 09 Nov 2006) | 2 lines
* check.c (same_type_check): Typo fix in comment.
........
r118648 | ghazi | 2006-11-09 20:26:31 -0800 (Thu, 09 Nov 2006) | 11 lines
* builtins.c (do_mpfr_arg3): New.
(fold_builtin_1): Handle builtins fma, fmin and fmax.
testsuite:
* gcc.dg/torture/builtin-math-2.c: Test builtin fma.
* gcc.dg/torture/builtin-math-3.c (CKSGN_F, CKSGN, CKSGN_L):
New macros. Use them in exact tests.
(TESTIT3): New macro.
Add tests for fmin, fmax and fma.
........
r118649 | uros | 2006-11-10 00:45:47 -0800 (Fri, 10 Nov 2006) | 14 lines
PR target/29777
* config/i386/sse.md (smulv8hi3_highpart): Change from define_insn
to define_expand.
(umulv8hi3_highpart): Ditto.
(vec_widen_smult_hi_v8hi): New expander.
(vec_widen_smult_lo_v8hi): Ditto.
testsuite/ChangeLog:
PR target/29777
* lib/target-supports.exp (vect_widen_mult_hi_to_si): Add i?86-*-*
and x86_64-*-* targets.
........
r118650 | hubicka | 2006-11-10 01:30:33 -0800 (Fri, 10 Nov 2006) | 3 lines
* final.c (final): Walk from first instruction.
* cfglayout.c (insn_locators_initialize): Remove line number notes.
........
Added:
branches/fixed-point/gcc/config/rs6000/darwin64.h
- copied unchanged from r118650, trunk/gcc/config/rs6000/darwin64.h
branches/fixed-point/gcc/config/rs6000/host-ppc64-darwin.c
- copied unchanged from r118650,
trunk/gcc/config/rs6000/host-ppc64-darwin.c
branches/fixed-point/gcc/config/rs6000/x-darwin64
- copied unchanged from r118650, trunk/gcc/config/rs6000/x-darwin64
branches/fixed-point/gcc/testsuite/g++.dg/other/pr29610.C
- copied unchanged from r118650,
trunk/gcc/testsuite/g++.dg/other/pr29610.C
branches/fixed-point/gcc/testsuite/gcc.dg/20061109-1.c
- copied unchanged from r118650, trunk/gcc/testsuite/gcc.dg/20061109-1.c
branches/fixed-point/gcc/testsuite/gcc.dg/fold-eqandshift-3.c
- copied unchanged from r118650,
trunk/gcc/testsuite/gcc.dg/fold-eqandshift-3.c
branches/fixed-point/gcc/testsuite/gcc.dg/inline-17.c
- copied unchanged from r118650, trunk/gcc/testsuite/gcc.dg/inline-17.c
branches/fixed-point/gcc/testsuite/gcc.dg/tree-ssa/ssa-ccp-14.c
- copied unchanged from r118650,
trunk/gcc/testsuite/gcc.dg/tree-ssa/ssa-ccp-14.c
branches/fixed-point/gcc/testsuite/gcc.dg/tree-ssa/ssa-ccp-15.c
- copied unchanged from r118650,
trunk/gcc/testsuite/gcc.dg/tree-ssa/ssa-ccp-15.c
branches/fixed-point/gcc/testsuite/gcc.dg/vect/vect-multitypes-1.c
- copied unchanged from r118650,
trunk/gcc/testsuite/gcc.dg/vect/vect-multitypes-1.c
branches/fixed-point/gcc/testsuite/gcc.dg/vect/vect-multitypes-10.c
- copied unchanged from r118650,
trunk/gcc/testsuite/gcc.dg/vect/vect-multitypes-10.c
branches/fixed-point/gcc/testsuite/gcc.dg/vect/vect-multitypes-2.c
- copied unchanged from r118650,
trunk/gcc/testsuite/gcc.dg/vect/vect-multitypes-2.c
branches/fixed-point/gcc/testsuite/gcc.dg/vect/vect-multitypes-3.c
- copied unchanged from r118650,
trunk/gcc/testsuite/gcc.dg/vect/vect-multitypes-3.c
branches/fixed-point/gcc/testsuite/gcc.dg/vect/vect-multitypes-4.c
- copied unchanged from r118650,
trunk/gcc/testsuite/gcc.dg/vect/vect-multitypes-4.c
branches/fixed-point/gcc/testsuite/gcc.dg/vect/vect-multitypes-5.c
- copied unchanged from r118650,
trunk/gcc/testsuite/gcc.dg/vect/vect-multitypes-5.c
branches/fixed-point/gcc/testsuite/gcc.dg/vect/vect-multitypes-6.c
- copied unchanged from r118650,
trunk/gcc/testsuite/gcc.dg/vect/vect-multitypes-6.c
branches/fixed-point/gcc/testsuite/gcc.dg/vect/vect-multitypes-7.c
- copied unchanged from r118650,
trunk/gcc/testsuite/gcc.dg/vect/vect-multitypes-7.c
branches/fixed-point/gcc/testsuite/gcc.dg/vect/vect-multitypes-8.c
- copied unchanged from r118650,
trunk/gcc/testsuite/gcc.dg/vect/vect-multitypes-8.c
branches/fixed-point/gcc/testsuite/gcc.dg/vect/vect-multitypes-9.c
- copied unchanged from r118650,
trunk/gcc/testsuite/gcc.dg/vect/vect-multitypes-9.c
branches/fixed-point/gcc/testsuite/gcc.dg/vect/vect-reduc-dot-s8a.c
- copied unchanged from r118650,
trunk/gcc/testsuite/gcc.dg/vect/vect-reduc-dot-s8a.c
branches/fixed-point/gcc/testsuite/gcc.dg/vect/vect-reduc-dot-s8b.c
- copied unchanged from r118650,
trunk/gcc/testsuite/gcc.dg/vect/vect-reduc-dot-s8b.c
branches/fixed-point/gcc/testsuite/gcc.dg/vect/vect-reduc-dot-s8c.c
- copied unchanged from r118650,
trunk/gcc/testsuite/gcc.dg/vect/vect-reduc-dot-s8c.c
branches/fixed-point/gcc/testsuite/gcc.dg/vect/vect-reduc-dot-u16a.c
- copied unchanged from r118650,
trunk/gcc/testsuite/gcc.dg/vect/vect-reduc-dot-u16a.c
branches/fixed-point/gcc/testsuite/gcc.dg/vect/vect-reduc-dot-u16b.c
- copied unchanged from r118650,
trunk/gcc/testsuite/gcc.dg/vect/vect-reduc-dot-u16b.c
branches/fixed-point/gcc/testsuite/gcc.dg/vect/vect-reduc-dot-u8a.c
- copied unchanged from r118650,
trunk/gcc/testsuite/gcc.dg/vect/vect-reduc-dot-u8a.c
branches/fixed-point/gcc/testsuite/gcc.dg/vect/vect-reduc-dot-u8b.c
- copied unchanged from r118650,
trunk/gcc/testsuite/gcc.dg/vect/vect-reduc-dot-u8b.c
branches/fixed-point/gcc/testsuite/gcc.dg/vect/vect-widen-mult-s16.c
- copied unchanged from r118650,
trunk/gcc/testsuite/gcc.dg/vect/vect-widen-mult-s16.c
branches/fixed-point/gcc/testsuite/gcc.dg/vect/vect-widen-mult-s8.c
- copied unchanged from r118650,
trunk/gcc/testsuite/gcc.dg/vect/vect-widen-mult-s8.c
branches/fixed-point/gcc/testsuite/gcc.dg/vect/vect-widen-mult-sum.c
- copied unchanged from r118650,
trunk/gcc/testsuite/gcc.dg/vect/vect-widen-mult-sum.c
branches/fixed-point/gcc/testsuite/gcc.dg/vect/vect-widen-mult-u16.c
- copied unchanged from r118650,
trunk/gcc/testsuite/gcc.dg/vect/vect-widen-mult-u16.c
branches/fixed-point/gcc/testsuite/gcc.dg/vect/vect-widen-mult-u8.c
- copied unchanged from r118650,
trunk/gcc/testsuite/gcc.dg/vect/vect-widen-mult-u8.c
branches/fixed-point/gcc/testsuite/gcc.dg/vect/wrapv-vect-reduc-dot-s8b.c
- copied unchanged from r118650,
trunk/gcc/testsuite/gcc.dg/vect/wrapv-vect-reduc-dot-s8b.c
branches/fixed-point/gcc/testsuite/gfortran.dg/alloc_comp_auto_array_1.f90
- copied unchanged from r118650,
trunk/gcc/testsuite/gfortran.dg/alloc_comp_auto_array_1.f90
branches/fixed-point/gcc/testsuite/gfortran.dg/array_constructor_13.f90
- copied unchanged from r118650,
trunk/gcc/testsuite/gfortran.dg/array_constructor_13.f90
branches/fixed-point/gcc/testsuite/gfortran.dg/blockdata_3.f90
- copied unchanged from r118650,
trunk/gcc/testsuite/gfortran.dg/blockdata_3.f90
branches/fixed-point/gcc/testsuite/gfortran.dg/change_symbol_attributes_1.f90
- copied unchanged from r118650,
trunk/gcc/testsuite/gfortran.dg/change_symbol_attributes_1.f90
branches/fixed-point/gcc/testsuite/gfortran.dg/derived_function_interface_1.f90
- copied unchanged from r118650,
trunk/gcc/testsuite/gfortran.dg/derived_function_interface_1.f90
branches/fixed-point/gcc/testsuite/gfortran.dg/used_types_12.f90
- copied unchanged from r118650,
trunk/gcc/testsuite/gfortran.dg/used_types_12.f90
branches/fixed-point/gcc/testsuite/gfortran.dg/volatile.f90
- copied unchanged from r118650,
trunk/gcc/testsuite/gfortran.dg/volatile.f90
branches/fixed-point/gcc/testsuite/gfortran.dg/volatile2.f90
- copied unchanged from r118650,
trunk/gcc/testsuite/gfortran.dg/volatile2.f90
branches/fixed-point/gcc/testsuite/gfortran.dg/volatile3.f90
- copied unchanged from r118650,
trunk/gcc/testsuite/gfortran.dg/volatile3.f90
branches/fixed-point/gcc/testsuite/gfortran.dg/volatile4.f90
- copied unchanged from r118650,
trunk/gcc/testsuite/gfortran.dg/volatile4.f90
branches/fixed-point/gcc/testsuite/gfortran.dg/volatile5.f90
- copied unchanged from r118650,
trunk/gcc/testsuite/gfortran.dg/volatile5.f90
branches/fixed-point/gcc/testsuite/gfortran.dg/volatile6.f90
- copied unchanged from r118650,
trunk/gcc/testsuite/gfortran.dg/volatile6.f90
branches/fixed-point/gcc/testsuite/gfortran.dg/volatile7.f90
- copied unchanged from r118650,
trunk/gcc/testsuite/gfortran.dg/volatile7.f90
branches/fixed-point/libstdc++-v3/testsuite/abi/cxx_runtime_only_linkage.cc
- copied unchanged from r118650,
trunk/libstdc++-v3/testsuite/abi/cxx_runtime_only_linkage.cc
Removed:
branches/fixed-point/gcc/testsuite/gcc.dg/vect/vect-106.c
branches/fixed-point/gcc/testsuite/gcc.dg/vect/vect-reduc-dot-s8.c
branches/fixed-point/gcc/testsuite/gcc.dg/vect/vect-reduc-dot-u16.c
branches/fixed-point/gcc/testsuite/gcc.dg/vect/vect-reduc-dot-u8.c
branches/fixed-point/gcc/testsuite/gcc.dg/vect/wrapv-vect-reduc-dot-s8.c
Modified:
branches/fixed-point/ (props changed)
branches/fixed-point/ChangeLog
branches/fixed-point/configure
branches/fixed-point/configure.in
branches/fixed-point/fixincludes/ChangeLog
branches/fixed-point/fixincludes/fixincl.x
branches/fixed-point/fixincludes/inclhack.def
branches/fixed-point/gcc/ChangeLog
branches/fixed-point/gcc/DATESTAMP
branches/fixed-point/gcc/builtins.c
branches/fixed-point/gcc/c-common.c
branches/fixed-point/gcc/c-decl.c
branches/fixed-point/gcc/cfglayout.c
branches/fixed-point/gcc/config.gcc
branches/fixed-point/gcc/config.host
branches/fixed-point/gcc/config/arm/t-linux
branches/fixed-point/gcc/config/avr/avr-protos.h
branches/fixed-point/gcc/config/avr/avr.c
branches/fixed-point/gcc/config/i386/i386-protos.h
branches/fixed-point/gcc/config/i386/i386.c
branches/fixed-point/gcc/config/i386/i386.md
branches/fixed-point/gcc/config/i386/sse.md
branches/fixed-point/gcc/config/ia64/ia64.c
branches/fixed-point/gcc/config/ia64/t-hpux
branches/fixed-point/gcc/config/mips/mips.c
branches/fixed-point/gcc/config/mips/mips.h
branches/fixed-point/gcc/config/rs6000/altivec.md
branches/fixed-point/gcc/config/rs6000/darwin.h
branches/fixed-point/gcc/config/rs6000/rs6000.c
branches/fixed-point/gcc/configure
branches/fixed-point/gcc/configure.ac
branches/fixed-point/gcc/doc/c-tree.texi
branches/fixed-point/gcc/doc/extend.texi
branches/fixed-point/gcc/doc/invoke.texi
branches/fixed-point/gcc/doc/md.texi
branches/fixed-point/gcc/doc/tm.texi
branches/fixed-point/gcc/doc/tree-ssa.texi
branches/fixed-point/gcc/expr.c
branches/fixed-point/gcc/final.c
branches/fixed-point/gcc/fold-const.c
branches/fixed-point/gcc/fortran/ChangeLog
branches/fixed-point/gcc/fortran/check.c
branches/fixed-point/gcc/fortran/decl.c
branches/fixed-point/gcc/fortran/dump-parse-tree.c
branches/fixed-point/gcc/fortran/error.c
branches/fixed-point/gcc/fortran/gfortran.h
branches/fixed-point/gcc/fortran/gfortran.texi
branches/fixed-point/gcc/fortran/intrinsic.texi
branches/fixed-point/gcc/fortran/invoke.texi
branches/fixed-point/gcc/fortran/lang.opt
branches/fixed-point/gcc/fortran/match.h
branches/fixed-point/gcc/fortran/module.c
branches/fixed-point/gcc/fortran/options.c
branches/fixed-point/gcc/fortran/parse.c
branches/fixed-point/gcc/fortran/primary.c
branches/fixed-point/gcc/fortran/resolve.c
branches/fixed-point/gcc/fortran/symbol.c
branches/fixed-point/gcc/fortran/trans-array.c
branches/fixed-point/gcc/fortran/trans-decl.c
branches/fixed-point/gcc/fortran/trans-types.c
branches/fixed-point/gcc/gcc.c
branches/fixed-point/gcc/genopinit.c
branches/fixed-point/gcc/libgcc2.c
branches/fixed-point/gcc/libgcc2.h
branches/fixed-point/gcc/optabs.c
branches/fixed-point/gcc/optabs.h
branches/fixed-point/gcc/simplify-rtx.c
branches/fixed-point/gcc/target-def.h
branches/fixed-point/gcc/target.h
branches/fixed-point/gcc/testsuite/ChangeLog
branches/fixed-point/gcc/testsuite/gcc.dg/builtins-20.c
branches/fixed-point/gcc/testsuite/gcc.dg/fold-eqandshift-1.c
branches/fixed-point/gcc/testsuite/gcc.dg/torture/builtin-math-2.c
branches/fixed-point/gcc/testsuite/gcc.dg/torture/builtin-math-3.c
branches/fixed-point/gcc/testsuite/gcc.dg/torture/fp-int-convert-float128-timode.c
branches/fixed-point/gcc/testsuite/gcc.dg/vect/vect-1.c
branches/fixed-point/gcc/testsuite/gcc.dg/vect/vect-109.c
branches/fixed-point/gcc/testsuite/gcc.dg/vect/vect-9.c
branches/fixed-point/gcc/testsuite/gcc.dg/vect/vect-96.c
branches/fixed-point/gcc/testsuite/gcc.dg/vect/vect-reduc-dot-s16a.c
branches/fixed-point/gcc/testsuite/gfortran.dg/gomp/reduction1.f90
branches/fixed-point/gcc/testsuite/gfortran.dg/io_constraints_3.f90
branches/fixed-point/gcc/testsuite/lib/target-supports.exp
branches/fixed-point/gcc/tree-cfgcleanup.c
branches/fixed-point/gcc/tree-inline.c
branches/fixed-point/gcc/tree-pretty-print.c
branches/fixed-point/gcc/tree-ssa-ccp.c
branches/fixed-point/gcc/tree-ssa-propagate.c
branches/fixed-point/gcc/tree-vect-analyze.c
branches/fixed-point/gcc/tree-vect-generic.c
branches/fixed-point/gcc/tree-vect-patterns.c
branches/fixed-point/gcc/tree-vect-transform.c
branches/fixed-point/gcc/tree-vectorizer.c
branches/fixed-point/gcc/tree-vectorizer.h
branches/fixed-point/gcc/tree.def
branches/fixed-point/libgfortran/ChangeLog
branches/fixed-point/libgfortran/io/read.c
branches/fixed-point/libgfortran/io/transfer.c
branches/fixed-point/libgomp/ChangeLog
branches/fixed-point/libgomp/env.c
branches/fixed-point/libiberty/ChangeLog
branches/fixed-point/libiberty/floatformat.c
branches/fixed-point/libiberty/pex-win32.c
branches/fixed-point/libstdc++-v3/ChangeLog
branches/fixed-point/libstdc++-v3/include/ext/concurrence.h
branches/fixed-point/libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/constructors_destructor_fn_imps.hpp
branches/fixed-point/libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/split_join_fn_imps.hpp
branches/fixed-point/libstdc++-v3/include/ext/pb_ds/detail/binary_heap_/constructors_destructor_fn_imps.hpp
branches/fixed-point/libstdc++-v3/include/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp
branches/fixed-point/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_fn_imps.hpp
branches/fixed-point/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp
branches/fixed-point/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_fn_imps.hpp
branches/fixed-point/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/insert_no_store_hash_fn_imps.hpp
branches/fixed-point/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/insert_store_hash_fn_imps.hpp
branches/fixed-point/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp
branches/fixed-point/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/resize_no_store_hash_fn_imps.hpp
branches/fixed-point/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/resize_store_hash_fn_imps.hpp
branches/fixed-point/libstdc++-v3/include/ext/pb_ds/detail/left_child_next_sibling_heap_/constructors_destructor_fn_imps.hpp
branches/fixed-point/libstdc++-v3/include/ext/pb_ds/detail/list_update_map_/constructor_destructor_fn_imps.hpp
branches/fixed-point/libstdc++-v3/include/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp
branches/fixed-point/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/constructors_destructor_fn_imps.hpp
branches/fixed-point/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp
branches/fixed-point/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/split_join_branch_bag.hpp
branches/fixed-point/libstdc++-v3/include/ext/pb_ds/detail/resize_policy/hash_exponential_size_policy_imp.hpp
branches/fixed-point/libstdc++-v3/include/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_imp.hpp
branches/fixed-point/libstdc++-v3/include/ext/pb_ds/detail/resize_policy/hash_prime_size_policy_imp.hpp
branches/fixed-point/libstdc++-v3/include/ext/pb_ds/detail/resize_policy/hash_standard_resize_policy_imp.hpp
branches/fixed-point/libstdc++-v3/include/ext/pb_ds/exception.hpp
branches/fixed-point/libstdc++-v3/src/functexcept.cc
Propchange: branches/fixed-point/
('svnmerge-integrated' modified)
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29738
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug tree-optimization/29738] Missed constant propagation into loops
2006-11-06 11:01 [Bug tree-optimization/29738] New: Missed constant propagation into loops rguenth at gcc dot gnu dot org
` (11 preceding siblings ...)
2006-12-01 0:38 ` chaoyingfu at gcc dot gnu dot org
@ 2008-08-19 15:03 ` rguenth at gcc dot gnu dot org
2008-08-19 15:04 ` rguenth at gcc dot gnu dot org
2010-04-07 12:21 ` rguenth at gcc dot gnu dot org
14 siblings, 0 replies; 17+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2008-08-19 15:03 UTC (permalink / raw)
To: gcc-bugs
------- Comment #12 from rguenth at gcc dot gnu dot org 2008-08-19 15:02 -------
Disabled/xfailed with
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=139234
Log:
2008-08-19 Richard Guenther <rguenther@suse.de>
* passes.c (init_optimization_passes): Exchange store-ccp
with a ccp pass.
* gcc.dg/tree-ssa/ssa-ccp-14.c: XFAIL.
--
rguenth at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Severity|normal |enhancement
Status|RESOLVED |REOPENED
Keywords| |xfail
Resolution|FIXED |
Target Milestone|4.3.0 |---
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29738
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug tree-optimization/29738] Missed constant propagation into loops
2006-11-06 11:01 [Bug tree-optimization/29738] New: Missed constant propagation into loops rguenth at gcc dot gnu dot org
` (12 preceding siblings ...)
2008-08-19 15:03 ` rguenth at gcc dot gnu dot org
@ 2008-08-19 15:04 ` rguenth at gcc dot gnu dot org
2010-04-07 12:21 ` rguenth at gcc dot gnu dot org
14 siblings, 0 replies; 17+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2008-08-19 15:04 UTC (permalink / raw)
To: gcc-bugs
--
rguenth at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
AssignedTo|rakdver at gcc dot gnu dot |unassigned at gcc dot gnu
|org |dot org
Status|REOPENED |NEW
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29738
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug tree-optimization/29738] Missed constant propagation into loops
2006-11-06 11:01 [Bug tree-optimization/29738] New: Missed constant propagation into loops rguenth at gcc dot gnu dot org
` (13 preceding siblings ...)
2008-08-19 15:04 ` rguenth at gcc dot gnu dot org
@ 2010-04-07 12:21 ` rguenth at gcc dot gnu dot org
14 siblings, 0 replies; 17+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2010-04-07 12:21 UTC (permalink / raw)
To: gcc-bugs
------- Comment #13 from rguenth at gcc dot gnu dot org 2010-04-07 12:21 -------
A case predicated VN should handle.
--
rguenth at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |matz at gcc dot gnu dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29738
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug tree-optimization/29738] Missed constant propagation into loops
[not found] <bug-29738-4@http.gcc.gnu.org/bugzilla/>
@ 2021-06-03 3:05 ` pinskia at gcc dot gnu.org
0 siblings, 0 replies; 17+ messages in thread
From: pinskia at gcc dot gnu.org @ 2021-06-03 3:05 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=29738
Andrew Pinski <pinskia at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution|--- |FIXED
Target Milestone|--- |9.0
--- Comment #14 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
(In reply to Richard Biener from comment #13)
> A case predicated VN should handle.
Fixed in GCC 9 with r9-2635
^ permalink raw reply [flat|nested] 17+ messages in thread
end of thread, other threads:[~2021-06-03 3:05 UTC | newest]
Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2006-11-06 11:01 [Bug tree-optimization/29738] New: Missed constant propagation into loops rguenth at gcc dot gnu dot org
2006-11-06 11:48 ` [Bug tree-optimization/29738] " sebastian dot pop at cri dot ensmp dot fr
2006-11-06 11:51 ` rakdver at gcc dot gnu dot org
2006-11-06 12:04 ` rguenther at suse dot de
2006-11-06 12:07 ` rguenth at gcc dot gnu dot org
2006-11-06 12:08 ` rakdver at atrey dot karlin dot mff dot cuni dot cz
2006-11-06 12:18 ` rguenth at gcc dot gnu dot org
2006-11-06 12:33 ` rakdver at atrey dot karlin dot mff dot cuni dot cz
2006-11-06 12:38 ` rguenther at suse dot de
2006-11-07 10:55 ` rakdver at gcc dot gnu dot org
2006-11-09 0:10 ` rakdver at gcc dot gnu dot org
2006-11-11 12:54 ` rguenth at gcc dot gnu dot org
2006-12-01 0:38 ` chaoyingfu at gcc dot gnu dot org
2008-08-19 15:03 ` rguenth at gcc dot gnu dot org
2008-08-19 15:04 ` rguenth at gcc dot gnu dot org
2010-04-07 12:21 ` rguenth at gcc dot gnu dot org
[not found] <bug-29738-4@http.gcc.gnu.org/bugzilla/>
2021-06-03 3:05 ` pinskia at gcc dot gnu.org
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).