Commit d9338cf0 by Richard Guenther Committed by Richard Biener

params.def (PARAM_MAX_FIELDS_FOR_FIELD_SENSITIVE): Set default to zero, thus…

params.def (PARAM_MAX_FIELDS_FOR_FIELD_SENSITIVE): Set default to zero, thus disable creation of SFTs.

2008-04-15  Richard Guenther  <rguenther@suse.de>

	* params.def (PARAM_MAX_FIELDS_FOR_FIELD_SENSITIVE): Set default
	to zero, thus disable creation of SFTs.

	* gcc.dg/tree-ssa/salias-1.c: Remove.
	* gcc.dg/tree-ssa/pr26421.c: Adjust pattern.
	* gcc.dg/tree-ssa/alias-15.c: Likewise.
	* gcc.dg/tree-ssa/ssa-lim-3.c: Run at -O2.

From-SVN: r134321
parent 7e80c6bf
2008-04-15 Richard Guenther <rguenther@suse.de>
* params.def (PARAM_MAX_FIELDS_FOR_FIELD_SENSITIVE): Set default
to zero, thus disable creation of SFTs.
2008-04-15 Eric Botcazou <ebotcazou@adacore.com>
* tree-predcom.c (suitable_reference_p): Return false if the
......
......@@ -652,7 +652,7 @@ DEFPARAM (PARAM_MAX_JUMP_THREAD_DUPLICATION_STMTS,
DEFPARAM (PARAM_MAX_FIELDS_FOR_FIELD_SENSITIVE,
"max-fields-for-field-sensitive",
"Maximum number of fields in a structure before pointer analysis treats the structure as a single variable",
100, 0, 0)
0, 0, 0)
DEFPARAM(PARAM_MAX_SCHED_READY_INSNS,
"max-sched-ready-insns",
......
2008-04-15 Richard Guenther <rguenther@suse.de>
* gcc.dg/tree-ssa/salias-1.c: Remove.
* gcc.dg/tree-ssa/pr26421.c: Adjust pattern.
* gcc.dg/tree-ssa/alias-15.c: Likewise.
* gcc.dg/tree-ssa/ssa-lim-3.c: Run at -O2.
2008-04-15 Eric Botcazou <ebotcazou@adacore.com>
* gnat.dg/loop_optimization1.ad[sb]: New test.
......@@ -11,10 +11,9 @@ static inline struct X *wrap(struct X *p) { return p; }
int test2(void)
{
struct X *p = wrap(&m.b);
/* Both memory references need to alias the same SFT. */
/* Both memory references need to alias the same tags. */
return p->b[3] - m.b.b[3];
}
/* { dg-final { scan-tree-dump "SFT.5 created for var m offset 128" "salias" } } */
/* { dg-final { scan-tree-dump-times "VUSE <SFT.5_" 2 "salias" } } */
/* { dg-final { scan-tree-dump-times "VUSE <m_.\\\(D\\\)>" 2 "salias" } } */
/* { dg-final { cleanup-tree-dump "salias" } } */
......@@ -16,5 +16,7 @@ int foo(void)
return a.i;
}
/* { dg-final { scan-tree-dump-times "VDEF" 4 "salias" } } */
/* Verify the call clobbers all of a. */
/* { dg-final { scan-tree-dump-times "VDEF <a_" 2 "salias" } } */
/* { dg-final { cleanup-tree-dump "salias" } } */
/* { dg-do compile } */
/* { dg-options "-O2 -fdump-tree-salias" } */
struct {
struct {
struct {
int i, j;
} c;
} b;
} a;
int foo(void)
{
a.b.c.i = 0;
return a.b.c.j;
}
/* { dg-final { scan-tree-dump-times "structure field tag SFT" 2 "salias" } } */
/* { dg-final { cleanup-tree-dump "salias" } } */
/* { dg-do compile } */
/* { dg-options "-O -fdump-tree-lim-details" } */
/* { dg-options "-O2 -fdump-tree-lim-details" } */
struct { int x; int y; } global;
void foo(int n)
......
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