1. 29 Jun, 2012 13 commits
  2. 28 Jun, 2012 17 commits
  3. 27 Jun, 2012 10 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