Commit Graph

133434 Commits

Author SHA1 Message Date
Richard Biener a342326069 fold-const.c (fold_comparison): Remove redundant constant folding and operand swapping.
2014-10-17  Richard Biener  <rguenther@suse.de>

	* fold-const.c (fold_comparison): Remove redundant constant
	folding and operand swapping.
	(fold_binary_loc): Do comparison operand swapping here.
	(fold_ternary_loc): Canonicalize operand order for
	commutative ternary operations.
	* tree.c (commutative_ternary_tree_code): Add DOT_PROD_EXPR
	and FMA_EXPR.

From-SVN: r216394
2014-10-17 11:32:12 +00:00
Jakub Jelinek 73049af5fa re PR tree-optimization/63464 (compare one character to many: faster)
PR tree-optimization/63464
	* gimple.h (gimple_seq_discard): New prototype.
	* gimple.c: Include stringpool.h and tree-ssanames.h.
	(gimple_seq_discard): New function.
	* optabs.h (lshift_cheap_p): New prototype.
	* optabs.c (lshift_cheap_p): New function, moved from...
	* tree-switch-conversion.c (lshift_cheap_p): ... here.
	* tree-ssa-reassoc.c: Include gimplify.h and optabs.h.
	(reassoc_branch_fixups): New variable.
	(update_range_test): Add otherrangep and seq arguments.
	Unshare exp.  If otherrange is NULL, use for other ranges
	array of pointers pointed by otherrangep instead.
	Emit seq before gimplified statements for tem.
	(optimize_range_tests_diff): Adjust update_range_test
	caller.
	(optimize_range_tests_xor): Likewise.  Fix up comment.
	(extract_bit_test_mask, optimize_range_tests_to_bit_test): New
	functions.
	(optimize_range_tests): Adjust update_range_test caller.
	Call optimize_range_tests_to_bit_test.
	(branch_fixup): New function.
	(execute_reassoc): Call branch_fixup.

	* gcc.dg/torture/pr63464.c: New test.
	* gcc.dg/tree-ssa/reassoc-37.c: New test.
	* gcc.dg/tree-ssa/reassoc-38.c: New test.

From-SVN: r216393
2014-10-17 12:54:54 +02:00
Jakub Jelinek 4eb4a256cd re PR tree-optimization/63302 (Code with 64-bit long long constants is miscompiled on 32-bit host)
PR tree-optimization/63302
	* tree-ssa-reassoc.c (optimize_range_tests_xor,
	optimize_range_tests_diff): Use !integer_pow2p () instead of
	tree_log2 () < 0.

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

From-SVN: r216391
2014-10-17 12:50:16 +02:00
Martin Liska 9d4ded759a Temporary fix for PR63566.
* ipa-icf.c (sem_function::merge): Local flags are set to false
	to enforce equal calling convention to be used.
	* opts.c (common_handle_option): Indentation fix.

From-SVN: r216386
2014-10-17 09:37:35 +00:00
Arnaud Charlet 43c58950be [multiple changes]
2014-10-17  Robert Dewar  <dewar@adacore.com>

	* exp_ch9.adb (Expand_N_Task_Body): Add defense against
	previous errors.
	* freeze.adb (Freeze_Entity): Add defense against checking null
	scope for generic.
	* restrict.adb (Tasking_Allowed): Add test for No_Run_Time mode.
	* sem_ch13.adb (Freeze_Entity_Checks): Add defense against
	previous errors.
	* sem_ch9.adb (Analyze_Task_Type_Declaration): Give error if
	in No_Run_Time mode.

2014-10-17  Robert Dewar  <dewar@adacore.com>

	* prj-makr.adb: Minor reformatting.

2014-10-17  Robert Dewar  <dewar@adacore.com>

	* gnatcmd.adb, make.adb, prj-part.adb, gnatlink.adb, prj-nmsc.adb,
	prj-conf.adb, prj-env.adb: Use Is_Directory_Separator where possible.

2014-10-17  Ed Schonberg  <schonberg@adacore.com>

	* exp_prag.adb (Undo_Initialization): If Initialize_Scalars
	is enabled, code will be generated for some composite types
	to initialize an object after its declaration. If there is
	a subsequent Import pragma for the object, that code must be
	removed as specified byw the semantics of the pragma, and to
	prevent out-of-order elaboration issues in the back-end.

2014-10-17  Hristian Kirtchev  <kirtchev@adacore.com>

	* exp_ch4.adb (Expand_N_Op_Concat): Keep concatenation operator
	wrapping mechanism under debug flag -gnatd.h.
	* debug.adb: Claim debug switch -gnatd.h.

From-SVN: r216384
2014-10-17 11:20:50 +02:00
Doug Rupp fa2e6e2570 Makefile.in: Enable the socket runtime bits for Android.
* gcc-interface/Makefile.in: Enable the socket runtime bits
	for Android.

From-SVN: r216383
2014-10-17 11:18:17 +02:00
Ed Schonberg c3ba8ed0bc sem_ch13.adb (Add_Invariants, [...]): Do not perform the replacement on the expression for an inherited class-wide...
2014-10-17  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch13.adb (Add_Invariants, Replace_Type_References): Do
	not perform the replacement on the expression for an inherited
	class-wide invariant if in ASIS_Mode and the type reference is
	already the prefix of a 'Class attribute reference: the expression
	has already been preanalyzed and the replacement performed when
	first encountered on the declaration of the parent type.

From-SVN: r216382
2014-10-17 11:14:42 +02:00
Robert Dewar 2e21557397 sem_ch5.adb, [...]: Minor reformatting.
2014-10-17  Robert Dewar  <dewar@adacore.com>

	* sem_ch5.adb, sem_ch7.adb, prj-nmsc.adb, sem_ch13.adb, exp_ch3.adb:
	Minor reformatting.

From-SVN: r216381
2014-10-17 11:12:56 +02:00
Arnaud Charlet ac2ea5c513 [multiple changes]
2014-10-17  Ed Schonberg  <schonberg@adacore.com>

	* exp_ch3.adb (Build_Component_Invariant_Call): Retrieve Invariant
	subprogram from base type.
	* sem_ch7.adb (Analyze_Package_Specification): Build invariant
	subprogram for private type, not any of its subtypes.
	* sem_ch13.adb (Build_Invariant_Procedure_Declaration): Set type
	of procedure entity, because a call to it may be generated in
	a client unit before the corresponding subprogram declaration
	is analyzed.

2014-10-17  Vincent Celier  <celier@adacore.com>

	* prj-nmsc.adb (Get_Directories): Do not create directories
	when a project is abstract.

2014-10-17  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch5.adb (Analyze_Iterator_Specification): If the domain
	of iteration is given by an expression that is not an array type,
	verify that its type implements an iterator iterface.

From-SVN: r216380
2014-10-17 11:11:14 +02:00
Arnaud Charlet 99425ec329 [multiple changes]
2014-10-17  Robert Dewar  <dewar@adacore.com>

	* sem_attr.adb (Eval_Attribute): Ensure that attribute
	reference is not marked as being a static expression if the
	prefix evaluation raises CE.

2014-10-17  Robert Dewar  <dewar@adacore.com>

	* exp_pakd.adb: Move bit packed entity tables to spec.
	* exp_pakd.ads: Move bit packed entity tables here from body.
	* freeze.adb (Freeze_Array_Type): Check that packed array type
	is supported.
	* rtsfind.adb (PRE_Id_Table): New table (Entity_Not_Defined):
	Specialize messages using PRE_Id_Table.
	* uintp.ads, uintp.adb (UI_Image): New functional form.

2014-10-17  Robert Dewar  <dewar@adacore.com>

	* aspects.ads, aspects.adb: Add Suppress_Initialization aspect.
	* einfo.ads, einfo.adb (Suppress_Initialization): Now applies to
	E_Variable.
	* exp_ch3.adb (Default_Initialize_Object): Handle
	Suppress_Initialization.
	* exp_prag.adb (Expand_Pragma_Suppress_Initialization): New
	procedure (Expand_N_Pragma): Handle Suppress_Initialization
	(Expand_Pragma_Import_Or_Interface): Use Undo_Initialization
	(Undo_Initialization): New procedure.
	* sem_prag.adb (Analyze_Pragma, case Suppress_Initialization):
	This is now allowed for E_Variable case.
	* gnat_rm.texi: Document new aspect Suppress_Initialization
	Suppress_Initialization aspect/pragma can apply to variable.
	* einfo.ads: Minor reformatting.

2014-10-17  Arnaud Charlet  <charlet@adacore.com>

	* spark_xrefs.ads: Add documentation pointer to Flow_Computed_Globals.

2014-10-17  Robert Dewar  <dewar@adacore.com>

	* cstand.adb (Create_Standard): Mark Short_Integer as
	implementation defined.
	* sem_util.adb (Set_Entity_With_Checks): Avoid blow up for
	compiler built with assertions for No_Implementation_Identifiers test.

From-SVN: r216379
2014-10-17 11:07:50 +02:00
Robert Dewar 99bd87dd98 aspects.ads: Documentation fix, aspect Lock_Free does have a corresponding pragma.
2014-10-17  Robert Dewar  <dewar@adacore.com>

	* aspects.ads: Documentation fix, aspect Lock_Free does have a
	corresponding pragma.
	* gnat_rm.texi: Document implementation defined boolean aspects
	as boolean.

From-SVN: r216378
2014-10-17 10:52:30 +02:00
Arnaud Charlet dc06dd8366 [multiple changes]
2014-10-17  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch13.adb (Add_Invariants): For a class-wide type invariant,
	preserve semantic information on the invariant expression
	(typically a function call) because it may be inherited by a
	type extension in a different unit, and it cannot be resolved
	by visibility elsewhere because it may refer to local entities.

2014-10-17  Robert Dewar  <dewar@adacore.com>

	* gnat_rm.texi: Document that string literal can be used for
	pragma Warnings when operating in Ada 83 mode.

2014-10-17  Ed Schonberg  <schonberg@adacore.com>

	* freeze.adb (Find_Aggregate_Component_Desig_Type): New
	subsidiary function to Freeze_ Expression, used to determine
	whether an aggregate for an array of access types also freezes the
	designated type, when some aggregate components are allocators.

2014-10-17  Ed Schonberg  <schonberg@adacore.com>

	* a-strsea.adb (Find_Token): AI05-031 indicates that the
	procedure must raise Index_Error when Source is not empty and
	the From parameter is not within the range of the Source string.

2014-10-17  Robert Dewar  <dewar@adacore.com>

	* sem_prag.adb (Is_Static_String_Expression): Allow string
	literal in Ada 83 mode.

From-SVN: r216377
2014-10-17 10:51:08 +02:00
Arnaud Charlet c3ed5e9eaf [multiple changes]
2014-10-17  Vincent Celier  <celier@adacore.com>

	* prj-conf.adb (Get_Config_Switches): In CodePeer mode, do
	not take into account any compiler command from package IDE.

2014-10-17  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch12.adb (Build_Function_Wrapper): The formals of the
	wrapper must have the same identifiers as those of the formal
	subprogram, because calls within the generic may use named
	associations.

From-SVN: r216376
2014-10-17 10:49:10 +02:00
Robert Dewar e7cd165c2f sem_ch3.adb, [...]: Minor reformatting.
2014-10-17  Robert Dewar  <dewar@adacore.com>

	* sem_ch3.adb, a-strsea.adb: Minor reformatting.
	* par-ch6.adb (P_Subprogram): Fix bad handling of null procedures.

From-SVN: r216375
2014-10-17 10:47:56 +02:00
Ed Schonberg b98b57a59f sem_ch3.adb (Build_Derived_Enumeration_Type): Propagate aspect specfications from original type declaration to declaration of...
2014-10-17  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch3.adb (Build_Derived_Enumeration_Type): Propagate aspect
	specfications from original type declaration to declaration of
	implicit base, because original node is rewritten as a subtype
	declaration on which type aspects do not belong.

From-SVN: r216373
2014-10-17 10:46:37 +02:00
Arnaud Charlet fd4647be11 [multiple changes]
2014-10-17  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_ch3.adb (Propagate_Default_Init_Cond_Attributes): A derived type
	inherits the attributes related to pragma Default_Initial_Condition
	from its parent type.

2014-10-17  Ed Schonberg  <schonberg@adacore.com>

	* a-strsea.adb (Index - versions with a From parameter):
	According to AI05-056, the Index functions with a From parameter
	return 0 if the source is an empty string.

2014-10-17  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_prag.adb (Analyze_Refined_Depends_In_Decl_Part): Disable
	the consistency checks in ASIS mode.

2014-10-17  Arnaud Charlet  <charlet@adacore.com>

	* s-expmod.ads: Minor typo fix.

From-SVN: r216372
2014-10-17 10:45:39 +02:00
Arnaud Charlet a92230c56c [multiple changes]
2014-10-17  Robert Dewar  <dewar@adacore.com>

	* sem_util.adb: Minor reformatting.

2014-10-17  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch12.adb (Build_Function_Wrapper): Build wrappers for
	actuals that are defaulted subprograms of the formal subprogram
	declaration.

2014-10-17  Robert Dewar  <dewar@adacore.com>

	* exp_ch4.adb (Expand_N_Op_Eq): Make sure we deal with the
	implementation base type.
	* sinfo.ads: Add a note for N_Op_Eq and N_Op_Ne that record
	operands are always expanded out into component comparisons.

2014-10-17  Robert Dewar  <dewar@adacore.com>

	* s-vallli.adb: Minor comment correction.
	* s-valuti.ads: Minor comment reformatting.

2014-10-17  Robert Dewar  <dewar@adacore.com>

	* gnat_rm.texi: Document System.Atomic_Counters.
	* impunit.adb: Add System.Atomic_Counters (s-atocou.ads) to the
	list of user- accessible units added as children of System.
	* s-atocou.ads: Update comment.

2014-10-17  Arnaud Charlet  <charlet@adacore.com>

	* s-expmod.ads: Add comments.

From-SVN: r216371
2014-10-17 10:42:41 +02:00
Hristian Kirtchev 38d0d6c854 sem_ch3.adb (Build_Derived_Record_Type): Remove the propagation of all attributes related to pragma...
2014-10-17  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_ch3.adb (Build_Derived_Record_Type): Remove the propagation
	of all attributes related to pragma Default_Initial_Condition.
	(Build_Derived_Type): Propagation of all attributes related
	to pragma Default_Initial_Condition.
	(Process_Full_View): Account for the case where the full view derives
	from another private type and propagate the attributes related
	to pragma Default_Initial_Condition to the private view.
	(Propagate_Default_Init_Cond_Attributes): New routine.
	* sem_util.adb: Alphabetize various routines.
	(Build_Default_Init_Cond_Call): Use an unchecked type conversion
	when calling the default initial condition procedure of a private type.
	(Build_Default_Init_Cond_Procedure_Declaration): Prevent
	the generation of multiple default initial condition procedures.

From-SVN: r216370
2014-10-17 10:34:54 +02:00
Arnaud Charlet 2211a35ffa [multiple changes]
2014-10-17  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch12.adb: Refine previous change.

2014-10-17  Robert Dewar  <dewar@adacore.com>

	* prj-conf.adb: Revert previous change.

From-SVN: r216369
2014-10-17 10:32:25 +02:00
Arnaud Charlet 469fba4ae8 [multiple changes]
2014-10-17  Robert Dewar  <dewar@adacore.com>

	* lib-writ.ads, s-valdec.ads: Minor reformatting.

2014-10-17  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch12.adb: Additional work on function wrappers.

2014-10-17  Eric Botcazou  <ebotcazou@adacore.com>

	* exp_util.adb (Possible_Bit_Aligned_Component): Also recurse
	on the renamed object of renamings.

2014-10-17  Vincent Celier  <celier@adacore.com>

	* prj-conf.adb (Parse_Project_And_Apply_Config): In CodePeer
	mode, always use the native target.

From-SVN: r216368
2014-10-17 10:29:23 +02:00
Marc Glisse c36eadbea1 tree-into-ssa.c (is_old_name): Replace "new" with "old".
2014-10-17  Marc Glisse  <marc.glisse@inria.fr>

	* tree-into-ssa.c (is_old_name): Replace "new" with "old".

From-SVN: r216367
2014-10-17 08:26:33 +00:00
Markus Trippelsdorf 1bc4a9783d Fix misplaced changelog entry
From-SVN: r216366
2014-10-17 07:06:40 +00:00
Tom de Vries 8d696651ab Use fuse-caller-save info in cprop-hardreg
2014-10-17  Tom de Vries  <tom@codesourcery.com>

	PR rtl-optimization/61605
	* regcprop.c (copyprop_hardreg_forward_1): Use
	regs_invalidated_by_this_call instead of regs_invalidated_by_call.

	* gcc.target/i386/fuse-caller-save.c: Update addition check.  Add movl
	absence check.

From-SVN: r216365
2014-10-17 06:36:45 +00:00
Tom de Vries 8c8fe66309 Handle copy cycles in pass_cprop_hardreg
2014-10-17  Tom de Vries  <tom@codesourcery.com>

	PR rtl-optimization/61605
	* regcprop.c (copyprop_hardreg_forward_1): Add copy_p and noop_p.  Don't
	notice stores for noops.  Don't regard noops as copies.

From-SVN: r216364
2014-10-17 06:36:35 +00:00
Uros Bizjak 5dad161975 * Add missing ChangeLog entry.
From-SVN: r216363
2014-10-17 08:07:17 +02:00
Uros Bizjak 021478683c cpuid.h (__cpuid): Remove definitions that handle %ebx register in a special way.
* config/i386/cpuid.h (__cpuid): Remove definitions that handle %ebx
	register in a special way.
	(__cpuid_count): Ditto.
	* config/i386/driver-i386.h: Protect with
	"#if defined(__GNUC__) && (__GNUC__ >= 5 || !defined(__PIC__))".
	(host_detect_local_cpu): Mention that GCC with non-fixed %ebx
	is required to compile the function.

From-SVN: r216362
2014-10-17 08:00:58 +02:00
Markus Trippelsdorf 5fcffe51f0 Fix pr61848, linux kernel miscompile
This patch cures the linux kernel boot failure when compiled using
trunk gcc.

At its heart, the problem is caused by merge_decls merging from the
old decl to the new decl, then copying back to the old decl and
discarding the new.  When Jan moved some fields to the symtab,
"copying back to the old decl" was lost for those fields.  Really,
it would be best if merge_decls was rewritten to merge everything to
the kept decl, but here I'm just doing that for fields accessed via
decl_with_vis.symtab_node.

2014-10-17  Alan Modra  <amodra@gmail.com>

gcc/c/
	PR middle-end/61848
	* c-decl.c (merge_decls): Don't merge section name or tls model
	to newdecl symtab node, instead merge to olddecl.  Override
	existing olddecl section name.  Set tls_model for all thread-local
	vars, not just OMP thread-private ones.  Remove incorrect comment.
gcc/cp/
	PR middle-end/61848
	* decl.c (merge_decls): Don't merge section name, comdat group or
	tls model to newdecl symtab node, instead merge to olddecl.
	Override existing olddecl section name.  Set tls_model for all
	thread-local vars, not just OMP thread-private ones.  Remove
	incorrect comment.

2014-10-17  Markus Trippelsdorf  <markus@trippelsdorf.de>

	PR middle-end/61848
	* g++.dg/torture/pr61848.C: New testcase.
	* gcc.c-torture/compile/pr61848.c: New testcase.

From-SVN: r216361
2014-10-17 05:10:07 +00:00
GCC Administrator d6db0df556 Daily bump.
From-SVN: r216358
2014-10-17 00:16:15 +00:00
Ian Lance Taylor 204b9fc2b8 configure: Quote some shell variables.
From Dominik Vogt.

From-SVN: r216355
2014-10-17 00:03:20 +00:00
Ian Lance Taylor 6c4ee063a5 runtime: Don't create threads with a small stack.
We want to create goroutines with a small stack, at least on
systems where split stacks are supported.  We don't need to
create threads with a small stack.

From-SVN: r216353
2014-10-16 22:39:45 +00:00
Oleg Endo e4c6530e82 cmpstr.c: Fix excess failures caused by switch to GNU11.
gcc/testsuite/
	* gcc.target/sh/cmpstr.c: Fix excess failures caused by switch to GNU11.
	* gcc.target/sh/strlen.c: Likewise.
	* gcc.target/sh/pr51244-13.c: Likewise.
	* gcc.target/sh/cmpstrn.c: Likewise.
	* gcc.target/sh/hiconst.c: Likewise.
	* gcc.target/sh/pr43417.c: Likewise.

From-SVN: r216351
2014-10-16 21:40:22 +00:00
DJ Delorie 957f47e6c8 lto-object.c (lto_obj_begin_section): In the event that pointer sizes aren't powers of two...
* lto-object.c (lto_obj_begin_section): In the event that pointer
sizes aren't powers of two, choose a more suitable alignment
than (unsigned)(-1).

From-SVN: r216350
2014-10-16 17:06:34 -04:00
DJ Delorie 8c0f01186f flag-types.h (sanitize_code): Don't assume targets have 32-bit integers.
* flag-types.h (sanitize_code): Don't assume targets have 32-bit
integers.

From-SVN: r216349
2014-10-16 16:58:16 -04:00
DJ Delorie 92d0307de0 rs6000-c.c (rid_int128): New.
* config/rs6000/rs6000-c.c (rid_int128): New.
(rs6000_macro_to_expand): Use instead of RID_INT128.

From-SVN: r216348
2014-10-16 16:50:18 -04:00
Ian Lance Taylor 299874d522 compiler: Method names must be non-blank.
Fixes issue 8078.

From-SVN: r216347
2014-10-16 19:55:28 +00:00
Ian Lance Taylor aa19484867 Test change for treating a function receiver as any other parameter list.
From-SVN: r216345
2014-10-16 19:36:13 +00:00
Ian Lance Taylor ada2474176 compiler: Don't record interface types with blank type names.
Fixes issue 8079.

From-SVN: r216343
2014-10-16 19:28:51 +00:00
Ian Lance Taylor f6e31dffc1 compiler: Check for initialization cycles in bound method expressions.
Fixes issue 7961.

From-SVN: r216342
2014-10-16 18:57:14 +00:00
Ian Lance Taylor 960224c3b7 re PR go/63560 (__go_set_defer_retaddr shouldn't be split by IPA split)
PR go/63560
compiler: Mark functions that call defer_retaddr as not inlinable.

This is to that the GCC middle-end won't split them.  See
http://gcc.gnu.org/PR63560.

From-SVN: r216341
2014-10-16 17:17:40 +00:00
Ian Lance Taylor 01e4aecea8 compiler: Parse receiver as a single parameter.
Fixes issue 8288.

From-SVN: r216340
2014-10-16 17:17:16 +00:00
Martin Liska d13fc1ed98 IPA ICF fallout: fox for libasan and pr43077-1.c
* gcc.dg/guality/pr43077-1.c: IPA ICF disabled
	to match defined expectations.

	* asan/Makefile.am: IPA ICF pass is disabled.
	* asan/Makefile.in: Likewise.

From-SVN: r216339
2014-10-16 16:56:21 +00:00
Andrew MacLeod 8368551493 function.h: Flatten file.
2014-10-16  Andrew MacLeod  <amacleod@redhat.com>

	* function.h: Flatten file.  Remove includes, adjust prototypes to 
	reflect only what is in function.h.
	(enum direction, struct args_size, struct locate_and_pad_arg_data,
	ADD_PARM_SIZE, SUB_PARM_SIZE, ARGS_SIZE_TREE, ARGS_SIZE_RTX): Relocate
	from expr.h.
	(ASLK_REDUCE_ALIGN, ASLK_RECORD_PAD): Relocate from rtl.h.
	(optimize_function_for_size_p, optimize_function_for_speed_p): Move
	prototypes to predict.h.
	(init_varasm_status): Move prototype to varasm.h.
	* expr.h: Adjust include files.
	(enum direction, struct args_size, struct locate_and_pad_arg_data,
	ADD_PARM_SIZE, SUB_PARM_SIZE, ARGS_SIZE_TREE, ARGS_SIZE_RTX): Move
	to function.h.
	(locate_and_pad_parm): Move prototype to function.h.
	* rtl.h: (assign_stack_local, ASLK_REDUCE_ALIGN, ASLK_RECORD_PAD,
	assign_stack_local_1, assign_stack_temp, assign_stack_temp_for_type,
	assign_temp, reposition_prologue_and_epilogue_notes,
	prologue_epilogue_contains, sibcall_epilogue_contains,
	update_temp_slot_address, maybe_copy_prologue_epilogue_insn,
	set_return_jump_label): Move prototypes to function.h.
	* predict.h (optimize_function_for_size_p,
	optimize_function_for_speed_p): Relocate prototypes from function.h.
	* shrink-wrap.h (emit_return_into_block, active_insn_between,
	convert_jumps_to_returns, emit_return_for_exit): Move prototypes to
	function.h.
	* varasm.h (init_varasm_status): Relocate prototype from function.h.
	* genattrtab.c (write_header): Add predict.h to include list.
	* genconditions.c (write_header): Add predict.h to include list.
	* genemit.c (main): Adjust header file includes.
	* gengtype.c (ifiles): Add flattened function.h header files.
	* genoutput.c (output_prologue): Add predict.h to include list.
	* genpreds.c (write_insn_preds_c): Adjust header file includes.
	* genrecog.c (write_header): Add flattened function.h header files.
	* alias.c: Adjust include files.
	* auto-inc-dec.c: Likewise.
	* basic-block.h: Likewise.
	* bb-reorder.c: Likewise.
	* bt-load.c: Likewise.
	* builtins.c: Likewise.
	* caller-save.c: Likewise.
	* calls.c: Likewise.
	* cfgbuild.c: Likewise.
	* cfgcleanup.c: Likewise.
	* cfgexpand.c: Likewise.
	* cfgloop.c: Likewise.
	* cfgloop.h: Likewise.
	* cfgrtl.c: Likewise.
	* cgraph.h: Likewise.
	* cgraphclones.c: Likewise.
	* cgraphunit.c: Likewise.
	* combine-stack-adj.c: Likewise.
	* combine.c: Likewise.
	* coverage.c: Likewise.
	* cprop.c: Likewise.
	* cse.c: Likewise.
	* cselib.c: Likewise.
	* dbxout.c: Likewise.
	* ddg.c: Likewise.
	* df-core.c: Likewise.
	* df-problems.c: Likewise.
	* df-scan.c: Likewise.
	* dojump.c: Likewise.
	* dwarf2cfi.c: Likewise.
	* dwarf2out.c: Likewise.
	* emit-rtl.c: Likewise.
	* except.c: Likewise.
	* explow.c: Likewise.
	* expr.c: Likewise.
	* final.c: Likewise.
	* function.c: Likewise.
	* gcse.c: Likewise.
	* gimple-fold.c: Likewise.
	* gimple-low.c: Likewise.
	* gimple-streamer.h: Likewise.
	* haifa-sched.c: Likewise.
	* ifcvt.c: Likewise.
	* ira.c: Likewise.
	* jump.c: Likewise.
	* lcm.c: Likewise.
	* loop-invariant.c: Likewise.
	* lra-assigns.c: Likewise.
	* lra-coalesce.c: Likewise.
	* lra-constraints.c: Likewise.
	* lra-eliminations.c: Likewise.
	* lra-lives.c: Likewise.
	* lra-spills.c: Likewise.
	* lra.c: Likewise.
	* lto-cgraph.c: Likewise.
	* lto-section-in.c: Likewise.
	* lto-section-out.c: Likewise.
	* lto-streamer-in.c: Likewise.
	* lto-streamer-out.c: Likewise.
	* mode-switching.c: Likewise.
	* modulo-sched.c: Likewise.
	* omp-low.c: Likewise.
	* optabs.c: Likewise.
	* passes.c: Likewise.
	* postreload-gcse.c: Likewise.
	* postreload.c: Likewise.
	* predict.c: Likewise.
	* profile.c: Likewise.
	* recog.c: Likewise.
	* ree.c: Likewise.
	* reg-stack.c: Likewise.
	* regcprop.c: Likewise.
	* reginfo.c: Likewise.
	* regrename.c: Likewise.
	* reload.c: Likewise.
	* reload1.c: Likewise.
	* reorg.c: Likewise.
	* resource.c: Likewise.
	* rtlanal.c: Likewise.
	* sched-deps.c: Likewise.
	* sched-ebb.c: Likewise.
	* sched-rgn.c: Likewise.
	* sel-sched-dump.c: Likewise.
	* sel-sched-ir.c: Likewise.
	* sel-sched.c: Likewise.
	* shrink-wrap.c: Likewise.
	* simplify-rtx.c: Likewise.
	* statistics.c: Likewise.
	* stmt.c: Likewise.
	* stor-layout.c: Likewise.
	* store-motion.c: Likewise.
	* symtab.c: Likewise.
	* targhooks.c: Likewise.
	* toplev.c: Likewise.
	* trans-mem.c: Likewise.
	* tree-cfg.c: Likewise.
	* tree-cfgcleanup.c: Likewise.
	* tree-dfa.c: Likewise.
	* tree-eh.c: Likewise.
	* tree-inline.c: Likewise.
	* tree-into-ssa.c: Likewise.
	* tree-nested.c: Likewise.
	* tree-nrv.c: Likewise.
	* tree-profile.c: Likewise.
	* tree-ssa-alias.c: Likewise.
	* tree-ssa-ccp.c: Likewise.
	* tree-ssa-copy.c: Likewise.
	* tree-ssa-copyrename.c: Likewise.
	* tree-ssa-dom.c: Likewise.
	* tree-ssa-operands.c: Likewise.
	* tree-ssa-propagate.c: Likewise.
	* tree-ssa-structalias.c: Likewise.
	* tree-ssa-tail-merge.c: Likewise.
	* tree-ssa-threadedge.c: Likewise.
	* tree-ssa-threadupdate.c: Likewise.
	* tree-ssa-uncprop.c: Likewise.
	* tree-ssa-uninit.c: Likewise.
	* tree-ssa.c: Likewise.
	* tree-stdarg.c: Likewise.
	* tree-tailcall.c: Likewise.
	* tree.c: Likewise.
	* tsan.c: Likewise.
	* valtrack.c: Likewise.
	* varasm.c: Likewise.
	* vmsdbgout.c: Likewise.
	* web.c: Likewise.
	* testsuite/g++.dg/plugin/pragma_plugin.c: Adjust include files.
	* config/aarch64/aarch64.c: Add flattened includes from function.h.
	* config/alpha/alpha.c: Likewise.
	* config/arc/arc.c: Likewise.
	* config/arm/arm.c: Likewise.
	* config/avr/avr-log.c: Likewise.
	* config/avr/avr.c: Likewise.
	* config/bfin/bfin.c: Likewise.
	* config/c6x/c6x.c: Likewise.
	* config/cr16/cr16.c: Likewise.
	* config/cris/cris.c: Likewise.
	* config/darwin.c: Likewise.
	* config/epiphany/epiphany.c: Likewise.
	* config/epiphany/mode-switch-use.c: Likewise.
	* config/epiphany/resolve-sw-modes.c: Likewise.
	* config/fr30/fr30.c: Likewise.
	* config/frv/frv.c: Likewise.
	* config/h8300/h8300.c: Likewise.
	* config/i386/i386.c: Likewise.
	* config/ia64/ia64.c: Likewise.
	* config/iq2000/iq2000.c: Likewise.
	* config/lm32/lm32.c: Likewise.
	* config/m32c/m32c.c: Likewise.
	* config/m32r/m32r.c: Likewise.
	* config/m68k/m68k.c: Likewise.
	* config/mcore/mcore.c: Likewise.
	* config/mep/mep-pragma.c: Likewise.
	* config/mep/mep.c: Likewise.
	* config/microblaze/microblaze.c: Likewise.
	* config/mips/mips.c: Likewise.
	* config/mmix/mmix.c: Likewise.
	* config/mn10300/mn10300.c: Likewise.
	* config/moxie/moxie.c: Likewise.
	* config/msp430/msp430.c: Likewise.
	* config/nds32/nds32-cost.c: Likewise.
	* config/nds32/nds32-fp-as-gp.c: Likewise.
	* config/nds32/nds32-intrinsic.c: Likewise.
	* config/nds32/nds32-isr.c: Likewise.
	* config/nds32/nds32-md-auxiliary.c: Likewise.
	* config/nds32/nds32-memory-manipulation.c: Likewise.
	* config/nds32/nds32-pipelines-auxiliary.c: Likewise.
	* config/nds32/nds32-predicates.c: Likewise.
	* config/nds32/nds32.c: Likewise.
	* config/nios2/nios2.c: Likewise.
	* config/pa/pa.c: Likewise.
	* config/pdp11/pdp11.c: Likewise.
	* config/rl78/rl78.c: Likewise.
	* config/rs6000/rs6000.c: Likewise.
	* config/rx/rx.c: Likewise.
	* config/s390/s390.c: Likewise.
	* config/score/score.c: Likewise.
	* config/sh/sh.c: Likewise.
	* config/sparc/sparc.c: Likewise.
	* config/spu/spu.c: Likewise.
	* config/stormy16/stormy16.c: Likewise.
	* config/tilegx/tilegx.c: Likewise.
	* config/tilepro/tilepro.c: Likewise.
	* config/v850/v850.c: Likewise.
	* config/vax/vax.c: Likewise.
	* config/xtensa/xtensa.c: Likewise.


2014-10-16  Andrew MacLeod  <amacleod@redhat.com>

	* ada/gcc-interface/misc.c: Adjust include files.

2014-10-16  Andrew MacLeod  <amacleod@redhat.com>

	* c/c-decl.c: Adjust include files.

2014-10-16  Andrew MacLeod  <amacleod@redhat.com>

	* c-family/c-pragma.c: Adjust include files.
	* c-family/c-semantics.c: Likewise.

2014-10-16  Andrew MacLeod  <amacleod@redhat.com>

	* cp/cp-tree.h: Adjust include files.

2014-10-16  Andrew MacLeod  <amacleod@redhat.com>

	* fortran/f95-lang.c: Adjust include files.
	* fortran/trans-decl.c: Likewise.

2014-10-16  Andrew MacLeod  <amacleod@redhat.com>

	* java/class.c: Adjust include files.
	* java/resource.c: Likewise.

2014-10-16  Andrew MacLeod  <amacleod@redhat.com>

	* objc/objc-act.c: Adjust include files.

From-SVN: r216337
2014-10-16 16:37:19 +00:00
Richard Earnshaw 0c4ec427e0 aarch64.c (aarch64_legitimize_address): New function.
* config/aarch64/aarch64.c (aarch64_legitimize_address): New function.
	(TARGET_LEGITIMIZE_ADDRESS): Redefine.

From-SVN: r216336
2014-10-16 16:19:48 +00:00
Martin Liska 29fe1a72cb IPA ICF fallout: fix for two ipa-icf-*.C tests
* g++.dg/ipa/ipa-icf-4.C: Correct number of equivalences set.
	* g++.dg/ipa/ipa-icf-5.C: Likewise

From-SVN: r216335
2014-10-16 15:19:16 +00:00
Oleg Endo ddfe2bdb13 sh-protos.h (fldi_ok): Remove.
gcc/
	* config/sh/sh-protos.h (fldi_ok): Remove.
	* config/sh/sh.c (fldi_ok): Likewise.
	(sh_secondary_reload): Don't use fldi_ok.
	* config/sh/constraints.md (G constraint, H constraint): Don't use
	fldi_ok.

From-SVN: r216320
2014-10-16 13:17:12 +00:00
Martin Liska 105681634d IPA ICF fallout: i586 bootstrap failure fix
* ipa-icf.c (sem_item_optimizer::process_cong_reduction):
	Cast to unsigned long.
	(sem_item_optimizer::dump_cong_classes): Likewise.

From-SVN: r216319
2014-10-16 12:48:36 +00:00
Tom de Vries 90ad8d0053 Assert no use with SSA_NAME_IN_FREELIST before using freelist.
2014-10-16  Tom de Vries  <tom@codesourcery.com>

	* tree-into-ssa.c (update_ssa): Assert that there's no ssa use operand
	with SSA_NAME_IN_FREELIST.

From-SVN: r216318
2014-10-16 12:42:41 +00:00
Oleg Endo f6d2e222bc re PR target/63260 ([SH] fabs, fneg do not need fp-mode setting and do not use fpscr)
gcc/testsuite/
	PR target/63260
	* gcc.target/sh/pr63260.c: Fix typo __builtin_fabs vs. __builtin_abs.

From-SVN: r216317
2014-10-16 12:32:24 +00:00
Richard Biener 745583f953 re PR c/63554 (ice in "execute_todo, at passes.c:1797" with -O3)
2014-10-16  Richard Biener  <rguenther@suse.de>

	PR middle-end/63554
	* builtins.c (fold_builtin_4): Do not call fold_builtin_strncat_chk.
	(fold_builtin_strncat_chk): Move ...
	* gimple-fold.c (gimple_fold_builtin_strncat_chk): ... here.
	(gimple_fold_builtin): Call gimple_fold_builtin_strncat_chk.

	* gcc.dg/torture/pr63554.c: New testcase.

From-SVN: r216315
2014-10-16 12:25:52 +00:00
Oleg Endo b7359edc20 re PR target/59401 ([SH] GBR addressing mode optimization produces wrong code)
gcc/
	PR target/59401
	* config/sh/sh.h (CALL_REALLY_USED_REGISTERS): Expand macro and set
	GBR to 0.

From-SVN: r216314
2014-10-16 12:21:29 +00:00