1. 02 Jan, 2012 18 commits
    • expr.h (move_by_pieces_ninsns): Declare. · 0d8f5d62
      gcc/
      	* expr.h (move_by_pieces_ninsns): Declare.
      	* expr.c (move_by_pieces_ninsns): Make external.
      	* config/mips/mips-protos.h (mips_move_by_pieces_p): Declare.
      	(mips_store_by_pieces_p): Likewise.
      	* config/mips/mips.h (MOVE_BY_PIECES_P): Call mips_move_by_pieces_p.
      	(STORE_BY_PIECES_P): Likewise mips_store_by_pieces_p.
      	* config/mips/mips.c (mips_move_by_pieces_p): New function.
      	(mips_store_by_pieces_p): Likewise.
      
      gcc/testsuite/
      	* gcc.dg/memcpy-4.c: Add nomips16 attribute for MIPS targets.
      	Increase copy to 5 bytes.  Look for at least two "mem/s/u"s,
      	rather than a specific number.
      
      From-SVN: r182801
      Richard Sandiford committed
    • passes.c (register_one_dump_file): Free full_name. · 9f929ce6
      	* passes.c (register_one_dump_file): Free full_name.
      
      	* reload1.c (reload): Don't allocate reg_max_ref_width
      	here.
      	(calculate_elim_costs_all_insns): Free offsets_at and
      	offsets_known_at at the end and clear the pointers.
      
      From-SVN: r182800
      Jakub Jelinek committed
    • avr.opt (-mbranch-cost): Fix double definition of this option introduced in r180739. · ce23293b
      	* config/avr/avr.opt (-mbranch-cost): Fix double definition of
      	this option introduced in r180739.
      
      From-SVN: r182798
      Georg-Johann Lay committed
    • re PR target/51345 ([avr] Devices with 8-bit SP need their own multilib(s)) · 884f56d1
      contrib/
      	PR target/51345
      	* gcc_update (files_and_dependencies): Add
      	gcc/config/avr/t-multilib, gcc/config/avr/multilib.h.
      	
      libgcc/
      	PR target/51345
      	* config/avr/lib1funcs.S: Remove FIXME comments.
      	(SPEED_DIV): Depend on __AVR_HAVE_8BIT_SP__.
      gcc/	
      	PR target/51345
      	* config.gcc (tm_file target=avr]): Add avr/avr-multilib.h
      	(tmake_file target=avr): Add avr/t-multilib.
      
      	* config/avr/avr-c.c (avr_cpu_cpp_builtins): Use AVR_HAVE_8BIT_SP
      	to built-in define __AVR_HAVE_8BIT_SP__, __AVR_HAVE_16BIT_SP__.
      	* config/avr/genmultilib.awk: New file.
      	* config/avr/t-multilib: New auto-generated file.
      	* config/avr/multilib.h: New auto-generated file.
      	* config/avr/t-avr (AVR_MCUS): New variable.
      	(genopt.sh): Use it.
      	(s-mlib): Depend on t-multilib.
      	(t-multilib, multilib.h): New dependencies.
      	(s-avr-mlib): New rule to build t-multilib, multilib.h from AVR_MCUS.
      	(MULTILIB_OPTIONS): Remove.
      	(MULTILIB_MATCHES): Remove.
      	(MULTILIB_DIRNAMES): Remove.
      	(MULTILIB_EXCEPTIONS): Remove:
      	* config/avr/genopt.sh: Don't use hard coded file name;
      	pass AVR_MCUS from t-avr instead.
      
      From-SVN: r182797
      Georg-Johann Lay committed
    • re PR fortran/51529 ([OOP] gfortran.dg/class_to_type_1.f03 is miscompiled:… · 94fae14b
      re PR fortran/51529 ([OOP] gfortran.dg/class_to_type_1.f03 is miscompiled: Uninitialized variable used)
      
      2012-01-02  Paul Thomas  <pault@gcc.gnu.org>
      
      	PR fortran/51529
      	* trans-array.c (gfc_array_allocate): Null allocated memory of
      	newly allocted class arrays.
      
      	PR fortran/46262
      	PR fortran/46328
      	PR fortran/51052
      	* interface.c(build_compcall_for_operator): Add a type to the
      	expression.
      	* trans-expr.c (conv_base_obj_fcn_val): New function.
      	(gfc_conv_procedure_call): Use base_expr to detect non-variable
      	base objects and, ensuring that there is a temporary variable,
      	build up the typebound call using conv_base_obj_fcn_val.
      	(gfc_trans_class_assign): Pick out class procedure pointer
      	assignments and do the assignment with no further prcessing.
      	(gfc_trans_class_array_init_assign, gfc_trans_class_init_assign
      	gfc_trans_class_assign): Move to top of file.
      	* gfortran.h : Add 'base_expr' field to gfc_expr.
      	* resolve.c (get_declared_from_expr): Add 'types' argument to
      	switch checking of derived types on or off.
      	(resolve_typebound_generic_call): Set the new argument.
      	(resolve_typebound_function, resolve_typebound_subroutine):
      	Set 'types' argument for get_declared_from_expr appropriately.
      	Identify base expression, if not a variable, in the argument
      	list of class valued calls. Assign it to the 'base_expr' field
      	of the final expression. Strip away all references after the
      	last class reference.
      
      
      2012-01-02  Paul Thomas  <pault@gcc.gnu.org>
      
      	PR fortran/46262
      	PR fortran/46328
      	PR fortran/51052
      	* gfortran.dg/typebound_operator_7.f03: New.
      	* gfortran.dg/typebound_operator_8.f03: New.
      
      From-SVN: r182796
      Paul Thomas committed
    • avr.c (avr_out_ashrpsi3): Fix "case 31" to "case 23". · 9ecd3a64
      	* config/avr/avr.c (avr_out_ashrpsi3): Fix "case 31" to "case 23".
      
      From-SVN: r182795
      Georg-Johann Lay committed
    • Implement light-weight DImode support. · 8c57e547
      gcc/
      	Implement light-weight DImode support.
      	* config/avr/avr-dimode.md: New file.
      	* config/avr/avr.md: Include it.
      	(adjust_len): Add plus64, compare64.
      	(HIDI): Remove code iterator.
      	(code_stdname): New code attribute.
      	(rotx, rotsmode): Remove DI.
      	(rotl<mode>3, *rotw<mode>, *rotb<mode>): Use HISI instead of HIDI
      	as code iterator.
      	* config/avr/avr-protos.h (avr_have_dimode): New.
      	(avr_out_plus64, avr_out_compare64): New.
      	* config/avr/avr.c (avr_out_compare): Handle DImode.
      	(avr_have_dimode): New variable definition and initialization.
      	(avr_out_compare64, avr_out_plus64): New functions.
      	(avr_out_plus_1): Use simplify_unary_operation to negate xval.
      	(adjust_insn_length): Handle ADJUST_LEN_COMPARE64, ADJUST_LEN_PLUS64.
      	(avr_compare_pattern): Skip DImode comparisons.
      
      libgcc/
      	Implement light-weight DImode support.
      	* config/avr/t-avr (LIB1ASMFUNCS): Add _adddi3, _adddi3_s8,
      	_subdi3, _cmpdi2, _cmpdi2_s8, _rotldi3.
      	* config/avr/lib1funcs.S (__adddi3, __adddi3_s8, __subdi3,
      	__cmpdi2, __cmpdi2_s8, __rotldi3): New functions.
      
      From-SVN: r182794
      Georg-Johann Lay committed
    • re PR target/51729 (dspr2-MULT.c and dspr2-MULTU.c fail for MIPS) · 5f595f16
      gcc/testsuite/
      	PR target/51729
      	* gcc.target/mips/dspr2-MULT.c: Remove -ffixed-hi -ffixed-lo.
      	XFAIL.
      	* gcc.target/mips/dspr2-MULTU.c: Likewise.
      
      From-SVN: r182793
      Richard Sandiford committed
    • pr46309.c: Add -mtune=octeon2 for MIPS. · e3763a5b
      gcc/testsuite/
      	* gcc.dg/pr46309.c: Add -mtune=octeon2 for MIPS.
      
      From-SVN: r182792
      Richard Sandiford committed
    • constexpr-rom.C: Look for .rdata rather than rodata for MIPS. · c7723398
      gcc/testsuite/
      	* g++.dg/cpp0x/constexpr-rom.C: Look for .rdata rather than rodata
      	for MIPS.
      
      From-SVN: r182791
      Richard Sandiford committed
    • io_real_boz_3.f90: Require fortran_real_16. · 2da60e96
      gcc/testsuite/
      	* gfortran.dg/io_real_boz_3.f90: Require fortran_real_16.
      	* gfortran.dg/io_real_boz_4.f90: Likewise.
      	* gfortran.dg/io_real_boz_5.f90: Likewise.
      
      From-SVN: r182789
      Richard Sandiford committed
    • re PR bootstrap/51686 ("make install-strip-gcc" didn't install liblto-plugin* files) · d18ede37
      2012-01-02  Richard Guenther  <rguenther@suse.de>
      
      	PR bootstrap/51686
      	* Makefile.def (install-strip-gcc): Depend on install-strip-lto-plugin.
      	* Makefile.in: Regenerate.
      
      From-SVN: r182788
      Richard Guenther committed
    • devirt2.C: Add -mno-abicalls for MIPS. · ccd0ce11
      gcc/testsuite/
      	* g++.dg/opt/devirt2.C: Add -mno-abicalls for MIPS.
      
      From-SVN: r182787
      Richard Sandiford committed
    • re PR other/51679 (spurious parenthesis for -fassociative-math in manual and man page) · ba768e18
      2012-01-02  Richard Guenther  <rguenther@suse.de>
      
      	PR other/51679
      	* invoke.texi (fassociative-math): Remove spurious paranthesis.
      
      From-SVN: r182785
      Richard Guenther committed
    • * gnatvsn.ads (Current_Year): Bump to 2012. · 6a521d16
      From-SVN: r182783
      Eric Botcazou committed
    • re PR fortran/51682 (Coarray ICEs when compiling with -fdefault-integer-8) · 5a155783
      2012-01-02  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/51682
              * trans-intrinsic.c (trans_this_image, trans_image_index,
              trans_num_images, conv_intrinsic_cobound): Fold_convert the
              caf_num_images/caf_this_images variables to the correct int kind.
      
      2012-01-02  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/51682
              * gfortran.dg/coarray/image_index_3.f90: New.
      
      From-SVN: r182781
      Tobias Burnus committed
    • Daily bump. · 6e7ff14f
      From-SVN: r182780
      GCC Administrator committed
  2. 01 Jan, 2012 10 commits
    • re PR c++/16603 (Incorrect enumerator type before enumeration's closing brace) · 11cc5f49
      /cp
      2012-01-01  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/16603
      	* decl.c (build_enumerator): Don't call perform_integral_promotions
      	on the value.
      
      /testsuite
      2012-01-01  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/16603
      	* g++.dg/parse/enum8.C: New.
      
      From-SVN: r182776
      Paolo Carlini committed
    • re PR c++/51379 ([C++0x] [DR 799] reinterpret_cast is not particularly useful) · 9f88ff5a
      /cp
      2012-01-01  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/51379
      	* typeck.c (build_reinterpret_cast_1): Implement resolution of
      	DR 799.
      
      /testsuite
      2012-01-01  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/51379
      	* g++.dg/conversion/reinterpret4.C: New.
      	* g++.dg/conversion/reinterpret1.C: Adjust.
      
      From-SVN: r182775
      Paolo Carlini committed
    • constexpr-delegating2.C: Add missing piece. · b81e8df8
      2012-01-01  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	* g++.dg/cpp0x/constexpr-delegating2.C: Add missing piece.
      
      From-SVN: r182774
      Paolo Carlini committed
    • gcc.c (process_command): Update copyright notice dates. · 66f1b195
      gcc/
      	* gcc.c (process_command): Update copyright notice dates.
      	* gcov.c (print_version): Likewise.
      	* gcov-dump.c (print_version): Likewise.
      	* mips-tfile.c (main): Likewise.
      	* mips-tdump.c (main): Likewise.
      gcc/fortran/
      	* gfortranspec.c (lang_specific_driver): Update copyright notice
      	dates.
      gcc/java/
      	* jcf-dump.c (version): Update copyright notice dates.
      libmudflap/
      	* mf-runtime.c (__mf_usage): Update copyright notice dates.
      libjava/
      	* gnu/gcj/convert/Convert.java (version): Update copyright notice
      	dates.
      	* gnu/gcj/tools/gcj_dbtool/Main.java (main): Likewise.
      libjava/classpath/
      	* gnu/java/rmi/registry/RegistryImpl.java (version): Update
      	copyright notice dates.
      	* tools/gnu/classpath/tools/orbd/Main.java (run): Likewise.
      
      From-SVN: r182773
      Jakub Jelinek committed
    • crash25.C: Adjust. · 5135baed
      gcc/testsuite/ChangeLog
      
      2011-12-31  Fabien Chene  <fabien@gcc.gnu.org>
      
      	* g++.old-deja/g++.brendan/crash25.C: Adjust.
      	* g++.old-deja/g++.brendan/crash56.C: Likewise.
      	* g++.old-deja/g++.jason/access14.C: Likewise.
      	* g++.old-deja/g++.jason/access8.C: Likewise.
      	* g++.old-deja/g++.jason/access1.C: Likewise.
      	* g++.old-deja/g++.other/access3.C: Likewise.
      	* g++.old-deja/g++.other/access5.C: Likewise.
      	* g++.old-deja/g++.law/unsorted1.C: Likewise.
      	* g++.old-deja/g++.law/visibility22.C: Likewise.
      	* g++.old-deja/g++.law/visibility26.C: Likewise.
      	* g++.old-deja/g++.mike/p2746.C: Likewise.
      	* g++.dg/debug/using1.C: Likewise.
      	* g++.dg/lookup/using51.C: Likewise.
      	* g++.dg/inherit/using5.C: Likewise.
      	* g++.dg/inherit/pr30297.C: Likewise.
      	* g++.dg/inherit/access8.C: Likewise.
      	* g++.dg/torture/pr39362.C: Likewise.
      	* g++.dg/template/crash13.C: Likewise.
      	* g++.dg/template/using10.C: Likewise.
      
      gcc/cp/ChangeLog
      
      2011-12-31  Fabien Chene  <fabien@gcc.gnu.org>
      
      	* parser.c (cp_parser_using_declaration): Add a warning about
      	deprecated access declarations when no errors were encountered
      	while parsing the access declaration. Save the first token in
      	order to emit the warning at the right place.
      
      From-SVN: r182772
      Fabien Chêne committed
    • backport: re PR fortran/51502 (Potentially wrong code generation due to wrong implict_pure check) · b4cbc46c
      2012-01-01  Thomas König  <tkoenig@gcc.gnu.org>
      
      	Backport from trunk
      	PR fortran/51502
      	* lib/gcc-dg.exp (scan-module-absence):  New function.
      	* gfortran.dg/implicit_pure_2.f90:  New test.
      
      From-SVN: r182771
      Thomas Koenig committed
    • re PR tree-optimization/51704 (ICE: vector VEC(vec_void_p,base) index domain… · f2c74cc4
      re PR tree-optimization/51704 (ICE: vector VEC(vec_void_p,base) index domain error, in vinfo_for_stmt at tree-vectorizer.h:620 with -O3 -fno-tree-copy-prop -fno-tree-fre)
      
      
              PR tree-optimization/51704
              * tree-vect-slp.c (vect_detect_hybrid_slp_stmts): Check that
              a use is inside the basic block or loop before accessing its
              vect info.
      
      From-SVN: r182769
      Ira Rosen committed
    • re PR c++/51723 ([C++0x] delegating constructor ICE) · 1d2314ed
      2012-01-01  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/51723
      	* g++.dg/cpp0x/constexpr-delegating2.C: New.
      
      From-SVN: r182768
      Paolo Carlini committed
    • re PR rtl-optimization/51069 (ICE in verify_loop_structure, at cfgloop.c:1559) · 06f1716b
      	PR rtl-optimization/51069
      	* cfgloopmanip.c (remove_path): Removing path making irreducible
      	region unconditional makes BB part of the region.
      	* gcc.c-torture/compile/pr51069.c: New testcase.
      
      From-SVN: r182767
      Jan Hubicka committed
    • Daily bump. · 41d2ea57
      From-SVN: r182765
      GCC Administrator committed
  3. 31 Dec, 2011 7 commits
    • re PR tree-optimization/51683 (__builtin_memcpy etc. with constant first… · 45a5b21a
      re PR tree-optimization/51683 (__builtin_memcpy etc. with constant first argument optimized away by ccp)
      
      	PR tree-optimization/51683
      	* tree-ssa-propagate.c (substitute_and_fold): Don't optimize away
      	calls with side-effects.
      	* tree-ssa-ccp.c (ccp_fold_stmt): Likewise.
      
      	* gcc.dg/pr51683.c: New test.
      
      From-SVN: r182761
      Jakub Jelinek committed
    • cselib.h (cselib_add_permanent_equiv): Declare. · 6f2ffb4b
      * cselib.h (cselib_add_permanent_equiv): Declare.
      (canonical_cselib_val): New.
      * cselib.c (new_elt_loc_list): Rework to support value
      equivalences.  Adjust all callers.
      (preserve_only_constants): Retain value equivalences.
      (references_value_p): Retain preserved values.
      (rtx_equal_for_cselib_1): Handle value equivalences.
      (cselib_invalidate_regno): Use canonical value.
      (cselib_add_permanent_equiv): New.
      * alias.c (find_base_term): Reset locs lists while recursing.
      * var-tracking.c (val_bind): New.  Don't add equivalences
      present in cselib table, compared with code moved from...
      (val_store): ... here.
      (val_resolve): Use val_bind.
      (VAL_EXPR_HAS_REVERSE): Drop.
      (add_uses): Do not create MOps for addresses.  Do not mark
      non-REG non-MEM expressions as requiring resolution.
      (reverse_op): Record reverse as a cselib equivalence.
      (add_stores): Use it.  Do not create MOps for addresses.
      Do not require resolution for non-REG non-MEM expressions.
      Simplify support for reverse operations.
      (compute_bb_dataflow): Drop reverse support.
      (emit_notes_in_bb): Likewise.
      (create_entry_value): Rename to...
      (record_entry_value): ... this.  Use cselib equivalences.
      (vt_add_function_parameter): Adjust.
      
      From-SVN: r182760
      Alexandre Oliva committed
    • re PR c++/51397 (static_assert message formatting) · 32210fd6
      /cp
      2011-12-31  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/51397
      	* semantics.c (finish_static_assert): Use %s instead of %E for
      	the error message.
      
      /testsuite
      2011-12-31  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/51397
      	* g++.dg/cpp0x/static_assert6.C: New.
      
      From-SVN: r182757
      Paolo Carlini committed
    • Fix _Locale vs. _Local typos. · 553fb1c2
      From-SVN: r182756
      Jonathan Wakely committed
    • vrp47: Pass -march=i586 for ia32 target. · b670ab58
      	* gcc.dg/tree-ssa/vrp47: Pass -march=i586 for ia32 target.
      
      From-SVN: r182755
      Uros Bizjak committed
    • re PR fortran/51502 (Potentially wrong code generation due to wrong implict_pure check) · f29041dd
      2011-12-31  Thomas König  <tkoenig@gcc.gnu.org>
      
      	PR fortran/51502
      	* expr.c (gfc_check_vardef_context):  When determining
      	implicit pure status, also check for variable definition
      	context.  Walk up namespaces until a procedure is
      	found to reset the implict pure attribute.
      	* resolve.c (gfc_implicit_pure):  Walk up namespaces
      	until a procedure is found.
      
      2011-12-31  Thomas König  <tkoenig@gcc.gnu.org>
      
      	PR fortran/51502
      	* lib/gcc-dg.exp (scan-module-absence):  New function.
      	* gfortran.dg/implicit_pure_2.f90:  New test.
      
      From-SVN: r182754
      Thomas Koenig committed
    • Daily bump. · a78873e4
      From-SVN: r182751
      GCC Administrator committed
  4. 30 Dec, 2011 5 commits