138520 Commits

Author SHA1 Message Date
Richard Biener
7ac5a14092 re PR middle-end/66251 (ICE in vect_get_vec_def_for_operand, at tree-vect-stmts.c:1484)
2015-05-22  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/66251
	* tree-vect-stmts.c (vectorizable_conversion): Properly
	set STMT_VINFO_VEC_STMT even for the SLP case.

	* gfortran.fortran-torture/compile/pr66251.f90: New testcase.

From-SVN: r223552
2015-05-22 12:34:46 +00:00
Hristian Kirtchev
caef4e579d einfo.adb (Default_Init_Cond_Procedure): Code cleanup.
2015-05-22  Hristian Kirtchev  <kirtchev@adacore.com>

	* einfo.adb (Default_Init_Cond_Procedure): Code cleanup. The
	attribute now applies to the base type.
	(Has_Default_Init_Cond): Now applies to the base type.
	(Has_Inherited_Default_Init_Cond): Now applies to the base type.
	(Set_Default_Init_Cond_Procedure): Code cleanup. The attribute now
	applies to the base type.
	(Set_Has_Default_Init_Cond): Now applies to the base type.
	(Set_Has_Inherited_Default_Init_Cond): Now applies to the base type.
	* exp_ch3.adb (Expand_N_Object_Declaration): No need to use the
	base type when adding a call to the Default_Initial_Condition.

From-SVN: r223551
2015-05-22 14:34:33 +02:00
Hristian Kirtchev
57ae790f79 2015-05-22 Hristian Kirtchev <kirtchev@adacore.com>
* einfo.adb Node36 is now used as Anonymous_Master. Flag253
	is now unused.
	(Anonymous_Master): New routine.
	(Has_Anonymous_Master): Removed.
	(Set_Anonymous_Master): New routine.
	(Set_Has_Anonymous_Master): Removed.
	(Write_Entity_Flags): Remove the output for Has_Anonymous_Maser.
	(Write_Field36_Name): Add output for Anonymous_Master.
	* einfo.ads Add new attribute Anonymous_Master along with
	occurrences in nodes. Remove attribute Has_Anonymous_Master along
	with occurrences in nodes.
	(Anonymous_Master): New routine along with pragma Inline.
	(Has_Anonymous_Master): Removed along with pragma Inline.
	(Set_Anonymous_Master): New routine along with pragma Inline.
	(Set_Has_Anonymous_Master): Removed along with pragma Inline.
	* exp_ch4.adb (Create_Anonymous_Master): New routine.
	(Current_Anonymous_Master): Reimplemented.

From-SVN: r223550
2015-05-22 14:32:55 +02:00
Bob Duff
a79cdb2c62 freeze.adb (Freeze_Profile): Suppress warning if imported subprogram is not at library level.
2015-05-22  Bob Duff  <duff@adacore.com>

	* freeze.adb (Freeze_Profile): Suppress warning if imported
	subprogram is not at library level.

From-SVN: r223549
2015-05-22 14:31:03 +02:00
Arnaud Charlet
db222eadb1 [multiple changes]
2015-05-22  Robert Dewar  <dewar@adacore.com>

	* sem_ch8.adb (Analyze_Object_Renaming): Check for renaming
	component of an object to which Volatile_Full_Access applies.

2015-05-22  Jerome Guitton  <guitton@adacore.com>

	* exp_dbug.ads: Add note about non bit-packed arrays.

2015-05-22  Eric Botcazou  <ebotcazou@adacore.com>

	* sem_prag.adb: Fix typo.
	* einfo.ads: Grammar fixes in comments.

2015-05-22  Bob Duff  <duff@adacore.com>

	* a-cborma.ads, a-cidlli.ads, a-cimutr.ads, a-ciormu.ads,
	* a-cihase.ads, a-cohama.ads, a-coorse.ads, a-cbhama.ads,
	* a-cborse.ads, a-comutr.ads, a-ciorma.ads, a-cobove.ads,
	* a-coormu.ads, a-convec.ads, a-cohase.ads, a-coinho.ads,
	* a-cbdlli.ads, a-cbmutr.ads, a-cbhase.ads, a-cdlili.ads,
	* a-cihama.ads, a-coinve.ads, a-ciorse.ads, a-coorma.ads,
	* a-coinho-shared.ads (Constant_Reference_Type, Reference_Type):
	Add an initialization expression "raise Program_Error". See,
	for example, RM-A.18.2(148.4).

From-SVN: r223548
2015-05-22 12:53:29 +02:00
Trevor Saunders
a2f45fe669 fix some dates in ChangeLogs
From-SVN: r223547
2015-05-22 10:50:49 +00:00
Robert Dewar
ed05b79007 debug.adb: Update documentation.
2015-05-22  Robert Dewar  <dewar@adacore.com>

	* debug.adb: Update documentation.
	* einfo.ads, einfo.adb (Needs_Typedef): New flag
	* exp_unst.adb (Unnest_Subprogram): Mark AREC types as needing
	typedef's in C.
	* frontend.adb: Update comments.
	* gnat1drv.adb (Adjust_Global_Switches): Set all needed flags
	for -gnatd.V
	* opt.ads (Generate_C_Code): New switch.
	* osint-c.adb (Write_C_File_Info): Removed, not used
	(Write_H_File_Info): Removed, not used
	* osint-c.ads (Write_C_File_Info): Removed, not used
	(Write_H_File_Info): Removed, not used
	* osint.ads (Write_Info): Minor comment updates.
	(Output_FD): Moved from private part to public part of spec.
	* sem.adb (Semantics): Force expansion on if in Generate_C_Code
	mode.
	* atree.ads: minor typo in comment.
	* sem_prag.adb (Process_Atomic_Independent_Shared_Volatile):
	Do not allow VFA on composite object with aliased component.

From-SVN: r223546
2015-05-22 12:50:19 +02:00
Arnaud Charlet
6eb187f6f3 [multiple changes]
2015-05-22  Arnaud Charlet  <charlet@adacore.com>

	* osint-c.adb, osint-c.ads (Set_File_Name): Move back to spec.

2015-05-22  Pascal Obry  <obry@adacore.com>

	* prj-util.adb: Minor comment editing.

From-SVN: r223545
2015-05-22 12:42:23 +02:00
Arnaud Charlet
10af62127a Minor reformatting.
From-SVN: r223544
2015-05-22 12:40:27 +02:00
Pascal Obry
65467a8a46 makeutl.ads (In_Place_Option): New constant.
2015-05-22  Pascal Obry  <obry@adacore.com>

	* makeutl.ads (In_Place_Option): New constant.
	* prj.ads (Obj_Root_Dir): New variable (absolute path to relocate
	objects).
	(Root_Src_Tree): New variable (absolute path of root source tree).
	* prj-conf.adb (Do_Autoconf): Take into account the object root
	directory (if defined) to generate configuration project.
	* prj-nmsc.adb (Get_Directories): Handle case where Obj_Root_Dir
	is defined.
	(Locate_Directory): Likewise.

From-SVN: r223543
2015-05-22 12:40:07 +02:00
Pascal Obry
01099e0465 prj-util.ads, [...] (Relative_Path): New routine.
2015-05-22  Pascal Obry  <obry@adacore.com>

	* prj-util.ads, prj-util.adb (Relative_Path): New routine.

From-SVN: r223542
2015-05-22 12:38:07 +02:00
Bob Duff
ca81124179 exp_utils.ads, [...] (Find_Optional_Prim_Op): New interface to return Empty when not found...
2015-05-22  Bob Duff  <duff@adacore.com>

	* exp_utils.ads, exp_utils.adb (Find_Optional_Prim_Op): New
	interface to return Empty when not found, so we can avoid handling
	Program_Error in that case.
	(Find_Prim_Op): Fix latent bug: raise Program_Error when there are no
	primitives.
	* exp_ch7.adb, sem_util.adb: Use Find_Optional_Prim_Op when the
	code is expecting Empty.
	* sem_ch8.adb: Use Find_Optional_Prim_Op to avoid handling
	Program_Error.

From-SVN: r223541
2015-05-22 12:36:56 +02:00
Robert Dewar
a95f708ec3 sem_ch3.adb, [...]: Remove incorrect hyphen in non-binary.
2015-05-22  Robert Dewar  <dewar@adacore.com>

	* sem_ch3.adb, sem_intr.adb, exp_ch4.adb, s-rannum.adb,
	sem_eval.adb, s-fatgen.adb, s-expmod.ads: Remove incorrect hyphen in
	non-binary.
	* exp_util.adb: Add comment.
	* osint-c.ads, osint-c.adb (Set_Library_Info_Name): Move from spec to
	body.
	(Set_File_Name): New name for the above.
	(Create_C_File, Create_H_File, Write_C_File_Info, Write_H_File_Info,
	Close_C_File, Close_H_File): New procedure.
	* osint.adb: Minor reformatting.
	* osint.ads: Minor comment updates.

From-SVN: r223540
2015-05-22 12:35:33 +02:00
Robert Dewar
c2b2b2d7ab exp_ch4.adb: Minor rewording.
2015-05-22  Robert Dewar  <dewar@adacore.com>

	* exp_ch4.adb: Minor rewording.
	* exp_util.ads: Clarify that Find_Prim_Op is only for
	tagged types.

From-SVN: r223539
2015-05-22 12:32:15 +02:00
Robert Dewar
b502ba3c7b atree.adb, [...]: Change name Needs_Actuals_Check to Check_Actuals.
2015-05-22  Robert Dewar  <dewar@adacore.com>

	* atree.adb, atree.ads, treepr.adb: Change name Needs_Actuals_Check to
	Check_Actuals.
	* exp_ch4.adb (Expand_N_Op_Expon): Optimize 2**x in modular
	and overflow cases.

From-SVN: r223538
2015-05-22 12:30:37 +02:00
Arnaud Charlet
fd95743405 [multiple changes]
2015-05-22  Eric Botcazou  <ebotcazou@adacore.com>

	* exp_pakd.adb (Install_PAT): Propagate representation aspects
	from the original array type to the PAT.

2015-05-22  Robert Dewar  <dewar@adacore.com>

	* treepr.adb (Print_Node_Header): Add output of Needs_Actuals_Check.

From-SVN: r223537
2015-05-22 12:28:06 +02:00
Robert Dewar
a02c5a694e atree.adb, atree.ads (Needs_Actuals_Check): New flag.
2015-05-22  Robert Dewar  <dewar@adacore.com>

	* atree.adb, atree.ads (Needs_Actuals_Check): New flag.

From-SVN: r223536
2015-05-22 12:25:20 +02:00
Hristian Kirtchev
7a391e42e7 sem_prag.adb (Analyze_Pragma): Remove the detection of a useless Part_Of indicator when...
2015-05-22  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_prag.adb (Analyze_Pragma): Remove the detection
	of a useless Part_Of indicator when the related item is a constant.
	(Check_Matching_Constituent): Do not emit an error on a constant.
	(Check_Missing_Part_Of): Do not check for a missing Part_Of indicator
	when the related item is a constant.
	(Collect_Body_States): Code cleanup.
	(Collect_Visible_States): Code cleanup.
	(Report_Unused_States): Do not emit an error on a constant.
	* sem_util.ads, sem_util.adb (Has_Variable_Input): Removed.

From-SVN: r223535
2015-05-22 12:23:39 +02:00
Arnaud Charlet
c2cfccb1cf [multiple changes]
2015-05-22  Eric Botcazou  <ebotcazou@adacore.com>

	* sem_ch8.adb (Analyze_Object_Renaming): Copy
	Has_Volatile_Full_Access from renamed to renaming entities.
	* sem_prag.adb (Process_Atomic_Independent_Shared_Volatile):
	Tidy up and remove redundant setting of Has_Volatile_Full_Access.

2015-05-22  Hristian Kirtchev  <kirtchev@adacore.com>

	* ghost.adb (Check_Ghost_Completion): Update references to SPARK
	RM 6.9 rules.
	(Check_Ghost_Policy): Update references to SPARK RM 6.9 rules.
	* sem_ch3.adb (Analyze_Object_Declaration): Update references
	to SPARK RM 6.9 rules.
	(Check_Completion): Ghost entities do not require a special form of
	completion.
	* sem_ch6.adb (Analyze_Generic_Subprogram_Body): Update references
	to SPARK RM 6.9 rules.
	(Analyze_Subprogram_Body_Helper): Update references to SPARK RM 6.9
	rules.
	* sem_ch7.adb (Analyze_Package_Body_Helper): Update references
	to SPARK RM 6.9 rules.
	(Requires_Completion_In_Body): Ghost entities do not require a special
	form of completion.

2015-05-22  Robert Dewar  <dewar@adacore.com>

	* a-csquin.ads: Use Ada 2012 notation.
	* sem_ch8.adb: Minor reformatting.

2015-05-22  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_ch13.adb (Analyze_Aspect_Specifications): Aspect Import
	acts as a completion.

From-SVN: r223534
2015-05-22 12:20:00 +02:00
Arnaud Charlet
30fc80cfa6 [multiple changes]
2015-05-22  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch13.adb: Minor reformatting.

2015-05-22  Jose Ruiz  <ruiz@adacore.com>

	* a-reatim.adb: Minor change, fix typo.

From-SVN: r223533
2015-05-22 12:15:47 +02:00
Robert Dewar
90d6b7bc3a sem_util.ads: Minor addition of ??? comment.
2015-05-22  Robert Dewar  <dewar@adacore.com>

	* sem_util.ads: Minor addition of ??? comment.
	* sem_prag.adb, sem_util.adb: Minor reformatting.
	* sem_ch13.adb: minor reformatting.

From-SVN: r223532
2015-05-22 12:14:35 +02:00
Arnaud Charlet
eb9008b755 [multiple changes]
2015-05-22  Robert Dewar  <dewar@adacore.com>

	* a-reatim.ads: Add Compile_Time_Error to ensure Duration
	is 64-bits.
	* sem_ch13.adb: Improve error message.
	* exp_ch4.adb: Minor reformatting.

2015-05-22  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_prag.adb (Analyze_Pragma): Constants without variable
	input do not require indicator Part_Of.
	(Check_Missing_Part_Of): Constants without variable input do not
	requrie indicator Part_Of.
	(Collect_Visible_States): Constants without variable input are
	not part of the hidden state of a package.
	* sem_util.ads, sem_util.adb (Has_Variable_Input): New routine.

From-SVN: r223531
2015-05-22 12:11:36 +02:00
Marek Polacek
b7f016cb22 * doc/extend.texi: Use @pxref instead of @xref.
From-SVN: r223530
2015-05-22 09:27:35 +00:00
Aditya Kumar
9dbe0d83c8 gimple.h (gimple_expr_type): Refactor to make it concise.
2015-05-22  hiraditya  <hiraditya@msn.com>

        * gimple.h (gimple_expr_type): Refactor to make it concise.
        Remove redundant if.

From-SVN: r223529
2015-05-22 09:10:29 +00:00
Richard Biener
476c12802d re PR ipa/65701 (r221530 makes 187.facerec drop with -Ofast -flto on bdver2)
2015-05-22  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/65701
	* tree-vect-data-refs.c (vect_enhance_data_refs_alignment):
	Move peeling cost models into one place.  Peel for alignment
	for single loads only if an aligned load is cheaper than
	an unaligned load.

From-SVN: r223528
2015-05-22 09:08:46 +00:00
Marek Polacek
fd5c817a24 re PR c/47043 (allow deprecating enum values)
PR c/47043
	* c-common.c (handle_deprecated_attribute): Allow CONST_DECL.

	* c-parser.c (c_parser_enum_specifier): Parse and apply enumerator
	attributes.

	* cp-tree.h (build_enumerator): Update declaration.
	* decl.c (build_enumerator): Add attributes parameter.  Call
	cplus_decl_attributes.
	* init.c (constant_value_1): Pass tf_none to mark_used.
	* parser.c (cp_parser_enumerator_definition): Parse attributes and
	pass them down to build_enumerator.
	* pt.c (tsubst_enum): Pass decl attributes to build_enumerator.
	* semantics.c (finish_id_expression): Don't warn_deprecated_use here.

	* doc/extend.texi (Enumerator Attributes): New section.
	Document syntax of enumerator attributes.

	* c-c++-common/attributes-enum-1.c: New test.
	* c-c++-common/attributes-enum-2.c: New test.
	* g++.dg/cpp0x/attributes-enum-1.C: New test.
	* g++.dg/cpp1y/attributes-enum-1.C: New test.

Co-Authored-By: Edward Smith-Rowland <3dw4rd@verizon.net>

From-SVN: r223527
2015-05-22 09:07:31 +00:00
Richard Biener
afbe632536 tree-vect-loop.c (get_reduction_op): New function.
2015-05-22  Richard Biener  <rguenther@suse.de>

	* tree-vect-loop.c (get_reduction_op): New function.
	(vect_model_reduction_cost): Use it, add reduc_index parameter.
	Make ready for BB reductions.
	(vect_create_epilog_for_reduction): Use get_reduction_op.
	(vectorizable_reduction): Init reduc_index to a valid value.
	Adjust vect_model_reduction_cost call.
	* tree-vect-slp.c (vect_get_constant_vectors): Use the proper
	operand for reduction defaults.  Add SAD_EXPR support.
	Assert we have a neutral op for SLP reductions.
	* tree-vect-stmts.c (vect_mark_stmts_to_be_vectorized): When
	walking pattern stmt ops only recurse to SSA names.

From-SVN: r223526
2015-05-22 09:00:28 +00:00
Richard Biener
328dc4771b tree-vect-patterns.c (vect_recog_dot_prod_pattern): Replace assert with guard, remove check on detected reduction.
2015-05-22  Richard Biener  <rguenther@suse.de>

	* tree-vect-patterns.c (vect_recog_dot_prod_pattern): Replace
	assert with guard, remove check on detected reduction.
	(vect_recog_sad_pattern): Likewise.
	(vect_recog_widen_sum_pattern): Likewise.

From-SVN: r223525
2015-05-22 08:55:59 +00:00
Arnaud Charlet
6333ad3d45 [multiple changes]
2015-05-21  Robert Dewar  <dewar@adacore.com>

	* exp_util.adb (Activate_Atomic_Synchronization): Do not set
	Atomic_Sync_Required for an object renaming declaration.
	* sem_ch8.adb (Analyze_Object_Renaming): Copy Is_Atomic and
	Is_Independent to renaming object.

2015-05-21  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch5.adb (Analyze_Iterator_Specification): Diagnose
	various illegalities in iterators over arrays and containers:
	a) New function Get_Cursor_Type, to verify that the cursor is
	not a limited type at the point of iteration.
	b) If the container is a constant, an element_iterator is illegal
	if the container type does not have a Constant_Indexing aspect.
	c) If the iterate function has an in-out controlling parameter,
	the container cannot be a constant object.
	d) Reject additional cases of iterators over a
	discriminant-dependent component of a mutable object.

From-SVN: r223524
2015-05-22 10:52:17 +02:00
Kyrylo Tkachov
44ae5cd22f [AArch64] Add __extension__ and __always_inline__ to crypto intrinsics
* config/aarch64/arm_neon.h (vaeseq_u8): Add __extension__ and
	__always_inline__ attribute.
	(vaesdq_u8): Likewise.
	(vaesmcq_u8): Likewise.
	(vaesimcq_u8): Likewise.
	(vsha1cq_u32): Likewise.
	(vsha1mq_u32): Likewise.
	(vsha1pq_u32): Likewise.
	(vsha1h_u32): Likewise.
	(vsha1su0q_u32): Likewise.
	(vsha1su1q_u32): Likewise.
	(vsha256hq_u32): Likewise.
	(vsha256h2q_u32): Likewise.
	(vsha256su0q_u32): Likewise.
	(vsha256su1q_u32): Likewise.
	(vmull_p64): Likewise.
	(vmull_high_p64): Likewise.

From-SVN: r223523
2015-05-22 08:21:22 +00:00
Trevor Saunders
d87834de87 always define HAVE_peephole
gcc/ChangeLog:

2015-05-20  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* final.c (final_scan_insn): Don't check HAVE_peephole with the
	preprocessor.
	* output.h: Likewise.
	* genconfig.c (main): Alwways define HAVE_peephole.
	* genpeep.c: Don't emit checks of HAVE_peephole.

From-SVN: r223519
2015-05-22 01:04:24 +00:00
Trevor Saunders
692e031294 remove #if HAVE_conditional_move
gcc/ChangeLog:

2015-05-20  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* combine.c, expmed.c, expr.c, optabs.c optabs.h, toplev.c: DOn't
	check HAVE_conditional_move with the preprocessor.

From-SVN: r223518
2015-05-22 01:04:17 +00:00
Trevor Saunders
759df569f1 always define HAVE_conditional_move
gcc/ChangeLog:

2015-05-20  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* genconfig.c (main): Always define HAVE_conditional_move.
	* combine.c, expmed.c, expr.c, ifcvt.c, optabs.c, optabs.h,
	toplev.c, tree-ssa-phiopt.c: Don't check if HAVE_conditional_move
	is defined.

From-SVN: r223517
2015-05-22 01:04:09 +00:00
Trevor Saunders
3f393fc679 don't compare ARG_FRAME_POINTER_REGNUM and FRAME_POINTER_REGNUM with the preprocessor
gcc/ChangeLog:

2015-05-20  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* combine.c, df-problems.c, df-scan.c, emit-rtl.c, reginfo.c,
	reload.c, rtlanal.c: Remove comparison of ARG_FRAME_POINTER_REGNUM
	and FRAME_POINTER_REGNUM with the preprocessor.

From-SVN: r223516
2015-05-22 01:03:59 +00:00
Trevor Saunders
dfed696157 move default for STACK_PUSH_CODE to defaults.h
gcc/ChangeLog:

2015-05-20  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* defaults.h: Add default for STACK_PUSH_CODE.
	* expr.c: Don't redefine STACK_PUSH_CODE.
	* recog.c: Likewise.

From-SVN: r223515
2015-05-22 01:03:51 +00:00
Trevor Saunders
581edfa33d remove most ifdef STACK_GROWS_DOWNWARD
gcc/c-family/ChangeLog:

2015-05-20  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* c-cppbuiltin.c (c_cpp_builtins): Use if instead of #if with
	STACK_GROWS_DOWNWARD.

gcc/ChangeLog:

2015-05-20  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* builtins.c, dwarf2cfi.c, explow.c, expr.c, recog.c,
	sched-deps.c: Use if instead of preprocessor checks with
	STACK_GROWS_DOWNWARD.

From-SVN: r223514
2015-05-22 01:03:42 +00:00
Trevor Saunders
62f9f30bfb always define STACK_GROWS_DOWNWARD
gcc/c-family/ChangeLog:

2015-05-20  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* c-cppbuiltin.c (c_cpp_builtins): Check the value of
	STACK_GROWS_DOWNWARD rather than if it is defined.

gcc/ChangeLog:

2015-05-20  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* *.c: Check the value of STACK_GROWS_DOWNWARD rather than if it
	is defined.
	* config/**/*.h: Define STACK_GROWS_DOWNWARD to an integer.
	* defaults.h: Provide default for STACK_GROWS_DOWNWARD.
	* doc/tm.texi.in: Update references to STACK_GROWS_DOWNWARD.
	* doc/tm.texi: Regenerate.

From-SVN: r223513
2015-05-22 01:03:11 +00:00
GCC Administrator
47d30549f5 Daily bump.
From-SVN: r223512
2015-05-22 00:16:18 +00:00
Sandra Loosemore
a506dee682 simd.exp: Skip all tests if no arm_neon_ok effective target support.
2015-05-21  Sandra Loosemore  <sandra@codesourcery.com>

	gcc/testsuite/
	* gcc.target/arm/simd/simd.exp: Skip all tests if no arm_neon_ok
	effective target support.  If no arm_neon_hw support, do not attempt
	to execute the tests; only compile them.
	* gcc.target/arm/simd/vextf32_1.c: Remove explicit "dg-do run"
	and "dg-require-effective-target arm_neon_ok".
	* gcc.target/arm/simd/vextp16_1.c: Likewise.
	* gcc.target/arm/simd/vextp64_1.c: Likewise.
	* gcc.target/arm/simd/vextp8_1.c: Likewise.
	* gcc.target/arm/simd/vextQf32_1.c: Likewise.
	* gcc.target/arm/simd/vextQp16_1.c: Likewise.
	* gcc.target/arm/simd/vextQp64_1.c: Likewise.
	* gcc.target/arm/simd/vextQp8_1.c: Likewise.
	* gcc.target/arm/simd/vextQs16_1.c: Likewise.
	* gcc.target/arm/simd/vextQs32_1.c: Likewise.
	* gcc.target/arm/simd/vextQs64_1.c: Likewise.
	* gcc.target/arm/simd/vextQs8_1.c: Likewise.
	* gcc.target/arm/simd/vextQu16_1.c: Likewise.
	* gcc.target/arm/simd/vextQu32_1.c: Likewise.
	* gcc.target/arm/simd/vextQu64_1.c: Likewise.
	* gcc.target/arm/simd/vextQu8_1.c: Likewise.
	* gcc.target/arm/simd/vexts16_1.c: Likewise.
	* gcc.target/arm/simd/vexts32_1.c: Likewise.
	* gcc.target/arm/simd/vexts64_1.c: Likewise.
	* gcc.target/arm/simd/vexts8_1.c: Likewise.
	* gcc.target/arm/simd/vextu16_1.c: Likewise.
	* gcc.target/arm/simd/vextu32_1.c: Likewise.
	* gcc.target/arm/simd/vextu64_1.c: Likewise.
	* gcc.target/arm/simd/vextu8_1.c: Likewise.
	* gcc.target/arm/simd/vrev16p8_1.c: Likewise.
	* gcc.target/arm/simd/vrev16qp8_1.c: Likewise.
	* gcc.target/arm/simd/vrev16qs8_1.c: Likewise.
	* gcc.target/arm/simd/vrev16qu8_1.c: Likewise.
	* gcc.target/arm/simd/vrev16s8_1.c: Likewise.
	* gcc.target/arm/simd/vrev16u8_1.c: Likewise.
	* gcc.target/arm/simd/vrev32p16_1.c: Likewise.
	* gcc.target/arm/simd/vrev32p8_1.c: Likewise.
	* gcc.target/arm/simd/vrev32qp16_1.c: Likewise.
	* gcc.target/arm/simd/vrev32qp8_1.c: Likewise.
	* gcc.target/arm/simd/vrev32qs16_1.c: Likewise.
	* gcc.target/arm/simd/vrev32qs8_1.c: Likewise.
	* gcc.target/arm/simd/vrev32qu16_1.c: Likewise.
	* gcc.target/arm/simd/vrev32qu8_1.c: Likewise.
	* gcc.target/arm/simd/vrev32s16_1.c: Likewise.
	* gcc.target/arm/simd/vrev32s8_1.c: Likewise.
	* gcc.target/arm/simd/vrev32u16_1.c: Likewise.
	* gcc.target/arm/simd/vrev32u8_1.c: Likewise.
	* gcc.target/arm/simd/vrev64f32_1.c: Likewise.
	* gcc.target/arm/simd/vrev64p16_1.c: Likewise.
	* gcc.target/arm/simd/vrev64p8_1.c: Likewise.
	* gcc.target/arm/simd/vrev64qf32_1.c: Likewise.
	* gcc.target/arm/simd/vrev64qp16_1.c: Likewise.
	* gcc.target/arm/simd/vrev64qp8_1.c: Likewise.
	* gcc.target/arm/simd/vrev64qs16_1.c: Likewise.
	* gcc.target/arm/simd/vrev64qs32_1.c: Likewise.
	* gcc.target/arm/simd/vrev64qs8_1.c: Likewise.
	* gcc.target/arm/simd/vrev64qu16_1.c: Likewise.
	* gcc.target/arm/simd/vrev64qu32_1.c: Likewise.
	* gcc.target/arm/simd/vrev64qu8_1.c: Likewise.
	* gcc.target/arm/simd/vrev64s16_1.c: Likewise.
	* gcc.target/arm/simd/vrev64s32_1.c: Likewise.
	* gcc.target/arm/simd/vrev64s8_1.c: Likewise.
	* gcc.target/arm/simd/vrev64u16_1.c: Likewise.
	* gcc.target/arm/simd/vrev64u32_1.c: Likewise.
	* gcc.target/arm/simd/vrev64u8_1.c: Likewise.
	* gcc.target/arm/simd/vtrnf32_1.c: Likewise.
	* gcc.target/arm/simd/vtrnp16_1.c: Likewise.
	* gcc.target/arm/simd/vtrnp8_1.c: Likewise.
	* gcc.target/arm/simd/vtrnqf32_1.c: Likewise.
	* gcc.target/arm/simd/vtrnqp16_1.c: Likewise.
	* gcc.target/arm/simd/vtrnqp8_1.c: Likewise.
	* gcc.target/arm/simd/vtrnqs16_1.c: Likewise.
	* gcc.target/arm/simd/vtrnqs32_1.c: Likewise.
	* gcc.target/arm/simd/vtrnqs8_1.c: Likewise.
	* gcc.target/arm/simd/vtrnqu16_1.c: Likewise.
	* gcc.target/arm/simd/vtrnqu32_1.c: Likewise.
	* gcc.target/arm/simd/vtrnqu8_1.c: Likewise.
	* gcc.target/arm/simd/vtrns16_1.c: Likewise.
	* gcc.target/arm/simd/vtrns32_1.c: Likewise.
	* gcc.target/arm/simd/vtrns8_1.c: Likewise.
	* gcc.target/arm/simd/vtrnu16_1.c: Likewise.
	* gcc.target/arm/simd/vtrnu32_1.c: Likewise.
	* gcc.target/arm/simd/vtrnu8_1.c: Likewise.
	* gcc.target/arm/simd/vuzpf32_1.c: Likewise.
	* gcc.target/arm/simd/vuzpp16_1.c: Likewise.
	* gcc.target/arm/simd/vuzpp8_1.c: Likewise.
	* gcc.target/arm/simd/vuzpqf32_1.c: Likewise.
	* gcc.target/arm/simd/vuzpqp16_1.c: Likewise.
	* gcc.target/arm/simd/vuzpqp8_1.c: Likewise.
	* gcc.target/arm/simd/vuzpqs16_1.c: Likewise.
	* gcc.target/arm/simd/vuzpqs32_1.c: Likewise.
	* gcc.target/arm/simd/vuzpqs8_1.c: Likewise.
	* gcc.target/arm/simd/vuzpqu16_1.c: Likewise.
	* gcc.target/arm/simd/vuzpqu32_1.c: Likewise.
	* gcc.target/arm/simd/vuzpqu8_1.c: Likewise.
	* gcc.target/arm/simd/vuzps16_1.c: Likewise.
	* gcc.target/arm/simd/vuzps32_1.c: Likewise.
	* gcc.target/arm/simd/vuzps8_1.c: Likewise.
	* gcc.target/arm/simd/vuzpu16_1.c: Likewise.
	* gcc.target/arm/simd/vuzpu32_1.c: Likewise.
	* gcc.target/arm/simd/vuzpu8_1.c: Likewise.
	* gcc.target/arm/simd/vzipf32_1.c: Likewise.
	* gcc.target/arm/simd/vzipp16_1.c: Likewise.
	* gcc.target/arm/simd/vzipp8_1.c: Likewise.
	* gcc.target/arm/simd/vzipqf32_1.c: Likewise.
	* gcc.target/arm/simd/vzipqp16_1.c: Likewise.
	* gcc.target/arm/simd/vzipqp8_1.c: Likewise.
	* gcc.target/arm/simd/vzipqs16_1.c: Likewise.
	* gcc.target/arm/simd/vzipqs32_1.c: Likewise.
	* gcc.target/arm/simd/vzipqs8_1.c: Likewise.
	* gcc.target/arm/simd/vzipqu16_1.c: Likewise.
	* gcc.target/arm/simd/vzipqu32_1.c: Likewise.
	* gcc.target/arm/simd/vzipqu8_1.c: Likewise.
	* gcc.target/arm/simd/vzips16_1.c: Likewise.
	* gcc.target/arm/simd/vzips32_1.c: Likewise.
	* gcc.target/arm/simd/vzips8_1.c: Likewise.
	* gcc.target/arm/simd/vzipu16_1.c: Likewise.
	* gcc.target/arm/simd/vzipu32_1.c: Likewise.
	* gcc.target/arm/simd/vzipu8_1.c: Likewise.

From-SVN: r223508
2015-05-21 19:02:18 -04:00
Sandra Loosemore
413238194d bb-slp-pr65935.c: Remove explicit "dg-do run".
2015-05-21  Sandra Loosemore  <sandra@codesourcery.com>

	gcc/testsuite/
	* gcc.dg/vect/bb-slp-pr65935.c: Remove explicit "dg-do run".
	* gcc.dg/vect/pr59354.c: Likewise.
	* gcc.dg/vect/pr64252.c: Likewise.
	* gcc.dg/vect/pr64404.c: Likewise.
	* gcc.dg/vect/pr64493.c: Likewise.
	* gcc.dg/vect/pr64495.c: Likewise.
	* gcc.dg/vect/pr64844.c: Likewise.
	* gcc.dg/vect/pr65518.c: Likewise.
	* gcc.dg/vect/vect-aggressive-1.c: Likewise.

From-SVN: r223507
2015-05-21 19:00:32 -04:00
Paolo Carlini
e5ab6728fb re PR c++/66210 (Variable template specialization does not work with alias-declarations)
2015-05-21  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/66210
	* g++.dg/cpp1y/var-templ28.C: New.

From-SVN: r223506
2015-05-21 22:39:32 +00:00
H.J. Lu
f70d27e03b Allow indirect branch via GOT slot for x32
X32 doesn't support indirect branch via 32-bit memory slot since
indirect branch will load 64-bit address from 64-bit memory slot.
Since x32 GOT slot is 64-bit, we should allow indirect branch via GOT
slot for x32.

gcc/

	PR target/66232
	* config/i386/constraints.md (Bg): New constraint for GOT memory
	operand.
	* config/i386/i386.md (*call_got_x32): New pattern.
	(*call_value_got_x32): Likewise.
	* config/i386/predicates.md (GOT_memory_operand): New predicate.

gcc/testsuite/

	PR target/66232
	* gcc.target/i386/pr66232-1.c: New test.
	* gcc.target/i386/pr66232-2.c: Likewise.
	* gcc.target/i386/pr66232-3.c: Likewise.
	* gcc.target/i386/pr66232-4.c: Likewise.
	* gcc.target/i386/pr66232-5.c: Likewise.

From-SVN: r223505
2015-05-21 14:58:57 -07:00
Nathan Sidwell
9ab2fcc16d re PR c++/60943 ([C++14] Return type deduction interferes with ref-qualifiers)
cp/
	PR c++/60943
	* decl2.c (change_return_type): Propagate FUNCTION_REF_QUALIFIED.

	testsuite/
	* g++.dg/cpp1y/pr60943.C: New.

From-SVN: r223502
2015-05-21 20:50:45 +00:00
Jakub Jelinek
d51a6714b9 re PR tree-optimization/66233 (internal compiler error: in expand_fix, at optabs.c:5358)
PR tree-optimization/66233
	* match.pd (ocvt (icvt@1 @0)): Don't handle vector types.
	Simplify.

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

From-SVN: r223500
2015-05-21 21:17:28 +02:00
Thomas Koenig
c39d5e4a6a re PR fortran/66176 (Handle conjg() in inline matmul)
2015-05-21  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/66176
	* frontend-passes.c (check_conjg_variable):  New function.
	(inline_matmul_assign):  Use it to keep track of conjugated
	variables.

2015-05-21  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/66176
	* gfortran.dg/inline_matmul_11.f90:  New test

From-SVN: r223499
2015-05-21 19:00:45 +00:00
Andreas Tobler
2aa3880198 pr32219-1.c: Use 'dg-require-effective-target pie' instead of listing several targets on its own.
2015-05-21  Andreas Tobler  <andreast@gcc.gnu.org>

    * gcc.target/i386/pr32219-1.c: Use 'dg-require-effective-target pie'
    instead of listing several targets on its own.
    * gcc.target/i386/pr32219-2.c: Likewise.
    * gcc.target/i386/pr32219-3.c: Likewise.
    * gcc.target/i386/pr32219-4.c: Likewise.
    * gcc.target/i386/pr32219-5.c: Likewise.
    * gcc.target/i386/pr32219-6.c: Likewise
    * gcc.target/i386/pr32219-7.c: Likewise.
    * gcc.target/i386/pr32219-8.c: Likewise.
    * gcc.target/i386/pr39013-1.c: Likewise.
    * gcc.target/i386/pr39013-2.c: Likewise.
    * gcc.target/i386/pr64317.c: Likewise.

From-SVN: r223498
2015-05-21 20:13:06 +02:00
David Edelsohn
9846edffa4 inclhack.def (aix_externc): New fix.
* inclhack.def (aix_externc): New fix.
	(aix_externcpp[12]): New fix.
	* fixincl.x: Regenerate.
	* test/base/ctype.h [AIX_EXTERNC_CHECK]: New test.
	* test/base/sys/socket.h [AIX_EXTERNCPP[12]_CHECK]: New test.
	* test/base/fcntl.h: New file.

From-SVN: r223497
2015-05-21 13:25:00 -04:00
David Edelsohn
e3592e196a re PR target/66224 (PowerPC _GLIBCXX_READ_MEM_BARRIER too weak)
PR target/66224
        * config/cpu/powerpc/atomic_word.h (_GLIBCXX_READ_MEM_BARRIER):
        Don't use isync. Use lwsync if available.
        * configure.host (atomic_word_dir) [aix[56789]*]: Delete to use
        powerpc cpu definition.

From-SVN: r223496
2015-05-21 13:18:25 -04:00
Jeff Law
f3da537516 pa.md (add-with-constant splitter): Use ASHIFT rather than MULT for shadd sequences.
* config/pa/pa.md (add-with-constant splitter): Use ASHIFT rather
	than MULT for shadd sequences.

	* gcc.target/hppa/shadd-4.c: New test.

From-SVN: r223495
2015-05-21 11:18:16 -06:00
Jason Merrill
65d932637e revert: configure.ac: Add -std=c++98 to stage1_cxxflags.
Revert:
       * configure.ac: Add -std=c++98 to stage1_cxxflags.
       * Makefile.tpl (STAGE1_CXXFLAGS): And substitute it.
       * Makefile.in, configure: Regenerate.

From-SVN: r223494
2015-05-21 13:05:33 -04:00