1. 01 May, 2013 6 commits
    • [AArch64] Remap neon vcmp functions to C/TREE · bb60efd9
      gcc/
      	* config/aarch64/aarch64-builtins.c (BUILTIN_VALLDI): Define.
      	(aarch64_fold_builtin): Add folding for cm<eq,ge,gt,tst>.
      	* config/aarch64/aarch64-simd-builtins.def
      	(cmeq): Update to BUILTIN_VALLDI.
      	(cmgt): Likewise.
      	(cmge): Likewise.
      	(cmle): Likewise.
      	(cmlt): Likewise.
      	* config/aarch64/arm_neon.h
      	(vc<eq, lt, le, gt, ge, tst><z><qsd>_<fpsu><8,16,32,64>): Remap
      	to builtins or C as appropriate.
      
      From-SVN: r198491
      James Greenhalgh committed
    • [AArch64] Improve description of <F>CM instructions in RTL · 889b9412
      gcc/
      	* config/aarch64/aarch64-simd-builtins.def (cmhs): Rename to...
      	(cmgeu): ...This.
      	(cmhi): Rename to...
      	(cmgtu): ...This.
      	* config/aarch64/aarch64-simd.md
      	(simd_mode): Add SF.
      	(aarch64_vcond_internal): Use new names for unsigned comparison insns.
      	(aarch64_cm<optab><mode>): Rewrite to not use UNSPECs.
      	* config/aarch64/aarch64.md (*cstore<mode>_neg): Rename to...
      	(cstore<mode>_neg): ...This.
      	* config/aarch64/iterators.md
      	(VALLF): new.
      	(unspec): Remove UNSPEC_CM<EQ, LE, LT, GE, GT, HS, HI, TST>.
      	(COMPARISONS): New.
      	(UCOMPARISONS): Likewise.
      	(optab): Add missing comparisons.
      	(n_optab): New.
      	(cmp_1): Likewise.
      	(cmp_2): Likewise.
      	(CMP): Likewise.
      	(cmp): Remove.
      	(VCMP_S): Likewise.
      	(VCMP_U): Likewise.
      	(V_cmp_result): Add DF, SF modes.
      	(v_cmp_result): Likewise.
      	(v): Likewise.
      	(vmtype): Likewise.
      	* config/aarch64/predicates.md (aarch64_reg_or_fp_zero): New.
      
      From-SVN: r198490
      James Greenhalgh committed
    • thumb2.md (thumb2_smaxsi3,thumb2_sminsi3): Convert define_insn to define_insn_and_split. · 0a7dbb76
      2013-05-01  Greta Yorsh  <Greta.Yorsh@arm.com>
      
      	* config/arm/thumb2.md (thumb2_smaxsi3,thumb2_sminsi3): Convert
      	define_insn to define_insn_and_split.
      	(thumb32_umaxsi3,thumb2_uminsi3): Likewise.
      	(thumb2_negdi2,thumb2_abssi2,thumb2_neg_abssi2): Likewise.
      	(thumb2_mov_scc,thumb2_mov_negscc,thumb2_mov_notscc): Likewise.
      	(thumb2_movsicc_insn,thumb2_and_scc,thumb2_ior_scc): Likewise.
      	(thumb2_negscc): Likewise.
      
      From-SVN: r198489
      Greta Yorsh committed
    • re PR c++/57092 (Using decltype of function pointer type to define a data member… · 57c16a5e
      re PR c++/57092 (Using decltype of function pointer type to define a data member causes compiler crash)
      
      /cp
      2013-05-01  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/57092
      	* semantics.c (finish_decltype_type): Handle instantiated template
      	non-type arguments.
      
      /testsuite
      2013-05-01  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/57092
      	* g++.dg/cpp0x/decltype53.C: New.
      
      From-SVN: r198487
      Paolo Carlini committed
    • frontend-passes.c (optimize_power): Fix typo in comment. · e1e14947
      2013-05-01  Thomas Koenig  <tkoenig@gcc.gnu.org>
      
      	* frontend-passes.c (optimize_power):  Fix typo
      	in comment.
      
      From-SVN: r198486
      Thomas Koenig committed
    • Daily bump. · dceb1653
      From-SVN: r198484
      GCC Administrator committed
  2. 30 Apr, 2013 15 commits
    • re PR fortran/57071 (Optimize (-1)**k to 1 - 2 * mod(K, 2)) · 068b04fe
      2013-04-30  Thomas Koenig  <tkoenig@gcc.gnu.org>
      
      	PR fortran/57071
      	* frontend-passes.c (optimize_power):  Simplify
      	1**k to 1.
      
      2013-04-30  Thomas Koenig  <tkoenig@gcc.gnu.org>
      
      	PR fortran/57071
      	* gfortran.dg/power_5.f90:  New test.
      
      From-SVN: r198476
      Thomas Koenig committed
    • MAINTAINERS: Update my email; move myself from Fortran reviewer to Write After Approval. · dc4ea06f
      * MAINTAINERS: Update my email; move myself from Fortran
      reviewer to Write After Approval.
      
      From-SVN: r198469
      Brooks Moses committed
    • thumb2.md (thumb2_incscc, [...]): Delete. · fb614ca6
      2013-04-30  Greta Yorsh  <Greta.Yorsh@arm.com>
      
      	* config/arm/thumb2.md (thumb2_incscc, thumb2_decscc): Delete.
      
      From-SVN: r198465
      Greta Yorsh committed
    • Committed as obvious. · 9e64a0bf
      2013-04-30  Greta Yorsh  <Greta.Yorsh@arm.com>
      
      	* config/arm/thumb2.md: Remove trailing whitespaces.
      
      From-SVN: r198464
      Greta Yorsh committed
    • explow.c (plus_constant): Pass "mode" to immed_double_int_const. · d6b28156
      gcc/
      	* explow.c (plus_constant): Pass "mode" to immed_double_int_const.
      	Use gen_int_mode rather than GEN_INT.
      
      From-SVN: r198462
      Richard Sandiford committed
    • Fix a typo in ChangeLog · b0dec607
      From-SVN: r198458
      H.J. Lu committed
    • Remove the trayed debug_gimple_stmt · f91674c3
      	* value-prof.c (stream_in_histogram_value): Remove the trayed
      	debug_gimple_stmt.
      
      From-SVN: r198457
      H.J. Lu committed
    • re PR tree-optimization/57122 (ICE in verify_loop_structure, at cfgloop.c:1647… · 3551257c
      re PR tree-optimization/57122 (ICE in verify_loop_structure, at cfgloop.c:1647 (loop n’s latch does not have an edge to its header !))
      
      2013-04-30  Richard Biener  <rguenther@suse.de>
      
      	PR middle-end/57122
      	* cfghooks.c (split_edge): Properly check for the loop
      	latch edge.
      
      	* gcc.dg/torture/pr57122.c: New testcase.
      
      From-SVN: r198456
      Richard Biener committed
    • re PR middle-end/57107 (tree check fail in unlink_stmt_vdef) · 4c1aff1c
      2013-04-30  Richard Biener  <rguenther@suse.de>
      
      	PR middle-end/57107
      	* tree-eh.c (sink_clobbers): Preserve virtual SSA form.
      
      	* g++.dg/torture/pr57107.C: New testcase.
      
      From-SVN: r198454
      Richard Biener committed
    • re PR rtl-optimization/56957 (ICE in add_insn_after, at emit-rtl.c:3783) · 54b8379a
              PR rtl-optimization/56957
              PR rtl-optimization/57105
      
              * sel-sched.c (move_op_orig_expr_found): Remove insn_emitted
              variable.  Use just INSN_UID for determining whether an insn
              should be only disconnected from the insn stream.
              * sel-sched-ir.h (EXPR_WAS_CHANGED): Remove.
      
      	* gcc.dg/pr57105.c: New test.
      
      From-SVN: r198449
      Andrey Belevantsev committed
    • re PR sanitizer/57104 (ICE: in expand_expr_addr_expr_1, at expr.c:7594 with… · abc27962
      re PR sanitizer/57104 (ICE: in expand_expr_addr_expr_1, at expr.c:7594 with -fsanitize=thread and hardreg variable)
      
      	PR tree-optimization/57104
      	* tsan.c (instrument_expr): Don't instrument accesses to
      	DECL_HARD_REGISTER VAR_DECLs.
      
      	* gcc.dg/pr57104.c: New test.
      
      From-SVN: r198445
      Jakub Jelinek committed
    • config-list.mk (LIST): Add aarch64-elf and aarch64-linux-gnu. · a46d0aff
      From-SVN: r198443
      Sofiane Naci committed
    • function.h (loops_for_fn): New inline function. · 0fc822d0
      2013-04-30  Richard Biener  <rguenther@suse.de>
      
      	* function.h (loops_for_fn): New inline function.
      	(set_loops_for_fn): Likewise.
      	* cfgloop.h (place_new_loop): Add struct function parameter.
      	(get_loop): Likewise.
      	(get_loops): Likewise.
      	(number_of_loops): Likewise.
      	(fel_next): Adjust.
      	(fel_init): Likewise.
      	* cfg.c (get_loop_copy): Adjust.
      	* cfgloop.c (flow_loops_dump): Likewise.
      	(record_loop_exits): Likewise.
      	(verify_loop_structure): Likewise.
      	* cfgloopanal.c (mark_irreducible_loops): Likewise.
      	(estimate_reg_pressure_cost): Likewise.
      	(mark_loop_exit_edges): Likewise.
      	* cfgloopmanip.c (place_new_loop): Likewise.
      	(add_loop): Likewise.
      	(duplicate_loop): Likewise.
      	* graph.c (draw_cfg_nodes): Likewise.
      	* graphite-clast-to-gimple.c (translate_clast_user): Likewise.
      	* graphite-sese-to-poly.c (build_scop_scattering): Likewise.
      	(extract_affine_chrec): Likewise.
      	(build_scop_iteration_domain): Likewise.
      	* graphite.c (graphite_initialize): Likewise.
      	* ira-build.c (create_loop_tree_nodes): Likewise.
      	(more_one_region_p): Likewise.
      	(rebuild_regno_allocno_maps): Likewise.
      	(mark_loops_for_removal): Likewise.
      	(mark_all_loops_for_removal): Likewise.
      	(remove_unnecessary_regions): Likewise.
      	(ira_build): Likewise.
      	* ira-emit.c (setup_entered_from_non_parent_p): Likewise.
      	* loop-init.c (fix_loop_structure): Likewise.
      	(gate_rtl_move_loop_invariants): Likewise.
      	(gate_rtl_unswitch): Likewise.
      	(gate_rtl_unroll_and_peel_loops): Likewise.
      	(rtl_doloop): Likewise.
      	* lto-streamer-in.c (input_cfg): Likewise.
      	* lto-streamer-out.c (output_cfg): Likewise.
      	* modulo-sched.c (sms_schedule): Likewise.
      	* predict.c (tree_estimate_probability): Likewise.
      	(tree_estimate_probability_driver): Likewise.
      	(estimate_loops): Likewise.
      	* tree-cfg.c (fixup_loop_arrays_after_move): Likewise.
      	(move_sese_region_to_fn): Likewise.
      	(debug_loop_num): Likewise.
      	* tree-chrec.c (chrec_evaluate): Likewise.
      	(hide_evolution_in_other_loops_than_loop): Likewise.
      	(chrec_component_in_loop_num): Likewise.
      	(reset_evolution_in_loop): Likewise.
      	(evolution_function_is_invariant_rec_p): Likewise.
      	* tree-if-conv.c (main_tree_if_conversion): Likewise.
      	* tree-inline.c (copy_loops): Likewise.
      	(copy_cfg_body): Likewise.
      	(tree_function_versioning): Likewise.
      	* tree-loop-distribution.c (rdg_flag_loop_exits): Likewise.
      	* tree-scalar-evolution.c (chrec_contains_symbols_defined_in_loop):
      	Likewise.
      	(add_to_evolution_1): Likewise.
      	(scev_const_prop): Likewise.
      	* tree-scalar-evolution.h (get_chrec_loop): Likewise.
      	* tree-ssa-loop-ch.c (copy_loop_headers): Likewise.
      	* tree-ssa-loop-im.c (analyze_memory_references): Likewise.
      	(tree_ssa_lim_initialize): Likewise.
      	* tree-ssa-loop-manip.c (rewrite_into_loop_closed_ssa): Likewise.
      	(verify_loop_closed_ssa): Likewise.
      	* tree-ssa-loop.c  (tree_ssa_loop_init): Likewise.
      	(tree_ssa_loop_im): Likewise.
      	(tree_ssa_loop_unswitch): Likewise.
      	(tree_vectorize): Likewise.
      	(check_data_deps): Likewise.
      	(tree_ssa_loop_ivcanon): Likewise.
      	(tree_ssa_loop_bounds): Likewise.
      	(tree_complete_unroll): Likewise.
      	(tree_complete_unroll_inner): Likewise.
      	(tree_parallelize_loops): Likewise.
      	(tree_ssa_loop_prefetch): Likewise.
      	(tree_ssa_loop_ivopts): Likewise.
      	* tree-ssa.c (execute_update_addresses_taken): Liekwise.
      	* tree-vectorizer.c (vectorize_loops): Likewise.
      
      From-SVN: r198441
      Richard Biener committed
    • gcc: arm: linux-eabi: fix handling of armv4 bx fixups when linking · 37953bd3
      The bpabi.h header already sets up defines to automatically use the
      --fix-v4bx flag with the assembler & linker as needed, and creates a
      default assembly & linker spec which uses those.  Unfortunately, the
      linux-eabi.h header clobbers the LINK_SPEC define and doesn't include
      the v4bx define when setting up its own.  So while the assembler spec
      is retained and works fine to generate the right relocs, building for
      armv4 targets doesn't invoke the linker correctly so all the relocs
      get processed as if we had an armv4t target.
      
      You can see this with -dumpspecs when configuring gcc for an armv4
      target and using --with-arch=armv4:
      $ armv4l-unknown-linux-gnueabi-gcc -dumpspecs |& grep -B 1 fix-v4bx
      *subtarget_extra_asm_spec:
      .... %{mcpu=arm8|mcpu=arm810|mcpu=strongarm*|march=armv4|mcpu=fa526|mcpu=fa626:--fix-v4bx} ...
      
      With this fix in place, we also get the link spec:
      $ armv4l-unknown-linux-gnueabi-gcc -dumpspecs |& grep -B 1 fix-v4bx
      *link:
      ...  %{mcpu=arm8|mcpu=arm810|mcpu=strongarm*|march=armv4|mcpu=fa526|mcpu=fa626:--fix-v4bx} ...
      
      And all my hello world tests / glibc builds automatically turn the
      bx insn into the 'mov pc, lr' insn and all is right in the world.
      
      Signed-off-by: Mike Frysinger <vapier@gentoo.org>
      
      From-SVN: r198438
      Mike Frysinger committed
    • Daily bump. · 5eb8b03c
      From-SVN: r198437
      GCC Administrator committed
  3. 29 Apr, 2013 19 commits