re PR tree-optimization/44683 (Optimization bug with copysign builtin)
2010-06-27 Richard Guenther <rguenther@suse.de> PR tree-optimization/44683 * tree-ssa-dom.c (record_edge_info): Record equivalences for the false edge from the inverted condition. * gcc.c-torture/execute/pr44683.c: New testcase. From-SVN: r161469
This commit is contained in:
parent
e85813bda1
commit
2683009ace
|
@ -1,3 +1,9 @@
|
|||
2010-06-27 Richard Guenther <rguenther@suse.de>
|
||||
|
||||
PR tree-optimization/44683
|
||||
* tree-ssa-dom.c (record_edge_info): Record equivalences for the
|
||||
false edge from the inverted condition.
|
||||
|
||||
2010-06-21 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
|
||||
|
||||
PR target/39690
|
||||
|
|
|
@ -1,3 +1,8 @@
|
|||
2010-06-27 Richard Guenther <rguenther@suse.de>
|
||||
|
||||
PR tree-optimization/44683
|
||||
* gcc.c-torture/execute/pr44683.c: New testcase.
|
||||
|
||||
2010-06-22 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
PR c++/44627
|
||||
|
|
|
@ -0,0 +1,18 @@
|
|||
int __attribute__((noinline,noclone))
|
||||
copysign_bug (double x)
|
||||
{
|
||||
if (x != 0.0 && (x * 0.5 == x))
|
||||
return 1;
|
||||
if (__builtin_copysign(1.0, x) < 0.0)
|
||||
return 2;
|
||||
else
|
||||
return 3;
|
||||
}
|
||||
int main(void)
|
||||
{
|
||||
double x = -0.0;
|
||||
if (copysign_bug (x) != 2)
|
||||
__builtin_abort ();
|
||||
return 0;
|
||||
}
|
||||
|
|
@ -1764,7 +1764,7 @@ record_edge_info (basic_block bb)
|
|||
edge_info = allocate_edge_info (false_edge);
|
||||
record_conditions (edge_info, inverted, cond);
|
||||
|
||||
if (code == NE_EXPR)
|
||||
if (TREE_CODE (inverted) == EQ_EXPR)
|
||||
{
|
||||
edge_info->lhs = op1;
|
||||
edge_info->rhs = op0;
|
||||
|
@ -1791,7 +1791,7 @@ record_edge_info (basic_block bb)
|
|||
edge_info = allocate_edge_info (false_edge);
|
||||
record_conditions (edge_info, inverted, cond);
|
||||
|
||||
if (TREE_CODE (cond) == NE_EXPR)
|
||||
if (TREE_CODE (inverted) == EQ_EXPR)
|
||||
{
|
||||
edge_info->lhs = op0;
|
||||
edge_info->rhs = op1;
|
||||
|
|
Loading…
Reference in New Issue