Commit 12981e9b by Vladimir Makarov Committed by Vladimir Makarov

re PR rtl-optimization/92283 (454.calculix miscomparison since r276645 with -O2 -march=znver2)

2019-11-29  Vladimir Makarov  <vmakarov@redhat.com>

	PR rtl-optimization/92283
	* lra.c (lra): Update reg notes after inheritance sub-pass and
	before constraint sub-pass.

From-SVN: r278865
parent d005f61e
2019-11-29 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/92283
* lra.c (lra): Update reg notes after inheritance sub-pass and
before constraint sub-pass.
2019-11-29 Richard Biener <rguenther@suse.de> 2019-11-29 Richard Biener <rguenther@suse.de>
PR tree-optimization/91003 PR tree-optimization/91003
...@@ -2473,7 +2473,7 @@ lra (FILE *f) ...@@ -2473,7 +2473,7 @@ lra (FILE *f)
But don't remove dead insns or change global live But don't remove dead insns or change global live
info as we can undo inheritance transformations after info as we can undo inheritance transformations after
inheritance pseudo assigning. */ inheritance pseudo assigning. */
lra_create_live_ranges (true, false); lra_create_live_ranges (true, !lra_simple_p);
live_p = true; live_p = true;
/* If we don't spill non-reload and non-inheritance /* If we don't spill non-reload and non-inheritance
pseudos, there is no sense to run memory-memory move pseudos, there is no sense to run memory-memory move
...@@ -2514,6 +2514,11 @@ lra (FILE *f) ...@@ -2514,6 +2514,11 @@ lra (FILE *f)
} }
} }
while (fails_p); while (fails_p);
if (! live_p) {
/* We need the correct reg notes for work of constraint sub-pass. */
lra_create_live_ranges (true, true);
live_p = true;
}
} }
/* Don't clear optional reloads bitmap until all constraints are /* Don't clear optional reloads bitmap until all constraints are
satisfied as we need to differ them from regular reloads. */ satisfied as we need to differ them from regular reloads. */
......
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