gimple_min_invariant.
* gcc.c-torture/compile/
20100907.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@163948
138bc75d-0d04-0410-961f-
82ee72b054a4
+2010-09-07 Jan Hubicka <jh@suse.cz>
+
+ * gimple.c (maybe_fold_reference): Verify that operand is
+ gimple_min_invariant.
+
2010-09-07 Richard Guenther <rguenther@suse.de>
PR middle-end/45569
tree result;
if (!is_lhs
- && (result = fold_const_aggregate_ref (expr)))
+ && (result = fold_const_aggregate_ref (expr))
+ && is_gimple_min_invariant (result))
return result;
/* ??? We might want to open-code the relevant remaining cases
+2010-09-07 Jan Hubicka <jh@suse.cz>
+
+ * gcc.c-torture/compile/20100907.c: New testcase.
+
2010-09-07 Richard Guenther <rguenther@suse.de>
PR middle-end/45569
--- /dev/null
+struct a {int a,b;};
+const static struct a a[1]={{1,2}};
+struct a b,c;
+t()
+{
+ int idx = 0;
+ b=a[idx];
+ c=a[idx];
+}