trans.c (Attribute_to_gnu): Do not bother about NaN's if Machine_Overflows is true.
* gcc-interface/trans.c (Attribute_to_gnu) <Attr_Min/Attr_Max>: Do not bother about NaN's if Machine_Overflows is true. From-SVN: r223717
This commit is contained in:
parent
545b492365
commit
89d5c50bd1
2 changed files with 7 additions and 1 deletions
|
@ -1,3 +1,8 @@
|
|||
2015-05-26 Eric Botcazou <ebotcazou@adacore.com>
|
||||
|
||||
* gcc-interface/trans.c (Attribute_to_gnu) <Attr_Min/Attr_Max>: Do not
|
||||
bother about NaN's if Machine_Overflows is true.
|
||||
|
||||
2015-05-26 Eric Botcazou <ebotcazou@adacore.com>
|
||||
|
||||
* gcc-interface/trans.c (gnat_to_gnu) <N_Object_Declaration>: Really
|
||||
|
|
|
@ -2283,7 +2283,8 @@ Attribute_to_gnu (Node_Id gnat_node, tree *gnu_result_type_p, int attribute)
|
|||
a NaN so we implement the semantics of C99 f{min,max} to make it
|
||||
predictable in this case: if either operand is a NaN, the other
|
||||
is returned; if both operands are NaN's, a NaN is returned. */
|
||||
if (SCALAR_FLOAT_TYPE_P (gnu_result_type))
|
||||
if (SCALAR_FLOAT_TYPE_P (gnu_result_type)
|
||||
&& !Machine_Overflows_On_Target)
|
||||
{
|
||||
const bool lhs_side_effects_p = TREE_SIDE_EFFECTS (gnu_lhs);
|
||||
const bool rhs_side_effects_p = TREE_SIDE_EFFECTS (gnu_rhs);
|
||||
|
|
Loading…
Add table
Reference in a new issue