tree-eh.c (operation_could_trap_helper_p): Handle conversions like ordinary operations.

2014-11-03  Richard Biener  <rguenther@suse.de>

	* tree-eh.c (operation_could_trap_helper_p): Handle conversions
	like ordinary operations.
	* gimplify.c (gimplify_conversion): Gimplify CONVERT_EXPR
	as NOP_EXPR.

From-SVN: r217048
This commit is contained in:
Richard Biener 2014-11-03 15:49:43 +00:00 committed by Richard Biener
parent 2f73a6c7b4
commit 741233cf4d
3 changed files with 11 additions and 5 deletions

View file

@ -1,3 +1,10 @@
2014-11-03 Richard Biener <rguenther@suse.de>
* tree-eh.c (operation_could_trap_helper_p): Handle conversions
like ordinary operations.
* gimplify.c (gimplify_conversion): Gimplify CONVERT_EXPR
as NOP_EXPR.
2014-11-03 Joseph Myers <joseph@codesourcery.com>
* configure.ac (TARGET_GLIBC_MAJOR, TARGET_GLIBC_MINOR): Define

View file

@ -1739,6 +1739,10 @@ gimplify_conversion (tree *expr_p)
*expr_p = fold_build1_loc (loc, VIEW_CONVERT_EXPR, TREE_TYPE (*expr_p),
TREE_OPERAND (*expr_p, 0));
/* Canonicalize CONVERT_EXPR to NOP_EXPR. */
if (TREE_CODE (*expr_p) == CONVERT_EXPR)
TREE_SET_CODE (*expr_p, NOP_EXPR);
return GS_OK;
}

View file

@ -2436,11 +2436,6 @@ operation_could_trap_helper_p (enum tree_code op,
case UNEQ_EXPR:
return honor_snans;
case CONVERT_EXPR:
case FIX_TRUNC_EXPR:
/* Conversion of floating point might trap. */
return honor_nans;
case NEGATE_EXPR:
case ABS_EXPR:
case CONJ_EXPR: