1. 08 Oct, 2012 13 commits
    • re PR tree-optimization/54825 (ICE with vector extension) · 91af9dc9
      2012-10-08  Richard Guenther  <rguenther@suse.de>
      
      	PR tree-optimization/54825
      	* tree-ssa-sccvn.c (vn_nary_length_from_stmt): Handle BIT_FIELD_REF.
      	(init_vn_nary_op_from_stmt): Likewise.
      	* tree-ssa-pre.c (compute_avail): Use vn_nary_op_lookup_stmt.
      	* tree-ssa-sccvn.h (sizeof_vn_nary_op): Avoid overflow.
      
      From-SVN: r192205
      Richard Guenther committed
    • tree-ssa-pre.c (postorder_num): New global. · 585d0dc4
      2012-10-08  Richard Guenther  <rguenther@suse.de>
      
      	* tree-ssa-pre.c (postorder_num): New global.
      	(compute_antic): Initialize all blocks and adjust for
      	generic postorder.
      	(my_rev_post_order_compute): Remove.
      	(init_pre): Use inverted_post_order_compute.
      
      From-SVN: r192204
      Richard Guenther committed
    • sched-int.h (schedule_block): Adjust declaration. · 975ccf22
      	* sched-int.h (schedule_block): Adjust declaration.
      	* sched-rgn.c (bb_state_array, bb_state): New static variables.
      	(sched_rgn_init): Initialize them.
      	(sched_rgn_free): Free them.
      	(schedule_region): Save scheduling state for future blocks, and
      	pass such state to schedule_block.
      	* params.def (PARAM_SCHED_STATE_EDGE_PROB_CUTOFF): New.
      	* doc/invoke.texi (--param): Document it.
      	* haifa-sched.c (schedule_block): New arg init_state.  Use it to
      	initialize state if nonnull.  All callers changed.
      	Call advance_one_cycle after scheduling.
      
      From-SVN: r192203
      Bernd Schmidt committed
    • re PR target/54854 ([avr] Deprecate and finally remove the -mshort-calls command line option) · 1e422fff
      	PR target/54854
      	* doc/invoke.texi (AVR Options): Remove -mshort-calls.
      	* config/avr/avr.opt (-mshort-calls): Remove option.
      	* config/avr/avr.h (AVR_HAVE_JMP_CALL): Don't depend on
      	TARGET_SHORT_CALLS.
      
      From-SVN: r192201
      Georg-Johann Lay committed
    • re PR middle-end/54685 ([SH] Improve unsigned int comparison with 0x7FFFFFFF) · f429813d
      	PR target/54685
      	* config/sh/sh.md (one_cmplsi2): Make insn_and_split.  Add manual
      	combine matching for an insn sequence where a ge:SI pattern can be used.
      
      	PR target/54685
      	* gcc.target/sh/pr54685.c: New.
      
      From-SVN: r192200
      Oleg Endo committed
    • PR c++/53528 C++11 attribute support · e28d52cf
      This patch implements the c++-11 generalized attributes, described in
      the N2761 paper[1].
      
      The idea is to modify the front-end to accept the new attribute syntax
      (including alignas expressions) and to build an internal
      representation similar to the one we already have for GNU attributes.
      
      This lets us re-use our existing GNU attribute mechanisms to support
      the generalized c++11 attributes.
      
      The patch does change the existing internal representation to support
      scoped attribute (aka attributes with namespaces), which is a concept
      that doesn't exist in GNU attributes.  I have thus put all existing
      GNU extension attributes into the "gnu" namespace.  For instance, in
      C++-11, the "unused" attribute would be represented as
      "[[gnu::unused]]".  Because there is no syntax for scoped attributes
      in C, writting "__attribute__((unused))" unconditionnally refers to
      the "unused" attribute in the "gnu" namespace.
      
      Note that this patch follows a conservative understanding of the
      specification by disallowing attributes appertaining to types, unless
      they apply to a type definition.
      
      Tested on x86_64-unknown-linux-gnu and powerpc64-unknown-linux-gnu.
      
      [1]: http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2761.pdf
      
      gcc/
      	* plugin.h (register_scoped_attributes): Declare new function.
      	* tree.h (enu attribute_flags::ATTR_FLAG_CXX_11): New flag.
      	(lookup_scoped_attribute_spec, cxx_11_attribute_p)
      	(get_attribute_name, get_attribute_namespace): Declare new functions.
      	(struct attribute_spec): Remove const qualifier from the members.
      	* tree.c (comp_type_attributes, private_lookup_attribute)
      	(lookup_ident_attribute, remove_attribute, merge_attribute)
      	(attribute_hash_list, attribute_list_contained): Use
      	get_attribute_name.
      	* attribs.c (decl_attributes): Don't crash on error_mark_node.
      	Forbid c++11 attributes appertaining to type-specifiers.
      	(attribute_hash): Remove global variable.
      	(attributes_table): New global variable.
      	(find_attribute_namespace, register_scoped_attribute): New static
      	functions.
      	(register_scoped_attributes, lookup_scoped_attribute_spec)
      	(cxx11_attribute_p, get_attribute_name, get_attribute_namespace):
      	New public functions.
      	(init_attributes): Register all the GNU attributes into the "gnu"
      	namespace.
      	(register_attribute): Use register_scoped_attribute to register
      	the attribute into the "gnu" namespace.
      	(lookup_attribute_spec): Use lookup_scoped_attribute_spec to
      	lookup the attribute in the "gnu" namespace.
      	(decl_attributes): Use new get_attribute_namespace and
      	lookup_scoped_attribute_spec to consider attribute namespaces when
      	looking up attributes.  When operating in c++-11 mode, pass flag
      	ATTR_FLAG_CXX11 to the spec handler.
      
      gcc/c-family/
      
      	* c-common.h (bitfield_p, cxx_fundamental_alignment_p): Declare
      	new functions.
      	* c-common.c (check_cxx_fundamental_alignment_constraints): New
      	static function.
      	(handle_aligned_attribute): In choose strictest alignment
      	among many.  Use new check_cxx_fundamental_alignment_constraints.
      	(handle_transparent_union_attribute): In c++11 attribute syntax,
      	don't look through typedefs.
      
      gcc/cp/
      
      	* cp-tree.h (enum cpp0x_warn_str::CPP0X_ATTRIBUTES): New member.
      	(enum cp_decl_spec::ds_std_attribute): New enumerator.
      	(struct cp_decl_specifier_seq::std_attributes): New field.
      	(cxx_alignas_expr, warn_misplaced_attr_for_class_type): Declare
      	new functions.
      	(check_tag_decl): Take an extra parameter for explicit
      	instantiations.
      	* decl.c (warn_misplaced_attr_for_class_type): Extract from ...
      	(check_tag_decl): ... here.  Add check for c++11 attributes being
      	applied to an explicit instantiation.  Take an extra parameter for
      	explicit instantiations.
      	(grokdeclarator): Make sure a c++11 attribute after an array
      	declarator appertains to the array, an attribute after a function
      	declarator appertains to the function type, an attribute after a
      	declarator-id appertains to the entity being declared, and an
      	attribute after a pointer declarator appertains to the pointer.
      	* decl2.c (is_late_template_attribute): Use get_attribute_name.
      	* error.c (maybe_warn_cpp0x): Support
      	CPP0X_GENERALIZED_ATTRIBUTES.
      	* parser.c (cp_next_tokens_can_be_attribute_p)
      	(cp_next_tokens_can_be_gnu_attribute_p)
      	(cp_next_tokens_can_be_std_attribute_p)
      	(cp_nth_tokens_can_be_attribute_p)
      	(cp_nth_tokens_can_be_gnu_attribute_p)
      	(cp_nth_tokens_can_be_std_attribute_p)
      	(cp_parser_gnu_attribute_list, cp_parser_std_attribute)
      	(cp_parser_std_attribute_spec, cp_parser_std_attribute_spec_seq)
      	(cp_parser_attributes_opt, cp_parser_std_attribute_list): New
      	static functions.
      	(cp_parser_gnu_attributes_opt): Replace cp_parser_attributes_opt.
      	(cp_parser_gnu_attribute_list): Replace cp_parser_attribute_list.
      	(cp_parser_postfix_expression): Disallow "[[" tokens here.
      	(cp_parser_label_for_labeled_statement): Use take an extra
      	parameter for attributes.
      	(cp_parser_block_declaration): Use
      	cp_nth_tokens_can_be_std_attribute_p here.
      	(cp_parser_decl_specifier_seq): Likewise.  Store C++11 attributes
      	that appears in in decl specifiers in cp_decl_specifier_seq::std_attributes.
      	declaration.  Emit proper warning about misplaced c++11 attributes
      	for class type.
      	(cp_parser_explicit_instantiation): Adjust call to check_tag_decl.
      	(cp_parser_init_declarator):  Parsing attributes here is no more a
      	GNU extension in c++-11.
      	(cp_parser_type_specifier_seq): Use
      	cp_next_tokens_can_be_attribute_p.
      	(cp_parser_direct_declarator): Likewise.  Hang c++11 attributes
      	following the declarator to its syntactic construct.  It'll later
      	be applied to the proper appertaining entity by grokdeclarator.
      	(cp_parser_ptr_operator): Likewise.
      	(make_declarator): Initialize cp_declarator::std_attribute.
      	(make_pointer_declarator, make_reference_declarator)
      	(make_ptrmem_declarator, cp_parser_make_indirect_declarator): Take
      	attributes that appertain to the pointer/reference in argument.
      	(cp_parser_ptr_operator): Take an out parameter for c++11
      	attributes.  Update comments.
      	(cp_parser_new_declarator_opt)
      	(cp_parser_conversion_declarator_opt): Adjust.
      	(cp_parser_declarator): Likewise.  Handle C++11 attributes.
      	Rename attributes to gnu_attribute for better legibility.
      	(cp_parser_simple_declaration): Update comment.
      	(cp_parser_class_specifier_1): Parse GNU attributes specifically
      	(cp_parser_enum_specifier): Accept only gnu attributes after the
      	specifier.
      	(cp_parser_member_declaration): Don't clear attributes -- intended
      	for the entity being declared -- too early because check_tag_decl
      	needs them.
      	(cp_parser_statement): Update comment.  Parse optional c++11
      	attributes at the beginning of the relevant kind of statements and
      	ignore them, for now, unless when calling
      	cp_parser_label_for_labeled_statement.
      	(cp_parser_label_for_labeled_statement): Take c++11 attributes
      	in parameter.
      	* semantics.c (potential_constant_expression_1): Likewise.
      	* typeck.c (fundamental_alignment_p, cxx_alignas_expr): New public
      	functions.
      
      gcc/testsuite/
      
      	* g++.dg/cpp0x/gen-attrs-1.C: New test.
      	* g++.dg/cpp0x/gen-attrs-2.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-2-1.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-3.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-4.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-5.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-6.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-7.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-8.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-9.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-10.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-11.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-12.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-13.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-14.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-15.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-16.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-17.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-18.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-19.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-20.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-21.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-22.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-23.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-24.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-25.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-26.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-27.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-28.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-29.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-30.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-31.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-32.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-33.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-34.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-35.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-36.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-36-1.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-37.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-38.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-39.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-39-1.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-40.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-41.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-42.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-43.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-44.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-45.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-46.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-47.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-47-1.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-48.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-49.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-50.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-51.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-52.C: Likewise.
      	* g++.dg/cpp0x/gen-attrs-53.C: Likewise.
      
      From-SVN: r192199
      Dodji Seketeli committed
    • re PR target/54815 ([avr] missed optimization with operations with constant operands) · f70308d4
      	PR target/54815
      	* config/avr/avr.md (*add<mode>3, add<mode>3, addpsi3): Make
      	constraint alternative "r,0,r" slighly more expensive.
      	(sub<mode>3,
      	(andqi3, andhi3, andpsi3, andsi3): Ditto.
      	(iorqi3, iorhi3, iorpsi3, iorsi3): Ditto.
      	(xorhi3, xorpsi3, xorsi3): Ditto.
      
      From-SVN: r192198
      Georg-Johann Lay committed
    • slsr-30.c: Use correct cleanup directive. · b122a75f
      	* gcc.dg/tree-ssa/slsr-30.c: Use correct cleanup directive.
      	* gcc.dg/tree-ssa/attr-hotcold-2.c: Likewise.
      	* gcc.dg/tree-ssa/ldist-21.c: Add missing cleanup directive.
      
      From-SVN: r192197
      Eric Botcazou committed
    • * ChangeLog: Fix whitespace. · 5cb41028
      From-SVN: r192195
      Uros Bizjak committed
    • re PR target/54760 ([SH] Add __builtin_thread_pointer, __builtin_set_thread_pointer) · fce1e5fb
      	PR target/54760
      	* config/sh/sh.md (*mov<mode>_gbr_load, *mov<mode>_gbr_store): New
      	insns and accompanying unnamed splits.
      	* config/sh/predicates.md (general_movsrc_operand,
      	general_movdst_operand): Reject GBR addresses.
      	* config/sh/sh-protos.h (sh_find_equiv_gbr_addr): New declaration.
      	* config/sh/sh.c (sh_address_cost, sh_legitimate_address_p,
      	sh_secondary_reload): Handle GBR addresses.
      	(base_reg_disp): New class.
      	(sh_find_base_reg_disp, sh_find_equiv_gbr_addr): New functions.
      
      	PR target/54760
      	* gcc.target/sh/pr54760-2.c: New.
      	* gcc.target/sh/pr54760-3.c: New.
      
      From-SVN: r192193
      Oleg Endo committed
    • Daily bump. · 7f7b06c1
      From-SVN: r192192
      GCC Administrator committed
    • mmix.c (mmix_output_octa): Don't assume HOST_WIDEST_INT_PRINT_HEX starts with "0x". · 63f2a6a5
      	* config/mmix/mmix.c (mmix_output_octa): Don't assume
      	HOST_WIDEST_INT_PRINT_HEX starts with "0x".  Instead use
      	HOST_WIDE_INT_PRINT_HEX_PURE, falling back to
      	HOST_WIDEST_INT_PRINT_UNSIGNED.
      
      From-SVN: r192189
      Hans-Peter Nilsson committed
  2. 07 Oct, 2012 11 commits
    • pt.c (fold_non_dependent_expr_sfinae): Remove static specifier. · 81bd268c
      2012-10-07  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	* pt.c (fold_non_dependent_expr_sfinae): Remove static specifier.
      	(tsubst_copy_and_build): Use get_target_expr_sfinae.
      	* call.c (build_conditional_expr_1, convert_like_real): Likewise.
      	* cvt.c (build_up_reference): Likewise.
      	(ocp_convert): Use abstract_virtuals_error_sfinae.
      	(build_up_reference): Propagate complain to cp_build_addr_expr.
      	* decl.c (compute_array_index_type): Use fold_non_dependent_expr_sfinae.
      	* cp-tree.h: Update declarations.
      
      	* cvt.c	(build_expr_type_conversion): Tidy.
      
      	* tree.c (stabilize_aggr_init): Change to static.
      
      From-SVN: r192188
      Paolo Carlini committed
    • re PR c++/51422 ([c++0x] ICE with invalid lambda expression) · a5061eed
      /cp
      2012-10-07  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/51422
      	* semantics.c (is_normal_capture_proxy): Return true for
      	error_mark_node as DECL_VALUE_EXPR.
      
      /testsuite
      2012-10-07  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/51422
      	* g++.dg/cpp0x/lambda/lambda-ice8.C: New.
      
      From-SVN: r192187
      Paolo Carlini committed
    • machmode.h (GET_MODE_UNIT_PRECISION): New macro. · 40c5ed5b
      gcc/
      	* machmode.h (GET_MODE_UNIT_PRECISION): New macro.
      	* simplify-rtx.c (simplify_truncation): New function,
      	extracted from simplify_subreg and (in small part) from
      	simplify_unary_operation_1.
      	(simplify_unary_operation_1) <TRUNCATE>: Use it.  Remove sign bit
      	test for !TRULY_NOOP_TRUNCATION_MODES_P.
      	(simplify_subreg): Use simplify_truncate for lowpart subregs
      	where both the inner and outer modes are scalar integers.
      	* config/mips/mips.c (mips_truncated_op_cost): New function.
      	(mips_rtx_costs): Adjust test for BADDU.
      	* config/mips/mips.md (*baddu_di<mode>): Push truncates to operands.
      
      From-SVN: r192186
      Richard Sandiford committed
    • ipa-inline-analysis.c (do_estimate_edge_time): Return actual time spent by the inlined sequence. · ed901e4c
      
      	* ipa-inline-analysis.c (do_estimate_edge_time): Return actual
      	time spent by the inlined sequence.
      	(do_estimate_edge_growth): Rename to ...
      	(do_estimate_edge_time): ... this one; return size of inlined
      	sequence.
      	* ipa-inline.h (do_estimate_edge_size): New.
      	(do_estimate_edge_growth): Remove.
      	(estimate_edge_size): New function.
      	(estimate_edge_growth): Use it.
      
      From-SVN: r192185
      Jan Hubicka committed
    • lto-cgraph.c (lto_symtab_encoder_new): New parameter FOR_INPUT. · e75f8f79
      
      	* lto-cgraph.c (lto_symtab_encoder_new): New parameter FOR_INPUT.
      	(lto_symtab_encoder_delete): Update.
      	(lto_symtab_encoder_encode): Update.
      	(compute_ltrans_boundary): Update.
      	(input_symtab): Update.
       	* lto-streamer.h (lto_symtab_encoder_new): Update.
      	
      	* lto.c (read_cgraph_and_symbols): Release type merging hash early;
      	release input encoders.
      	* lto-partition.c (new_partition): Update for new lto_symtab_encoder_new.
      
      From-SVN: r192184
      Jan Hubicka committed
    • Fix typo in previous commit: · 7c9bc875
      2012-10-07  Matthias Klose  <doko@ubuntu.com>
      
              * config/arm/unwind-arm.h (__gnu_unwind_24bit): Mark parameters
              as unused.
              (_Unwind_decode_typeinfo_ptr): Mark base as unused.
      
      From-SVN: r192182
      Matthias Klose committed
    • unwind-arm.h (__gnu_unwind_24bit): Mark parameters as unused. · acb72498
      2012-10-07  Matthias Klose  <doko@ubuntu.com>
      
              * config/arm/unwind-arm.h (__gnu_unwind_24bit): Mark parameters
              as unused.
              (_Unwind_decode_typeinfo_ptr): Mark base as unused.
      
      From-SVN: r192181
      Matthias Klose committed
    • basic: Remove empty directory. · d39e4c0c
      2012-10-07  Matthias Klose  <doko@ubuntu.com>
      
              * testsuite/28_regex/algorithms/match/basic: Remove empty directory.
              * testsuite/28_regex/algorithms/match/extended: Likewise.
              * testsuite/28_regex/algorithms/match: Likewise.
      
      From-SVN: r192180
      Matthias Klose committed
    • mips-protos.h (mips_split_type): New enum. · 4670abb0
      gcc/
      	* config/mips/mips-protos.h (mips_split_type): New enum.
      	(mips_split_64bit_move_p, mips_split_doubleword_move): Delete.
      	(mips_split_move_p, mips_split_move, mips_split_move_insn_p)
      	(mips_split_move_insn): Declare.
      	* config/mips/mips.c (mips_tuning_info): New variable.
      	(mips_load_store_insns): Use mips_split_move_insn_p instead of
      	mips_split_64bit_move_p.
      	(mips_emit_move_or_split, mips_mult_move_p): New functions.
      	(mips_split_64bit_move_p): Rename to...
      	(mips_split_move_p): ...this and take a mips_split_type argument.
      	Generalize to all moves.  Call mips_mult_move_p.
      	(mips_split_doubleword_move): Rename to...
      	(mips_split_move): ...this and take a mips_split_type argument.
      	Assert that mips_split_move_p holds.
      	(mips_insn_split_type, mips_split_move_insn_p, mips_split_move_insn):
      	New functions.
      	(mips_output_move): Use mips_split_move_p instead of
      	mips_split_64bit_move_p.  Handle MULT $0, $0 moves.
      	(mips_save_reg): Use mips_emit_move_or_split.
      	(mips_sim_reset): Assign to curr_state.  Call targetm.sched.init
      	and advance_state.
      	(mips_sim_init): Call targetm.sched.init_dfa_pre_cycle_insn and
      	targetm.sched.init_dfa_post_cycle_insn, if defined.
      	(mips_sim_next_cycle): Assign to curr_state.  Use advance_state
      	instead of state_transition.
      	(mips_sim_issue_insn): Assign to curr_state.  Use
      	targetm.sched.variable_issue to see how many more insns
      	can be issued.
      	(mips_seq_time, mips_mult_zero_zero_cost)
      	(mips_set_fast_mult_zero_zero_p, mips_set_tuning_info)
      	(mips_expand_to_rtl_hook): New functions.
      	(TARGET_EXPAND_TO_RTL_HOOK): Define.
      	* config/mips/mips.md (move_type): Add imul.
      	(type): Map imul move_types to imul.
      	(*movdi_32bit, *movti): Add imul alternatives.
      	Use mips_split_move_insn_p and mips_split_move_insn instead of
      	mips_split_64bit_move_p and mips_split_doubleword_move in move
      	splitters.
      
      gcc/testsuite/
      2012-10-07  Richard Sandiford  <rdsandiford@googlemail.com>
      	    Sandra Loosemore  <sandra@codesourcery.com>
      
      	* gcc.target/mips/madd-9.c: Force code to be tuned for the 4kc
      	and test that the accumulator is initialized using MULT.
      	* gcc.target/mips/mips32-dsp-accinit-1.c: New test.
      	* gcc.target/mips/mips32-dsp-accinit-2.c: Likewise.
      
      Co-Authored-By: Sandra Loosemore <sandra@codesourcery.com>
      
      From-SVN: r192179
      Richard Sandiford committed
    • rs6000.c (print_operand): Delete. · 03d15315
      gcc/
      	* config/rs6000/rs6000.c (print_operand) ['A']: Delete.
      
      From-SVN: r192178
      Segher Boessenkool committed
    • Daily bump. · d82f0a93
      From-SVN: r192177
      GCC Administrator committed
  3. 06 Oct, 2012 16 commits