gcc/ChangeLog: 2015-07-05 Kugan Vivekanandarajah * Makefile.in: Add gimple-ssa-type-promote.o. * cfgexpand.c (expand_debug_expr): Handle SEXT_EXPR. * common.opt: New option -ftree-type-promote. * expr.c (expand_expr_real_2): Handle SEXT_EXPR. * fold-const.c (int_const_binop_1): * gimple-ssa-type-promote.c: New file. * passes.def: Define new pass_type_promote. * timevar.def: Define new TV_TREE_TYPE_PROMOTE. * tree-cfg.c (verify_gimple_assign_binary): Handle SEXT_EXPR. * tree-inline.c (estimate_operator_cost): * tree-pass.h (make_pass_type_promote): New. * tree-pretty-print.c (dump_generic_node): Handle SEXT_EXPR. (op_symbol_code): Likewise. * tree-vrp.c (extract_range_from_binary_expr_1): Likewise. (simplify_bit_ops_using_ranges): Likewise. * tree.def: Define new SEXT_EXPR.