Commit Graph

125344 Commits

Author SHA1 Message Date
Arnaud Charlet
fb620b37de [multiple changes]
2013-09-10  Robert Dewar  <dewar@adacore.com>

	* sinput.adb (Check_For_BOM): Avoid reading past end of file.

2013-09-10  Robert Dewar  <dewar@adacore.com>

	* errout.adb (Error_Msg_Ada_2012_Feature): New procedure.
	* errout.ads (Error_Msg_Ada_2012_Feature): New procedure.
	* inline.ads: Save/Restore Ada_Version_Pragma.
	* opt.adb: Save/Restore Ada_Version_Pragma.
	* opt.ads (Ada_Version_Pragma): New variable.
	* par-ch11.adb, par-ch12.adb, par-ch13.adb, par-ch4.adb, par-ch5.adb,
	par-ch6.adb, par-ch8.adb, par-prag.adb: Use Error_Msg_Ada_2012_Feature.
	* prj.adb: Initialize Ada_Version_Pragma.
	* sem_attr.adb: Use Error_Msg_Ada_2012_Feature.
	* sem_ch12.adb, sem_ch8.adb: Save/restore Ada_Version_Pragma.
	* sem_prag.adb (Analyze_Pragma, cases Ada_xx): Set Ada_Version_Pragma.
	* switch-c.adb: Initialize Ada_Version_Pragma.
	* sem_ch12.adb: Minor reformatting.

2013-09-10  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch3.adb (Process_Subtype): Discard constraint on access
	to class-wide type. Such constraints are not supported and are
	considered a language pathology.

From-SVN: r202466
2013-09-10 17:21:28 +02:00
Robert Dewar
ac40189179 gnatbind.adb: Correct starting date in --version string.
2013-09-10  Robert Dewar  <dewar@adacore.com>

	* gnatbind.adb: Correct starting date in --version string.
	* gnatdll.adb: Use Check_Version_And_Help_G to implement --help
	and --version.
	* gnatkr.adb: Use Check_Version_And_Help_G to implement --help
	and --version.
	* gnatlink.adb: Correct starting date in --version string.
	* gnatls.adb: Correct starting date in --version string.
	* make.adb: Correct starting date in --version string.

From-SVN: r202465
2013-09-10 17:17:44 +02:00
Robert Dewar
f2c0ca6632 switch-c.adb: Minor reformatting.
2013-09-10  Robert Dewar  <dewar@adacore.com>

	* switch-c.adb: Minor reformatting.
	* atree.ads (Original_Nodes): Add documentation on ASIS usage.
	* sinfo.ads: Add section on ASIS mode (documentation only).

From-SVN: r202464
2013-09-10 17:16:41 +02:00
Robert Dewar
7b64b700f2 sem_prag.adb (Analyze_Pragma, [...]): Don't allow REASON parameter in compiler units (bootstrap issues).
2013-09-10  Robert Dewar  <dewar@adacore.com>

	* sem_prag.adb (Analyze_Pragma, case Warnings): Don't allow
	REASON parameter in compiler units (bootstrap issues).

2013-09-10  Robert Dewar  <dewar@adacore.com>

	* gnat1drv.adb (Adjust_Global_Switches): Output warning if
	-gnateE specified for a target that does not support it.

From-SVN: r202463
2013-09-10 17:15:20 +02:00
Arnaud Charlet
80e59506c2 [multiple changes]
2013-09-10  Ed Schonberg  <schonberg@adacore.com>

	* sem_prag.adb (Analyze_Pragma, case SPARK_Mode): Handle properly
	a subprogram body without previous spec.

2013-09-10  Gary Dismukes  <dismukes@adacore.com>

	* sem_ch4.adb: Minor typo fixes.

2013-09-10  Hristian Kirtchev  <kirtchev@adacore.com>

	* aspects.adb (Aspects_On_Body_OK): New routine.
	* aspects.ads: Modify type Aspect_Expression to include
	the Optional_XXX variants. Update the contents of
	table Aspect_Argument. Add table Aspect_On_Body_OK.
	(Aspects_On_Body_OK): New routine.
	* par-ch13.adb (Get_Aspect_Specifications): Account for optional
	names and expressions when parsing an aspect.
	* sem_ch6.adb: Add with and use clause for Aspects.
	(Analyze_Subprogram_Body_Helper): Do not emit an error when
	analyzing a body with aspects that can be applied simultaneously
	to both spec and body.
	* sem_ch13.adb (Analyze_Aspect_Specifications): Insert the
	corresponding pragma of an aspect that applies to a subprogram
	body in the declarative part.
	(Make_Aitem_Pragma): Do not generate a pragma with an empty argument
	list.

From-SVN: r202462
2013-09-10 17:12:42 +02:00
Arnaud Charlet
4bb9c7b9ed [multiple changes]
2013-09-10  Robert Dewar  <dewar@adacore.com>

	* switch-c.adb: Diagnose -gnatc given after -gnatRm.
	* gnat_ugn.texi: Add documentation for -gnatRm.
	* usage.adb: Minor reorganization (put style entries in proper
	order) Document -gnatRm switch.
	* sinfo.ads: Minor comment fix.

2013-09-10  Sergey Rybin  <rybin@adacore.com frybin>

	* tree_io.ads: Update ASIS_Version_Number.

2013-09-10  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch3.adb (Access_Subprogram_Declaration): Check whether the
	designated type can appear in a parameterless call.
	* sem_ch4.adb (Analyze_Call): Do not insert an explicit dereference
	in the case of an indirect call through an access function that
	returns an array type.
	(Analyze_One_Call): Handle properly legal parameterless calls
	whose result is indexed, in constructs of the for F.all (I)
	* sem_ch6.ads (May_Need_Actuals): Make public, for use on access
	to subprogram types.
	* sem_res.adb (Resolve_Call): If the call is indirect, there is
	no entity to set on the name in the call.

From-SVN: r202461
2013-09-10 17:09:33 +02:00
Arnaud Charlet
cdcf1c7ae2 [multiple changes]
2013-09-10  Hristian Kirtchev  <kirtchev@adacore.com>

	* aspects.adb: Add entries in the Has_Aspect_Specifications_Flag
	table for package body and body stubs.
	(Move_Or_Merge_Aspects): New routine.
	(Remove_Aspects): New routine.
	* aspects.ads (Move_Aspects): Update comment on usage.
	(Move_Or_Merge_Aspects): New routine.
	(Remove_Aspects): New routine.
	* par-ch3.adb: Update the grammar of private_type_declaration,
	private_extension_declaration, object_renaming_declaration,
	and exception_renaming_declaration.
	(P_Subprogram): Parse the
	aspect specifications that apply to a body stub.
	* par-ch6.adb: Update the grammar of subprogram_body_stub and
	generic_instantiation.
	* par-ch7.adb: Update the grammar of package_declaration,
	package_specification, package_body, package_renaming_declaration,
	package_body_stub.
	(P_Package): Parse the aspect specifications
	that apply to a body, a body stub and package renaming.
	* par-ch9.adb: Update the grammar of entry_declaration,
	protected_body, protected_body_stub, task_body,
	and task_body_stub.
	(P_Protected): Add local variable
	Aspect_Sloc. Add local constant Dummy_Node.  Parse the aspect
	specifications that apply to a protected body and a protected
	body stub.
	(P_Task): Add local variable Aspect_Sloc. Add local
	constant Dummy_Node. Parse the aspect specifications that apply
	to a task body and a task body stub.
	* par-ch12.adb: Update the grammar of
	generic_renaming_declaration.
	(P_Generic): Parse the aspect
	specifications that apply to a generic renaming.
	* sem_ch6.adb (Analyze_Subprogram_Body_Helper): Do not emit
	an error when analyzing aspects that apply to a body stub. Such
	aspects are relocated to the proper body.
	* sem_ch7.adb (Analyze_Package_Body_Helper): Analyze the aspect
	specifications that apply to a body.
	* sem_ch9.adb (Analyze_Protected_Body): Warn about user-defined
	aspects not being supported on protected bodies. Remove the
	aspect specifications.	(Analyze_Single_Protected_Declaration):
	Analyze the aspects that apply to a single protected declaration.
	(Analyze_Task_Body): Warn about user-defined aspects not being
	supported on task bodies. Remove the aspect specifications.
	* sem_ch10.adb: Add with and use clause for Aspects.
	(Analyze_Package_Body_Stub): Propagate the aspect specifications
	from the stub to the proper body.
	* sem_ch13.adb (Analyze_Aspect_Specifications): Insert the
	corresponding pragma of an aspect that applies to a body in the
	declarations of the body.
	* sinfo.ads: Update the gramma of expression_function,
	private_type_declaration, private_extension_declaration,
	object_renaming_declaration, exception_renaming_declaration,
	package_renaming_declaration, subprogram_renaming_declaration,
	generic_renaming_declaration, entry_declaration,
	subprogram_body_stub, package_body_stub, task_body_stub,
	generic_subprogram_declaration.

2013-09-10  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_prag.adb (Analyze_Pragma): Add processing
	for aspect/pragma SPARK_Mode when it applies to a [library-level]
	subprogram or package [body].

2013-09-10  Robert Dewar  <dewar@adacore.com>

	* gnat_ugn.texi: Document that -gnatc and -gnatR cannot be
	given together.
	* switch-c.adb (Scan_Front_End_Switches): Give error if both
	-gnatR and -gnatc given.

2013-09-10  Robert Dewar  <dewar@adacore.com>

	* g-table.ads, g-table.adb (For_Each): New generic procedure
	(Sort_Table): New generic procedure.

From-SVN: r202460
2013-09-10 17:05:40 +02:00
Arnaud Charlet
3699edc41f [multiple changes]
2013-09-10  Thomas Quinot  <quinot@adacore.com>

	* adaint.c (__gnat_is_executable_file_attr): Should be true
	for an executable regular file only only (not for a directory
	that has the executable permission).

2013-09-10  Ed Schonberg  <schonberg@adacore.com>

	* sem_res.adb: Further work on operator calls in ASIS.

2013-09-10  Yannick Moy  <moy@adacore.com>

	* sinfo.ads, sem_prag.ads, sem_ch13.adb: Minor correction and comment
	update.

From-SVN: r202459
2013-09-10 17:02:33 +02:00
Thomas Quinot
860917b625 aspects.ads, [...]: Minor reformatting.
2013-09-10  Thomas Quinot  <quinot@adacore.com>

	* aspects.ads, sem_ch13.adb: Minor reformatting.
	* adaint.c (__gnat_set_close_on_exec): Add comment documenting
	that this routine is shared between OS_Lib and Sockets.

From-SVN: r202458
2013-09-10 16:58:22 +02:00
Robert Dewar
7fe6c02682 exp_prag.adb (Expand_Pragma_Check): Ignore pragma if Is_Ignored set.
2013-09-10  Robert Dewar  <dewar@adacore.com>

	* exp_prag.adb (Expand_Pragma_Check): Ignore pragma if Is_Ignored set.
	* sem_ch13.adb (Make_Aitem_Pragma): Set Is_Checked if needed.
	* sem_prag.adb (Check_Kind): Moved from spec (Analyze_Pragma):
	Make sure Is_Ignored/Is_Checked are set right (Analyze_Pragma,
	case Check): Ditto (Check_Applicable_Policy): Handle
	Statement_Assertion case Throughout, set and check the Is_Checked
	flag as appropriate.
	* sem_prag.ads (Check_Kind): Moved to body.
	* sinfo.ads, sinfo.adb (Is_Checked): New flag.

From-SVN: r202457
2013-09-10 16:56:41 +02:00
Arnaud Charlet
15e934bf71 [multiple changes]
2013-09-10  Robert Dewar  <dewar@adacore.com>

	* aspects.ads (Delay_Type): New type (Aspect_Delay): New table.
	* einfo.adb (Has_Delayed_Rep_Aspects): New flag
	(May_Inherit_Delayed_Rep_Aspects): New flag (Rep_Clause): Removed
	(use Get_Attribute_Representation_Clause).
	* einfo.ads (Has_Delayed_Rep_Aspects): New flag
	(May_Inherit_Delayed_Rep_Aspects): New flag
	* freeze.adb: Minor reformatting
	* sem_ch13.adb (Analyze_Aspect_Speficifications): Redo
	handling of delayed evaluation, including optimizing some cases
	and avoiding delays.
	(Analyze_Aspects_At_Freeze_Point): Now
	handled inheriting delayed rep aspects for type derivation case.
	(Inherit_Delayed_Rep_Aspects): New procedure
	* sem_ch13.ads (Analyze_Aspects_At_Freeze_Point): Now handled
	inheriting delayed rep aspects for type derivation case.
	* sem_ch3.adb (Build_Derived_Type): Set
	May_Inherit_Derived_Rep_Aspects if parent type flag
	Has_Delayed_Rep_Aspects is set

2013-09-10  Robert Dewar  <dewar@adacore.com>

	* errout.adb (Finalize): Don't delete real errors with specific
	warning control.

2013-09-10  Ed Schonberg  <schonberg@adacore.com>

	* exp_ch9.adb (Expand_N_Timed_Entry_Call,
	Expand_N_Conditional_Entry_Call, Expand_N_Asynchronous_Select):
	Handle properly a trigger that is  a call to a primitive operation
	of a type that implements a limited interface, if the type itself
	is not limited.

From-SVN: r202456
2013-09-10 16:54:41 +02:00
Robert Dewar
573e5dd6ac sem_ch3.adb, [...]: Minor reformatting.
2013-09-10  Robert Dewar  <dewar@adacore.com>

	* sem_ch3.adb, sinfo.ads, exp_ch9.adb, sem_prag.adb, sem_ch12.adb,
	exp_ch4.adb, sprint.adb: Minor reformatting.

From-SVN: r202455
2013-09-10 16:52:46 +02:00
Arnaud Charlet
eefe376107 [multiple changes]
2013-09-10  Yannick Moy  <moy@adacore.com>

	* sinfo.ads: Document splitting of pre/post in N_Contract description.

2013-09-10  Ed Schonberg  <schonberg@adacore.com>

	* exp_ch4.adb (Expand_N_Op_Multiply): If the operation is of the
	form X * 2 ** N and it has been marked Is_Power_Of_2_For_Shift,
	add a mod operation if the result type is a binary modular type.

2013-09-10  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_prag.adb (Check_Mode_Restriction_In_Enclosing_Context): Add local
	variable Context.  Remove local variable Subp_Id. Start the
	context traversal from the current subprogram rather than the
	current scope. Update the scope traversal and error reporting.

2013-09-10  Ed Schonberg  <schonberg@adacore.com>

	* exp_ch9.adb (Expand_N_Timed_Entry_Call): New procedure
	Rewrite_Triggering_Statements, to encapsulate the statements that
	follow the trigger of the entry call. This procedure is needed
	when the trigger is a dispatching call, because the expansion
	requires several copies of those statements. The procedure is
	more efficient, and preserves non-local references when the
	construct is within an instance.

From-SVN: r202454
2013-09-10 16:50:09 +02:00
Ed Schonberg
31dd3f4bf6 sem_ch12.adb (Analyze_Package_Instantiation): If the instantiation is a compilation unit...
2013-09-10  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch12.adb (Analyze_Package_Instantiation): If the
	instantiation is a compilation unit, analyze aspects before
	analyzing the package declaration for the instance.
	* sem_ch13.adb (Analyze_Aspect_Specifications): If the
	corresponding node is a package instantiation, insert generated
	pragmas at the head of visible declarations.
	* sem_prag.adb (Analyze_Pragma, case Preelaborate): In an instance
	do not ignore the pragma if it comes from an aspect specification
	in the instance, and not from the generic unit.
	* sprint.adb (Sprint_Node_Actual): For a package declaration that
	is an instantiation, print aspects after declaration.

From-SVN: r202453
2013-09-10 16:48:04 +02:00
Robert Dewar
3f910f7bd1 einfo.adb, [...]: Minor reformatting.
2013-09-10  Robert Dewar  <dewar@adacore.com>

	* einfo.adb, sem_prag.adb, rtsfind.ads: Minor reformatting.

From-SVN: r202452
2013-09-10 16:45:08 +02:00
Hristian Kirtchev
a98838ff82 sem_prag.adb (Get_SPARK_Mode_Id): Handle the case where the pragma may appear without an argument.
2013-09-10  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_prag.adb (Get_SPARK_Mode_Id): Handle the
	case where the pragma may appear without an argument.
	(Analyze_Global_List): Add expanded_name to the list of constructs
	that denote a single item.
	(Collect_Global_List): Add expanded_name to the list of constructs
	that denote a single item.

2013-09-10  Hristian Kirtchev  <kirtchev@adacore.com>

	* exp_ch4.adb (Apply_Accessibility_Check): Add local constant
	Pool_Id and local variables Fin_Call and Free_Stmt. Finalize
	and deallocate a heap-allocated class-wide object after it
	has been determined that it violates the accessibility rules.
	* rtsfind.ads: Add new RTU_Id for System.Memory. Add new RE_Id
	and entry in RE_Unit_Table for RE_Free.

From-SVN: r202451
2013-09-10 16:43:06 +02:00
James Greenhalgh
c9b1c957b1 [AArch64] Prevent generic pipeline description from dominating other pipeline descriptions.
gcc/
	* config/aarch64/aarch64.md (generic_sched): New.
	* config/aarch64/aarch64-generic.md (load): Make conditional
	on generic_sched attribute.
	(nonload): Likewise.

From-SVN: r202448
2013-09-10 13:55:38 +00:00
Jan Hubicka
82d618d375 lto-cgraph.c: Include ipa-utils.h.
* lto-cgraph.c: Include ipa-utils.h.
	(compute_ltrans_boundary): Also add possible targets into the boundary.

From-SVN: r202447
2013-09-10 13:50:43 +00:00
Jan Hubicka
668b689457 gimple-fold.c (gimple_get_virt_method_for_binfo): Pass real VAR_DECL of vtable rather than full expression.
* gimple-fold.c (gimple_get_virt_method_for_binfo): Pass real
	VAR_DECL of vtable rather than full expression.

From-SVN: r202446
2013-09-10 13:46:31 +00:00
Jan Hubicka
4f90d3e08c cgraphunit.c (analyze_functions): Save input_location, set it to UNKNOWN_LOCATION and restore it at the end.
2013-09-10  Jan Hubicka  <jh@suse.cz>
	    Paolo Carlini  <paolo.carlini@oracle.com>

	* cgraphunit.c (analyze_functions): Save input_location, set it
	to UNKNOWN_LOCATION and restore it at the end.

/cp
2013-09-10  Jan Hubicka  <jh@suse.cz>
	    Paolo Carlini  <paolo.carlini@oracle.com>

	* error.c (print_instantiation_partial_context_line): If
	loc == UNKNOWN_LOCATION return immediately.

/testsuite
2013-09-10  Jan Hubicka  <jh@suse.cz>
	    Paolo Carlini  <paolo.carlini@oracle.com>

	* g++.dg/template/cond2.C: Tweak, do not expect a "required from".

Co-Authored-By: Paolo Carlini <paolo.carlini@oracle.com>

From-SVN: r202445
2013-09-10 13:04:36 +00:00
Martin Jambor
39e87bafc6 ipa-cp.c (propagate_constants_topo): Do not ignore SCC represented by a thunk.
2013-09-10  Martin Jambor  <mjambor@suse.cz>

	* ipa-cp.c (propagate_constants_topo): Do not ignore SCC
	represented by a thunk.

From-SVN: r202444
2013-09-10 15:01:47 +02:00
Gary Benson
669ea36c4a cp-demangle.c: Include hashtab.h.
2013-09-10  Gary Benson  <gbenson@redhat.com>

	* cp-demangle.c: Include hashtab.h.
	(struct d_print_info): New field saved_scopes.
	(d_print_init): Initialize the above.
	(d_print_free): New function.
	(cplus_demangle_print_callback): Call the above.
	(struct d_saved_scope): New structure.
	(d_store_scope): New function.
	(d_free_scope) Likewise.
	(d_restore_scope) Likewise.
	(d_hash_saved_scope) Likewise.
	(d_equal_saved_scope) Likewise.
	(d_print_comp): New variable saved_scope.
	[DEMANGLE_COMPONENT_REFERENCE,
	DEMANGLE_COMPONENT_RVALUE_REFERENCE]: Capture scope the first
	time the component is traversed, and use the captured scope for
	subsequent traversals.

From-SVN: r202442
2013-09-10 12:33:50 +00:00
Jeff Law
581aedec91 re PR tree-optimization/58343 (ICE in dfs_enumerate_from, at cfganal.c:1036)
PR tree-optimization/58343
	* tree-ssa-threadupdate.c (thread_block): Identify and disable
	jump threading requests through loop headers buried in the middle
	of a jump threading path.

	* tree-ssa-threadedge.c (thread_around_empty_blocks): Fix thinko
	in return value/type.

	* gcc.c-torture/compile/pr58343.c: New test.

From-SVN: r202441
2013-09-10 06:29:58 -06:00
Jakub Jelinek
84cf4ab655 re PR rtl-optimization/58365 (likely wrong code bug)
PR rtl-optimization/58365
	* cfgcleanup.c (merge_memattrs): Also clear MEM_READONLY_P
	resp. MEM_NOTRAP_P if they differ, or set MEM_VOLATILE_P if
	it differs.

	* gcc.c-torture/execute/pr58365.c: New test.

From-SVN: r202434
2013-09-10 13:47:19 +02:00
Richard Biener
447dd90665 tree-data-ref.h (build_rdg): Drop all parameters but loop.
2013-09-10  Richard Biener  <rguenther@suse.de>

	* tree-data-ref.h (build_rdg): Drop all parameters but loop.
	* tree-data-ref.c (create_rdg_vertices): Collect all data
	references, signal failure to the caller, use data-ref API.
	(build_rdg): Compute data references only once.  Maintain
	lifetime of data references and data dependences from within
	RDG.
	(free_rdg): Free dependence relations.
	* tree-loop-distribution.c (rdg_flag_uses): Drop weird code
	inventing extra dependences.
	(distribute_loop): Update for RDG API changes.

From-SVN: r202431
2013-09-10 10:26:08 +00:00
Kai Tietz
f14a732496 invoke.texi (fms-extensions): Document changed behavior for ms-abi targets.
* doc/invoke.texi (fms-extensions): Document changed
	behavior for ms-abi targets.
	* config/i386/i386.c (ix86_option_override_internal):
	Set default value of option -fms-extension for ms-abi targets.

From-SVN: r202429
2013-09-10 11:09:05 +02:00
Alan Modra
7dbdaf87da re PR target/58330 (powerpc64 atomic store split in two)
PR target/58330
oops, missed from commit

From-SVN: r202428
2013-09-10 18:08:57 +09:30
Michael Zolotukhin
ff131f2627 i386.c (ix86_expand_movmem): Fix epilogue generation.
gcc:
* config/i386/i386.c (ix86_expand_movmem): Fix epilogue generation.

gcc/testsuite:
* gcc.dg/torture/memcpy-1.c: New test.

From-SVN: r202423
2013-09-10 07:53:22 +00:00
GCC Administrator
32a19da43b Daily bump.
From-SVN: r202421
2013-09-10 00:16:33 +00:00
Alan Modra
33115a2c7f re PR target/58330 (powerpc64 atomic store split in two)
PR target/58330
gcc/
	* config/rs6000/rs6000.md (bswapdi2_64bit): Disable for volatile mems.
gcc/testsuite/
	* gcc.target/powerpc/pr58330.c: New.

From-SVN: r202418
2013-09-10 09:18:10 +09:30
Alan Modra
b6872a1389 predicates.md (add_cint_operand): New.
gcc/
	* config/rs6000/predicates.md (add_cint_operand): New.
	(reg_or_add_cint_operand, small_toc_ref): Use add_cint_operand.
	* config/rs6000/rs6000.md (largetoc_high_plus): Restrict offset
	using add_cint_operand.
	(largetoc_high_plus_aix): Likewise.
gcc/testsuite/
	* gcc.target/powerpc/medium_offset.c: New.

From-SVN: r202417
2013-09-10 09:10:34 +09:30
Tobias Burnus
904e9dbbab invoke.texi (Error and Warning Options): Add hyphen.
2013-09-09  Tobias Burnus  <burnus@net-b.de>

        * invoke.texi (Error and Warning Options): Add hyphen.

From-SVN: r202416
2013-09-09 23:55:22 +02:00
Jakub Jelinek
3c784bca03 re PR c++/58325 (Spurious unused-but-set-variable warning on delete[] of volatile pointer)
PR c++/58325
	* init.c (build_vec_delete): Call mark_rvalue_use on base.

	* g++.dg/warn/Wunused-var-21.C: New test.

From-SVN: r202411
2013-09-09 19:12:15 +02:00
Jakub Jelinek
28fd0ba2d1 re PR tree-optimization/58364 (likely wrong code bug)
PR tree-optimization/58364
	* tree-ssa-reassoc.c (init_range_entry): For BIT_NOT_EXPR on
	BOOLEAN_TYPE, only invert in_p and continue with arg0 if
	the current range can't be an unconditional true or false.

	* gcc.c-torture/execute/pr58364.c: New test.

From-SVN: r202409
2013-09-09 19:09:59 +02:00
James Greenhalgh
552d99fe88 [AArch64] obvious - Fix parameter to vrsqrte_f64
gcc/

	* config/aarch64/arm_neon.h (vrsqrte_f64): Fix parameter type.

From-SVN: r202407
2013-09-09 15:16:03 +00:00
Uros Bizjak
f43245d188 ipa-prop.c (ipa_modify_call_arguments): Initialize deref_align.
* ipa-prop.c (ipa_modify_call_arguments): Initialize deref_align.

From-SVN: r202406
2013-09-09 17:07:58 +02:00
Paolo Carlini
9420c2c457 re PR c++/43452 (Array delete causes error on incomplete type)
2013-09-09  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/43452
	* doc/invoke.texi (-Wdelete-incomplete): Document it.

/c-family
2013-09-09  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/43452
	* c.opt (Wdelete-incomplete): Add.

/cp
2013-09-09  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/43452
	* init.c (build_vec_delete_1): When the type is incomplete emit a
	warning, enabled by default (not an error).
	(build_delete): Adjust to use OPT_Wdelete_incomplete.

/testsuite
2013-09-09  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/43452
	* g++.dg/warn/Wdelete-incomplete-1.C: New.
	* g++.dg/warn/Wdelete-incomplete-2.C: Likewise.
	* g++.dg/init/delete1.C: Adjust.

From-SVN: r202405
2013-09-09 14:47:21 +00:00
Paolo Carlini
c9b0866a1e re PR c++/43452 (Array delete causes error on incomplete type)
2013-09-09  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/43452
	* doc/invoke.texi (-Wdelete-incomplete): Document it.

/c-family
2013-09-09  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/43452
	* c.opt (Wdelete-incomplete): Add.

/cp
2013-09-09  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/43452
	* init.c (build_vec_delete_1): When the type is incomplete emit a
	warning, enabled by default (not an error).
	(build_delete): Adjust to use OPT_Wdelete_incomplete.

/testsuite
2013-09-09  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/43452
	* g++.dg/warn/Wdelete-incomplete-1.C: New.
	* g++.dg/warn/Wdelete-incomplete-2.C: Likewise.
	* g++.dg/init/delete1.C: Adjust.

From-SVN: r202404
2013-09-09 14:31:16 +00:00
Ian Bolton
78d8b9f019 Improve handling of constants destined for FP_REGS on AArch64
From-SVN: r202403
2013-09-09 13:53:18 +00:00
Paolo Carlini
aeda100f7b re PR c++/58362 (Wrong column number for unused parameter)
/cp
2013-09-09  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/58362
	* error.c (location_of): Don't handle PARM_DECLs specially.

/testsuite
2013-09-09  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/58362
	* g++.dg/warn/Wunused-parm-5.C: New.

From-SVN: r202402
2013-09-09 13:39:47 +00:00
Paolo Carlini
c0c66032ca error.c (dump_expr, [...]): Fix.
2013-09-09  Paolo Carlini  <paolo.carlini@oracle.com>

	* error.c (dump_expr, [PSEUDO_DTOR_EXPR]): Fix.
	* cxx-pretty-print.c (cxx_pretty_printer::postfix_expression):
	Tweak, TREE_OPERAND (t, 1) may be null.

From-SVN: r202401
2013-09-09 13:34:44 +00:00
Kyrylo Tkachov
274b253236 aarch64.c (aarch64_select_cc_mode): Return CC_SWP for comparison with negated operand.
[gcc/]
2013-09-09  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

	* config/aarch64/aarch64.c (aarch64_select_cc_mode): Return CC_SWP for
	comparison with negated operand.
	* config/aarch64/aarch64.md (compare_neg<mode>): Match canonical RTL form.

[gcc/testsuite/]	
2013-09-09  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

	* gcc.target/aarch64/cmn-neg.c: New test.

From-SVN: r202400
2013-09-09 13:32:50 +00:00
Richard Biener
467a3558ef re PR tree-optimization/58326 (ICE in check_loop_closed_ssa_use, at tree-ssa-loop-manip.c:551)
2013-09-09  Richard Biener  <rguenther@suse.de>

	PR middle-end/58326
	* cfgloopmanip.c (fix_bb_placements): When fixing the placement
	of a subloop record all its block as affecting loop-closed SSA form.

	* gcc.dg/torture/pr58326-1.c: New testcase.
	* gcc.dg/torture/pr58326-2.c: Likewise.

From-SVN: r202399
2013-09-09 13:18:38 +00:00
Kyrylo Tkachov
849107c128 re PR target/57735 (ICE with -mtune=xscale (error: could not split insn) when building webkit)
2013-09-09  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

	PR target/57735
	* g++.dg/ext/pr57735.C: New test.

From-SVN: r202398
2013-09-09 13:16:44 +00:00
Richard Sandiford
088c5368f1 expmed.c (lshift_value): Take an unsigned HOST_WIDE_INT instead of an rtx/bitpos pair.
gcc/
	* expmed.c (lshift_value): Take an unsigned HOST_WIDE_INT instead
	of an rtx/bitpos pair.
	(store_fixed_bit_field): Update accordingly.

From-SVN: r202395
2013-09-09 13:07:18 +00:00
Richard Sandiford
69db2d57a3 asan.c (asan_emit_stack_protection): Use gen_int_mode instead of GEN_INT.
gcc/
	* asan.c (asan_emit_stack_protection): Use gen_int_mode instead of
	GEN_INT.
	* builtins.c (expand_errno_check): Likewise.
	* dwarf2cfi.c (init_return_column_size): Likewise.
	* except.c (sjlj_mark_call_sites): Likewise.
	* expr.c (move_by_pieces_1, store_by_pieces_2): Likewise.
	* lra-constraints.c (emit_inc): Likewise.
	* ree.c (combine_set_extension): Likewise.
	* regmove.c (fixup_match_2): Likewise.
	* reload1.c (inc_for_reload): Likewise.

From-SVN: r202394
2013-09-09 13:07:10 +00:00
Richard Sandiford
69a59f0fa9 gcc/
* combine.c (simplify_set, expand_field_assignment, extract_left_shift)
	(force_to_mode, simplify_shift_const_1, simplify_comparison):
	Use gen_int_mode with the mode of the associated simplify_* call.
	* explow.c (probe_stack_range, anti_adjust_stack_and_probe): Likewise.
	* expmed.c (expand_shift_1): Likewise.
	* function.c (instantiate_virtual_regs_in_insn): Likewise.
	* loop-iv.c (iv_number_of_iterations): Likewise.
	* loop-unroll.c (unroll_loop_runtime_iterations): Likewise.
	* simplify-rtx.c (simplify_binary_operation_1): Likewise.

From-SVN: r202393
2013-09-09 13:07:02 +00:00
Richard Sandiford
2f1cd2ebd6 asan.c (asan_clear_shadow): Use gen_int_mode with the mode of the associated expand_* call.
gcc/
	* asan.c (asan_clear_shadow): Use gen_int_mode with the mode
	of the associated expand_* call.
	(asan_emit_stack_protection): Likewise.
	* builtins.c (round_trampoline_addr): Likewise.
	* explow.c (allocate_dynamic_stack_space, probe_stack_range): Likewise.
	* expmed.c (expand_smod_pow2, expand_sdiv_pow2, expand_divmod)
	(emit_store_flag): Likewise.
	* expr.c (emit_move_resolve_push, push_block, emit_single_push_insn_1)
	(emit_push_insn, optimize_bitfield_assignment_op, expand_expr_real_1):
	Likewise.
	* function.c (instantiate_virtual_regs_in_insn): Likewise.
	* ifcvt.c (noce_try_store_flag_constants): Likewise.
	* loop-unroll.c (unroll_loop_runtime_iterations): Likewise.
	* modulo-sched.c (generate_prolog_epilog): Likewise.
	* optabs.c (expand_binop, widen_leading, expand_doubleword_clz)
	(expand_ctz, expand_ffs, expand_unop): Likewise.

From-SVN: r202392
2013-09-09 13:06:53 +00:00
Richard Sandiford
4789c0cef3 alias.c (addr_side_effect_eval): Use gen_int_mode with the mode of the associated gen_rtx_* call.
gcc/
	* alias.c (addr_side_effect_eval): Use gen_int_mode with the mode
	of the associated gen_rtx_* call.
	* caller-save.c (init_caller_save): Likewise.
	* combine.c (find_split_point, make_extraction): Likewise.
	(make_compound_operation): Likewise.
	* dwarf2out.c (mem_loc_descriptor): Likewise.
	* explow.c (plus_constant, probe_stack_range): Likewise.
	* expmed.c (expand_mult_const): Likewise.
	* expr.c (emit_single_push_insn_1, do_tablejump): Likewise.
	* reload1.c (init_reload): Likewise.
	* valtrack.c (cleanup_auto_inc_dec): Likewise.
	* var-tracking.c (adjust_mems): Likewise.
	* modulo-sched.c (sms_schedule): Likewise, but use gen_rtx_GT
	rather than gen_rtx_fmt_ee.

From-SVN: r202391
2013-09-09 13:06:43 +00:00
Jan Hubicka
a811f7cbad re PR tree-optimization/58294 (ice in update_ssa_across_abnormal_edges, at tree-inline.c:1892)
PR middle-end/58294
	* value-prof.c (gimple_ic): Copy also abnormal edges.
	* g++.dg/torture/PR58294.C: New testcase.

From-SVN: r202389
2013-09-09 12:09:50 +00:00