Commit 23a429c2 by Richard Biener Committed by Richard Biener

re PR tree-optimization/80281 (Wrong constant folding)

2017-04-06  Richard Biener  <rguenther@suse.de>

	PR middle-end/80281
	* gcc.dg/tree-ssa/pr40921.c: Add -fp-contract=off.

From-SVN: r246726
parent d905d6ae
2017-04-06 Richard Biener <rguenther@suse.de>
PR middle-end/80281
* gcc.dg/tree-ssa/pr40921.c: Add -fp-contract=off.
2017-04-05 Vladimir Makarov <vmakarov@redhat.com> 2017-04-05 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/70703 PR rtl-optimization/70703
......
/* { dg-do compile } */ /* { dg-do compile } */
/* { dg-options "-O2 -fdump-tree-optimized -ffast-math" } */ /* { dg-options "-O2 -fdump-tree-optimized -ffast-math -ffp-contract=off" } */
unsigned int foo (unsigned int x, unsigned int y, unsigned int z) unsigned int foo (unsigned int x, unsigned int y, unsigned int z)
{ {
return x + (-y * z * z); return x + (-y * z * z);
} }
float bar (float x, float y, float z) float bar (float x, float y, float z)
{ {
return x + (-y * z * z); return x + (-y * z * z);
} }
float bar2 (float x, float y, float z) float bar2 (float x, float y, float z)
{ {
return x + (-y * z * z * 5.0f); return x + (-y * z * z * 5.0f);
} }
float bar3 (float x, float y, float z) float bar3 (float x, float y, float z)
{ {
return x + (-y * x * -z); return x + (-y * x * -z);
} }
/* { dg-final { scan-tree-dump-times "_* = -y_" 0 "optimized" } } */ /* { dg-final { scan-tree-dump-times "_* = -y_" 0 "optimized" } } */
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