1. 15 Sep, 2015 26 commits
    • [PATCH] More class-ification of DOM · 10e0393c
              PR tree-optimization/47679
      	* tree-ssa-dom.c (expr_hash_elt): Now a class with ctors/dtors,
      	methods and private members.
      	(avail_exprs_stack): Similarly.  Change type of global
      	from a pair of expr_hash_elt_t to the new class.
      	(expr_elt_hasher::hash): Corresponding changes.
      	(expr_elt_hasher::equal): Similarly.
      	(avail_expr_hash): Similarly.
      	(pass_dominator::execute): Similarly.
      	(dom_opt_dom_walker::thread_across_edge): Similarly.
      	(record_cond): Similarly.
      	(dom_opt_dom_walker::before_dom_children): Similarly.
      	(dom_opt_dom_walker::after_dom_children): Similarly.
      	(lookup_avail_expr): Likewise.
      	(initialize_hash_element): Now a expr_hash_elt constructor.
      	(initialize_hash_element_from_expr): Similarly.
      	(free_expr_hash_elt_contents): Now a dtor for class expr_hash_elt.
      	(free_expr_hash_elt): Call dtor for the element.
      	(remove_local_expressions_from_table): Now the "pop_to_marker"
      	method in the available_exprs_stack class.
      	(avail_expr_stack::record_expr): Method factored out.
      	(print_expr_hash_elt): Now a method in the expr_hash_elt class.
      	Fix formatting.
      	(hashable_expr_equal_p): Fix formatting.
      
      From-SVN: r227801
      Jeff Law committed
    • Change of location_get_source_line signature · 31bdd08a
      gcc/ChangeLog:
      	* input.h (location_get_source_line): Drop "expanded_location"
      	param in favor of a file and line number.
      	* input.c (location_get_source_line): Likewise.
      	(dump_location_info): Update for change in signature of
      	location_get_source_line.
      	* diagnostic.c (diagnostic_print_caret_line): Likewise.
      
      gcc/c-family/ChangeLog:
      	* c-format.c (location_from_offset): Update for change in
      	signature of location_get_source_line.
      	* c-indentation.c (get_visual_column): Likewise.
      	(line_contains_hash_if): Likewise.
      
      From-SVN: r227800
      David Malcolm committed
    • defaults.h (STACK_OLD_CHECK_PROTECT): Adjust for -fno-exceptions. · c55721c0
      	* defaults.h (STACK_OLD_CHECK_PROTECT): Adjust for -fno-exceptions.
      	Bump to 4KB for SJLJ exceptions.
      	(STACK_CHECK_PROTECT): Likewise.  Bump to 8KB for SJLJ exceptions.
      	* doc/tm.texi.in (STACK_CHECK_PROTECT): Adjust.
      	* doc/tm.texi: Regenerate.
      
      From-SVN: r227799
      Eric Botcazou committed
    • [ARM] Fix arm bootstrap failure due to -Werror=shift-negative-value · 78dc36f8
      	* config/arm/arm.c (arm_gen_constant): Use HOST_WIDE_INT_M1U instead
      	of -1 when shifting.  Change type of val to unsigned HOST_WIDE_INT.
      	Update prototype.
      
      From-SVN: r227798
      Kyrylo Tkachov committed
    • re PR tree-optimization/67470 (ICE at -O3 on x86_64-linux-gnu in… · 4f912f91
      re PR tree-optimization/67470 (ICE at -O3 on x86_64-linux-gnu in compute_live_loop_exits, at tree-ssa-loop-manip.c:235)
      
      2015-09-15  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/67470
      	* tree-ssa-loop-im.c (execute_sm_if_changed): Preserve PHI
      	structure for PHI hoisting by inserting a forwarder block
      	if appropriate.
      
      	* gcc.dg/torture/pr67470.c: New testcase.
      
      From-SVN: r227797
      Richard Biener committed
    • arm.c (TARGET_OPTION_PRINT): Define. · 20adfc6c
      2015-09-15  Christian Bruel  <christian.bruel@st.com>
      
      	* config/arm/arm.c (TARGET_OPTION_PRINT): Define.
      	(arm_option_print): New function.
      
      From-SVN: r227796
      Christian Bruel committed
    • re PR target/52144 (ARM should support arm/thumb function attribute to permit… · c8b6aa7c
      re PR target/52144 (ARM should support arm/thumb function attribute to permit different instruction sets in the same source)
      
      2015-09-15  Christian Bruel  <christian.bruel@st.com>
      
      	PR target/52144
      	* config/arm/arm.c (arm_option_params_internal): Remove opts parameter.
      	* config/arm/arm-c.c (arm_cpu_builtins): Declare static.
      	Remove flags parameter.
      	* config/arm/arm.h (TARGET_32BIT_P, TARGET_ARM_QBIT_P)
      	(TARGET_ARM_SAT_P, TARGET_IDIV_P, TARGET_HAVE_LDREX_P)
      	(TARGET_HAVE_LDREXBH_P, TARGET_HAVE_LDREXD_P, TARGET_DSP_MULTIPLY_P)
      	(TARGET_ARM_FEATURE_LDREX_P, TARGET_INT_SIMD_P): Redefine macros with...
      	(TARGET_ARM_SAT, TARGET_IDIV, TARGET_HAVE_LDREX)
      	(TARGET_HAVE_LDREXBH, TARGET_HAVE_LDREXD, TARGET_ARM_FEATURE_LDREX)
      	(TARGET_DSP_MULTIPLY, TARGET_INT_SIMD): Redefined macros.
      	* gcc/config/arm/arm-protos.h (arm_cpu_builtins): Remove declaration.
      
      From-SVN: r227795
      Christian Bruel committed
    • [AArch64 array_mode 8/8] Add d-registers to TARGET_ARRAY_MODE_SUPPORTED_P · 635e66fe
      gcc/:
      
      	* config/aarch64/aarch64.h (AARCH64_VALID_SIMD_DREG_MODE): New.
      
      	* config/aarch64/aarch64.c (aarch64_array_mode_supported_p): Add
      	AARCH64_VALID_SIMD_DREG_MODE.
      
      gcc/testsuite/:
      
      	* gcc.target/aarch64/vect_int32x2x4_1.c: New.
      
      From-SVN: r227794
      Alan Lawrence committed
    • [AArch64 array_mode 7/8] Combine the expanders using VSTRUCT:nregs · 97755701
      	* config/aarch64/aarch64-simd.md (aarch64_ld2r<mode>,
      	aarch64_ld3r<mode>, aarch64_ld4r<mode>): Combine together, making...
      	(aarch64_simd_ld<VSTRUCT:nregs>r<VALLDIF:mode>): ...this.
      	(aarch64_ld2_lane<mode>, aarch64_ld3_lane<mode>,
      	aarch64_ld4_lane<mode>): Combine together, making...
      	(aarch64_ld<VSTRUCT:nregs>_lane<VALLDIF:mode>): ...this.
      	(aarch64_st2_lane<mode>, aarch64_st3_lane<mode>,
      	aarch64_st4_lane<mode>): Combine together, making...
      	(aarch64_st<VSTRUCT:nregs>_lane<VALLDIF:mode>): ...this.
      	* config/aarch64/iterators.md (nregs): Add comment.
      
      From-SVN: r227793
      Alan Lawrence committed
    • c-decl.c (lookup_label): Return NULL_TREE instead of 0. · 2f3bb934
      	* c-decl.c (lookup_label): Return NULL_TREE instead of 0.
      	(lookup_tag): Change the type of THISLEVEL_ONLY to bool.
      	Return NULL_TREE instead of 0.
      	(lookup_name): Return NULL_TREE instead of 0.
      	(lookup_name_in_scope): Likewise.
      	(shadow_tag_warned): Use true instead of 1 and NULL_TREE instead of 0.
      	(parser_xref_tag): Use false instead of 0.
      	(start_struct): Use true instead of 1.
      	(start_enum): Use true instead of 1 and NULL_TREE instead of 0.
      
      From-SVN: r227791
      Marek Polacek committed
    • [AArch64 array_mode 6/8] Remove V_TWO_ELEM, again using BLKmode + set_mem_size. · abf47511
      	* config/aarch64/aarch64-simd.md (aarch64_simd_ld2r<mode>):
      	Change operand mode from <V_TWO_ELEM> to BLK.
      	(aarch64_vec_load_lanesoi_lane<mode>): Likewise.
      	(aarch64_vec_store_lanesoi_lane<mode): Likewise
      	(aarch64_ld2r<mode>): Generate MEM rtx with BLKmode, call set_mem_size.
      	(aarch64_ld2_lane<mode>): Likewise.
      	(aarch64_st2_lane<VQ:mode>): Likewise.
      	* config/aarch64/iterators.md (V_TWO_ELEM): Remove.
      
      From-SVN: r227790
      Alan Lawrence committed
    • [AArch64 array_mode 5/8] Remove V_FOUR_ELEM, again using BLKmode + set_mem_size. · d866f024
      	* config/aarch64/aarch64-simd.md (aarch64_simd_ld4r<mode>):
      	Change operand mode from <V_FOUR_ELEM> to BLK.
      	(aarch64_vec_load_lanesxi_lane<mode>): Likewise.
      	(aarch64_vec_store_lanesxi_lane<mode): Likewise.
      	(aarch64_ld4r<mode>): Generate MEM rtx with BLKmode, call set_mem_size.
      	(aarch64_ld4_lane<mode>): Likewise.
      	(aarch64_st4_lane<mode>): Likewise.
      	* config/aarch64/iterators.md (V_FOUR_ELEM): Remove.
      
      From-SVN: r227789
      Alan Lawrence committed
    • re PR middle-end/67563 (verify_flow_info failed) · f6b4dc28
      2015-09-15  Richard Biener  <rguenther@suse.de>
      
      	PR middle-end/67563
      	* gimple-fold.c (gimplify_and_update_call_from_tree): Do not
      	transfer EH info from old to new stmt.
      	(replace_call_with_value): Likewise.
      	(replace_call_with_call_and_fold): Likewise.
      	(gimple_fold_builtin_memory_op): Likewise.
      	(gimple_fold_builtin_memset): Likewise.
      	(gimple_fold_builtin_stpcpy): Likewise.
      	(gimple_fold_call): Likewise.
      
      	* gcc.dg/pr67563.c: New testcase.
      
      From-SVN: r227788
      Richard Biener committed
    • [AArch64 array_mode 4/8] Remove EImode · 6ec0e5b9
      	* config/aarch64/aarch64.c (aarch64_simd_attr_length_rglist): Update
      	comment.
      	* config/aarch64/aarch64-builtins.c (ei_UP): Remove.
      	(aarch64_simd_intEI_type_node): Likewise.
      	(aarch64_simd_builtin_std_type): Remove EImode case.
      	(aarch64_init_simd_builtin_types): Don't create/add intEI_type_node.
      	* config/aarch64/aarch64-modes.def: Remove EImode.
      
      From-SVN: r227787
      Alan Lawrence committed
    • runtime: Ignore stack sizes when deciding when to GC. · 7e56d668
          
          This restores https://golang.org/cl/6081043 which was lost accidentally
          when updating a new version of libgo in https://golang.org/cl/22440043 .
          
          Reviewed-on: https://go-review.googlesource.com/14569
      
      From-SVN: r227784
      Ian Lance Taylor committed
    • [AArch64 array_mode 3/8] Stop using EImode in aarch64-simd.md and iterators.md · f4720b94
      	* config/aarch64/aarch64-simd.md (aarch64_simd_ld3r<mode>):
      	Change operand mode from <V_THREE_ELEM> to BLK.
      	(aarch64_vec_load_lanesci_lane<mode>): Likewise.
      	(aarch64_vec_store_lanesci_lane<mode>): Likewise.
      	(aarch64_ld3r<mode>): Generate MEM rtx with BLKmode, call set_mem_size.
      	(aarch64_ld3_lane<mode>): Likewise.
      	(aarch64_st3_lane<mode>): Likewise.
      	* config/aarch64/iterators.md (V_THREE_ELEM): Remove.
      
      From-SVN: r227783
      Alan Lawrence committed
    • [AArch64 array_mode 2/8] Remove VSTRUCT_DREG, use BLKmode for d-reg aarch64_st/ld expands · 6960bf55
      	* config/aarch64/aarch64-simd.md
      	(aarch64_ld2<mode>_dreg VD & DX, aarch64_st2<mode>_dreg VD & DX ):
      	Change all TImode operands to BLKmode.
      	(aarch64_ld3<mode>_dreg VD & DX, aarch64_st3<mode>_dreg VD & DX):
      	Change all EImode operands to BLKmode.
      	(aarch64_ld4<mode>_dreg VD & DX, aarch64_st4<mode>_dreg VD & DX):
      	Change all OImode operands to BLKmode.
      
      	(aarch64_ld<VSTRUCT:nregs><VDC:mode>): Generate MEM rtx with BLKmode
      	and call set_mem_size.
      	(aarch64_st<VSTRUCT:nregs><VDC:mode>): Likewise
      
      	* config/aarch64/iterators.md (VSTRUCT_DREG): Remove.
      
      From-SVN: r227782
      Alan Lawrence committed
    • [AArch64 array_mode 1/8] Rename vec_store_lanes<mode>_lane to aarch64_vec_store_lanes<mode>_lane · d30ab8e0
      	* config/aarch64/aarch64-simd.md (vec_store_lanesoi_lane<mode>): Rename
      	to...
      	(aarch64_vec_store_lanesoi_lane<mode>): ...this.
      
      	(vec_store_lanesci_lane<mode>): Rename to...
      	(aarch64_vec_store_lanesci_lane<mode>): ...this.
      
      	(vec_store_lanesxi_lane<mode>): Rename to...
      	(aarch64_vec_store_lanesxi_lane<mode>): ...this.
      
      	(aarch64_st2_lane<mode>, aarch64_st3_lane<mode>,
      	aarch64_st4_lane<mode>): Follow renaming.
      
      From-SVN: r227781
      Alan Lawrence committed
    • S/390: Add missing brackets. · ceab0d16
      gcc/ChangeLog:
      
      2015-09-15  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>
      
      	* config/s390/s390.c (s390_const_operand_ok): Add missing
      	brackets.
      
      From-SVN: r227780
      Andreas Krebbel committed
    • re PR lto/67568 (lto-streamer-in.c sanitizer runtime error: load of value 255,… · a9dfad6d
      re PR lto/67568 (lto-streamer-in.c sanitizer runtime error: load of value 255, which is not a valid value for type 'bool')
      
      2015-09-15  Richard Biener  <rguenther@suse.de>
      
      	PR lto/67568
      	* lto-streamer.h (lto_location_cache::current_sysp): Properly
      	initialize.
      	* lto-streamer-out.c (clear_line_info): Likewise.
      
      From-SVN: r227779
      Richard Biener committed
    • match-and-simplify.texi: Fix wording. · 07a4fb4b
      2015-09-15  Richard Biener  <rguenther@suse.de>
      
      	* doc/match-and-simplify.texi: Fix wording.
      
      From-SVN: r227778
      Richard Biener committed
    • libgo: don't provide ustat on arm64 GNU/Linux · 44c925bd
          
          This avoids linker warnings when linking against glibc, as apparently
          arm64 GNU/Linux does not support the ustat system call.
          
          Also update to automake 1.11.6, as that is the new GCC standard.
          
          Reviewed-on: https://go-review.googlesource.com/14567
      
      From-SVN: r227777
      Ian Lance Taylor committed
    • tree-ssa-loop-ivopts.c (get_shiftadd_cost): Strip unnecessary type conversion in op1. · f468efc5
      
      	* tree-ssa-loop-ivopts.c (get_shiftadd_cost): Strip
      	unnecessary type conversion in op1.
      
      From-SVN: r227776
      Bin Cheng committed
    • shrink-wrap: Rewrite · 23997c53
      This patch rewrites the shrink-wrapping algorithm, allowing non-linear
      pieces of CFG to be duplicated for use without prologue instead of just
      linear pieces.
      
      	* shrink-wrap.c (requires_stack_frame_p): Fix formatting.
      	(dup_block_and_redirect): Delete function.
      	(can_dup_for_shrink_wrapping): New function.
      	(fix_fake_fallthrough_edge): New function.
      	(try_shrink_wrapping): Rewrite function.
      	(convert_to_simple_return): Call fix_fake_fallthrough_edge.
      
      From-SVN: r227775
      Segher Boessenkool committed
    • configure.ac: [SH] Fix target pattern for TLS support test so to enable more arches. · 311adabe
      * configure.ac: [SH] Fix target pattern for TLS support test so to
      enable more arches.
      
      From-SVN: r227774
      Rich Felker committed
    • Daily bump. · 5ff55731
      From-SVN: r227773
      GCC Administrator committed
  2. 14 Sep, 2015 14 commits
    • [PATCH] Minor DOM cleanup · 55133eae
              PR tree-optimization/47679
      	* tree-ssa-dom.c (avail_expr_hash): Pass a pointer to a real
      	type rather than void *.
      
      From-SVN: r227762
      Jeff Law committed
    • re PR c++/44282 (fastcall is not mangled at all) · 65440c48
      	PR c++/44282
      
      	* mangle.c (write_CV_qualifiers_for_type): Also warn about regparm
      	mangling with lower -fabi-version.
      
      From-SVN: r227761
      Jason Merrill committed
    • The flag diagnostic_context::some_warnings_are_errors controls whether to give... · 0d179691
      The flag diagnostic_context::some_warnings_are_errors controls whether
      to give the message "all warnings being treated as errors". However, when
      warnings are buffered and then discarded, this flag is not reset. It turns
      out we do not need this flag at all, since we already count explicitly how
      many warnings were converted into errors, and this number is kept up to
      date for the buffered diagnostics used by Fortran.
      
      gcc/ChangeLog:
      
      2015-09-14  Manuel López-Ibáñez  <manu@gcc.gnu.org>
      
      	PR fortran/67460
      	* diagnostic.c (diagnostic_initialize): Do not set
      	some_warnings_are_errors.
      	(diagnostic_finish): Use DK_WERROR count instead.
      	(diagnostic_report_diagnostic): Do not set
      	some_warnings_are_errors.
      	* diagnostic.h (struct diagnostic_context): Remove
      	some_warnings_are_errors.
      
      gcc/testsuite/ChangeLog:
      
      2015-09-14  Manuel López-Ibáñez  <manu@gcc.gnu.org>
      
      	PR fortran/67460
      	* gfortran.dg/pr67460.f90: New test.
      
      From-SVN: r227760
      Manuel López-Ibáñez committed
    • compiler: Ignore result context in constant expressions. · 34e98513
          
          When evaluating a constant expression, the gofrontend would incorrectly
          force each operand to be represented as the resulting type before
          checking if the operation was valid with the untyped constants.
          According to the language specification on constant
          expressions(http://golang.org/ref/spec#Constant_expressions): "Untyped
          boolean, numeric, and string constants may be used as operands wherever
          it is legal to use an operand of boolean, numeric, or string type,
          respectively."
          
          Fixes golang/go#11566.
          
          Reviewed-on: https://go-review.googlesource.com/12716
      
      From-SVN: r227758
      Ian Lance Taylor committed
    • [SPARC] Simplify const_all_ones_operand · 5c270a92
      gen_rtx_CONST_VECTOR ensures that there is a single instance of:
      
             (const_vector:M [(const_int -1) ... (const_int -1)])
      
      for each M, so pointer equality with CONSTM1_RTX is enough.  Also,
      HOST_BITS_PER_WIDE_INT == 32 is doubly dead: HOST_WIDE_INT is always
      64 bits now, and we always use const_int rather than const_double
      or const_wide_int for all-ones values (or any other value that
      fits in a signed HOST_WIDE_INT).
      
      gcc/
      	* config/sparc/predicates.md (const_all_ones_operand): Use
      	CONSTM1_RTX to simplify definition.
      
      From-SVN: r227757
      Richard Sandiford committed
    • ChangeLog: Fix shitespace. · 81fc3217
      	* ChangeLog: Fix shitespace.
      	* testsuite/ChangeLog: Ditto.
      
      From-SVN: r227756
      Uros Bizjak committed
    • dump-new-function-3.c (dg-final): Also scan for $loopfn. · b4e240a1
      	* gcc.dg/gomp/dump-new-function-3.c (dg-final): Also scan for $loopfn.
      	* gcc.dg/gomp/notify-new-function-3.c (dg-final): Ditto.
      
      From-SVN: r227755
      Uros Bizjak committed
    • re PR c++/51911 ([C++11] G++ accepts new auto { list }) · 5a0f3af4
      /cp
      2015-09-14  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/51911
      	* parser.c (cp_parser_new_expression): Enforce 5.3.4/2 (as amended
      	per the spirit of DR 1467).
      
      /testsuite
      2015-09-14  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/51911
      	* g++.dg/cpp0x/new-auto1.C: New.
      
      From-SVN: r227753
      Paolo Carlini committed
    • re PR target/67061 (sh64-elf: internal compiler error: in sh_find_set_of_reg, at… · f6ba5bb2
      re PR target/67061 (sh64-elf: internal compiler error: in sh_find_set_of_reg, at config/sh/sh-protos.h:235)
      
      gcc/
      	PR target/67061
      	* config/sh/sh-protos.h (sh_find_set_of_reg): Simplfiy for-loop.
      	Handle call insns.
      
      From-SVN: r227750
      Oleg Endo committed
    • lto-wrapper.c (merge_and_complain): Add OPT_fdiagnostics_show_caret... · eb472171
      2015-09-14  Chung-Lin Tang  <cltang@codesourcery.com>
      
      	* lto-wrapper.c (merge_and_complain): Add OPT_fdiagnostics_show_caret,
      	OPT_fdiagnostics_show_option, OPT_fdiagnostics_show_location_, and
      	OPT_fshow_column to handled saved option cases.
      	(append_compiler_options): Do not skip the above added options.
      
      From-SVN: r227749
      Chung-Lin Tang committed
    • [AArch64] Handle literal pools for functions > 1 MiB in size. · b4f50fd4
          
      
      This patch fixes the issue in PR63304 where we have
      functions that are > 1MiB. The idea is to use adrp / ldr or adrp / add
      instructions to address the literal pools under the use of a command line
      option. I would like to turn this on by default on trunk but keep this
      disabled by default for the release branches in order to get some
      serious testing for this feature while it bakes on trunk.
      
      As a follow-up I would like to try and see if estimate_num_insns or
      something else can give us a heuristic to turn this on for "large" functions.
      After all the number of incidences of this are quite low in real life,
      so may be we should look to restrict this use as much as possible on the
      grounds that this code generation implies an extra integer register for
      addressing for every floating point and vector constant and I don't think
      that's great in code that already may have high register pressure.
      
      Tested on aarch64-none-elf with no regressions. A previous
      version was bootstrapped and regression tested.
      
      Applied to trunk.
      
      regards
      Ramana
      
      2015-09-14  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
      
          	PR target/63304
          	* config/aarch64/aarch64.c (aarch64_expand_mov_immediate): Handle
          	nopcrelative_literal_loads.
          	(aarch64_classify_address): Likewise.
          	(aarch64_constant_pool_reload_icode): Define.
          	(aarch64_secondary_reload): Handle secondary reloads for
          	literal pools.
          	(aarch64_override_options): Handle nopcrelative_literal_loads.
          	(aarch64_classify_symbol): Handle nopcrelative_literal_loads.
          	* config/aarch64/aarch64.md (aarch64_reload_movcp<GPF_TF:mode><P:mode>):
          	Define.
          	(aarch64_reload_movcp<VALL:mode><P:mode>): Likewise.
          	* config/aarch64/aarch64.opt (mpc-relative-literal-loads): New option.
          	* config/aarch64/predicates.md (aarch64_constant_pool_symref): New
          	predicate.
          	* doc/invoke.texi (mpc-relative-literal-loads): Document.
      
      From-SVN: r227748
      Ramana Radhakrishnan committed
    • re PR middle-end/67401 (Incorrect expand of __atomic_compare_exchange_8 using… · 641f1ab4
      re PR middle-end/67401 (Incorrect expand of __atomic_compare_exchange_8 using __sync_val_compare_and_swap_8)
      
      	PR middle-end/67401
      	* optabs.c (expand_atomic_compare_and_swap): Move result of emitting
      	sync_compare_and_swap_optab libcall to target_oval.
      
      From-SVN: r227746
      John David Anglin committed
    • c-opts.c (c_common_post_options): Set C++ standard earlier, before setting various warnings. · aa9f4b4c
      	* c-opts.c (c_common_post_options): Set C++ standard earlier, before
      	setting various warnings.
      
      From-SVN: r227744
      Marek Polacek committed
    • c-common.c (warn_for_sign_compare): Cast to unsigned when shifting a negative value. · aa256c4a
      	* c-common.c (warn_for_sign_compare): Cast to unsigned when shifting
      	a negative value.
      
      	* c-typeck.c (set_nonincremental_init_from_string): Use
      	HOST_WIDE_INT_M1U when shifting a negative value.
      
      	* rtlanal.c (split_double): Cast to unsigned when shifting a negative
      	value.
      	* sched-int.h (UNKNOWN_DEP_COST): Likewise.
      
      From-SVN: r227743
      Marek Polacek committed