1. 17 Apr, 2013 13 commits
    • re PR fortran/56814 (Bogus Interface mismatch in dummy procedure) · 82b541a1
      2013-04-17  Janus Weil  <janus@gcc.gnu.org>
      
      	PR fortran/56814
      	* interface.c (check_result_characteristics): Get result from interface
      	if present.
      
      
      2013-04-17  Janus Weil  <janus@gcc.gnu.org>
      
      	PR fortran/56814
      	* gfortran.dg/proc_ptr_42.f90: New.
      
      From-SVN: r198032
      Janus Weil committed
    • 2013-04-17 Greta Yorsh <Greta.Yorsh at arm.com> · 0480fff0
      	* config/arm/arm.md (movsicc_insn): Convert define_insn into
      	define_insn_and_split.
      	(and_scc,ior_scc,negscc): Likewise.
      	(cmpsi2_addneg, subsi3_compare): Convert to named patterns.
      
      From-SVN: r198030
      Greta Yorsh committed
    • 2013-04-17 Greta Yorsh <Greta.Yorsh at arm.com> · 367075fe
      	* config/arm/arm.c (use_return_insn): Return 0 for targets that
      	can benefit from using a sequence of LDRD instructions in epilogue
      	instead of a single LDM instruction.
      
      From-SVN: r198029
      Greta Yorsh committed
    • re PR web/45688 (Typo in __attribute__((version-id)) docs) · 6d10a203
      2013-04-17  Manuel López-Ibáñez  <manu@gcc.gnu.org>
      
             PR 45688
             * doc/extend.texi: Fix typo.
      
      From-SVN: r198028
      Manuel López-Ibáñez committed
    • tree-vect-slp.c (vect_build_slp_tree_1): Split out from ... · 6983e6b5
      2013-04-17  Richard Biener  <rguenther@suse.de>
      
      	* tree-vect-slp.c (vect_build_slp_tree_1): Split out from ...
      	(vect_build_slp_tree): ... here.
      	(vect_build_slp_tree_1): Compute which stmts of the SLP group
      	match.  Remove special-casing of mismatched complex loads.
      	(vect_build_slp_tree): Based on the result from vect_build_slp_tree_1
      	re-try the match with swapped commutative operands.
      	(vect_supported_load_permutation_p): Remove special-casing of
      	mismatched complex loads.
      	(vect_analyze_slp_instance): Adjust.
      
      From-SVN: r198026
      Richard Biener committed
    • re PR rtl-optimization/56921 (ICE in rtx_cost called by doloop_optimize_loops for PPC) · ef23e6a2
      2013-04-17  Richard Biener  <rguenther@suse.de>
      
      	PR rtl-optimization/56921
      	* cfgloop.h (struct loop): Add simple_loop_desc member.
      	(struct niter_desc): Mark with GTY(()).
      	(simple_loop_desc): Do not use aux field but simple_loop_desc.
      	* loop-iv.c (get_simple_loop_desc): Likewise.
      	(free_simple_loop_desc): Likewise.
      
      	Revert
      	2013-04-16  Richard Biener  <rguenther@suse.de>
      
      	PR rtl-optimization/56921
      	* loop-init.c (pass_rtl_move_loop_invariants): Add
      	TODO_do_not_ggc_collect to todo_flags_finish.
      	(pass_rtl_unswitch): Same.
      	(pass_rtl_unroll_and_peel_loops): Same.
      	(pass_rtl_doloop): Same.
      
      From-SVN: r198025
      Richard Biener committed
    • tree-ssa-alias.c (nonoverlapping_component_refs_of_decl_p): New. · fc6f94f5
      	* tree-ssa-alias.c (nonoverlapping_component_refs_of_decl_p): New.
      	(decl_refs_may_alias_p): Add REF1 and REF2 parameters.
      	Use nonoverlapping_component_refs_of_decl_p to disambiguate component
      	references.
      	(refs_may_alias_p_1): Adjust call to decl_refs_may_alias_p.
      	* tree-streamer.c (record_common_node): Adjust reference in comment.
      
      From-SVN: r198024
      Eric Botcazou committed
    • PR 40958 Compress module files with zlib. · 070edbc2
      frontend ChangeLog:
      
      2013-04-17  Janne Blomqvist  <jb@gcc.gnu.org>
      
      	PR fortran/40958
      	* scanner.h: New file.
      	* Make-lang.in: Dependencies on scanner.h.
      	* scanner.c (gfc_directorylist): Move to scanner.h.
      	* module.c: Don't include md5.h, include scanner.h and zlib.h.
      	(MOD_VERSION): Add comment about backwards compatibility.
      	(module_fp): Change type to gzFile.
      	(ctx): Remove.
      	(gzopen_included_file_1): New function.
      	(gzopen_included_file): New function.
      	(gzopen_intrinsic_module): New function.
      	(write_char): Use gzputc.
      	(read_crc32_from_module_file): New function.
      	(read_md5_from_module_file): Remove.
      	(gfc_dump_module): Use gz* functions instead of stdio, check gzip
      	crc32 instead of md5.
      	(read_module_to_tmpbuf): Use gz* functions instead of stdio.
      	(gfc_use_module): Use gz* functions.
      
      testsuite ChangeLog:
      
      2013-04-17  Janne Blomqvist  <jb@gcc.gnu.org>
      
              PR fortran/40958
              * lib/gcc-dg.exp (scan-module): Uncompress module file before
              scanning.
              * gfortran.dg/module_md5_1.f90: Remove.
      
      From-SVN: r198023
      Janne Blomqvist committed
    • * config/arm/cortex-m4.md: Add a new bypass. · 10a88311
      From-SVN: r198021
      Terry Guo committed
    • aarch64.md (*adds_<optab><mode>_multp2): New pattern. · f3d096b0
      gcc/
      
      2013-04-16   Naveen H.S  <Naveen.Hurugalawadi@caviumnetworks.com>
      
      	* config/aarch64/aarch64.md (*adds_<optab><mode>_multp2):
      	New pattern.
      	(*subs_<optab><mode>_multp2): New pattern.
      	(*adds_<optab><ALLX:mode>_<GPI:mode>): New pattern.
      	(*subs_<optab><ALLX:mode>_<GPI:mode>): New pattern.
      
      gcc/testsuite/
      
      2013-04-16   Naveen H.S  <Naveen.Hurugalawadi@caviumnetworks.com>
      
      	* gcc.target/aarch64/adds3.c: New.
      	* gcc.target/aarch64/subs3.c: New.
      
      From-SVN: r198020
      Naveen H.S committed
    • aarch64.md (*adds_mul_imm_<mode>): New pattern. · 860ad33f
      gcc/
      
      2013-04-16   Naveen H.S  <Naveen.Hurugalawadi@caviumnetworks.com>
      
      	* config/aarch64/aarch64.md (*adds_mul_imm_<mode>): New pattern.
      	(*subs_mul_imm_<mode>): New pattern.
      
      gcc/testsuite/
      
      2013-04-16   Naveen H.S  <Naveen.Hurugalawadi@caviumnetworks.com>
      
      	* gcc.target/aarch64/adds1.c: New.
      	* gcc.target/aarch64/adds2.c: New.
      	* gcc.target/aarch64/subs1.c: New.
      	* gcc.target/aarch64/subs2.c: New.
      
      From-SVN: r198019
      Naveen H.S committed
    • Implement n3599 String literal operator templates. · 3a8d9ab1
      From-SVN: r198018
      Ed Smith-Rowland committed
    • Daily bump. · a0d079a4
      From-SVN: r198017
      GCC Administrator committed
  2. 16 Apr, 2013 13 commits
    • re PR fortran/39505 (Consider a 'no arg check' directive) · e7ac6a7c
      2013-04-12  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/39505
              * decl.c (ext_attr_list): Add EXT_ATTR_NO_ARG_CHECK.
              * gfortran.h (ext_attr_id_t): Ditto.
              * gfortran.texi (GNU Fortran Compiler Directives):
              Document it.
              * interface.c (compare_type_rank): Ignore rank for NO_ARG_CHECK.
              (compare_parameter): Ditto - and regard as unlimited polymorphic.
              * resolve.c (resolve_symbol, resolve_variable): Add same
              * constraint
              checks as for TYPE(*); turn dummy to TYPE(*),dimension(*).
              (gfc_explicit_interface_required): Require explicit interface
              for NO_ARG_CHECK.
      
      2013-04-12  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/39505
              * gfortran.dg/no_arg_check_1.f90: New.
              * gfortran.dg/no_arg_check_2.f90: New.
              * gfortran.dg/no_arg_check_3.f90: New.
      
      From-SVN: r198011
      Tobias Burnus committed
    • re PR fortran/56968 ([F03] Issue with a procedure defined with a generic name… · bafa0782
      re PR fortran/56968 ([F03] Issue with a procedure defined with a generic name returning procedure pointer)
      
      2013-04-16  Janus Weil  <janus@gcc.gnu.org>
      
      	PR fortran/56968
      	* expr.c (gfc_check_pointer_assign): Handle generic functions returning
      	procedure pointers.
      
      
      2013-04-16  Janus Weil  <janus@gcc.gnu.org>
      
      	PR fortran/56968
      	* gfortran.dg/proc_ptr_41.f90: New.
      
      From-SVN: r198008
      Janus Weil committed
    • re PR target/56948 (PPC V2DI ICE when loading zero into GPRs) · 18a6701e
              PR target/56948
              * config/rs6000/vsx.md (vsx_mov<mode>): Add j->r alternative.
              (vsx_movti_64bit): Change j->wa to O->wa.  Add n->r alternative.
              (vsx_movti_32bit): Change j->wa to O->wa.
      
      From-SVN: r198007
      David Edelsohn committed
    • re PR rtl-optimization/56921 (ICE in rtx_cost called by doloop_optimize_loops for PPC) · 07c37b2f
      2013-04-16  Richard Biener  <rguenther@suse.de>
      
              PR rtl-optimization/56921
              * loop-init.c (pass_rtl_move_loop_invariants): Add
              TODO_do_not_ggc_collect to todo_flags_finish.
              (pass_rtl_unswitch): Same.
              (pass_rtl_unroll_and_peel_loops): Same.
              (pass_rtl_doloop): Same.
      
      From-SVN: r198006
      Richard Biener committed
    • Prologue/epilogue using STRD/LDRD in ARM mode · 974ba22d
      2013-04-16  Greta Yorsh  <Greta.Yorsh at arm.com>
      
      	* config/arm/arm.c (emit_multi_reg_push): New declaration
      	for an existing function.
      	(arm_emit_strd_push): New function.
      	(arm_expand_prologue): Used here.
      	(arm_emit_ldrd_pop): New function.
      	(arm_expand_epilogue): Used here.
      	(arm_get_frame_offsets): Update condition.
      	(arm_emit_multi_reg_pop): Add a special case for load of a single
      	register with writeback.
      
      From-SVN: r198004
      Greta Yorsh committed
    • invoke.texi (i386 Option): Reword -mstack-protector-guard description. · 5e8e2af4
      	* doc/invoke.texi (i386 Option): Reword -mstack-protector-guard
      	description.
      
      From-SVN: r198002
      Uros Bizjak committed
    • re PR tree-optimization/56756 (ICE: verify_ssa failed (definition in block n follows the use !)) · 9fd9ccf7
      2013-04-16  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/56756
      	* tree-ssa-loop-im.c (struct first_mem_ref_loc_1): New functor.
      	(first_mem_ref_loc): New.
      	(execute_sm): Place the load temporarily before a previous
      	access instead of in the latch edge to ensure its SSA dependencies
      	are defined at points dominating the load.
      
      	* gcc.dg/torture/pr56756.c: New testcase.
      
      From-SVN: r198001
      Richard Biener committed
    • re PR fortran/56969 (ISO_C_BINDING regression with current trunk) · 326785a3
      2013-04-16  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/56969
              * intrinsic.c (gfc_intrinsic_func_interface): Don't set
              module name to "(intrinsic)" for intrinsics from intrinsic
              modules.
      
      2013-04-16  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/56969
              * gfortran.dg/c_assoc_5.f90: New.
      
      From-SVN: r198000
      Tobias Burnus committed
    • Enable java for aarch64 · eb7062cf
      	* configure.ac (aarch64-*-*): Don't disable java.
      	* configure: Regenerate.
      
      libjava/:
      	* configure.host: Add support for aarch64.
      	* sysdep/aarch64/locks.h: New file.
      
      libjava/classpath/:
      	* native/fdlibm/ieeefp.h: Add support for aarch64.
      
      From-SVN: r197997
      Andreas Schwab committed
    • cfgrtl.c (cfg_layout_merge_blocks): Revert r184005... · 4c8af858
      	* cfgrtl.c (cfg_layout_merge_blocks): Revert r184005, implement
      	correct fix by moving header and footer insn to the footer of
      	the merged basic block.  Clear BB_END of the merged-away block.
      
      From-SVN: r197995
      Steven Bosscher committed
    • re PR middle-end/43631 (var-tracking inserts notes with non-NULL BLOCK_FOR_INSN… · 96fba521
      re PR middle-end/43631 (var-tracking inserts notes with non-NULL BLOCK_FOR_INSN in between basic blocks)
      
      
      	PR middle-end/43631
      	* emit-rtl.c (make_note_raw): New function.
      	(link_insn_into_chain): New static inline function.
      	(add_insn): Use it.
      	(add_insn_before, add_insn_after): Factor insn chain linking code...
      	(add_insn_before_nobb, add_insn_after_nobb): ...here, new functions
      	using link_insn_into_chain.
      	(note_outside_basic_block_p): New helper function for emit_note_after
      	and emit_note_before.
      	(emit_note_after): Use nobb variant of add_insn_after if the note
      	should not be contained in a basic block.
      	(emit_note_before): Use nobb variant of add_insn_before if the note
      	should not be contained in a basic block.
      	(emit_note_copy): Use make_note_raw.
      	(emit_note): Likewise.
      	* bb-reorder.c (insert_section_boundary_note): Remove hack to set
      	BLOCK_FOR_INSN to NULL manually for NOTE_INSN_SWITCH_TEXT_SECTIONS.
      	* jump.c (cleanup_barriers): Use reorder_insns_nobb to avoid making
      	the moved barrier the tail of the basic block it follows.
      	* var-tracking.c (pass_variable_tracking): Add TODO_verify_flow.
      
      From-SVN: r197994
      Steven Bosscher committed
    • devirt-c-7.C: Require nonpic effective target. · 996943be
      	* g++.dg/ipa/devirt-c-7.C: Require nonpic effective target.
      	* gcc.c-torture/execute/pr33992.x: Remove.
      	* gcc.c-torture/execute/pr33992.c (foo): Declare as static.
      	* gcc.dg/uninit-pred-5_a.c (foo): Ditto.
      	* gcc.dg/uninit-pred-5_b.c (foo): Ditto.
      
      From-SVN: r197993
      Uros Bizjak committed
    • Daily bump. · 609e36b3
      From-SVN: r197992
      GCC Administrator committed
  3. 15 Apr, 2013 14 commits
    • * pt.c (tsubst) [DECLTYPE_TYPE]: Use tsubst_copy_and_build. · 099b9334
      From-SVN: r197983
      Jason Merrill committed
    • re PR c++/52748 ([C++11] N3276 changes to decltype) · 4da97565
      	PR c++/52748
      	* pt.c (tsubst) [DECLTYPE_TYPE]: If ~id is an expression
      	rather than a destructor name, it isn't an unqualified-name.
      	(tsubst_copy_and_build): Pass down decltype_flag to operator
      	handling code, too.
      
      From-SVN: r197982
      Jason Merrill committed
    • re PR c++/56388 (catch(...) in lambda rejected) · a68329c2
      	PR c++/56388
      	* semantics.c (insert_capture_proxy): Just use index 1 in the
      	stmt_list_stack.
      
      From-SVN: r197981
      Jason Merrill committed
    • re PR tree-optimization/56962 (SLSR caused miscompilation of fftw) · 7b8265ba
      	PR tree-optimization/56962
      	* gimple-ssa-strength-reduction.c (record_increment): Only set
      	initializer if gimple_assign_rhs_code is {,POINTER_}PLUS_EXPR and
      	either rhs1 or rhs2 is equal to c->base_expr.
      
      	* gcc.c-torture/execute/pr56962.c: New test.
      
      From-SVN: r197978
      Jakub Jelinek committed
    • re PR tree-optimization/56933 (Vectorizer missing read-write dependency for interleaved accesses) · 5185d248
      2013-04-15  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/56933
      	* tree-vectorizer.h (struct _stmt_vec_info): Remove read_write_dep
      	member.
      	(GROUP_READ_WRITE_DEPENDENCE): Remove.
      	(STMT_VINFO_GROUP_READ_WRITE_DEPENDENCE): Likewise.
      	* tree-vect-data-refs.c (vect_analyze_group_access): Move
      	dependence check ...
      	vect_analyze_data_ref_dependence (vect_analyze_data_ref_dependence):
      	... here.
      	* tree-vect-stmts.c (new_stmt_vec_info): Do not initialize
      	GROUP_READ_WRITE_DEPENDENCE.
      
      	* gcc.dg/vect/pr56933.c: New testcase.
      
      From-SVN: r197972
      Richard Biener committed
    • emit-rtl.c (reset_all_used_flags): New function. · a24243a0
      2013-04-15  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
      
      	* emit-rtl.c (reset_all_used_flags): New function.
      	(verify_rtl_sharing): Call reset_all_used_flags before and after
      	performing the checks.
      
      From-SVN: r197971
      Andreas Krebbel committed
    • intrinsic.texi (SYSTEM_CLOCK): Recommend kind=8. · 3c63e93e
      2013-04-15  Tobias Burnus  <burnus@net-b.de>
      
              * intrinsic.texi (SYSTEM_CLOCK): Recommend kind=8.
      
      From-SVN: r197970
      Tobias Burnus committed
    • list_read.c (finish_separator): Initialize variable. · 95bd9622
      2013-04-15  Tobias Burnus  <burnus@net-b.de>
      
              * list_read.c (finish_separator): Initialize variable.
      
      From-SVN: r197969
      Tobias Burnus committed
    • PR 56919 Improve SYSTEM_CLOCK intrinsic on Windows. · 83584eab
      frontend ChangeLog:
      
      2013-04-15  Janne Blomqvist  <jb@gcc.gnu.org>
      
      	PR fortran/56919
      	* intrinsics.texi (SYSTEM_CLOCK): Update documentation.
      
      
      libgfortran ChangeLog:
      
      2013-04-15  Janne Blomqvist  <jb@gcc.gnu.org>
      
      	PR fortran/56919
      	* intrinsics/time_1.h: Check __CYGWIN__ in addition to
      	__MINGW32__.
      	* intrinsics/system_clock.c (GF_CLOCK_MONOTONIC): Check
      	_POSIX_MONOTONIC_CLOCK as well.
      	(system_clock_4): Use GetTickCount on Windows.
      	(system_clock_8): Use QueryPerformanceCounter and
      	QueryPerformanceCounterFrequency on Windows.
      
      From-SVN: r197968
      Janne Blomqvist committed
    • arm.c (const_ok_for_dimode_op): Handle AND case. · 1c50eada
      2013-04-15  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
      
      	* config/arm/arm.c (const_ok_for_dimode_op): Handle AND case.
      	* config/arm/arm.md (*anddi3_insn): Change to insn_and_split.
      	* config/arm/constraints.md (De): New constraint.
      	* config/arm/neon.md (anddi3_neon): Delete.
      	(neon_vand<mode>): Expand to standard anddi3 pattern.
      	* config/arm/predicates.md (imm_for_neon_inv_logic_operand):
      	Move earlier in the file.
      	(neon_inv_logic_op2): Likewise.
      	(arm_anddi_operand_neon): New predicate.
      
      testsuite:
      	* gcc.target/arm/anddi3-opt.c: New test.
      	* gcc.target/arm/anddi3-opt2.c: Likewise.
      
      From-SVN: r197965
      Kyrylo Tkachov committed
    • Use -z ignore instead of --as-needed on Solaris · e927b6ad
      	* configure.ac (gcc_cv_ld_as_needed): Set
      	gcc_cv_ld_as_needed_option, gcc_cv_no_as_needed_option.
      	Use -z ignore, -z record on *-*-solaris2*.
      	(HAVE_LD_AS_NEEDED): Update comment.
      	(LD_AS_NEEDED_OPTION, LD_NO_AS_NEEDED_OPTION): Define.
      	* configure: Regenerate.
      	* config.in: Regenerate.
      	* gcc.c (init_gcc_specs) [USE_LD_AS_NEEDED]: Use
      	LD_AS_NEEDED_OPTION, LD_NO_AS_NEEDED_OPTION.
      	* config/sol2.h [HAVE_LD_AS_NEEDED] (USE_LD_AS_NEEDED): Define.
      	* doc/tm.texi.in (USE_LD_AS_NEEDED): Allow for --as-needed
      	equivalents.  Fix markup.
      	* doc/tm.texi: Regenerate.
      
      From-SVN: r197964
      Rainer Orth committed
    • i386.opt: New option mstack-protector-guard=. · e0ea8797
      	* config/i386/i386.opt: New option mstack-protector-guard=.
      	* config/i386/i386-opts.h: Add enum stack_protector_guard.
      	* config/i386/i386.h: Define TARGET_SSP_GLOBAL_GUARD and
      	TARGET_SSP_TLS_GUARD.
      	* config/i386/i386.c (ix86_option_override_internal): Set
      	ix86_stack_protector_guard.
      	* config/i386/i386.md (stack_protect_set): Enable for
      	TARGET_SSP_TLS_GUARD only.
      	(stack_protect_set_<mode>): Ditto.
      	(stack_protect_test): Ditto.
      	(stack_protect_test_<mode>): Ditto.
      	* doc/invoke.texi (i386 Option): Document.
      
      From-SVN: r197963
      Andrew Hsieh committed
    • class.c (gfc_find_intrinsic_vtab): Removed unused var. · adede54c
      2013-04-15  Tobias Burnus  <burnus@net-b.de>
      
              * class.c (gfc_find_intrinsic_vtab): Removed unused var.
              * dependency.c (check_data_pointer_types): Fix check.
              * frontend-passes.c (check_data_pointer_types): Remove
              superfluous statement.
              * parse.c (decode_omp_directive): Add missing break.
              * resolve.c (resolve_typebound_subroutine: Free variable.
              * trans-decl.c (create_function_arglist): Correct condition.
      
      From-SVN: r197961
      Tobias Burnus committed
    • re PR target/56890 (invalid fdtox instruction in 64-bit mode with -O2) · 811b72f9
      	PR target/56890
      	* config/sparc/sparc.c (enum sparc_mode_class): Add H_MODE value.
      	(S_MODES): Set H_MODE bit.
      	(SF_MODES): Set only S_MODE and SF_MODE bits.
      	(DF_MODES): Set SF_MODES and only D_MODE and DF_MODE bits.
      	(sparc_init_modes) <MODE_INT>: Set H_MODE bit for sub-word modes.
      	<MODE_VECTOR_INT>: Do not set SF_MODE for sub-word modes.
      	<MODE_FLOAT>: Likewise.
      
      From-SVN: r197958
      Eric Botcazou committed