1. 27 May, 2014 17 commits
    • vrp92.c: New testcase. · 4dd3be81
      2014-05-27  Richard Biener  <rguenther@suse.de>
      
      	* gcc.dg/tree-ssa/vrp92.c: New testcase.
      
      From-SVN: r210974
      Richard Biener committed
    • system.h (__STDC_FORMAT_MACROS): Define as very first thing. · 7ea7f668
      2014-05-27  Richard Biener  <rguenther@suse.de>
      
      	* system.h (__STDC_FORMAT_MACROS): Define as very first thing.
      
      From-SVN: r210973
      Richard Biener committed
    • re PR testsuite/61319 (The tests… · 2ef321b1
      re PR testsuite/61319 (The tests c-c++-common/ubsan/float-cast-overflow-(1|2|4).c fail on x86_64-apple-darwin*)
      
      	PR testsuite/61319
      	* c-c++-common/ubsan/float-cast.h: Conditionally define LLONG_MAX,
      	LLONG_MIN, and ULLONG_MAX.
      
      From-SVN: r210970
      Marek Polacek committed
    • re PR libgcc/61152 (Missing GCC Runtime Library Exception in some files that are… · c7eca9fe
      re PR libgcc/61152 (Missing GCC Runtime Library Exception in some files that are included in libgcc)
      
      	PR libgcc/61152
      	* config/arm/arm.h (License): Add note to COPYING.RUNTIME.
      	* config/arm/arm-cores.def (License): Same.
      	* config/arm/arm-opts.h (License): Same.
      	* config/arm/aout.h (License): Same.
      	* config/arm/bpabi.h (License): Same.
      	* config/arm/elf.h (License): Same.
      	* config/arm/linux-elf.h (License): Same.
      	* config/arm/linux-gas.h (License): Same.
      	* config/arm/netbsd-elf.h (License): Same.
      	* config/arm/uclinux-eabi.h (License): Same.
      	* config/arm/uclinux-elf.h (License): Same.
      	* config/arm/vxworks.h (License): Same.
      
      From-SVN: r210969
      Georg-Johann Lay committed
    • re PR libstdc++/61329 (#include <regex> and _GLIBCXX_DEBUG causes multiple symbol definition.) · ecb249dd
      	PR libstdc++/61329
      	* include/bits/regex_automaton.tcc (_State_base::_M_print): Add
      	inline specifier.
      	(_State_base::_M_dot): Likewise.
      
      From-SVN: r210968
      Jonathan Wakely committed
    • [ARM] Vectorise bswap* in aarch32. · 7a10ea9f
      	* config/arm/neon.md (neon_bswap<mode>): New pattern.
      	* config/arm/arm.c (neon_itype): Add NEON_BSWAP.
      	(arm_init_neon_builtins): Handle NEON_BSWAP.
      	Define required type nodes.
      	(arm_expand_neon_builtin): Handle NEON_BSWAP.
      	(arm_builtin_vectorized_function): Handle BUILTIN_BSWAP builtins.
      	* config/arm/arm_neon_builtins.def (bswap): Define builtins.
      	* config/arm/iterators.md (VDQHSD): New mode iterator.
      
      	* lib/target-supports.exp (check_effective_target_vect_bswap):
      	Specify arm*-*-* support.
      
      From-SVN: r210967
      Kyrylo Tkachov committed
    • tree-vrp.c (vrp_evaluate_conditional_warnv_with_ops_using_ranges): Try using… · 597f5997
      tree-vrp.c (vrp_evaluate_conditional_warnv_with_ops_using_ranges): Try using literal operands when comparing value-ranges failed.
      
      2014-05-27  Richard Biener  <rguenther@suse.de>
      
      	* tree-vrp.c (vrp_evaluate_conditional_warnv_with_ops_using_ranges):
      	Try using literal operands when comparing value-ranges failed.
      
      From-SVN: r210966
      Richard Biener committed
    • ira.c (commutative_operand): Adjust for change to recog_data. · f571b63f
      gcc/
      	* ira.c (commutative_operand): Adjust for change to recog_data.
      	[Missing from previous commit.]
      
      From-SVN: r210965
      Richard Sandiford committed
    • system.h (TEST_BIT): New macro. · 4cc8d9d2
      gcc/
      	* system.h (TEST_BIT): New macro.
      	* recog.h (alternative_mask): New type.
      	(ALL_ALTERNATIVES, ALTERNATIVE_BIT): New macros.
      	(recog_data_d): Replace alternative_enabled_p array with
      	enabled_alternatives.
      	(target_recog): New structure.
      	(default_target_recog, this_target_recog): Declare.
      	(get_enabled_alternatives, recog_init): Likewise.
      	* recog.c (default_target_recog, this_target_recog): New variables.
      	(get_enabled_alternatives): New function.
      	(extract_insn): Use it.
      	(recog_init): New function.
      	(preprocess_constraints, constrain_operands): Adjust for change to
      	recog_data.
      	* postreload.c (reload_cse_simplify_operands): Likewise.
      	* reload.c (find_reloads): Likewise.
      	* ira-costs.c (record_reg_classes): Likewise.
      	* ira-lives.c (single_reg_class): Likewise.  Fix bug in which
      	all alternatives after a disabled one would be skipped.
      	(ira_implicitly_set_insn_hard_regs): Likewise.
      	* ira.c (ira_setup_alts): Adjust for change to recog_data.
      	* lra-int.h (lra_insn_recog_data): Replace alternative_enabled_p
      	with enabled_alternatives.
      	* lra.c (free_insn_recog_data): Update accordingly.
      	(lra_update_insn_recog_data): Likewise.
      	(lra_set_insn_recog_data): Likewise.  Use get_enabled_alternatives.
      	* lra-constraints.c (process_alt_operands): Likewise.  Handle
      	only_alternative as part of the enabled mask.
      	* target-globals.h (this_target_recog): Declare.
      	(target_globals): Add a recog field.
      	(restore_target_globals): Restore this_target_recog.
      	* target-globals.c: Include recog.h.
      	(default_target_globals): Initialize recog field.
      	(save_target_globals): Likewise.
      	* reginfo.c (reinit_regs): Call recog_init.
      	* toplev.c (backend_init_target): Likewise.
      
      From-SVN: r210964
      Richard Sandiford committed
    • gencodes.c (main): Make LAST_INSN_CODE higher than any insn code, rather than… · 9921417d
      gencodes.c (main): Make LAST_INSN_CODE higher than any insn code, rather than any named insn's code.
      
      gcc/
      	* gencodes.c (main): Make LAST_INSN_CODE higher than any insn code,
      	rather than any named insn's code.
      
      From-SVN: r210963
      Richard Sandiford committed
    • getcwd.c: Include stdlib.h. · d9f99ec4
      	* intrinsics/getcwd.c: Include stdlib.h.
      
      From-SVN: r210962
      Uros Bizjak committed
    • declare-simd-1.f90: Require vect_simd_clones effective target. · 0389fbb5
      	* testsuite/libgomp.fortran/declare-simd-1.f90: Require
      	vect_simd_clones effective target.
      	* testsuite/libgomp.fortran/declare-simd-2.f90: Ditto.
      
      From-SVN: r210961
      Uros Bizjak committed
    • re PR libgcc/61152 (Missing GCC Runtime Library Exception in some files that are… · a5024e01
      re PR libgcc/61152 (Missing GCC Runtime Library Exception in some files that are included in libgcc)
      
      	PR libgcc/61152
      	* config/arm/arm-opts.h (License): Add GCC Runtime Library Exception.
      	* config/arm/arm-cores.def (License): Same.
      
      From-SVN: r210959
      Georg-Johann Lay committed
    • re PR testsuite/61319 (The tests… · 8e90d186
      re PR testsuite/61319 (The tests c-c++-common/ubsan/float-cast-overflow-(1|2|4).c fail on x86_64-apple-darwin*)
      
      2014-05-27  Dominique d'Humieres <dominiq@lps.ens.fr>
      
      	PR testsuite/61319
      	* c-c++-common/ubsan/float-cast-overflow-1.c: Make the sign of
      	-nan optional.
      	* c-c++-common/ubsan/float-cast-overflow-2.c: Likewise.
      	* c-c++-common/ubsan/float-cast-overflow-4.c: Likewise.
      
      From-SVN: r210958
      Dominique d'Humieres committed
    • 2014-05-27 Paolo Carlini <paolo.carlini@oracle.com> · ce762754
      	* Fix typo in the last ChangeLog entry.
      
      From-SVN: r210957
      Paolo Carlini committed
    • tree.h (decl_comdat_group): Declare. · 50efcce1
      
      	* tree.h (decl_comdat_group): Declare.
      	* cgraph.h (symtab_in_same_comdat_p): Move offline to ...
      	* tree.c (decl_comdat_group): Here.
      
      From-SVN: r210956
      Jan Hubicka committed
    • Daily bump. · 48f5146b
      From-SVN: r210955
      GCC Administrator committed
  2. 26 May, 2014 23 commits
    • * ChangeLog-2013: Correct an old entry. · 68c1d586
      From-SVN: r210951
      Uros Bizjak committed
    • ssa-fre-40.c: Cleanup fre1 tree dump. · d7a66046
      	* gcc.dg/tree-ssa/ssa-fre-40.c: Cleanup fre1 tree dump.
      
      From-SVN: r210950
      Uros Bizjak committed
    • Introduce xrealloc, use it. · d74fd3c7
      2014-05-26  Janne Blomqvist  <jb@gcc.gnu.org>
      
      	* libgfortran.h (xrealloc): New prototype.
      	* runtime/memory.c (xrealloc): New function.
      	* io/fbuf.c (fbuf_alloc): Use xrealloc.
      	* io/list_read.c (push_char_default): Likewise.
      	(push_char4): Likewise.
      
      From-SVN: r210948
      Janne Blomqvist committed
    • gfortran.texi (Project Status): Fix broken link. · b4fb1c21
      2014-05-26  Tobias Burnus  <burnus@net-b.de>
      
              * gfortran.texi (Project Status): Fix broken link.
      
      From-SVN: r210946
      Tobias Burnus committed
    • re PR rtl-optimization/61222 (ICE on valid code at -O2 and -O3 on… · 3e26c8f6
      re PR rtl-optimization/61222 (ICE on valid code at -O2 and -O3 on x86_64-linux-gnu in decompose, at rtl.h:1456)
      
      gcc/
      	PR rtl-optimization/61222
      	* combine.c (simplify_shift_const_1): When moving a PLUS outside
      	the shift, truncate the PLUS operand to the result mode.
      
      gcc/testsuite/
      	PR rtl-optimization/61222
      	* gcc.c-torture/compile/pr61222-1.c: New test.
      	* gcc.c-torture/compile/pr61222-2.c: Likewise.
      
      From-SVN: r210945
      Richard Sandiford committed
    • pr61191.c: Fix dg-error directives. · cf0ff174
      	* c-c++-common/cilk-plus/AN/pr61191.c: Fix dg-error directives.
      
      From-SVN: r210944
      Uros Bizjak committed
    • pr61278_1.c: Remove dg directives. · 06a5ec83
      	* gcc.dg/lto/pr61278_1.c: Remove dg directives.
      
      From-SVN: r210939
      Uros Bizjak committed
    • PR 61310 Rewrite implementation of CTIME and FDATE intrinsics. · ab75303f
      2014-05-26  Janne Blomqvist  <jb@gcc.gnu.org>
      
      	PR libfortran/61310
      	* intrinsics.texi (CTIME): Remove mention of locale-dependent
      	behavior.
      
      2014-05-26  Janne Blomqvist  <jb@gcc.gnu.org>
      
      	PR libfortran/61310
      	* intrinsics/ctime.c (strctime): Rename to gf_ctime, use snprintf
      	instead of strftime.
      	(fdate): Use gf_ctime.
      	(fdate_sub): Likewise.
      	(ctime): Likewise.
      	(ctime_sub): Likewise.
      
      From-SVN: r210938
      Janne Blomqvist committed
    • re PR c/61271 (10 * possible coding error with logical not (!)) · b8140cd6
      	PR target/61271
      	* config/i386/i386.c (ix86_rtx_costs)
      	<case CONST_INT, case CONST, case LABEL_REF, case SYMBOL_REF>:
      	Fix condition.
      
      From-SVN: r210937
      Uros Bizjak committed
    • ira.c (split_live_ranges_for_shrink_wrap): Remove bailout on subreg uses. · acea91c9
      2014-05-26  Martin Jambor  <mjambor@suse.cz>
      
      	* ira.c (split_live_ranges_for_shrink_wrap): Remove bailout on
      	subreg uses.
      
      From-SVN: r210936
      Martin Jambor committed
    • re PR fortran/55117 (Programs fails to read namelist (contains derived types objects)) · 1387b266
      2014-05-26  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
      
      	PR libgfortran/55117
      	* gfortran.dg/namelist_85.f90: New test.
      
      From-SVN: r210935
      Jerry DeLisle committed
    • [multiple changes] · 3b111bd7
      2014-05-26  Tobias Burnus  <burnus@net-b.de>
      
      	PR fortran/55117
      	* trans-io.c (nml_full_name, transfer_namelist_element): Insert
      	a '+' rather then '%' to differentiate namelist variable names
      	that are based on extended derived types.
      
      2014-05-26  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
      
      	PR libgfortran/55117
      	* io/list_read.c (extended_look_ahead): New helper function to
      	scan the namelist name and look for matches with the new '+'
      	extended type parent indicator.  (str_comp_extended): New
      	helper function to compare the namelist name with the varname
      	namelist. (find_nml_name): Use the new helper functions to match
      	the extended type varnames.
      
      From-SVN: r210934
      Jerry DeLisle committed
    • wide-int.h (wi::int_traits <long>, [...]): Provide specializations. · d93461f7
      2014-05-26  Richard Biener  <rguenther@suse.de>
      
      	* wide-int.h (wi::int_traits <long>, wi::int_traits <unsigned long>,
      	wi::int_traits <long long>, wi::int_traits <unsigned long long>):
      	Provide specializations.
      	(wi::int_traits <HOST_WIDE_INT>,
      	wi::int_traits <unsigned HOST_WIDE_INT>): Remove specializations.
      
      From-SVN: r210933
      Richard Biener committed
    • re PR target/61098 (Poor code setting count register for large loops) · bfe51f42
      	PR target/61098
      	* config/rs6000/rs6000.c (rs6000_emit_set_const): Remove unneeded
      	params and return a bool.  Remove dead code.  Update comment.
      	Assert we have a const_int source.  Remove bogus code from
      	32-bit HWI days.  Move !TARGET_POWERPC64 handling, and correct
      	handling of constants > 2G and reg_equal note, from..
      	(rs6000_emit_set_long_const): ..here.  Remove unneeded param and
      	return value.  Update comment.  If we can, use a new pseudo
      	for intermediate calculations.
      	* config/rs6000/rs6000-protos.h (rs6000_emit_set_const): Update
      	prototype.
      	* config/rs6000/rs6000.md (movsi_internal1_single+1): Update
      	call to rs6000_emit_set_const in splitter.
      	(movdi_internal64+2, +3): Likewise.
      
      From-SVN: r210932
      Alan Modra committed
    • system.h: Define __STDC_FORMAT_MACROS before including inttypes.h. · a9243bfc
      2014-05-23  Richard Biener  <rguenther@suse.de>
      
      	* system.h: Define __STDC_FORMAT_MACROS before
      	including inttypes.h.
      	* hwint.h (HOST_WIDEST_INT, HOST_BITS_PER_WIDEST_INT,
      	HOST_WIDEST_INT_PRINT, HOST_WIDEST_INT_PRINT_DEC,
      	HOST_WIDEST_INT_PRINT_DEC_C, HOST_WIDEST_INT_PRINT_UNSIGNED,
      	HOST_WIDEST_INT_PRINT_HEX, HOST_WIDEST_INT_PRINT_DOUBLE_HEX,
      	HOST_WIDEST_INT_C): Remove.
      	(PRId64, PRIi64, PRIo64, PRIu64, PRIx64, PRIX64): Define
      	if C99 inttypes.h is not available.
      
      	* coretypes.h (gcov_type, gcov_type_unsigned): Use [u]int64_t.
      	* gcov-io.h (gcov_type, gcov_type_unsigned): Likewise.
      	* gcov-io.c (gcov_histo_index): Drop non-64bit hwi case.
      	* cfgloop.h (struct niter_desc): Use uint64_t for niter field.
      	* bitmap.c (struct bitmap_descriptor_d): Use uint64_t for counters.
      	(struct output_info): Likewise.
      	(print_statistics): Adjust.
      	(dump_bitmap_statistics): Likewise.
      	* bt-load.c (migrate_btr_defs): Print with PRId64.
      	* cfg.c (dump_edge_info, dump_bb_info): Likewise.
      	(MAX_SAFE_MULTIPLIER): Adjust.
      	* cfghooks.c (dump_bb_for_graph): Print with PRId64.
      	* cgraph.c (cgraph_redirect_edge_call_stmt_to_callee,
      	dump_cgraph_node): Likewise.
      	* final.c (dump_basic_block_info): Likewise.
      	* gcov-dump.c (tag_counters, tag_summary, dump_working_sets): Likewise.
      	* gcov.c (format_gcov): Likewise.
      	* ipa-cp.c (good_cloning_opportunity_p): Likewise.  Use int64_t
      	for calculation.
      	(get_clone_agg_value): Use HOST_WIDE_INT for offset.
      	* ipa-inline.c (compute_max_insns): Use int64_t for calcuation.
      	(inline_small_functions, dump_overall_stats, dump_inline_stats):
      	Use PRId64 for dumping.
      	* ipa-profile.c (dump_histogram, ipa_profile): Likewise.
      	* ira-color.c (struct allocno_hard_regs): Use int64_t for cost.
      	(add_allocno_hard_regs): Adjust.
      	* loop-doloop.c (doloop_modify): Print using PRId64.
      	* loop-iv.c (inverse): Compute in uint64_t.
      	(determine_max_iter, iv_number_of_iterations): Likewise.
      	* loop-unroll.c (decide_peel_completely, decide_peel_simple):
      	Print using PRId64.
      	* lto-streamer-out.c (write_symbol): Use uint64_t.
      	* mcf.c (CAP_INFINITY): Use int64_t maximum.
      	(dump_fixup_edge, create_fixup_graph, cancel_negative_cycle,
      	find_max_flow, adjust_cfg_counts): Use int64_t and dump with PRId64.
      	* modulo-sched.c (const_iteration_count): Use int64_t.
      	(sms_schedule): Dump using PRId64.
      	* predict.c (dump_prediction): Likewise.
      	* pretty-print.h (pp_widest_integer): Remove.
      	* profile.c (get_working_sets, is_edge_inconsistent,
      	is_inconsistent, read_profile_edge_counts): Dump using PRId64.
      	* tree-pretty-print.c (pp_double_int): Remove case handling
      	HOST_BITS_PER_DOUBLE_INT == HOST_BITS_PER_WIDEST_INT.
      	* tree-ssa-math-opts.c (struct symbolic_number): Use uint64_t
      	and adjust users.
      	(pass_optimize_bswap::execute): Remove restriction on hosts.
      	* tree-streamer-in.c (streamer_alloc_tree): Use HOST_WIDE_INT.
      	* tree-streamer-out.c (streamer_write_tree_header): Likewise.
      	* tree.c (widest_int_cst_value): Remove.
      	* tree.h (widest_int_cst_value): Likewise.
      	* value-prof.c (dump_histogram_value): Print using PRId64.
      	* gengtype.c (main): Also inject int64_t.
      	* ggc-page.c (struct max_alignment): Use int64_t.
      	* alloc-pool.c (struct allocation_object_def): Likewise.
      	* ira-conflicts.c (build_conflict_bit_table): Use uint64_t
      	for computation.
      	* doc/tm.texi.in: Remove reference to HOST_WIDEST_INT.
      	* doc/tm.texi: Regenerated.
      	* gengtype-lex.l (IWORD): Handle [u]int64_t.
      	* config/sh/sh.c (expand_cbranchdi4): Use gcov_type.
      	* config/mmix/mmix-protos.h (mmix_intval, mmix_shiftable_wyde_value,
      	mmix_output_register_setting): Use [u]int64_t in prototypes.
      	* config/mmix/mmix.c (mmix_print_operand, mmix_output_register_setting,
      	mmix_shiftable_wyde_value, mmix_output_shiftvalue_op_from_str,
      	mmix_output_octa, mmix_output_shifted_value): Adjust.
      	(mmix_intval): Adjust.  Remove unreachable case.
      	* config/mmix/mmix.md (*nonlocal_goto_receiver_expanded): Use
      	int64_t.
      
      	lto/
      	* lto.c (lto_parse_hex): Use int64_t.
      	(lto_resolution_read): Likewise.
      
      From-SVN: r210931
      Richard Biener committed
    • re PR c/61191 (cilkplus ICE on syntax error) · 97563bc8
      gcc/c/
      	PR c/61191
      	* c-array-notation.c (fix_builtin_array_notation_fn): Check invalid
      	function parameters.
      
      gcc/testsuite/
      	PR c/61191
      	* c-c++-common/cilk-plus/AN/pr61191.c: Check for correct handling of
      	the case with syntax error.
      
      From-SVN: r210930
      Igor Zamyatin committed
    • configure.ac: Remove long long and __int64 type checks... · edf6ddf6
      2014-05-26  Richard Biener  <rguenther@suse.de>
      
      	libcpp/
      	* configure.ac: Remove long long and __int64 type checks,
      	add check for uint64_t and fail if that wasn't found.
      	* include/cpplib.h (cpp_num_part): Use uint64_t.
      	* config.in: Regenerate.
      	* configure: Likewise.
      
      	gcc/
      	* configure.ac: Drop __int64 type check.  Insist that we
      	found uint64_t and int64_t.
      	* hwint.h (HOST_BITS_PER___INT64): Remove.
      	(HOST_BITS_PER_WIDE_INT): Define to 64 and remove
      	__int64 case.
      	(HOST_WIDE_INT_PRINT_*): Remove 32bit case.
      	(HOST_WIDEST_INT*): Define to HOST_WIDE_INT*.
      	(HOST_WIDEST_FAST_INT): Remove __int64 case.
      	* vmsdbg.h (struct _DST_SRC_COMMAND): Use int64_t
      	for dst_q_src_df_rms_cdt.
      	* configure: Regenerate.
      	* config.in: Likewise.
      
      From-SVN: r210928
      Richard Biener committed
    • * ChangeLog: Fix last entry. · 49f002b6
      From-SVN: r210927
      Uros Bizjak committed
    • re PR target/61249 (_mm_frcz_ss, _mm_frcz_sd: __builtin_ia32_vfrczss,… · d4082970
      re PR target/61249 (_mm_frcz_ss, _mm_frcz_sd: __builtin_ia32_vfrczss, __builtin_ia32_vfrczsd require 2 arguments)
      
      	PR target/61249
      	* doc/extend.texi: Fix parameter lists of __builtin_ia32_vfrczs[sd],
      	__builtin_ia32_mpsadbw256.
      
      From-SVN: r210923
      Michael Tautschnig committed
    • re PR rtl-optimization/61278 (ICE with LTO (lto-wrapper failed) on x86_64-linux-gnu in 64-bit mode) · d29d688a
      ChangeLog:
      2014-05-26  Zhenqiang Chen  <zhenqiang.chen@linaro.org>
      
      	PR rtl-optimization/61278
      	* shrink-wrap.c (move_insn_for_shrink_wrap): Check df_live.
      
      testsuite/ChangeLog:
      2014-05-26  Zhenqiang Chen  <zhenqiang.chen@linaro.org>
      
      	* gcc.dg/lto/pr61278_0.c: New test.
      	* gcc.dg/lto/pr61278_1.c: New test.
      
      From-SVN: r210922
      Zhenqiang Chen committed
    • re PR rtl-optimization/61220 (ICE on valid code at -O2 on x86_64-linux-gnu in… · 88f32f0f
      re PR rtl-optimization/61220 (ICE on valid code at -O2 on x86_64-linux-gnu in maybe_record_trace_start, at dwarf2cfi.c:2239)
      
      ChangeLog:
      2014-05-26  Zhenqiang Chen  <zhenqiang.chen@linaro.org>
      
      	PR rtl-optimization/61220
      	Part of PR rtl-optimization/61225
      	* shrink-wrap.c (move_insn_for_shrink_wrap): Skip SP and FP adjustment
      	insn; skip split_edge for a block with only one successor.
      
      testsuite/ChangeLog:
      2014-05-26  Zhenqiang Chen  <zhenqiang.chen@linaro.org>
      
      	* gcc.dg/pr61220.c: New test.
      	* gcc.dg/shrink-wrap-loop.c: Disable for x86_64 -m32 mode.
      
      From-SVN: r210921
      Zhenqiang Chen committed
    • Daily bump. · 936190c6
      From-SVN: r210918
      GCC Administrator committed