1. 28 Jun, 2012 16 commits
  2. 27 Jun, 2012 18 commits
    • alpha: Cleaup builtins and folding · 64a5dc56
              * config/alpha/alpha.c (alpha_dimode_u): New.
              (alpha_init_builtins): Initialize it, and use it.
              (alpha_fold_builtin_cmpbge): Use alpha_dimode_u.
              (alpha_fold_builtin_zapnot, alpha_fold_builtin_insxx): Likewise.
              (alpha_fold_vector_minmax, alpha_fold_builtin_perr): Likewise.
              (alpha_fold_builtin_pklb, alpha_fold_builtin_pkwb): Likewise.
              (alpha_fold_builtin_unpkbl, alpha_fold_builtin_unpkbw): Likewise.
              (alpha_fold_builtin_cttz, alpha_fold_builtin_ctlz): Likewise.
              (alpha_fold_builtin_ctpop): Likewise.
              (alpha_fold_builtin_umulh): Remove.
              (alpha_fold_builtin): Use MULT_HIGHPART_EXPR for UMULH; fix
              typo in MAX_ARGS check.
      
      From-SVN: r189028
      Richard Henderson committed
    • Add MULT_HIGHPART_EXPR · 98449720
              * tree.def (MULT_HIGHPART_EXPR): New.
              * cfgexpand.c (expand_debug_expr): Ignore it.
              * expr.c (expand_expr_real_2): Handle it.
              * fold-const.c (int_const_binop_1): Likewise.
              * optabs.c (optab_for_tree_code): Likewise.
              * tree-cfg.c (verify_gimple_assign_binary): Likewise.
              * tree-inline.c (estimate_operator_cost): Likewise.
              * tree-pretty-print.c (dump_generic_node): Likewise.
              (op_code_prio, op_symbol_code): Likewise.
              * tree.c (commutative_tree_code): Likewise.  Also handle
              WIDEN_MULT_EXPR, VEC_WIDEN_MULT_HI_EXPR, VEC_WIDEN_MULT_LO_EXPR.
      
      From-SVN: r189027
      Richard Henderson committed
    • i386: Fix logic error in r188785 · ff4d1662
      PR target/53749
              * config/i386/i386.c (ix86_rtx_costs): Fix typo vs UNITS_PER_WORD
              in 2012-06-23 change.  Adjust two other DImode tests as well.
      
      From-SVN: r189026
      Richard Henderson committed
    • parser.c (cp_parser_check_for_invalid_template_id): tag_type parm. · ae52af05
      	* parser.c (cp_parser_check_for_invalid_template_id): tag_type parm.
      	(cp_parser_simple_type_specifier, cp_parser_class_head): Adjust.
      	(cp_parser_elaborated_type_specifier): Adjust.
      	* decl.c (duplicate_decls): Return error_mark_node on template
      	mismatch.
      
      From-SVN: r189025
      Jason Merrill committed
    • re PR c++/53563 (ICE in start_decl, at cp/decl.c:4427) · b298aa9b
      	PR c++/53563
      	* parser.c (cp_parser_template_id): Add tag_type parm.
      	(cp_parser_template_name): Likewise.
      	(cp_parser_id_expression, cp_parser_unqualified_id): Adjust.
      	(cp_parser_pseudo_destructor_name, cp_parser_type_name): Adjust.
      	(cp_parser_simple_type_specifier, cp_parser_class_name): Adjust.
      	(cp_parser_elaborated_type_specifier, cp_parser_class_head): Adjust.
      
      From-SVN: r189024
      Jason Merrill committed
    • comment · a05deb55
      From-SVN: r189023
      Jason Merrill committed
    • re PR fortran/41951 ([OOP] Not diagnosing ambiguous operators (TB vs. INTERFACE)) · 362aa474
      2012-06-27  Janus Weil  <janus@gcc.gnu.org>
      
      	PR fortran/41951
      	PR fortran/49591
      	* interface.c (check_new_interface): Rename, add 'loc' argument,
      	make non-static.
      	(gfc_add_interface): Rename 'check_new_interface'
      	* gfortran.h (gfc_check_new_interface): Add prototype.
      	* resolve.c (resolve_typebound_intrinsic_op): Add typebound operator
      	targets to non-typebound operator list.
      
      
      2012-06-27  Janus Weil  <janus@gcc.gnu.org>
      
      	PR fortran/41951
      	PR fortran/49591
      	* gfortran.dg/typebound_operator_16.f03: New.
      
      From-SVN: r189022
      Janus Weil committed
    • sse4_1-pmuldq.c (TEST): Initialize even src1.i and src2.i fields even in the… · b585a51f
      sse4_1-pmuldq.c (TEST): Initialize even src1.i and src2.i fields even in the second half of the arrays.
      
      	* gcc.target/i386/sse4_1-pmuldq.c (TEST): Initialize
      	even src1.i and src2.i fields even in the second half of the arrays.
      
      From-SVN: r189018
      Jakub Jelinek committed
    • re PR c++/51033 (generic vector subscript and shuffle support was not added to C++) · c523fc89
      
      2012-06-27  Ramana Radhakrishnan  <ramana.radhakrishnan@linaro.org>
      
      	PR C++/51033
      	* semantics.c (constexpr_call): Fix typo in comment.
      	(cxx_eval_vec_perm_expr): New.
      	(cxx_eval_constant_expression): Fold VEC_PERM_EXPRs.
      
      2012-06-27  Ramana Radhakrishnan  <ramana.radhakrishnan@linaro.org>
      
      	PR c++/51033.
      	* g++.dg/torture/vshuf-16.inc: New test.
      	* g++.dg/torture/vshuf-2.inc: New test.
      	* g++.dg/torture/vshuf-4.inc: New test.
      	* g++.dg/torture/vshuf-8.inc: New test.
      	* g++.dg/torture/vshuf-main.inc: New test.
      	* g++.dg/torture/vshuf-v16hi.C: New test.
      	* g++.dg/torture/vshuf-v16qi.C: New test.
      	* g++.dg/torture/vshuf-v2df.C: New test.
      	* g++.dg/torture/vshuf-v2di.C: New test.
      	* g++.dg/torture/vshuf-v2sf.C: New test.
      	* g++.dg/torture/vshuf-v2si.C: New test.
      	* g++.dg/torture/vshuf-v4df.C: New test.
      	* g++.dg/torture/vshuf-v4di.C: New test.
      	* g++.dg/torture/vshuf-v4sf.C: New test.
      	* g++.dg/torture/vshuf-v4si.C: New test.
      	* g++.dg/torture/vshuf-v8hi.C: New test.
      	* g++.dg/torture/vshuf-v8qi.C: New test.
      	* g++.dg/torture/vshuf-v8si.C: New test.
      
      From-SVN: r189017
      Ramana Radhakrishnan committed
    • re PR preprocessor/37215 (ICE on 'gcc -E -dM -fpreprocessed - < /dev/null') · 6f3a2e23
              PR preprocessor/37215
              * c-ppoutput.c (preprocess_file): Check for nonempty buffer.
      
      From-SVN: r189016
      Kai Tietz committed
    • rx.md (comparesi3_extend): Remove = modifier from input operand. · 4b3650e3
      	* config/rx/rx.md (comparesi3_extend): Remove = modifier from
      	input operand.
      
      From-SVN: r189014
      Nick Clifton committed
    • re PR middle-end/53676 (empty loop is not always removed now) · 195b4c50
      2012-06-27  Richard Guenther  <rguenther@suse.de>
      
      	PR middle-end/53676
      	* tree-chrec.c (chrec_convert_1): Represent truncation to
      	a type with undefined overflow as truncation to an unsigned
      	type converted to the type with undefined overflow.
      	* tree-scalar-evolution.c (interpret_rhs_expr): For computing
      	the scalar evolution of a truncated widened operation avoid
      	looking at the non-existing evolution of the widened operation
      	result.
      
      	* gcc.dg/tree-ssa/scev-6.c: New testcase.
      
      From-SVN: r189013
      Richard Guenther committed
    • re PR tree-optimization/53774 (Reassociator generates non-canonical addition) · be7493ca
      2012-06-27  Richard Guenther  <rguenther@suse.de>
      
      	PR tree-optimization/53774
      	* tree-ssa-reassoc.c (get_rank): All default defs have
      	precomputed rank.
      	(init_reassoc): Precompute rank for all SSA default defs.
      
      From-SVN: r189012
      Richard Guenther committed
    • * config/rx/rx.md (simple_return): Use the simple_return rtx. · d3f7b31e
      From-SVN: r189010
      Nick Clifton committed
    • i386: Correct costs on CONST_DOUBLE and CONST_VECTOR · a247af83
      We were always falling through to the memory default.
      Also use standard_sse_constant_p on CONST_VECTOR.
      
              * config/i386/i386.c (ix86_rtx_costs): Use standard_sse_constant_p
              and don't fall thru from standard_80387_constant_p to the memory
              fallback,
      
      From-SVN: r189007
      Richard Henderson committed
    • i386: Implement widen_smul_*_v4si for plain sse2 · 87b78516
      If we don't implement this pattern, the vectorizer is happy to
      unpack the v4si and use the full mulv2di3.  This results in
      more element shuffling than is required.
      
              * config/i386/i386.c (bdesc_args): Update.  Change
              IX86_BUILTIN_VEC_WIDEN_SMUL_ODD_V4SI to OPTION_MASK_ISA_SSE2.
              (IX86_BUILTIN_VEC_WIDEN_SMUL_EVEN_V4SI): New.
              (ix86_builtin_mul_widen_even): Use it.
              (ix86_builtin_mul_widen_odd): Relax SMUL_ODD from sse4 to sse2.
              (ix86_expand_mul_widen_evenodd): Handle signed for sse2.
              * config/i386/sse.md (vec_widen_<s>mult_hi_<V124_AVX2>): Allow
              for all SSE2.
              (vec_widen_<s>mult_lo_<V124_AVX2>): Likewise.
              (vec_widen_<s>mult_odd_<VI4_AVX2>): Likewise.  Relax from V124_AVX2.
              (vec_widen_smult_even_v4si): New.
      
      From-SVN: r189006
      Richard Henderson committed
    • i386: Expand mul<VI8_AVX2> earlier · 298301d9
      Move the expansion code to i386.c next to mulv4si3.  Eliminate
      one shift by adding the highparts before shifting.  Correct costs.
      
              * config/i386/sse.md (mul<VI8_AVX2>3): Change from insn_and_split
              to expander; move guts to ...
              * config/i386/i386.c (ix86_expand_sse2_mulvxdi3): ... here.  Add
              highparts before shifting up.
              * config/i386/i386-protos.h: Update.
      
      From-SVN: r189005
      Richard Henderson committed
    • Daily bump. · e2a3a098
      From-SVN: r189003
      GCC Administrator committed
  3. 26 Jun, 2012 6 commits
    • system.h (USE_COMMON_FOR_ONE_ONLY): Poison. · 4e2edffd
      	* system.h (USE_COMMON_FOR_ONE_ONLY): Poison.
      	* defaults.h (USE_COMMON_FOR_ONE_ONLY): Do not provide default.
      	* config/darwin.h (USE_COMMON_FOR_ONE_ONLY): Do not define.
      
      From-SVN: r188999
      Steven Bosscher committed
    • var-tracking.c (vt_add_function_parameter): Use a preserved VALUE for the MEM… · de2c775d
      var-tracking.c (vt_add_function_parameter): Use a preserved VALUE for the MEM address of an incoming parameter.
      
      * var-tracking.c (vt_add_function_parameter): Use a preserved
      VALUE for the MEM address of an incoming parameter.
      
      From-SVN: r188998
      Alexandre Oliva committed
    • scandump.exp (scan-dump, [...]): Use printable pattern in test name. · 2ef1bce6
      	* lib/scandump.exp (scan-dump, scan-dump-not, scan-dump-dem,
      	scan-dump-dem-not): Use printable pattern in test name.
      
      From-SVN: r188996
      Janis Johnson committed
    • [multiple changes] · 8a0320ad
      2012-06-26  Vincent Pucci  <pucci@adacore.com>
      
      	* exp_ch3.adb (Build_Init_Statements): Don't check the parents
      	in the Rep Item Chain of the task for aspects Interrupt_Priority,
      	Priority, CPU and Dispatching_Domain.
      	* exp_ch9.adb (Expand_N_Task_Type_Declaration): fields _Priority,
      	_CPU and _Domain are present in the corresponding record type
      	only if the task entity has a pragma, attribute definition
      	clause or aspect specification.
      	(Make_Initialize_Protection): Don't check the parents in the Rep Item
      	Chain of the task for aspects Interrupt_Priority, Priority, CPU and
      	Dispatching_Domain.
      	* freeze.adb (Freeze_Entity): Use of Evaluate_Aspects_At_Freeze_Point
      	call replaced by Analyze_Aspects_At_Freeze_Point.
      	* sem_ch13.adb, sem_ch13.ads (Analyze_Aspects_At_Freeze_Point):
      	Renaming of Evaluate_Aspects_At_Freeze_Point.
      
      2012-06-26  Yannick Moy  <moy@adacore.com>
      
      	* sem_attr.adb (Analyze_Attribute): Detect if 'Old is used outside a
      	postcondition, and issue an error in such a case.
      
      2012-06-26  Yannick Moy  <moy@adacore.com>
      
      	* gnat_rm.texi: Minor editing.
      
      2012-06-26  Tristan Gingold  <gingold@adacore.com>
      
      	* raise-gcc.c: Minor cleanup: remove unused prototype.
      	* seh_init.c: Do not create an image wide unwind info to catch
      	SEH when SEH unwind info are emitted by the compiler.
      
      From-SVN: r188995
      Arnaud Charlet committed
    • pubtypes-2.c: Update expected output. · 59b7e90f
      2012-06-26  Sterling Augustine  <saugustine@google.com>
      	    Dominique Dhumieres  <dominiq@lps.ens.fr>
      
      	* gcc.dg/pubtypes-2.c: Update expected output.
      	* gcc.dg/pubtypes-3.c: Likewise.
      	* gcc.dg/pubtypes-4.c: Likewise.
      
      
      
      Co-Authored-By: Dominique d'Humieres <dominiq@lps.ens.fr>
      
      From-SVN: r188994
      Sterling Augustine committed
    • Obvious ChangeLog formatting fix. · 1542460a
      From-SVN: r188993
      Sterling Augustine committed