Commit Graph

101324 Commits

Author SHA1 Message Date
Martin Jambor
8aa29647d3 ipa-prop.c (determine_cst_member_ptr): Ignore non-clobbering statements instead of bailing out on them.
2010-06-25  Martin Jambor  <mjambor@suse.cz>

	* ipa-prop.c (determine_cst_member_ptr): Ignore non-clobbering
	statements instead of bailing out on them.
	(ipa_analyze_indirect_call_uses): Do not require that loads from the
	parameter are in the same BB as the condition.  Update comments.

	* testsuite/g++.dg/ipa/iinline-2.C: New test.

From-SVN: r161377
2010-06-25 14:46:41 +02:00
Jakub Jelinek
7a2eceff8f re PR middle-end/43866 (wrong code with -fbounds-check -funswitch-loops)
PR middle-end/43866
	* tree-ssa-loop-unswitch.c (tree_may_unswitch_on): If stmt is always
	true or always false, return NULL_TREE.
	(tree_unswitch_single_loop): Optimize conditions even when reaching
	max-unswitch-level parameter.  If num > 0, optimize first all conditions
	using entry checks, then do still reachable block discovery and consider
	only conditions in still reachable basic blocks in the loop.

	* gfortran.dg/pr43866.f90: New test.

From-SVN: r161375
2010-06-25 14:10:42 +02:00
Jakub Jelinek
8ba0479ece re PR tree-optimization/44539 (ICE: verify_ssa failed: type mismatch between an SSA_NAME and its symbol)
PR tree-optimization/44539
	* tree-cfgcleanup.c (fixup_noreturn_call): Call update_stmt even when
	the call doesn't have LHS, but has VDEF.

	* gcc.dg/pr44539.c: New test.

From-SVN: r161374
2010-06-25 14:07:00 +02:00
Paolo Carlini
47d660fbcc profiler_list_to_slist.h: Remove spurious semicolon; prefer pre-increment.
2010-06-25  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/profile/impl/profiler_list_to_slist.h: Remove spurious
	semicolon; prefer pre-increment.
	* include/profile/impl/profiler_container_size.h: Use everywhere
	qualified std::size_t.
	* include/profile/impl/profiler_trace.h (__trace_base<>::
	__collect_warnings): Tidy loop.
	* include/profile/impl/profiler_vector_to_list.h: Minor formatting
	changes.

From-SVN: r161373
2010-06-25 11:37:54 +00:00
Joseph Myers
d68411092e pa.h (MODIFY_TARGET_NAME): Remove.
* config/pa/pa.h (MODIFY_TARGET_NAME): Remove.
	* doc/tm.texi (MODIFY_TARGET_NAME): Don't document.
	* gcc.c (enum add_del, struct modify_target, modify_target):
	Remove.
	(process_command): Remove code conditional on MODIFY_TARGET_NAME.
	* system.h (MODIFY_TARGET_NAME): Poison.

From-SVN: r161372
2010-06-25 12:12:01 +01:00
Alan Modra
4c9d416e56 invoke.texi: Delete mcmodel=medium from powerpc options.
* doc/invoke.texi: Delete mcmodel=medium from powerpc options.
	* config/rs6000/rs6000.h (enum rs6000_cmodel): Delete CMODEL_MEDIUM.
	* config/rs6000/linux64.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Set
	CMODEL_LARGE as default.
	* config/rs6000/rs6000.c (rs6000_handle_option): Remove mcmodel=medium.
	(offsettable_ok_by_alignment): Delete.
	(rs6000_emit_move): Remove mcmodel=medium optimization.

From-SVN: r161371
2010-06-25 20:12:41 +09:30
Paolo Carlini
0b032f38aa profiler_trace.h: Uglify it to __it, use everywhere std::size_t instead of size_t.
2010-06-25  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/profile/impl/profiler_trace.h: Uglify it to __it, use
	everywhere std::size_t instead of size_t.

From-SVN: r161368
2010-06-25 09:43:18 +00:00
Bernd Schmidt
0354c0c70b With large parts from Jim Wilson:
PR target/43902
	* tree-pretty-print.c (dump_generic_node, op_code_prio): Add
	WIDEN_MULT_PLUS_EXPR and WIDEN_MULT_MINUS_EXPR.
	* optabs.c (optab_for_tree_code): Likewise.
	(expand_widen_pattern_expr): Likewise.
	* tree-ssa-math-opts.c (convert_mult_to_widen): New function, broken
	out of execute_optimize_widening_mul.
	(convert_plusminus_to_widen): New function.
	(execute_optimize_widening_mul): Use the two new functions.
	* expr.c (expand_expr_real_2): Add support for GIMPLE_TERNARY_RHS.
	Remove code to generate widening multiply-accumulate.  Add support
	for WIDEN_MULT_PLUS_EXPR and WIDEN_MULT_MINUS_EXPR.
	* gimple-pretty-print.c (dump_ternary_rhs): New function.
	(dump_gimple_assign): Call it when appropriate.
	* tree.def (WIDEN_MULT_PLUS_EXPR, WIDEN_MULT_MINUS_EXPR): New codes.
	* cfgexpand.c (gimple_assign_rhs_to_tree): Likewise.
	(expand_gimple_stmt_1): Likewise.
	(expand_debug_expr): Support WIDEN_MULT_PLUS_EXPR and
	WIDEN_MULT_MINUS_EXPR.
	* tree-ssa-operands.c (get_expr_operands): Likewise.
	* tree-inline.c (estimate_operator_cost): Likewise.
	* gimple.c (extract_ops_from_tree_1): Renamed from
	extract_ops_from_tree.  Add new arg for a third operand; fill it.
	(gimple_build_assign_stat): Support operations with three operands.
	(gimple_build_assign_with_ops_stat): Likewise.
	(gimple_assign_set_rhs_from_tree): Likewise.
	(gimple_assign_set_rhs_with_ops_1): Renamed from
	gimple_assign_set_rhs_with_ops.  Add new arg for a third operand.
	(get_gimple_rhs_num_ops): Support GIMPLE_TERNARY_RHS.
	(get_gimple_rhs_num_ops): Handle WIDEN_MULT_PLUS_EXPR and
	WIDEN_MULT_MINUS_EXPR.
	* gimple.h (enum gimple_rhs_class): Add GIMPLE_TERNARY_RHS.
	(extract_ops_from_tree_1): Adjust declaration.
	(gimple_assign_set_rhs_with_ops_1): Likewise.
	(gimple_build_assign_with_ops): Pass NULL for last operand.
	(gimple_build_assign_with_ops3): New macro.
	(gimple_assign_rhs3, gimple_assign_rhs3_ptr, gimple_assign_set_rhs3,
	gimple_assign_set_rhs_with_ops, extract_ops_from_tree): New inline
	functions.
	* tree-cfg.c (verify_gimple_assign_ternary): New static function.
	(verify_gimple_assign): Call it.
	* doc/gimple.texi (Manipulating operands): Document GIMPLE_TERNARY_RHS.
	(Tuple specific accessors, subsection GIMPLE_ASSIGN): Document new
	functions for dealing with three-operand statements.
	* tree.c (commutative_ternary_tree_code): New function.
	* tree.h (commutative_ternary_tree_code): Declare it.
	* tree-vrp.c (gimple_assign_nonnegative_warnv_p): Return false for ternary
	statements.
	(gimple_assign_nonzero_warnv_p): Likewise.
	* tree-ssa-sccvn.c (stmt_has_constants): Handle GIMPLE_TERNARY_RHS.
	* tree-ssa-ccp.c (get_rhs_assign_op_for_ccp): New static function.
	(ccp_fold): Use it.  Handle GIMPLE_TERNARY_RHS.
	* tree-ssa-dom.c (enum expr_kind): Add EXPR_TERNARY.
	(struct hashtable_expr): New member ternary in the union.
	(initialize_hash_element): Handle GIMPLE_TERNARY_RHS.
	(hashable_expr_equal_p): Fix indentation.  Handle EXPR_TERNARY.
	(iterative_hash_hashable_expr): Likewise.
	(print_expr_hash_elt): Handle EXPR_TERNARY.
	* gimple-fold.c (fold_gimple_assign): Handle GIMPLE_TERNARY_RHS.
	* tree-ssa-threadedge.c (fold_assignment_stmt): Remove useless break
	statements.  Handle GIMPLE_TERNARY_RHS.

testsuite/
	PR target/43902
	* gcc.target/mips/madd-9.c: New test.

From-SVN: r161366
2010-06-25 08:56:24 +00:00
Jan Hubicka
38f78b0c69 * doc/invoke.texi (-Wsuggest-attribute): Add noreturn.
From-SVN: r161364
2010-06-25 07:56:43 +00:00
Shujing Zhao
09a1e889cc re PR c/44517 (improve diagnostic for mispelled typename in function declaration)
gcc/
2010-06-25  Shujing Zhao  <pearly.zhao@oracle.com>

        PR c/44517
        * c-parser.c (c_parser_parms_list_declarator): Return NULL if one of
        parameters are not good.
        (c_parser_parameter_declaration): Error unknown type name if the type
        name can't start declaration specifiers.

gcc/testsuite/
2010-06-25  Shujing Zhao  <pearly.zhao@oracle.com>

        PR c/44517
        * gcc.dg/noncompile/pr44517.c: New.
        * gcc.dg/noncompile/990416-1.c: Adjust expected error.

From-SVN: r161363
2010-06-25 07:31:49 +00:00
Joseph Myers
418f840c1b gcc.c (translate_options): Don't mention +e in comment.
* gcc.c (translate_options): Don't mention +e in comment.
	(process_command): Don't handle +e specially.

cp:
	* lang-specs.h: Remove +e handling.

objcp:
	* lang-specs.h: Remove +e handling.

From-SVN: r161355
2010-06-25 01:26:24 +01:00
GCC Administrator
c504fdd6ca Daily bump.
From-SVN: r161354
2010-06-25 00:18:17 +00:00
Bernd Schmidt
b14151b586 ira-int.h (struct live_range, [...]): Renamed from struct ira_allocno_live_range and allocno_live_range_t...
* ira-int.h (struct live_range, live_range_t): Renamed from struct
	ira_allocno_live_range and allocno_live_range_t; all uses changed.
	* ira-build.c (live_range_pool): Renamed from allocno_live_range_pool.
	All uses changed.

From-SVN: r161350
2010-06-24 23:30:28 +00:00
Bernd Schmidt
42ce1cc4e1 ira-int.h (SET_MINMAX_SET_BIT, [...]): Renamed from SET_ALLOCNO_SET_BIT...
* ira-int.h (SET_MINMAX_SET_BIT, CLEAR_MINMAX_SET_BIT,
	TEST_MINMAX_SET_BIT, minmax_set_iterator, minmax_set_iter_init,
	minmax_set_iter_cond, minmax_set_iter_next,
	FOR_EACH_BIT_IN_MINMAX_SET): Renamed from SET_ALLOCNO_SET_BIT,
	CLEAR_ALLOCNO_SET_BIT, TEST_ALLOCNO_SET_BIT, ira_allocno_set_iterator,
	ira_allocno_set_iter_init, ira_allocno_set_iter_cond,
	ira_allocno_set_iter_Next and FOR_EACH_ALLOCNO_IN_ALLOCNO_SET.  All
	uses changed.

From-SVN: r161349
2010-06-24 23:29:44 +00:00
Bernd Schmidt
6300cb73c2 ira-color.c (assign_hard_reg): Improve formatting of multi-line for statement.
* ira-color.c (assign_hard_reg): Improve formatting of multi-line for
	statement.

From-SVN: r161348
2010-06-24 23:28:35 +00:00
Bernd Schmidt
029da7d4c4 ira-int.h (ira_parent_allocno, [...]): Declare.
* ira-int.h (ira_parent_allocno, ira_parent_or_cap_allocno): Declare.
	* ira-build.c (ira_parent_allocno, ira_parent_or_cap_allocno): New
	functions.
	(ira_flattening): Use ira_parent_allocno.
	* ira-conflicts.c (process_regs_for_copy, propagate_copies)
	build_allocno_conflicts): Use ira_parent_or_cap_allocno.

From-SVN: r161347
2010-06-24 23:27:58 +00:00
Bernd Schmidt
3c55880a94 ira-build.c (merge_hard_reg_conflicts): New function.
* ira-build.c (merge_hard_reg_conflicts): New function.
	(create_cap_allocno, copy_info_to_removed_store_destinations,
	propagate_some_info_from_allocno, propagate_allocno_info): Use it.
	(move_allocno_live_ranges, copy_allocno_live_ranges): New functions.
	(remove_unnecessary_allocnos, remove_low_level_allocnos)
	copy_nifo_to_removed_store_destination): Use them.
	* ira-lives.c (make_hard_regno_born): New function, split out of
	make_regno_born.
	(make_allocno_born): Likewise.
	(make_hard_regno_dead): New function, split out of make_regno_dead.
	(make_allocno_dead): Likewise.
	(inc_register_pressure): New function, split out of set_allocno_live.
	(dec_register_pressure): New function, split out of clear_allocno_live.
	(mark_pseudo_regno_live): New function, split out of mark_reg_live.
	(mark_hard_reg_live): Likewise.  Use inc_register_pressure.
	(mark_pseudo_regno_dead): New function, split out of mark_reg_dead.
	(mark_hard_reg_dead): Likewise.  Use dec_register_pressure.
	(make_pseudo_conflict): Use mark_pseudo_regno_dead and
	mark_pseudo_regno_live.
	(process_bb_node_lives): Use mark_pseudo_regno_live,
	make_hard_regno_born and make_allocno_dead.
	(make_regno_born, make_regno_dead, mark_reg_live, mark_reg_dead,
	set_allocno_live, clear_allocno_live): Delete functions.

From-SVN: r161346
2010-06-24 23:27:09 +00:00
Bernd Schmidt
dd2e0807cc * ira.c (allocno_pool, copy_pool, allocno_live_range_pool): Delete.
From-SVN: r161345
2010-06-24 23:25:23 +00:00
Richard Earnshaw
8850383b10 thumb2.md (thumb2_tlobits_cbranch): Delete.
* thumb2.md (thumb2_tlobits_cbranch): Delete.
	(peephole2 to convert zero_extract/compare of single bit to
	 lshift/compare): New.

From-SVN: r161344
2010-06-24 22:46:54 +00:00
Steve Ellcey
0dab9071eb Fix type in last checkin. (Added \t that should not have been there.)
From-SVN: r161343
2010-06-24 22:38:15 +00:00
Steve Ellcey
7f58e69fe2 re PR testsuite/43283 (ld: Unsatisfied symbol "start" in file c_lto_20091216-1_0.o)
2010-06-24  Steve Ellcey  <sje@cup.hp.com>

	PR testsuite/43283
	* gcc.dg/lto/20091216-1_0.c: Use newline instead of semicolon
	and add argument to nop for IA64.

From-SVN: r161342
2010-06-24 22:31:23 +00:00
Anatoly Sokolov
43a5d30b9a fold-const.c (const_binop): Remove 'notrunc' argement.
* fold-const.c (const_binop): Remove 'notrunc' argement. Adjust
	recursive call and call to 'int_const_binop'.
	(build_range_check, fold_cond_expr_with_comparison, unextend,
	fold_truthop, extract_muldiv_1, fold_comparison, fold_binary_loc,
	multiple_of_p): Adjust call to const_binop.

From-SVN: r161336
2010-06-24 23:11:19 +04:00
Paolo Carlini
9ab1f9c70e profiler_trace.h (__trace_base<>:: __trace_base()): Move inline, simplify; formatting tweaks.
2010-06-24  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/profile/impl/profiler_trace.h (__trace_base<>::
	__trace_base()): Move inline, simplify; formatting tweaks.
	* include/profile/impl/profiler_hash_func.h: Formatting tweaks.

From-SVN: r161334
2010-06-24 18:52:42 +00:00
Paolo Carlini
3f04c1b4bd profiler_trace.h (__trace_base<>:: __trace_base()): Move inline, simplify; formatting tweaks.
2010-06-24  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/profile/impl/profiler_trace.h (__trace_base<>::
	__trace_base()): Move inline, simplify; formatting tweaks.
	* include/profile/impl/profiler_hash_func.h: Formatting tweaks.

From-SVN: r161333
2010-06-24 18:52:31 +00:00
Uros Bizjak
b1c6d0185a i386.md (XFmode push splitter): Use GET_MODE_SIZE to determine size of XFmode operand.
* config/i386/i386.md (XFmode push splitter): Use GET_MODE_SIZE to
	determine size of XFmode operand.
	(XFmode extended DFmode push splitter): Ditto.
	(XFmode extended SFmode push splitter): Ditto.

From-SVN: r161332
2010-06-24 20:35:52 +02:00
H.J. Lu
969fd17d1e Add missing testcases for PR 44588.
From-SVN: r161330
2010-06-24 11:21:21 -07:00
H.J. Lu
da0ae97088 Implement 8bit divmod patterns.
gcc/

2010-06-24  H.J. Lu  <hongjiu.lu@intel.com>

	PR target/44588
	* config/i386/i386.md (extract_code): New.
	(<u>divmodqi4): Likewise.
	(divmodhiqi3): Likewise.
	(udivmodhiqi3): Likewise.
	(<u>divqi3): Remvoved.

gcc/testsuite/

2010-06-24  H.J. Lu  <hongjiu.lu@intel.com>

	PR target/44588
	* gcc.target/i386/mod-1.c: New.
	* gcc.target/i386/umod-1.c: Likewise.
	* gcc.target/i386/umod-2.c: Likewise.
	* gcc.target/i386/umod-3.c: Likewise.

From-SVN: r161329
2010-06-24 11:20:28 -07:00
Jakub Jelinek
54f044ebbb re PR middle-end/44492 (auto-inc-dec pushes PRE_MODIFY/PRE_INC into inline asm operands)
PR middle-end/44492
	* recog.h (struct recog_data): Add is_asm field.
	* recog.c (asm_operand_ok, constrain_operands): If neither < nor > is
	present in constraints of inline-asm operand and memory operand
	contains {PRE,POST}_{INC,DEC,MODIFY}, return 0.
	(extract_insn): Initialize recog_data.is_asm.
	* doc/md.texi (Constraints): Document operand side-effect rules.

	* g++.dg/torture/pr44492.C: New test.

From-SVN: r161328
2010-06-24 19:48:16 +02:00
Paolo Carlini
c7d42abb94 profiler_trace.h (__warning_data:: __warning_message): Change to std::string...
2010-06-24  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/profile/impl/profiler_trace.h (__warning_data::
	__warning_message): Change to std::string; clean-up includes,
	qualify size_t, fprintf, etc, with std everywhere.
	(struct __warn::operator()): Adjust.
	* include/profile/impl/profiler_list_to_slist.h
	(__list2slist_info::__advice): Change to return a std::string;
	clean-up includes, qualify size_t, fprintf, etc, with std.
	* include/profile/impl/profiler_container_size.h
	(__container_size_info::__advice): Likewise.
	* include/profile/impl/profiler_hash_func.h (__hashfunc_info::
	__advice): Likewise.
	* include/profile/impl/profiler_list_to_vector.h
	(__list2vector_info::__advice): Likewise.
	* include/profile/impl/profiler_vector_to_list.h
	(__vector2list_info::__advice): Likewise.
	* include/profile/impl/profiler_map_to_unordered_map.h
	(__map2umap_info::__advice): Likewise.
	* include/profile/impl/profiler.h: Likewise.
	* include/profile/impl/profiler_hashtable_size.h: Likewise.
	* include/profile/impl/profiler_node.h: Likewise.
	* include/profile/impl/profiler_vector_size.h: Likewise.

	* include/profile/iterator_tracker.h: Formatting and stylistic
	tweaks.
	* include/profile/base.h: Likewise.
	* include/profile/map.h: Likewise.

From-SVN: r161325
2010-06-24 16:17:55 +00:00
Joseph Myers
4f8f9b8fa5 update_web_docs_svn: Also pass -I option pointing to ada/ source directory for Ada manual.
* update_web_docs_svn: Also pass -I option pointing to ada/ source
	directory for Ada manual.

From-SVN: r161324
2010-06-24 16:52:46 +01:00
Andi Kleen
d166d4c3e5 c-parser.c (c_parser_conditional_expression): Call warn_for_omitted_condop.
2010-06-24  Andi Kleen  <ak@linux.intel.com>

	* c-parser.c (c_parser_conditional_expression):
        Call warn_for_omitted_condop.
        * doc/invoke.texi: Document omitted condop warning.
c-family/	
        * c-common.c (warn_for_omitted_condop): New.
        * c-common.h (warn_for_omitted_condop): Add prototype.
testsuite/
        * c-c++-common/warn-omitted-condop.c: New.
cp/
	* parser.c: (cp_parser_question_colon_clause):
        Switch to use cp_lexer_peek_token.
        Call warn_for_omitted_condop. Call pedwarn for omitted
        middle operand.

From-SVN: r161318
2010-06-24 12:47:30 +00:00
Nick Clifton
b27c1cde2e loop-unswitch.c (compare_and_jump_seq): Assert that the last insn in the sequence is a jump insn before setting its label.
* loop-unswitch.c (compare_and_jump_seq): Assert that the last
        insn in the sequence is a jump insn before setting its label.

From-SVN: r161313
2010-06-24 10:01:57 +00:00
Alan Modra
2dcef31e9f collect2.c (main): Match exactly --version and --help.
* collect2.c (main): Match exactly --version and --help.

From-SVN: r161311
2010-06-24 18:09:11 +09:30
Tobias Burnus
d646bbce34 re PR fortran/44614 ([OOP] Wrongly importing a symbol into an interface without IMPORT)
2010-06-24  Tobias Burnus  <burnus@net-b.de>

        PR fortran/44614
        * decl.c (variable_decl): Fix IMPORT diagnostic for CLASS.

2010-06-24  Tobias Burnus  <burnus@net-b.de>

        PR fortran/44614
        * gfortran.dg/import8.f90: New.

From-SVN: r161310
2010-06-24 09:51:22 +02:00
DJ Delorie
5f4a67a500 * config/m32c/m32c-pragma.c: Don't include rtl.h.
From-SVN: r161307
2010-06-24 00:26:04 -04:00
GCC Administrator
c6d49513f5 Daily bump.
From-SVN: r161305
2010-06-24 00:17:50 +00:00
Anatoly Sokolov
c7d08869b0 decl.c (java_init_decl_processing): Use double_int_to_tree instead of build_int_cst_wide.
/java
	* decl.c (java_init_decl_processing): Use double_int_to_tree instead
	of build_int_cst_wide.
	* boehm.c (set_bit): Remove.
	(mark_reference_fields): Use double_int type for 'mask' argument.
	Use double_int_setbit instead of set_bit.
	(get_boehm_type_descriptor): Use double_int_setbit instead of
	set_bit. Use double_int_to_tree instead of build_int_cst_wide.

From-SVN: r161288
2010-06-23 23:18:10 +04:00
Uros Bizjak
bc051083b0 i386 (mov<mode>): Macroize expander from mov{sf,df,xf} using X87MODEF mode iterator.
* config/i386/i386 (mov<mode>): Macroize expander from mov{sf,df,xf}
	using X87MODEF mode iterator.
	(pushsf splitter): Macroize splitter using P mode iterator.
	(*swap<mode>): Macroize insn from *swap{sf,df} using MODEF
	mode iterator.

	(*movxf_internal): Rename from *movxf_integer.
	(*movxf_internal_nointeger): Rename from *movxf_nointeger.
	(*movdf_internal_rex64): Rename from *movdf_integer_rex64.
	(*movdf_internal): Rename from *movdf_integer.
	(*movdf_internal_nointeger): Rename from *movdf_nointeger.
	(*movsf_internal): Rename from *movdf_1.

From-SVN: r161287
2010-06-23 21:02:42 +02:00
Basile Starynkevitch
cde8534c84 coretypes.h: (gimple_seq_node_d, gimple_seq_node)
2010-06-23  Basile Starynkevitch  <basile@starynkevitch.net>

	* coretypes.h: (gimple_seq_node_d, gimple_seq_node)
	(const_gimple_seq_node): Removed typedefs.

	* gimple.h: (gimple_seq_node_d, gimple_seq_node)
	(const_gimple_seq_node): Added typedefs moved from coretypes.h.

From-SVN: r161283
2010-06-23 16:10:01 +00:00
Joern Rennecke
f12c802afd re PR other/44644 (type/data name clash makes --enable-build-with-cxx cc1 hard to debug)
PR other/44644
        * df-core.c (struct df): Rename to df_d.
        * df.h (struct df): Likewise.
        * dse.h (struct df): Remove forward declaration.
        * recog.h (struct insn_data): Rename to:
        (struct_insn_data_d).  Adjusted all users.

From-SVN: r161281
2010-06-23 15:25:33 +01:00
H.J. Lu
9b2133cd43 Split AVX vec_extract_lo_XXX and 128bit to 256bit cast.
Remove 256bit to 128bit cast.

2010-06-23  H.J. Lu  <hongjiu.lu@intel.com>

	* config/i386/i386.c (bdesc_args): Replace CODE_FOR_avx_si_si256,
	CODE_FOR_avx_ps_ps256 and CODE_FOR_avx_pd_pd256 with
	CODE_FOR_vec_extract_lo_v8si, CODE_FOR_vec_extract_lo_v8sf
	and CODE_FOR_vec_extract_lo_v4df.

	* config/i386/sse.md (vec_extract_lo_<AVX256MODE4P:mode>):
	Changed to define_insn_and_split.
	(vec_extract_lo_<AVX256MODE8P:mode>): Likewise.
	(vec_extract_lo_v16hi): Likewise.
	(vec_extract_lo_v32qi): Likewise.
	(avx_<avxmodesuffixp><avxmodesuffix>_<avxmodesuffixp>): Likewise.
	(avx_<avxmodesuffixp>_<avxmodesuffixp><avxmodesuffix>): Removed.

From-SVN: r161279
2010-06-23 07:11:23 -07:00
Arnaud Charlet
e487f350e4 Fix header.
From-SVN: r161278
2010-06-23 14:51:37 +02:00
Arnaud Charlet
6e1ee5c3d2 [multiple changes]
2010-06-23  Thomas Quinot  <quinot@adacore.com>

	* exp_attr.adb (Expand_Access_To_Protected_Op): When rewriting a
	reference to a protected subprogram outside of the protected's scope,
	ensure the corresponding external subprogram is frozen before the
	reference.

2010-06-23  Ed Schonberg  <schonberg@adacore.com>

	* sem_prag.adb: Fix typo in error message.
	* sem.adb: Refine previous change.

2010-06-23  Robert Dewar  <dewar@adacore.com>

	* impunit.adb, a-suewen.adb, a-suewen.ads, a-suenco.adb, a-suenco.ads,
	a-suezen.adb, a-suezen.ads, a-stuten.adb, a-stuten.ads, Makefile.rtl:
	Implement Ada 2012 string encoding packages.

2010-06-23  Arnaud Charlet  <charlet@adacore.com>

	* a-stwiun-shared.adb, a-stwiun-shared.ads, a-stzunb-shared.adb,
	a-stzunb-shared.ads, a-swunau-shared.adb, a-swuwti-shared.adb,
	a-szunau-shared.adb, a-szuzti-shared.adb: New files.
	* gcc-interface/Makefile.in: Enable use of above files.

From-SVN: r161277
2010-06-23 14:44:34 +02:00
Joern Rennecke
f52d94aad0 Add PR markers.
From-SVN: r161276
2010-06-23 13:40:04 +01:00
Joern Rennecke
bec02c18ae * config/spu/spu.c (ea_load_store_inline): Use add_reg_note.
From-SVN: r161275
2010-06-23 13:31:08 +01:00
Joern Rennecke
82c0295ae3 * config/spu/spu-protos.h (spu_expand_epilogue) Use bool.
* config/spu/spu.c (spu_scalar_mode_supported_p): Declare with bool.
        (spu_vector_mode_supported_p, spu_handle_fndecl_attribute): Likewise.
        (spu_handle_vector_attribute, spu_pass_by_reference): Likewise.
        (spu_rtx_costs, spu_function_ok_for_sibcall): Likewise.

From-SVN: r161274
2010-06-23 13:29:32 +01:00
Arnaud Charlet
1d57c04fd7 [multiple changes]
2010-06-23  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch13.adb (Check_Constant_Address_Clauses): Do not check legality
	of address clauses if if Ignore_Rep_Clauses is active.
	* freeze.adb (Check_Address_Clause): If Ignore_Rep_Clauses is active,
	remove address clause from tree so that it does not reach the backend.

2010-06-23  Arnaud Charlet  <charlet@adacore.com>

	* exp_attr.adb (Expand_N_Attribute_Reference [Attribute_Valid]): Do not
	expand 'Valid from user code in CodePeer mode, will be handled by the
	back-end directly.

2010-06-23  Bob Duff  <duff@adacore.com>

	* g-comlin.ads: Minor comment improvements.

2010-06-23  Ed Schonberg  <schonberg@adacore.com>

	* sem_res.adb (Uses_SS): The expression that initializes a controlled
	component of a record type may be a user-defined operator that is
	rewritten as a function call.

From-SVN: r161271
2010-06-23 12:21:23 +02:00
Bob Duff
b91fccb300 g-comlin.ads, [...]: Minor comment fix.
2010-06-23  Bob Duff  <duff@adacore.com>

	* g-comlin.ads, sem_ch13.adb: Minor comment fix.

From-SVN: r161270
2010-06-23 12:13:57 +02:00
Arnaud Charlet
0eed45bbe2 [multiple changes]
2010-06-23  Eric Botcazou  <ebotcazou@adacore.com>

	* exp_ch11.adb (Expand_Local_Exception_Handlers): Propagate the end
	label to the new sequence of statements.  Set the sloc of the raise
	statement onto the new goto statements.

2010-06-23  Robert Dewar  <dewar@adacore.com>

	* a-stuten.ads, a-stuten.adb: New files.
	* impunit.adb: Add engtry for Ada.Strings.UTF_Encoding (a-stuten.ads)
	* Makefile.rtl: Add entry for a-stuten (Ada.Strings.UTF_Encoding)

2010-06-23  Robert Dewar  <dewar@adacore.com>

	* gnat_ugn.texi: Add documentation of -gnat12 switch
	Add documentation of -gnatX switch.

2010-06-23  Ed Schonberg  <schonberg@adacore.com>

	* inline.ads: Include the current Ada_Version in the info for pending
	instance bodies, so that declaration and body are compiled with the
	same Ada_Version.
	* inline.adb: Move with_clause for Opt to spec.
	* sem_ch12.adb (Analyze_Package_Instantiation,
	Analyze_Subprogram_Instantiation): Save current Ada_Version in
	Pending_Instantiation information.
	(Instantiate_Package_Body, Instantiate_Subprogram_Body,
	Inline_Package_Body): Use the Ada_Version present in the body
	information.

2010-06-23  Robert Dewar  <dewar@adacore.com>

	* usage.adb: Add documentation for -gnat12 switch.
	* errout.ads: Add VMS alias entry for -gnat12 switch
	* gnat_rm.texi: Add documentation for pragma Ada_12 and Ada_2012
	Add documentation for pragma Extensions_Allowed.
	* opt.ads: Add entry for Ada 2012 mode.
	* sem_ch4.adb, par-ch3.adb, par-ch4.adb: Use new Ada 2012 mode for 2012
	features.
	* sem_prag.adb, par-prag.adb: Add processing for pragma Ada_12 and
	Ada_2012.
	* sem_ch13.adb: Add handling for Ada 2012 mode.
	* snames.ads-tmpl: Add entries for pragma Ada_2012 and Ada_12.
	* switch-c.adb: Add handling for -gnat12 switch.
	Implement -gnat2005 and -gnat2012.
	* usage.adb: Add documentation for -gnat12 switch.
	* vms_data.ads: Add /12 switch for Ada 2012 mode.

From-SVN: r161268
2010-06-23 11:53:24 +02:00
Paolo Carlini
6b8cdb0ac2 stl_tree.h (erase(iterator), [...]): Remove inline specifier.
2010-06-23  Paolo Carlini <paolo.carlini@oracle.com>

	* include/bits/stl_tree.h (erase(iterator), erase(const_iterator)):
	Remove inline specifier.

From-SVN: r161267
2010-06-23 09:50:42 +00:00