Skip to content
Snippets Groups Projects
  1. Oct 20, 2009
    • Adam Nemet's avatar
      mips.c (mips_binary_cost): Add new argument speed. · 53d66977
      Adam Nemet authored
      	* config/mips/mips.c (mips_binary_cost): Add new argument speed.
      	Use when calling rtx_costs.
      	(mips_rtx_costs): Fix formatting.  Use argument speed rather than the
      	global optimize_size.  Pass speed to mips_binary_cost.
      
      From-SVN: r153041
      53d66977
    • Paolo Carlini's avatar
      re PR libstdc++/41773 (Many libstdc++ failures) · 927dc7c6
      Paolo Carlini authored
      2009-10-20  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR libstdc++/41773
      	Revert:
      	2009-10-20  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	* include/bits/basic_string.h (_S_construct(const _CharT*, size_type,
      	const _Alloc&)): New, declare.
      	(_S_construct(_CharT*, _CharT*, const _Alloc&),
      	_S_construct(const _CharT*, const _CharT*, const _Alloc&),
      	_S_construct(iterator, iterator, const _Alloc&),
      	_S_construct(const_iterator, const_iterator, const _Alloc&)): New,
      	forward to the latter.
      	* include/bits/basic_string.tcc (_S_construct(const _CharT*,
      	size_type, const _Alloc&)): Define.
      	(basic_string(const basic_string&, size_type, size_type),
      	basic_string(const basic_string&, size_type, size_type,
      	const _Alloc&), basic_string(const _CharT*, size_type,
      	const _Alloc&), basic_string(const _CharT*, const _Alloc&),
      	basic_string(initializer_list<>, const _Alloc&)): Call the latter.
      	* config/abi/pre/gnu.ver: Remove recently added exports.
      	* src/string-inst.cc: Remove instantiations.
      
      From-SVN: r153040
      927dc7c6
    • Paolo Carlini's avatar
      re PR libstdc++/41763 (valarray_array.h seems to overuse __restrict__) · b6a182f2
      Paolo Carlini authored
      2009-10-20  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR libstdc++/41763
      	* include/bits/valarray_array.h (__valarray_default_construct,
      	__valarray_fill_construct, __valarray_copy_construct, __valarray_sum
      	__valarray_destroy_elements, __valarray_product): Do not qualify with
      	__restrict__ pointers accessing data also accessed by other pointers.
      
      From-SVN: r153039
      b6a182f2
    • Jakub Jelinek's avatar
      rs6000.c (def_builtin): Set TREE_READONLY instead of TREE_CONSTANT. · ddd0c781
      Jakub Jelinek authored
      	* config/rs6000/rs6000.c (def_builtin): Set TREE_READONLY instead
      	of TREE_CONSTANT.
      
      From-SVN: r153038
      ddd0c781
    • Richard Sandiford's avatar
      rtl.h (simplify_replace_fn_rtx): Declare. · 3af4ba41
      Richard Sandiford authored
      gcc/
      	* rtl.h (simplify_replace_fn_rtx): Declare.
      	(wrap_constant, unwrap_constant): Delete.
      	* cfgexpand.c (unwrap_constant, wrap_constant): Delete.
      	(expand_debug_expr): Don't call wrap_constant.
      	* combine.c (rtx_subst_pair): Only define for AUTO_INC_DEC.
      	(auto_adjust_pair): Fold into...
      	(propagate_for_debug_subst): ...here.  Only define for AUTO_INC_DEC.
      	Just return a new value.
      	(propagate_for_debug): Use simplify_replace_fn_rtx for AUTO_INC_DEC,
      	otherwise use simplify_replace_rtx.
      	* cselib.c (wrap_constant): Reinstate old definition.
      	(cselib_expand_value_rtx_1): Don't wrap constants.
      	* gcse.c (try_replace_reg): Don't use copy_rtx in the call to
      	simplify_replace_rtx.
      	(bypass_block): Fix formatting in calls to simplify_replace_rtx.
      	* reload1.c (reload): Skip all uses for an insn before adjusting it.
      	Use simplify_replace_rtx.
      	* simplify-rtx.c (simplify_replace_fn_rtx): New function,
      	adapted from...
      	(simplify_replace_rtx): ...here.  Turn into a wrapper for
      	simplify_replace_fn_rtx.
      	(simplify_unary_operation): Don't unwrap CONSTs.
      	* var-tracking.c (check_wrap_constant): Delete.
      	(vt_expand_loc_callback): Don't call it.
      	(vt_expand_loc): Likewise.
      
      From-SVN: r153037
      3af4ba41
    • Kai Tietz's avatar
      Fix identation issue I missed to correct. · 6a1868c7
      Kai Tietz authored
      From-SVN: r153036
      6a1868c7
    • Pascal Obry's avatar
      cygming.h (DWARF_FRAME_REGNUM): Add enclosing parens. · 5c9ffc86
      Pascal Obry authored
      
      2009-10-20  Pascal Obry  <obry@adacore.com>
                  Eric Botcazou  <ebotcazou@adacore.com>
      
              * config/i386/cygming.h (DWARF_FRAME_REGNUM): Add enclosing parens.
      
      
      Co-Authored-By: default avatarEric Botcazou <ebotcazou@adacore.com>
      
      From-SVN: r153033
      5c9ffc86
    • Paolo Carlini's avatar
      basic_string.h (_S_construct(const _CharT*, size_type, const _Alloc&)): New, declare. · 50e9ed7c
      Paolo Carlini authored
      2009-10-20  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	* include/bits/basic_string.h (_S_construct(const _CharT*, size_type,
      	const _Alloc&)): New, declare.
      	(_S_construct(_CharT*, _CharT*, const _Alloc&),
      	_S_construct(const _CharT*, const _CharT*, const _Alloc&),
      	_S_construct(iterator, iterator, const _Alloc&),
      	_S_construct(const_iterator, const_iterator, const _Alloc&)): New,
      	forward to the latter.
      	* include/bits/basic_string.tcc (_S_construct(const _CharT*,
      	size_type, const _Alloc&)): Define.
      	(basic_string(const basic_string&, size_type, size_type),
      	basic_string(const basic_string&, size_type, size_type,
      	const _Alloc&), basic_string(const _CharT*, size_type,
      	const _Alloc&), basic_string(const _CharT*, const _Alloc&),
      	basic_string(initializer_list<>, const _Alloc&)): Call the latter.
      	* config/abi/pre/gnu.ver: Remove recently added exports.
      	* src/string-inst.cc: Remove instantiations.
      
      From-SVN: r153023
      50e9ed7c
    • Michael Matz's avatar
      * loop-invariant.c (create_new_invariant): Use different magic number. · 1578e910
      Michael Matz authored
      From-SVN: r153022
      1578e910
    • Joel Dice's avatar
      re PR java/28474 (mangle_name.c mangles names unecessarily) · 5a3a8eb1
      Joel Dice authored
      2009-10-20  Joel Dice <dicej@mailsnare.net>
      
              PR java/28474
              * mangle_name.c (append_unicode_mangled_name): Fix mangling
              of names with multiple underscores and "U".
              (unicode_mangling_length): Likewise.
      
      From-SVN: r153021
      5a3a8eb1
    • Richard Guenther's avatar
      20091020-3_0.c: New testcase. · a30f8936
      Richard Guenther authored
      2009-10-20  Richard Guenther  <rguenther@suse.de>
      
      	* gcc.dg/lto/20091020-3_0.c: New testcase.
      
      From-SVN: r153019
      a30f8936
    • Richard Earnshaw's avatar
      re PR target/39247 (FAIL: gcc.dg/tree-prof/bb-reorg.c compilation, -fprofile-use -D_PROFILE_USE) · 70041f8a
      Richard Earnshaw authored
      	PR target/39247
      	* arm.c (arm_override_options): Forcibly disable hot/cold block
      	partitioning.
      
      From-SVN: r153018
      70041f8a
    • Alexandre Oliva's avatar
      re PR debug/41739 (Failed to bootstrap on Linux/ia64) · 8ee2bec9
      Alexandre Oliva authored
      	PR debug/41739
      	* haifa-sched.c (try_ready): Skip debug deps updating speculation
      	status.
      
      From-SVN: r153017
      8ee2bec9
    • Richard Guenther's avatar
      ggc-page.c: Include cfgloop.h. · b78cd885
      Richard Guenther authored
      2009-10-20  Richard Guenther  <rguenther@suse.de>
      
      	* ggc-page.c: Include cfgloop.h.
      	(struct max_alignment): Drop long double, add void *.
      	(extra_order_size_table): Add low non-power-of-two multiples
      	of MAX_ALIGNMENT.  Drop small type-based entries, add
      	tree_type, cgraph_node and loop.
      	* alloc-pool.c (struct allocation_object_def): Drop long double
      	aligning element.
      
      From-SVN: r153014
      b78cd885
    • Phil Muldoon's avatar
      printers.py (StdTuplePrinter): New printer. · 8345c8e4
      Phil Muldoon authored
      2009-10-20  Phil Muldoon <pmuldoon@redhat.com>
      
      	* python/libstdcxx/v6/printers.py (StdTuplePrinter): New printer.
      	(build_libstdcxx_dictionary): Add StdTuplePrinter registration.
      
      From-SVN: r153013
      8345c8e4
    • Richard Guenther's avatar
      re PR lto/41761 (lto1: error: type mismatch in component reference (const with non-const)) · 20d36f0e
      Richard Guenther authored
      2009-10-20  Richard Guenther  <rguenther@suse.de>
      
              PR lto/41761
      	* gimple.c (gimple_register_type): Make sure we register
      	the types main variant first.
      
      	* gcc.dg/lto/20091020-1_0.c: New testcase.
      	* gcc.dg/lto/20091020-1_1.c: Likewise.
      	* gcc.dg/lto/20091020-2_0.c: Likewise.
      	* gcc.dg/lto/20091020-2_1.c: Likewise.
      
      From-SVN: r153012
      20d36f0e
    • Jakub Jelinek's avatar
      re PR debug/41340 (GCC produces different code with and without -g option) · dd8c071d
      Jakub Jelinek authored
      	PR debug/41340
      	* loop-invariant.c (calculate_loop_reg_pressure): Don't count regs
      	referenced just in DEBUG_INSNs.
      
      	* gcc.dg/pr41340.c: New test.
      
      From-SVN: r153011
      dd8c071d
    • Richard Guenther's avatar
      gimple.c (gimple_types_compatible_p): Simplify. · b0cc341f
      Richard Guenther authored
      2009-10-20  Richard Guenther  <rguenther@suse.de>
      
      	* gimple.c (gimple_types_compatible_p): Simplify.  Move
      	cheap checks before hashtable queries.  Add checks for
      	TYPE_NONALIASED_COMPONENT and DECL_NONADDRESSABLE_P.
      
      From-SVN: r153010
      b0cc341f
    • Eric Botcazou's avatar
      tree-sra.c (build_ref_for_offset_1): Skip fields without size or with size... · a1aa1701
      Eric Botcazou authored
      tree-sra.c (build_ref_for_offset_1): Skip fields without size or with size that can't be represented as a host integer.
      
      	* tree-sra.c (build_ref_for_offset_1) <RECORD_TYPE>: Skip fields
      	without size or with size that can't be represented as a host integer.
      
      From-SVN: r153008
      a1aa1701
    • Alexandre Oliva's avatar
      tree-ssa-dce.c (eliminate_unnecessary_stmts): Don't regard the removal of a... · 717f4048
      Alexandre Oliva authored
      tree-ssa-dce.c (eliminate_unnecessary_stmts): Don't regard the removal of a debug stmt as a significant change.
      
      	* tree-ssa-dce.c (eliminate_unnecessary_stmts): Don't regard
      	the removal of a debug stmt as a significant change.
      
      From-SVN: r153007
      717f4048
    • Wolfgang Gellerich's avatar
      s390.md: Added agen condition to operand forwarding bypasses. · 421b1e6b
      Wolfgang Gellerich authored
      2009-10-20  Wolfgang Gellerich  <gellerich@de.ibm.com>
      
      	* config/s390/s390.md: Added agen condition to operand
      	forwarding bypasses. 
      	Added bypass for early address generation use of int results.
      	Updated comments.
      
      From-SVN: r153006
      421b1e6b
    • Stefan Dösinger's avatar
      i386.c: Remove signal.h #include. · bd62d832
      Stefan Dösinger authored
      	* config/i386/i386.c: Remove signal.h #include.
      
      From-SVN: r153005
      bd62d832
    • Paul Thomas's avatar
      re PR fortran/41706 ([OOP] Calling one TBP as an actual argument of another TBP) · f116b2fc
      Paul Thomas authored
      2009-10-20  Paul Thomas  <pault@gcc.gnu.org>
      
      	PR fortran/41706
      	* resolve.c (resolve_arg_exprs): New function.
      	(resolve_class_compcall): Call the above.
      	(resolve_class_typebound_call): The same.
      
      2009-10-20  Paul Thomas  <pault@gcc.gnu.org>
      
      	PR fortran/41706
      	* gfortran.dg/class_9 : New test.
      
      From-SVN: r153004
      f116b2fc
    • Jie Zhang's avatar
      simplify-rtx.c (simplify_const_unary_operation): Handle SS_ABS. · 91c29f68
      Jie Zhang authored
      	* simplify-rtx.c (simplify_const_unary_operation): Handle
      	SS_ABS.
      	* doc/rtl.texi: Document ss_abs.
      
      From-SVN: r153003
      91c29f68
    • GCC Administrator's avatar
      Daily bump. · 8c44c845
      GCC Administrator authored
      From-SVN: r153002
      8c44c845
  2. Oct 19, 2009
    • Jakub Jelinek's avatar
      charset.c (cpp_init_iconv): Initialize utf8_cset_desc. · 2c6e3f55
      Jakub Jelinek authored
      	* charset.c (cpp_init_iconv): Initialize utf8_cset_desc.
      	(_cpp_destroy_iconv): Destroy utf8_cset_desc, char16_cset_desc
      	and char32_cset_desc.
      	(converter_for_type): Handle CPP_UTF8STRING.
      	(cpp_interpret_string): Handle CPP_UTF8STRING and raw-strings.
      	* directives.c (get__Pragma_string): Handle CPP_UTF8STRING.
      	(parse_include): Reject raw strings.
      	* include/cpplib.h (CPP_UTF8STRING): New token type.
      	* internal.h (struct cpp_reader): Add utf8_cset_desc field.
      	* lex.c (lex_raw_string): New function.
      	(lex_string): Handle u8 string literals, call lex_raw_string
      	for raw string literals.
      	(_cpp_lex_direct): Call lex_string even for u8" and {,u,U,L,u8}R"
      	sequences.
      	* macro.c (stringify_arg): Handle CPP_UTF8STRING.
      
      	* c-common.c (c_parse_error): Handle CPP_UTF8STRING.
      	* c-lex.c (c_lex_with_flags): Likewise.  Test C_LEX_STRING_NO_JOIN
      	instead of C_LEX_RAW_STRINGS.
      	(lex_string): Handle CPP_UTF8STRING.
      	* c-parser.c (c_parser_postfix_expression): Likewise.
      	* c-pragma.h (C_LEX_RAW_STRINGS): Rename to ...
      	(C_LEX_STRING_NO_JOIN): ... this.
      
      	* parser.c (cp_lexer_print_token, cp_parser_is_string_literal,
      	cp_parser_string_literal, cp_parser_primary_expression): Likewise.
      	(cp_lexer_get_preprocessor_token): Use C_LEX_STRING_JOIN instead
      	of C_LEX_RAW_STRINGS.
      
      	* gcc.dg/raw-string-1.c: New test.
      	* gcc.dg/raw-string-2.c: New test.
      	* gcc.dg/raw-string-3.c: New test.
      	* gcc.dg/raw-string-4.c: New test.
      	* gcc.dg/raw-string-5.c: New test.
      	* gcc.dg/raw-string-6.c: New test.
      	* gcc.dg/raw-string-7.c: New test.
      	* gcc.dg/utf8-1.c: New test.
      	* gcc.dg/utf8-2.c: New test.
      	* gcc.dg/utf-badconcat2.c: New test.
      	* gcc.dg/utf-dflt2.c: New test.
      	* gcc.dg/cpp/include6.c: New test.
      	* g++.dg/ext/raw-string-1.C: New test.
      	* g++.dg/ext/raw-string-2.C: New test.
      	* g++.dg/ext/raw-string-3.C: New test.
      	* g++.dg/ext/raw-string-4.C: New test.
      	* g++.dg/ext/raw-string-5.C: New test.
      	* g++.dg/ext/raw-string-6.C: New test.
      	* g++.dg/ext/raw-string-7.C: New test.
      	* g++.dg/ext/utf8-1.C: New test.
      	* g++.dg/ext/utf8-2.C: New test.
      	* g++.dg/ext/utf-badconcat2.C: New test.
      	* g++.dg/ext/utf-dflt2.C: New test.
      
      From-SVN: r152995
      2c6e3f55
    • Anatoly Sokolov's avatar
      cris.c (cris_function_value, [...]): New functions. · 4d696ad0
      Anatoly Sokolov authored
      	* config/cris/cris.c (cris_function_value, cris_libcall_value,
      	cris_function_value_regno_p): New functions.
      	(cris_promote_function_mode): Update comment.
      	(TARGET_FUNCTION_VALUE, TARGET_LIBCALL_VALUE): Declare.
      	* config/cris/cris.h: (FUNCTION_VALUE, LIBCALL_VALUE): Remove.
      	(FUNCTION_VALUE_REGNO_P): Redefine, use cris_function_value_regno_p.
      	* config/cris/cris-protos.h (cris_function_value_regno_p): Declare.
      
      From-SVN: r152992
      4d696ad0
    • Jakub Jelinek's avatar
      Fix dates. · 270213ca
      Jakub Jelinek authored
      From-SVN: r152991
      270213ca
    • Jakub Jelinek's avatar
      unwind-dw2.c (execute_stack_op): Fix operand order for DW_OP_le, DW_OP_ge, DW_OP_lt and DW_OP_gt. · 4793ad6b
      Jakub Jelinek authored
      	* unwind-dw2.c (execute_stack_op): Fix operand order for
      	DW_OP_le, DW_OP_ge, DW_OP_lt and DW_OP_gt.
      
      	* gcc.dg/cleanup-13.c: New test.
      
      From-SVN: r152989
      4793ad6b
    • Janus Weil's avatar
      re PR fortran/41586 ([OOP] Allocatable _scalars_ are never auto-deallocated) · 1517fd57
      Janus Weil authored
      2009-10-19  Janus Weil  <janus@gcc.gnu.org>
      
      	PR fortran/41586
      	* parse.c (parse_derived): Correctly set 'alloc_comp' and 'pointer_comp'
      	for CLASS variables.
      	* trans-array.c (structure_alloc_comps): Handle deallocation and
      	nullification of allocatable scalar components.
      	* trans-decl.c (gfc_get_symbol_decl): Remember allocatable scalars for
      	automatic deallocation.
      	(gfc_trans_deferred_vars): Automatically deallocate allocatable scalars.
      
      
      2009-10-19  Janus Weil  <janus@gcc.gnu.org>
      
      	PR fortran/41586
      	* gfortran.dg/auto_dealloc_1.f90: New test case.
      
      From-SVN: r152988
      1517fd57
    • Jakub Jelinek's avatar
      Port from redhat/gcc-4_4-branch: · 55165bf6
      Jakub Jelinek authored
      	2009-10-08  Jakub Jelinek  <jakub@redhat.com>
      	* gcc.dg/debug/vta-2.c: New test.
      
      	2009-09-30  Alexandre Oliva  <aoliva@redhat.com>
      	* gcc.dg/debug/vta-1.c: New.
      
      From-SVN: r152986
      55165bf6
    • Eric Botcazou's avatar
      gimple-low.c (struct lower_data): Add cannot_fallthru field. · a141816c
      Eric Botcazou authored
      	* gimple-low.c (struct lower_data): Add cannot_fallthru field.
      	(lower_stmt) <GIMPLE_BIND>: Add comment.
      	<GIMPLE_COND, GIMPLE_GOTO, GIMPLE_SWITCH>: Set cannot_fallthru to true
      	and return.
      	<GIMPLE_RETURN>: Remove the statement if cannot_fallthru is set.
      	Otherwise lower it and set cannot_fallthru to true.
      	<GIMPLE_TRY>: Update cannot_fallthru for GIMPLE_TRY_FINALLY and return.
      	<GIMPLE_CATCH, GIMPLE_EH_FILTER>; Set cannot_fallthru to false.
      	<GIMPLE_CALL>: Set cannot_fallthru to false for BUILT_IN_SETJMP and
      	to true for a noreturn call.  Do not remove statements.
      	<GIMPLE_OMP_PARALLEL, GIMPLE_OMP_TASK>: Set cannot_fallthru to false.
      	Set cannot_fallthru to false on function exit.
      	(gimple_stmt_may_fallthru) <GIMPLE_SWITCH>: Really return false.
      	<GIMPLE_ASSIGN>: Remove.
      
      From-SVN: r152984
      a141816c
    • Tobias Burnus's avatar
      re PR fortran/41755 (Segfault on invalid code) · 585ba38f
      Tobias Burnus authored
      
      2009-10-19  Tobias Burnus  <burnus@net-b.de>
                  Steven G. Kargl  <kargl@gcc.gnu.org>
      
              PR fortran/41755
              * symbol.c (gfc_undo_symbols): Add NULL check.
              * match.c (gfc_match_equivalence): Add check for
              missing comma.
      
      2009-10-19  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/41755
              * gfortran.dg/equiv_8.f90: New test.
              * gfortran.dg/class_allocate_1.f03: Remove obsolete FIXME.
      
      
      Co-Authored-By: default avatarSteven G. Kargl <kargl@gcc.gnu.org>
      
      From-SVN: r152983
      585ba38f
    • Rafael Espindola's avatar
      missing changelog · 941e566a
      Rafael Espindola authored
      From-SVN: r152982
      941e566a
    • Andreas Krebbel's avatar
      s390.c (s390_z10_optimize_cmp): Don't touch FP compares. · 2dfdbf2b
      Andreas Krebbel authored
      2009-10-19  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
      
      	* config/s390/s390.c (s390_z10_optimize_cmp): Don't touch FP compares.
      
      From-SVN: r152979
      2dfdbf2b
    • Andreas Krebbel's avatar
      s390.c (s390_z10_optimize_cmp): Use next/prev_active_insn to skip DEBUG_INSNs as well. · 33ab2bd4
      Andreas Krebbel authored
      2009-10-19  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
      
      	* config/s390/s390.c (s390_z10_optimize_cmp): Use
      	next/prev_active_insn to skip DEBUG_INSNs as well.
      
      From-SVN: r152978
      33ab2bd4
    • Joseph Myers's avatar
      arm.c (output_move_neon): Use DImode in call to adjust_address. · 5728868b
      Joseph Myers authored
      	* config/arm/arm.c (output_move_neon): Use DImode in call to
      	adjust_address.
      
      testsuite:
      	* gcc.target/arm/neon-thumb2-move.c: New test.
      
      From-SVN: r152977
      5728868b
    • Rafael Espindola's avatar
      re PR lto/40790 (plugin-api.h unconditionally includes stdint.h) · 21750c78
      Rafael Espindola authored
      include/
      2009-10-09  Rafael Avila de Espindola  <espindola@google.com>
      
      	PR40790
      	* plugin-api.h: Don't include stdint.h unconditionally.
      
      lto-plugin/
      2009-10-09  Rafael Avila de Espindola  <espindola@google.com>
      
      	PR40790
      	* configure: Regenerate.
      	* configure.ac: Add AC_TYPE_UINT64_T.
      
      From-SVN: r152976
      21750c78
    • Matthias Klose's avatar
      re PR target/40134 (symbols not resolved when building shared libraries (link with -lgcc_s -lgcc?)) · d23a7734
      Matthias Klose authored
      2009-10-19  Matthias Klose  <doko@ubuntu.com>
      
              PR target/40134
              * config.gcc (arm*-*-linux-*eabi): Use config/t-slibgcc-libgcc.
      
      From-SVN: r152975
      d23a7734
    • Richard Guenther's avatar
      re PR fortran/41494 (temp and memcpy used when zeroing array) · 94990aca
      Richard Guenther authored
      2009-10-18  Richard Guenther  <rguenther@suse.de>
      
      	PR fortran/41494
      	* trans-expr.c (gfc_trans_scalar_assign): Do not call
      	gfc_evaluate_now.
      
      From-SVN: r152973
      94990aca
Loading