Commit 4e0eea75 by Jakub Jelinek Committed by Jakub Jelinek

re PR tree-optimization/70602 (wrong code at -O1 and above on x86_64-linux-gnu…

re PR tree-optimization/70602 (wrong code at -O1 and above on x86_64-linux-gnu in 32-bit mode (and at -Os only in 64-bit mode))

	PR tree-optimization/70602
	* tree-sra.c (generate_subtree_copies): Don't write anything into
	constant pool decls.

	* gcc.c-torture/execute/pr70602.c: New test.

From-SVN: r234895
parent 21f3a236
2016-04-12 Jakub Jelinek <jakub@redhat.com>
PR tree-optimization/70602
* tree-sra.c (generate_subtree_copies): Don't write anything into
constant pool decls.
* omp-low.c (lower_omp_target): Use GOMP_MAP_FIRSTPRIVATE_INT
regardless whether there are depend clauses or not.
......
2016-04-12 Jakub Jelinek <jakub@redhat.com>
PR tree-optimization/70602
* gcc.c-torture/execute/pr70602.c: New test.
2016-04-11 Michael Meissner <meissner@linux.vnet.ibm.com>
PR target/70381
......
/* PR tree-optimization/70602 */
struct __attribute__((packed)) S
{
int s : 1;
int t : 20;
};
int a, b, c;
int
main ()
{
for (; a < 1; a++)
{
struct S e[] = { {0, 9}, {0, 9}, {0, 9}, {0, 0}, {0, 9}, {0, 9}, {0, 9},
{0, 0}, {0, 9}, {0, 9}, {0, 9}, {0, 0}, {0, 9}, {0, 9},
{0, 9}, {0, 0}, {0, 9}, {0, 9}, {0, 9}, {0, 0}, {0, 9} };
b = b || e[0].s;
c = e[0].t;
}
return 0;
}
......@@ -2743,6 +2743,9 @@ generate_subtree_copies (struct access *access, tree agg,
gimple_stmt_iterator *gsi, bool write,
bool insert_after, location_t loc)
{
/* Never write anything into constant pool decls. See PR70602. */
if (!write && constant_decl_p (agg))
return;
do
{
if (chunk_size && access->offset >= start_offset + chunk_size)
......
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