tree-switch-conversion.c (emit_case_bit_tests): Generate MINUS_EXPR in unsigned type.

2012-08-06  Tom de Vries  <tom@codesourcery.com>

	* tree-switch-conversion.c (emit_case_bit_tests): Generate MINUS_EXPR in
	unsigned type.

From-SVN: r190168
This commit is contained in:
Tom de Vries 2012-08-06 08:32:20 +00:00 committed by Tom de Vries
parent d7f41b2d87
commit d9e408ded1
2 changed files with 9 additions and 4 deletions

View File

@ -1,3 +1,8 @@
2012-08-06 Tom de Vries <tom@codesourcery.com>
* tree-switch-conversion.c (emit_case_bit_tests): Generate MINUS_EXPR in
unsigned type.
2012-08-05 Venkataramanan Kumar <venkataramanan.kumar@amd.com> 2012-08-05 Venkataramanan Kumar <venkataramanan.kumar@amd.com>
* doc/invoke.texi: Document AMD btver2. * doc/invoke.texi: Document AMD btver2.

View File

@ -384,10 +384,10 @@ emit_case_bit_tests (gimple swtch, tree index_expr,
gsi = gsi_last_bb (switch_bb); gsi = gsi_last_bb (switch_bb);
/* idx = (unsigned) (x - minval) */ /* idx = (unsigned)x - minval. */
idx = fold_build2 (MINUS_EXPR, index_type, index_expr, idx = fold_convert (unsigned_index_type, index_expr);
fold_convert (index_type, minval)); idx = fold_build2 (MINUS_EXPR, unsigned_index_type, idx,
idx = fold_convert (unsigned_index_type, idx); fold_convert (unsigned_index_type, minval));
idx = force_gimple_operand_gsi (&gsi, idx, idx = force_gimple_operand_gsi (&gsi, idx,
/*simple=*/true, NULL_TREE, /*simple=*/true, NULL_TREE,
/*before=*/true, GSI_SAME_STMT); /*before=*/true, GSI_SAME_STMT);