Commit Graph

111671 Commits

Author SHA1 Message Date
Arnaud Charlet
5dcab3ca08 [multiple changes]
2011-09-05  Ed Schonberg  <schonberg@adacore.com>

	* sem_disp.adb (Find_Controlling_Arg): Add checks for
	interface type conversions, that are expanded into dereferences.

2011-09-05  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_ch6.adb (Analyze_Subprogram_Body_Helper):
	Examine the parameter and return profile of a subprogram and swap
	any incomplete types coming from a limited context with their
	corresponding non-limited views.
	(Exchange_Limited_Views): New routine.

2011-09-05  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch3.adb (Prepare_Private_Subtype_Completion): Set parent
	of internal entity to the subtype declaration, so that when
	entities are subsequently exchanged in a package body, the tree
	remains properly formatted for ASIS.

From-SVN: r178548
2011-09-05 16:12:04 +02:00
Arnaud Charlet
8da1a31296 [multiple changes]
2011-09-05  Johannes Kanig  <kanig@adacore.com>

	* g-comlin.adb (Set_Usage): Additional optional argument to set help
	message.
	(Display_Help): display the user given help message, if available.

2011-09-05  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch3.adb (OK_For_Limited_Init_In_05): The expression
	is legal if the original node is an identifier that is a
	parameterless function call.

From-SVN: r178547
2011-09-05 16:08:42 +02:00
Pascal Obry
69b73847d7 prj-nmsc.adb: Minor reformatting.
2011-09-05  Pascal Obry  <obry@adacore.com>

	* prj-nmsc.adb: Minor reformatting.
	Add support for standalone aggregate library.
	(Check_Stand_Alone_Library): Handle standalone aggregate library.
	* projects.texi: Fix documentation for aggregate library projects.

From-SVN: r178546
2011-09-05 16:03:26 +02:00
Georg-Johann Lay
4e5bc13544 ipcp-3.c (mark_cell): Use mask 1 << 14 instead of 1 << 18 to avoid warning on int=16 platforms..
* gcc.dg/ipa/ipcp-3.c (mark_cell): Use mask 1 << 14 instead of 1
	<< 18 to avoid warning on int=16 platforms..

From-SVN: r178545
2011-09-05 14:00:37 +00:00
Arnaud Charlet
81bf23820f [multiple changes]
2011-09-05  Robert Dewar  <dewar@adacore.com>

	* sem_ch6.adb: Minor reformatting.

2011-09-05  Matthew Gingell  <gingell@adacore.com>

	* s-tassta.adb (Task_Wrapper): Ensure that we don't try to write the
	stack guard page on PPC Linux. This patch ensures the 64K guard page at
	the bottom of the stack is not overwritten.

From-SVN: r178544
2011-09-05 16:00:30 +02:00
Arnaud Charlet
13a0b1e8dd [multiple changes]
2011-09-05  Thomas Quinot  <quinot@adacore.com>

	* exp_intr.adb, s-tasini.adb: Minor reformatting.

2011-09-05  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch3.adb (Access_Definition): If an access type declaration
	appears in a child unit, the scope of whatever anonymous type
	may be generated is the child unit itself.

2011-09-05  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch6.adb (Analyze_Expression_Function): Do not set
	Comes_From_Source on rewritten body.
	(Analyze_Subprogram_Body_Helper): Check that the original node for
	the body comes from source, when determining whether expansion
	of a protected operation is needed.

From-SVN: r178543
2011-09-05 15:58:39 +02:00
Arnaud Charlet
2042872573 [multiple changes]
2011-09-05  Ed Schonberg  <schonberg@adacore.com>

	* exp_aggr.adb (Replace_Type): If the target of the assignment is
	a selected component and the right-hand side is a self-referential
	access, the proper prefix of the rewritten attribute is a copy
	of the left-hand side, not of its prefix.

2011-09-05  Robert Dewar  <dewar@adacore.com>

	* sem_ch5.adb: Minor reformatting.
	* sem_ch3.adb: Minor code clean up.

2011-09-05  Jose Ruiz  <ruiz@adacore.com>

	* exp_ch9.adb (Make_Initialize_Protection): The fact that
	restriction No_Dynamic_Attachment is in effect or not should
	not influence the default priority associated to a protected
	object. With this change, when the restriction is in effect (as
	is the case for the Ravenscar profile) the default priority of
	a protected object with an interrupt handler is in the range of
	interrupt priorities (Default_Interrupt_Priority) as required
	by D.3(10).

2011-09-05  Arnaud Charlet  <charlet@adacore.com>

	* a-iteint.ads: Fix header.

2011-09-05  Vincent Celier  <celier@adacore.com>

	* prj-conf.adb (Do_Autoconf): Make sure Obj_Dir always ends
	with a directory separator to avoid output such as:
	  "/path/to/objauto.cgpr" has been deleted.

From-SVN: r178542
2011-09-05 15:53:59 +02:00
Jakub Jelinek
e8b803e6e5 struct-layout-1_test.h: Decrease bitfield size to work even with -fshort-enums.
* gcc.dg/compat/struct-layout-1_test.h: Decrease bitfield size
	to work even with -fshort-enums.

From-SVN: r178540
2011-09-05 15:53:08 +02:00
Arnaud Charlet
4a1bfefb84 [multiple changes]
2011-09-05  Robert Dewar  <dewar@adacore.com>

	* sem_ch3.adb: Minor reformatting.

2011-09-05  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch5.adb: Better error message.

2011-09-05  Hristian Kirtchev  <kirtchev@adacore.com>

	* exp_aggr.adb: Add with and use clause for Exp_Ch6.
	(Expand_Array_Aggregate): Detect a special case of an aggregate
	which contains tasks in the context of an unexpanded return
	statement of a build-in-place function.
	* exp_ch6.adb: Add with and use clause for Exp_Aggr.
	(Expand_N_Extended_Return_Statement): Detect a delayed aggregate
	which contains tasks and expand it now that the original simple
	return statement has been rewritten.
	* exp_ch9.adb (Build_Activation_Chain_Entity): Code
	reformatting. Do not create a chain for an extended return
	statement if one is already available.
	(Has_Activation_Chain): New routine.

From-SVN: r178539
2011-09-05 15:48:16 +02:00
Arnaud Charlet
9ec080cb21 [multiple changes]
2011-09-05  Marc Sango  <sango@adacore.com>

	* sem_ch3.adb (Analyze_Object_Declaration): Remove
	the wrong test and add the correct test to detect the violation
	of illegal use of unconstrained string type in SPARK mode.

2011-09-05  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch5.adb (Analyze_Iteration_Specification): Improve error
	message on an iterator over an array.

2011-09-05  Robert Dewar  <dewar@adacore.com>

	* lib-xref-alfa.adb: Minor reformatting.

From-SVN: r178538
2011-09-05 15:40:04 +02:00
Arnaud Charlet
94bbf008ba [multiple changes]
2011-09-05  Hristian Kirtchev  <kirtchev@adacore.com>

	* einfo.adb (Write_Field28_Name): Update the choices for
	Extra_Formals.
	* einfo.ads: Update the use of Extra_Formals in various entities.
	* exp_ch6.adb (Add_Task_Actuals_To_Build_In_Place_Call): Code
	reformatting. Handle the case where the function call returns
	an incomplete type coming from a limited with context. Generate
	a reference to the _master when the master id is associated
	with an access type.
	(Is_Build_In_Place_Function_Call): Code
	reformatting. The Alfa mode case must appear first since otherwise
	we will carry out the function name retrieval regardless of the
	compilation mode.
	(Make_Build_In_Place_Call_In_Allocator): Code
	reformatting. Handle the case where the function call returns
	an incomplete type coming from a limited with context. Remove
	the reference creation when adding the task-related actuals,
	this is now done in Add_Task_Actuals_To_Build_In_Place_Call.
	* exp_ch7.adb (Make_Set_Finalize_Address_Call): Remove local
	variable Call. Remove the useless wrapping of Set_Finalize_Address
	when the finalization master is a build-in-place extra formal. The
	whole mechanism of controlled allocation in a build-in-place
	context is already protected by an if statement.
	* sem_aux.adb (Is_Immutably_Limited_Type): Handle the case
	where the type might be related to a function which returns an
	incomplete type coming from a limited with.
	* sem_ch6.adb (Create_Extra_Formals): Comment
	reformatting. Handle the case where the function returns an
	incomplete type coming from a limited with context.

2011-09-05  Johannes Kanig  <kanig@adacore.com>

	* lib-xref-alfa.adb (Is_Alfa_Reference): Improve test for constant
	objects and rewrite case statement as /if/elsif/endif.

2011-09-05  Thomas Quinot  <quinot@adacore.com>

	* sem_ch3.adb, sem_ch4.adb: Minor reformatting.

From-SVN: r178537
2011-09-05 15:19:04 +02:00
Robert Dewar
aeae67edd7 sem_ch3.adb, [...]: Minor reformatting.
2011-09-05  Robert Dewar  <dewar@adacore.com>

	* sem_ch3.adb, sem_res.adb, par.adb, par-ch6.adb, g-comlin.adb,
	exp_ch6.adb, lib-xref-alfa.adb: Minor reformatting.

From-SVN: r178536
2011-09-05 15:12:33 +02:00
Arnaud Charlet
d72e76282a [multiple changes]
2011-09-05  Gary Dismukes  <dismukes@adacore.com>

	* exp_ch7.adb, exp_ch6.adb: Minor reformatting.

2011-09-05  Johannes Kanig  <kanig@adacore.com>

	* lib-xref-alfa.adb: Update comments.

2011-09-05  Thomas Quinot  <quinot@adacore.com>

	* sem_res.adb: Minor reformatting

From-SVN: r178535
2011-09-05 15:11:29 +02:00
Ed Schonberg
0d566e0157 exp_ch6.adb (Build_In_Place_Formal): If extra formals are not present, create them now.
2011-09-05  Ed Schonberg  <schonberg@adacore.com>

	* exp_ch6.adb (Build_In_Place_Formal): If extra formals are not
	present, create them now.  Needed in case the return type was
	a limited view in the function declaration.
	(Make_Build_In_Place_Call_In_Allocator): If return type contains
	tasks, build the activation chain for it.  Pass a reference to
	the Master_Id in call to Add_Task_Actuals_To_Build_In_Place call.
	* exp_ch7.adb (Make_Set_Finalize_Address_Call): Clean up interface
	with build_in_place calls.
	* sem_ch9.adb (Analyze_Task_Type_Declaration): If partial view was
	incomplete, inatialize its Corresponding_Record_Type component.
	* sem_ch10.adb (Build_Chain): Initialize Private_Dependents field
	of limited views.

From-SVN: r178534
2011-09-05 15:08:30 +02:00
Arnaud Charlet
fb19dec9b4 Fix typo.
From-SVN: r178533
2011-09-05 15:02:49 +02:00
Arnaud Charlet
ec09f2616d [multiple changes]
2011-09-05  Johannes Kanig  <kanig@adacore.com>

	* lib-xref-alfa.adb (Is_Alfa_Reference): Filter constants from effect
	information.

2011-09-05  Ed Schonberg  <schonberg@adacore.com>

	* par-ch6.adb (P_Subprogram): In Ada2012 mode, if the subprogram
	appears within a package specification and the token after "IS"
	is not a parenthesis, assume that this is an unparenthesized
	expression function, even if the token appears in a line by
	itself.
	* par.adb: Clarify use of Labl field of scope stack in error
	recovery.

From-SVN: r178532
2011-09-05 15:01:17 +02:00
Arnaud Charlet
7109f4f52d [multiple changes]
2011-09-05  Bob Duff  <duff@adacore.com>

	* sem_res.adb (Resolve_Intrinsic_Operator): Use unchecked
	conversions instead of normal type conversions in all cases where a
	type conversion would be illegal. In particular, use unchecked
	conversions when the operand types are private.

2011-09-05  Johannes Kanig  <kanig@adacore.com>

	* lib-xref-alfa.adb (Is_Alfa_Reference): Never declare effects on
	objects of task type or protected type.

From-SVN: r178531
2011-09-05 14:58:26 +02:00
Arnaud Charlet
66dc8075f3 [multiple changes]
2011-09-05  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch6.adb (Analyze_Expression_Function): If the expression
	function comes from source, indicate that so does its rewriting,
	so it is compatible with any subsequent expansion of the
	subprogram body (e.g. when it is a protected operation).
	* sem_ch4.adb: minor reformatting

2011-09-05  Hristian Kirtchev  <kirtchev@adacore.com>

	* lib.adb (Check_Same_Extended_Unit): Comment rewriting. Use
	Get_Source_Unit rather than Get_Code_Unit as instantiation unfolding
	may lead to wrong ancestor package in the case of instantiated subunit
	bodies. If a subunit is instantiated, follow the chain of instantiations
	rather than the stub structure.

From-SVN: r178530
2011-09-05 14:51:44 +02:00
Georg-Johann Lay
1e3a7e8662 re PR target/50289 ([avr]: call-prologues saving/restoring global register variables)
PR target/50289
	* config/avr/avr.c (sequent_regs_live): Don't recognize sequences
	that contain global register variable.

From-SVN: r178528
2011-09-05 12:20:03 +00:00
Richard Guenther
e1ab3876d2 tree-cfg.c (replace_uses_by): Use fold_stmt, not fold_stmt_inplace.
2011-09-05  Richard Guenther  <rguenther@suse.de>

	* tree-cfg.c (replace_uses_by): Use fold_stmt, not fold_stmt_inplace.

From-SVN: r178527
2011-09-05 10:31:04 +00:00
Richard Guenther
830c740f17 stor-layout.c (layout_type): Use size_binop for array size calculations.
2011-09-05  Richard Guenther  <rguenther@suse.de>

	* stor-layout.c (layout_type): Use size_binop for array size
	calculations.

	c-family/
	* c-common.c (complete_array_type): Use ssize_int (-1) instead
	of integer_minus_one_node for empty array upper bounds.

From-SVN: r178526
2011-09-05 09:03:08 +00:00
Georg-Johann Lay
c149e48765 avr.h (progmem_section): Remove Declaration.
* config/avr/avr.h (progmem_section): Remove Declaration.
	* config/avr/avr.c (progmem_section): Make static and rename to
	progmem_swtable_section.
	(avr_output_addr_vec_elt): No need to switch sections.
	(avr_asm_init_sections): Use output_section_asm_op as section
	callback for progmem_swtable_section.
	(avr_output_progmem_section_asm_op): Remove Function.
	(TARGET_ASM_FUNCTION_RODATA_SECTION): New Define.
	(avr_asm_function_rodata_section): New static Function.
	* config/avr/elf.h (ASM_OUTPUT_BEFORE_CASE_LABEL): Output
	alignment 2**1 for jump tables.

From-SVN: r178525
2011-09-05 08:30:17 +00:00
Jan Hubicka
c5ceeb8763 ipa-inline-analysis.c (set_cond_stmt_execution_predicate): Check that parameter is SSA name.
* ipa-inline-analysis.c (set_cond_stmt_execution_predicate): Check that
	parameter is SSA name.

From-SVN: r178524
2011-09-05 07:39:36 +00:00
Richard Guenther
5b970a1aaf revert: fold-const.c (extract_muldiv_1): Remove bogus TYPE_IS_SIZETYPE special-casing.
2011-09-05  Richard Guenther  <rguenther@suse.de>

        Revert
        2011-08-31  Richard Guenther  <rguenther@suse.de>

	* fold-const.c (extract_muldiv_1): Remove bogus TYPE_IS_SIZETYPE
	special-casing.

From-SVN: r178523
2011-09-05 07:32:37 +00:00
Jason Merrill
1a94ffae36 re PR c++/49267 (Ambiguity with conversion functions "T&" and "T&&", initializing a "T&&")
PR c++/49267
	* call.c (reference_binding): Don't set is_lvalue for an rvalue
	reference rfrom.

From-SVN: r178521
2011-09-05 00:33:57 -04:00
Jason Merrill
0ad2cde83d re PR c++/49267 (Ambiguity with conversion functions "T&" and "T&&", initializing a "T&&")
PR c++/49267
	PR c++/49458
	DR 1328
	* call.c (reference_binding): Set rvaluedness_matches_p properly
	for reference to function conversion ops.
	(compare_ics): Adjust.

From-SVN: r178520
2011-09-05 00:33:48 -04:00
Jason Merrill
fd3faf2b21 class.c (trivial_default_constructor_is_constexpr): Rename from synthesized_default_constructor_is_constexpr.
* class.c (trivial_default_constructor_is_constexpr): Rename from
	synthesized_default_constructor_is_constexpr.
	(type_has_constexpr_default_constructor): Adjust.
	(add_implicitly_declared_members): Call it instead.
	(explain_non_literal_class): Explain about non-constexpr default ctor.
	* cp-tree.h: Adjust.
	* method.c (synthesized_method_walk): Adjust.
	* semantics.c (explain_invalid_constexpr_fn): Handle defaulted
	functions, too.

From-SVN: r178519
2011-09-05 00:33:40 -04:00
Jason Merrill
aee8801251 re PR c++/50248 ([C++0x] unnecessary instantiation of constexpr constructor)
PR c++/50248
	Core 1358
	* init.c (perform_member_init): Don't diagnose missing inits here.
	(emit_mem_initializers): Or here.
	* method.c (process_subob_fn): Don't instantiate constexpr ctors.
	* semantics.c (cx_check_missing_mem_inits): New.
	(explain_invalid_constexpr_fn): Call it.
	(register_constexpr_fundef): Likewise.  Leave
	DECL_DECLARED_CONSTEXPR_P set when the body is unsuitable.
	(cxx_eval_call_expression): Adjust diagnostics.
	(cxx_eval_constant_expression): Catch use of 'this' in a constructor.

From-SVN: r178518
2011-09-05 00:33:08 -04:00
GCC Administrator
e818d3ff68 Daily bump.
From-SVN: r178517
2011-09-05 00:18:52 +00:00
Eric Botcazou
1188818c65 * gnat.dg/specs/debug1.ads: Tweak pattern.
From-SVN: r178513
2011-09-04 20:56:12 +00:00
Iain Sandoe
b90c2c4c0b re PR libffi/49594 (bootstrap failure in libffi:darwin_closure for powerpc-darwin8)
PR libffi/49594
	* src/powerpc/darwin_closure.S (stubs): Make the stub binding
	helper reference track the architecture pointer size.

From-SVN: r178512
2011-09-04 19:19:39 +00:00
Iain Sandoe
c0c19685f7 re PR debug/49901 (gfortran.dg/debug/[pr35154-dwarf2.f/pr37738.f] failures on darwin)
PR debug/49901
	* config/darwin.h (DEBUG_MACRO_SECTION): New macro.

From-SVN: r178510
2011-09-04 18:50:09 +00:00
Janus Weil
30ff79fa55 re PR fortran/50227 ([OOP] ICE-on-valid with allocatable class variable)
2011-09-04  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/50227
	* trans-types.c (gfc_sym_type): Check for proc_name.

2011-09-04  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/50227
	* gfortran.dg/class_45a.f03: New.
	* gfortran.dg/class_45b.f03: New.

From-SVN: r178509
2011-09-04 12:49:13 +02:00
Jakub Jelinek
ad949bcc5e re PR tree-optimization/50208 (ICE: in vinfo_for_stmt at tree-vectorizer.h:598 with -ftree-vectorize -fno-tree-fre -fno-tree-pre)
PR tree-optimization/50208
        * tree-vect-patterns.c (vect_handle_widen_mult_by_const): Add an
        argument.  Check that def_stmt is inside the loop.
        (vect_recog_widen_mult_pattern): Update calls to
        vect_handle_widen_mult_by_cons.
        (vect_operation_fits_smaller_type): Check that def_stmt is
        inside the loop.


Co-Authored-By: Ira Rosen <ira.rosen@linaro.org>

From-SVN: r178508
2011-09-04 09:22:38 +00:00
Ira Rosen
7cd3603bf9 tree-vectorizer.c (vect_print_dump_info): Print line number when dumping to a file.
* tree-vectorizer.c (vect_print_dump_info): Print line
        number when dumping to a file.
        (vectorize_loops): Add new messages to dump file.

From-SVN: r178507
2011-09-04 08:53:43 +00:00
GCC Administrator
917e2efb87 Daily bump.
From-SVN: r178506
2011-09-04 00:18:34 +00:00
Martin Jambor
606d9a0976 ipa-prop.h (ipa_jump_func_t): New typedef.
2011-09-03  Martin Jambor  <mjambor@suse.cz>

	* ipa-prop.h (ipa_jump_func_t): New typedef.
	(struct ipa_edge_args): Removed field argument_count, field
	jump_functions turned into a vector.
	(ipa_set_cs_argument_count): Removed.
	(ipa_get_cs_argument_count): Updated to work on vectors.
	(ipa_get_ith_jump_func): Likewise.
	* ipa-prop.c (ipa_count_arguments): Removed.
	(compute_scalar_jump_functions): Use ipa_get_ith_jump_func to access
	jump functions.  Update caller.
	(compute_pass_through_member_ptrs): Likewise.
	(compute_cst_member_ptr_arguments): Likewise.
	(ipa_compute_jump_functions_for_edge): Get number of arguments from
	the statement, allocate vector.
	(ipa_compute_jump_functions): Do not call ipa_count_arguments.
	(duplicate_ipa_jump_func_array): Removed.
	(ipa_edge_duplication_hook): Use VEC_copy, do not copy argument count.
	(ipa_read_node_info): Allocate vector.

From-SVN: r178502
2011-09-03 21:48:39 +02:00
John David Anglin
8f15b6055f re PR middle-end/50232 (reorg.c:3971: undefined reference to `make_return_insns')
PR middle-end/50232
	Correct log entry for last change.

From-SVN: r178501
2011-09-03 16:30:32 +00:00
John David Anglin
157685833c PR Bug middle-end/50232
PR Bug middle-end/50232
	* config/pa/pa.md (return): Define "return" insn pattern.
	(epilogue): Use it when no epilogue is needed.
	* config/pa/pa.c (pa_can_use_return_insn): New function.
	* config/pa/pa-protos.h (pa_can_use_return_insn): Declare.

From-SVN: r178500
2011-09-03 16:21:27 +00:00
Eric Botcazou
13868f4049 cfgexpand.c (add_stack_var): Assert that the alignment is not zero.
* cfgexpand.c (add_stack_var): Assert that the alignment is not zero.
	* tree-ssa-ccp.c (fold_builtin_alloca_for_var): Revert latest change.
	Force at least BITS_PER_UNIT alignment on the new variable.

From-SVN: r178499
2011-09-03 14:56:53 +00:00
GCC Administrator
1822c31f05 Daily bump.
From-SVN: r178497
2011-09-03 00:18:53 +00:00
Gary Funck
58265ea647 opts.c (print_specific_help): Fix off-by-one compare in assertion check.
2011-09-02  Gary Funck <gary@intrepid.com>

	* opts.c (print_specific_help): Fix off-by-one compare in
	assertion check.
	* opts.h (CL_PARAMS, CL_WARNING, CL_OPTIMIZATION, CL_DRIVER,
	CL_TARGET, CL_COMMON, CL_JOINED, CL_SEPARATE, CL_UNDOCUMENTED):
	Increase by +5 to allow for more languages.
	* optc-gen.awk: Generate #if that ensures that the number of
	languages is within the implementation-defined limit.

From-SVN: r178491
2011-09-02 21:19:17 +00:00
Michael Matz
dde460d482 re PR middle-end/50260 (internal compiler error: Segmentation fault at ../../gcc/gcc/tree-ssa-live.c:88)
PR middle-end/50260
	* ipa-split.c (split_function): Call add_referenced_var.

	* tree-ssa-phiopt.c (cond_store_replacement): Don't call get_var_ann.
	(cond_if_else_store_replacement_1): Ditto.
	* tree-ssa-pre.c (get_representative_for): Ditto.
	(create_expression_by_pieces): Ditto.
	(insert_into_preds_of_block): Ditto.
	* tree-sra.c (create_access_replacement): Ditto.
	(get_replaced_param_substitute): Ditto.

From-SVN: r178489
2011-09-02 18:31:47 +00:00
Bernd Schmidt
6bd9bf4254 c6x.md (collapse-ndfa, [...]): New automata_options.
* config/c6x/c6x.md (collapse-ndfa, no-comb-vect): New
	automata_options.
	(d1, l1, s1, m1, d2, l2, s2, m2): Changed to define_query_cpu_unit.
	(l1w, s1w, l2w, s2w): Define in the main automaton.
	(fps1, fpl1, adddps1, adddpl1, fps2, fpl2, adddps2, adddpl2): New
	units.
	* config/c6x/c6x.c (c6x_sched_insn_info): Add unit_mask member.
	(c6x_unit_names): Add the new units.
	(c6x_unit_codes): New static array.
	(UNIT_QID_D1, UNIT_QID_L1, UNIT_QID_S1, UNIT_QID_M1, UNIT_QID_FPS1,
	UNIT_QID_FPL1, UNIT_QID_ADDDPS1, UNIT_QID_ADDDPL1,
	UNIT_QID_SIDE_OFFSET): New macros.
	(RESERVATION_S2): Adjust value.
	(c6x_option_override): Compute c6x_unit_codes.
	(assign_reservations): Take the unit_mask of the last instruction
	into account.  Detect floating point reservations by looking for
	the new units.  Don't assign reservations if the field is already
	nonzero.
	(struct c6x_sched_context): Add member prev_cycle_state_ctx.
	(init_sched_state): Initialize it.
	(c6x_clear_sched_context): Free it.
	(insn_set_clock): Clear reservation.
	(prev_cycle_state): New static variable.
	(c6x_init_sched_context): Save it.
	(c6x_sched_init): Allocate space for it and clear it.
	(c6x_sched_dfa_pre_cycle_insn): New static function.
	(c6x_dfa_new_cycle): Save state at the start of a new cycle.
	(c6x_variable_issue): Only record units in the unit_mask that
	were not set at the start of the cycle.
	(c6x_variable_issue): Compute and store the unit_mask from the
	current state.
	(reorg_split_calls): Ensure the new information remains correct.
	(TARGET_SCHED_DFA_NEW_CYCLE, TARGET_SCHED_CLEAR_SCHED_CONTEXT,
	TARGET_SCHED_DFA_PRE_CYCLE_INSN): Define.
	* config/c6x/c6x.h (CPU_UNITS_QUERY): Define.
	* config/c6x/c6x-sched.md.in (fp4_ls_N__CROSS_, adddp_ls_N__CROSS_):
	Add special reservations.
	* config/c6x/c6x-sched.md: Regenerate.

From-SVN: r178488
2011-09-02 17:53:54 +00:00
François Dumont
e1f3ce0db1 testsuite_allocator.h (tracker_allocator_counter:: allocate): Update allocation count only if allocation succeeded.
2011-09-02  François Dumont  <fdumont@gcc.gnu.org>

	* testsuite/util/testsuite_allocator.h (tracker_allocator_counter::
	allocate): Update allocation count only if allocation succeeded.

From-SVN: r178486
2011-09-02 15:54:16 +00:00
Martin Jambor
d7da5cc85c ipa-prop.h (ipa_node_params): Removed fields called_with_var_arguments and node_versionable.
2011-09-02  Martin Jambor  <mjambor@suse.cz>

	* ipa-prop.h (ipa_node_params): Removed fields
	called_with_var_arguments and node_versionable.
	(ipa_set_called_with_variable_arg): Removed.
	(ipa_is_called_with_var_arguments): Likewise.
	* ipa-cp.c (ipa_get_lattice): Fixed index check in an assert.
	(determine_versionability): Do not check for type attributes and va
	builtins.  Record versionability into inline summary.
	(initialize_node_lattices): Do not check
	ipa_is_called_with_var_arguments.
	(propagate_constants_accross_call): Likewise, ignore arguments we do
	not have PARM_DECLs for, set variable flag for parameters that were
	not passed a value.
	(create_specialized_node): Dump info that we cannot change signature.
	* ipa-prop.c (ipa_compute_jump_functions): Do not care about variable
	number of arguments.
	(ipa_make_edge_direct_to_target): Likewise.
	(ipa_update_after_lto_read): Likewise.
	(ipa_node_duplication_hook): Do not copy called_with_var_arguments flag.
	* tree-inline.c (copy_arguments_for_versioning): Copy PARM_DECLs if
	they were remapped.

	* testsuite/gcc.dg/ipa/ipcp-3.c: New test.

From-SVN: r178485
2011-09-02 17:37:38 +02:00
Richard Guenther
e9e1d143b5 re PR tree-optimization/27460 (Does not vectorize statements with mixed type COND_EXPRs)
2011-09-02  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/27460
	PR middle-end/29269
	* doc/md.texi (vcond): Document.
	* genopinit.c (optabs): Turn vcond{,u}_optab into a conversion
	optab with two modes.
	* optabs.h (enum convert_optab_index): Add COI_vcond, COI_vcondu.
	(enum direct_optab_index): Remove DOI_vcond, DOI_vcondu.
	(vcond_optab): Adjust.
	(vcondu_optab): Likewise.
	(expand_vec_cond_expr_p): Adjust prototype.
	* optabs.c (get_vcond_icode): Adjust.
	(expand_vec_cond_expr_p): Likewise.
	(expand_vec_cond_expr): Likewise.
	* tree-vect-stmts.c (vect_is_simple_cond): Return the comparison
	vector type.
	(vectorizable_condition): Allow differing types for comparison
	and result.

	* config/i386/i386.c (ix86_expand_sse_cmp): Use proper mode
	for the comparison.
	* config/i386/sse.md (vcond<mode>): Split to
	vcond<V_256:mode><VF_256:mode>, vcond<V_128:mode><VF_128:mode>,
	vcond<V_128:mode><VI124_128:mode> and
	vcondu<V_128:mode><VI124_128:mode>.
	(vcondv2di): Change to vcond<VI8F_128:mode>v2di.
	(vconduv2di): Likewise.
	* config/arm/neon.md (vcond<mode>): Change to vcond*<mode><mode>.
	(vcondu<mode>): Likewise.
	* config/ia64/vect.md (vcond<mode>): Likewise.
	(vcondu<mode>): Likewise.
	(vcondv2sf): Likewise.
	* config/mips/mips-ps-3d.md (vcondv2sf): Likewise.
	* config/rs6000/paired.md (vcondv2sf): Likewise.
	* config/rs6000/vector.md (vcond<mode>): Likewise.
	(vcondu<mode>): Likewise.
	* config/spu/spu.md (vcond<mode>): Likewise.
	(vcondu<mode>): Likewise.

	* gcc.dg/vect/vect-cond-7.c: New testcase.

From-SVN: r178480
2011-09-02 13:53:32 +00:00
Richard Guenther
aa547a51da pretty-print.h (pp_unsigned_wide_integer): New.
2011-09-02  Richard Guenther  <rguenther@suse.de>

	* pretty-print.h (pp_unsigned_wide_integer): New.
	* tree-pretty-print.c (dump_generic_node): Print unsigned
	host-wide-int fitting INTEGER_CSTs with pp_unsigned_wide_integer.

From-SVN: r178479
2011-09-02 13:52:12 +00:00
Paolo Carlini
6aa67e7b99 bitset: Trivial formatting fixes.
2011-09-02  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/std/bitset: Trivial formatting fixes.

From-SVN: r178478
2011-09-02 13:49:10 +00:00
Joseph Myers
781a318d0d * ja.po: Update.
From-SVN: r178476
2011-09-02 14:45:31 +01:00