Commit dffdd6e5 by Martin Jambor Committed by Martin Jambor

re PR tree-optimization/55260 (ICE: in ipa_get_parm_lattices, at ipa-cp.c:263…

re PR tree-optimization/55260 (ICE: in ipa_get_parm_lattices, at ipa-cp.c:263 with -O2 -fno-inline -fipa-cp-clone)

2012-11-20  Martin Jambor  <mjambor@suse.cz>

	PR tree-optimization/55260
	* ipa-cp.c (find_aggregate_values_for_callers_subset): Rename info to
	dest_info, use caller_info instead of info when determining whether
	callee is a clone.

	* testsuite/g++.dg/torture/pr55260-1.C: New test.

From-SVN: r193657
parent e7d8fc6c
2012-11-20 Martin Jambor <mjambor@suse.cz>
PR tree-optimization/55260
* ipa-cp.c (find_aggregate_values_for_callers_subset): Rename info to
dest_info, use caller_info instead of info when determining whether
callee is a clone.
2012-11-20 Andrey Turetskiy <andrey.turetskiy@gmail.com>
* config/i386/sse.md (*<ssse3_avx2>_pmulhrsw<mode>3): Merge
......@@ -2859,10 +2859,10 @@ static struct ipa_agg_replacement_value *
find_aggregate_values_for_callers_subset (struct cgraph_node *node,
vec<cgraph_edge_p> callers)
{
struct ipa_node_params *info = IPA_NODE_REF (node);
struct ipa_node_params *dest_info = IPA_NODE_REF (node);
struct ipa_agg_replacement_value *res = NULL;
struct cgraph_edge *cs;
int i, j, count = ipa_get_param_count (info);
int i, j, count = ipa_get_param_count (dest_info);
FOR_EACH_VEC_ELT (callers, j, cs)
{
......@@ -2880,7 +2880,7 @@ find_aggregate_values_for_callers_subset (struct cgraph_node *node,
/* Among other things, the following check should deal with all by_ref
mismatches. */
if (ipa_get_parm_lattices (info, i)->aggs_bottom)
if (ipa_get_parm_lattices (dest_info, i)->aggs_bottom)
continue;
FOR_EACH_VEC_ELT (callers, j, cs)
......@@ -2932,7 +2932,7 @@ find_aggregate_values_for_callers_subset (struct cgraph_node *node,
struct ipcp_param_lattices *src_plats;
HOST_WIDE_INT delta = ipa_get_jf_ancestor_offset (jfunc);
if (info->ipcp_orig_node)
if (caller_info->ipcp_orig_node)
{
if (!inter.exists ())
inter = agg_replacements_to_vector (cs->caller, delta);
......
2012-11-20 Martin Jambor <mjambor@suse.cz>
PR tree-optimization/55260
* g++.dg/torture/pr55260-1.C: New test.
2012-11-20 Sofiane Naci <sofiane.naci@arm.com>
* gcc.target/aarch64/atomic-comp-swap-release-acquire.c: New testcase.
......
/* { dg-do compile } */
/* { dg-options "-std=gnu++0x -fno-inline" } */
/* { dg-add-options bind_pic_locally } */
struct B
{
constexpr B ():
bp ()
{}
~B ()
{
if (bp)
bp->f ();
}
void f ();
B *bp;
};
struct A { B b;
};
void foo ()
{
A a;
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment