Commit Graph

128253 Commits

Author SHA1 Message Date
Arnaud Charlet
f29afe5f14 Code clean ups.
From-SVN: r207560
2014-02-06 15:16:52 +01:00
Arnaud Charlet
aa9b151a9e [multiple changes]
2014-02-06  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_prag.adb (Analyze_Refined_Pragma): Remove
	local variable Pack_Spec. Refinement pragmas may now apply to
	bodies of both visible and private subprograms.

2014-02-06  Robert Dewar  <dewar@adacore.com>

	* exp_attr.adb (Expand_Loop_Entry_Attribute):
	Minor change (Attr => N) (Expand_Pred_Succ): New name
	Expand_Pred_Succ_Attribute (Expand_N_Attribute_Reference, case
	Max): Expand into if expression if Modify_Tree_For_C mode.
	(Expand_N_Attribute_Reference, case Min): ditto
	* sinfo.ads: Modify_Tree_For_C takes care of expanding Min and
	Max attributes.

2014-02-06  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch3.adb (Analyze_Object_Declaration): Do not generate
	predicate check if this is an internal declaration with
	No_Initialization set, as for an expanded aggregate component.

2014-02-06  Doug Rupp  <rupp@adacore.com>

	* init.c (__gnat_default_resignal_p) [VMS]: Test for and resignal
	conditions with severity of "SUCCESS" or "INFORMATIONAL".

From-SVN: r207559
2014-02-06 15:15:51 +01:00
Arnaud Charlet
85d6bf87cf [multiple changes]
2014-02-06  Yannick Moy  <moy@adacore.com>

	* sem_prag.adb (Analyze_Pragma): Analyze pragma
	Debug rewritten node before rewriting it as a null statement in
	GNATprove mode.

2014-02-06  Robert Dewar  <dewar@adacore.com>

	* sem_attr.adb (Min_Max): New procedure.
	(Max_Alignment_For_Allocation_Max_Size_In_Storage_Elements): New
	procedure.

From-SVN: r207558
2014-02-06 15:13:53 +01:00
Arnaud Charlet
c3b266d690 2014-02-06 Sergey Rybin <rybin@adacore.com frybin>
* gnat_ugn.texi, vms_data.ads: Add documentation of '-t' option for
	gnatmetric/gnatpp.

2014-02-06  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_prag.adb (Analyze_Abstract_State): Update
	all calls to Create_Abstract_State to pass the proper state
	"declaration".
	(Create_Abstract_State): Add new formal parameter
	State_Decl along with comment on usage. Establish a link between
	the abstract state entity and the state declaration.

From-SVN: r207557
2014-02-06 15:11:59 +01:00
Robert Dewar
428684fd1c sem_attr.adb (Analyze_Attribute, case Max): Check for improper comparison of unordered enumeration type.
2014-02-06  Robert Dewar  <dewar@adacore.com>

	* sem_attr.adb (Analyze_Attribute, case Max): Check for improper
	comparison of unordered enumeration type.
	(Analyze_Attribute, case Max): Check for improper comparison of
	unordered enumeration type.
	* sem_res.adb (Bad_Unordered_Enumeration_Reference): Moved to
	sem_util.adb.
	* sem_util.ads, sem_util.adb (Bad_Unordered_Enumeration_Reference):
	Moved here from Sem_Res.

From-SVN: r207556
2014-02-06 15:09:36 +01:00
Arnaud Charlet
8c35b40a37 [multiple changes]
2014-02-06  Robert Dewar  <dewar@adacore.com>

	* sem_ch3.adb, sem_prag.adb, sem_res.adb, lib-xref.adb: Minor
	reformatting.

2014-02-06  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_ch6.adb (Process_Formals): Error message reformatting.

From-SVN: r207555
2014-02-06 15:04:00 +01:00
Marek Polacek
0a756a3ffc re PR c/60087 (Incorrect column number for -Wsign-compare)
PR c/60087
c-family/
	* c-common.c (warn_for_sign_compare): Call warning_at with location
	instead of warning.
testsuite/
	* gcc.dg/pr60087.c: New test.

From-SVN: r207554
2014-02-06 13:57:37 +00:00
Alan Modra
fdcee33b24 re PR target/60032 (ICE in reload_cse_simplify_operands, at postreload.c:411)
PR target/60032
gcc/
	* config/rs6000/rs6000.c (rs6000_secondary_memory_needed_mode): Only
	change SDmode to DDmode when lra_in_progress.
gcc/testsuite/
	* gcc.target/powerpc/pr60032.c: New.

From-SVN: r207553
2014-02-06 23:55:38 +10:30
Jakub Jelinek
d3ef8c5316 re PR middle-end/59150 (ICE: in expand_one_var, at cfgexpand.c:1242 with -fopenmp)
PR middle-end/59150
	* tree-vect-data-refs.c (vect_analyze_data_refs): For clobbers, call
	free_data_ref on the dr first, and before goto again also set dr
	to the next dr.  For simd_lane_access, free old datarefs[i] before
	overwriting it.  For get_vectype_for_scalar_type failure, don't
	free_data_ref if simd_lane_access.

From-SVN: r207551
2014-02-06 11:59:30 +01:00
Jakub Jelinek
2754b38fd3 * Makefile.in (prefix.o, cppbuiltin.o): Depend on $(BASEVER).
From-SVN: r207550
2014-02-06 11:58:16 +01:00
Jakub Jelinek
251901a027 re PR target/60062 (wrong code (for code with the optimize attribute) at -O1 and above on x86_64-linux-gnu in 32-bit mode)
PR target/60062
	* tree.h (opts_for_fn): New inline function.
	(opt_for_fn): Define.
	* config/i386/i386.c (ix86_function_regparm): Use
	opt_for_fn (decl, optimize) instead of optimize.

	* gcc.c-torture/execute/pr60062.c: New test.
	* gcc.c-torture/execute/pr60072.c: New test.

From-SVN: r207549
2014-02-06 11:54:20 +01:00
Hristian Kirtchev
79b49b879d sem_ch3.adb (Handle_Late_Controlled_Primitive): Add local variable Spec.
2014-02-06  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_ch3.adb (Handle_Late_Controlled_Primitive): Add local
	variable Spec. Do not inherit the null indicator from the
	subprogram body when generating the spec.

From-SVN: r207548
2014-02-06 11:26:32 +01:00
Arnaud Charlet
4446a13faa [multiple changes]
2014-02-06  Robert Dewar  <dewar@adacore.com>

	* casing.adb (Determine_Casing): Consider SPARK_Mode to be
	mixed case.

2014-02-06  Ed Schonberg  <schonberg@adacore.com>

	* exp_ch6.adb (Is_Build_In_Place_Function): Predicate is false
	when the function has a foreign convention, but not if only the
	limited return type has such a convention.

2014-02-06  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_ch3.adb (Handle_Late_Controlled_Primitive): Remove local
	variable Spec. Comment reformatting. Use Copy_Separate_Tree
	rather than New_Copy_Tree when building the corresponding
	subprogram declaration.

2014-02-06  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_prag.adb (Analyze_Global_Item): Remove
	the mode-related checks on abstract states with enabled external
	properties.
	(Property_Error): Removed.

2014-02-06  Javier Miranda  <miranda@adacore.com>

	* lib-xref.adb (Generate_Reference): When
	generating the reference to the first private entity take care
	of handling swapped entities.

From-SVN: r207547
2014-02-06 11:23:17 +01:00
Arnaud Charlet
e09a559856 2014-02-06 Sergey Rybin <rybin@adacore.com frybin>
* gnat_ugn.texi, vms_data.ads: Add documentation of -j option for
	gnatmetric.

2014-02-06  Robert Dewar  <dewar@adacore.com>

	* exp_ch4.adb (Expand_N_Shift_Left): Handle shift counts greater
	than the word size when operating in Modify_Tree_For_C mode.
	* sinfo.ads: Add documentation section on Modify_Tree_For_C mode.

2014-02-06  Robert Dewar  <dewar@adacore.com>

	* erroutc.adb (Warning_Specifically_Suppressed.Matches):
	compare is case insensitive.
	* gnat_rm.texi: Document that string compare for Warnings Off
	is now case insensitive.

From-SVN: r207546
2014-02-06 11:21:40 +01:00
Arnaud Charlet
5216b599a6 [multiple changes]
2014-02-06  Eric Botcazou  <ebotcazou@adacore.com>

	* gnat_rm.texi: Small wording tweak.

2014-02-06  Pascal Obry  <obry@adacore.com>

	* prj-attr.adb, projects.texi, snames.ads-tmpl: Add Included_Patterns
	and Included_Artifact_Patterns attribute definitions.

2014-02-06  Yannick Moy  <moy@adacore.com>

	* sem_ch6.adb (Analyze_Subprogram_Body_Helper): Set
	SPARK_Mode pragma component for all subprograms, including stubs.

2014-02-06  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_ch10.adb (Analyze_Package_Body_Stub): Maintain
	the configuration options of the enclosing context in a
	stack-like fasion.
	(Analyze_Subprogram_Body_Stub): Maintain the
	configuration options of the enclosing context in a stack-like
	fashion.

2014-02-06  Robert Dewar  <dewar@adacore.com>

	* debug.adb: -gnatd.u sets Modify_Tree_For C
	* exp_ch4.adb (Expand_N_Op_Rotate_Left): Expand out
	if Modify_Tree_For_C (Expand_N_Op_Rotate_Right): ditto.
	(Expand_N_Op_Arithmetic_Right_Shift): ditto.
	* exp_intr.adb (Expand_Shift): Call expander so we do
	Modify_Tree_For_C expansions.
	* gnat1drv.adb (Adjust_Global_Switches): Set Modify_Tree_For_C
	if -gnatd.u set.

2014-02-06  Fedor Rybin  <frybin@adacore.com>

	* prj-proc.ads (Tree_Loaded_Callback): new type Callback used
	after the phase 1 of the processing of each aggregated project
	to get access to project trees of aggregated projects.
	(Process_Project_Tree_Phase_1): new parameter On_New_Tree_Loaded
	If specified, On_New_Tree_Loaded is called after each aggregated
	project has been processed succesfully.
	(Process): new parameter On_New_Tree_Loaded.
	* prj-proc.adb (Process_Aggregated_Projects): On_New_Tree_Loaded
	callback added after processing of each aggregated project.
	(Recursive_Process): new parameter On_New_Tree_Loaded.
	(Process): new parameter On_New_Tree_Loaded.
	(Process_Project_Tree_Phase_1): new parameter On_New_Tree_Loaded.
	* prj-conf.ads (Parse_Project_And_Apply_Config): new parameter
	On_New_Tree_Loaded.
	* prj-conf.adb (Parse_Project_And_Apply_Config): new parameter
	On_New_Tree_Loaded.

2014-02-06  Bob Duff  <duff@adacore.com>

	* gnat_ugn.texi: Implement --insert-blank-lines and
	--preserve-blank-lines switches.

From-SVN: r207545
2014-02-06 11:19:06 +01:00
Marcus Shawcroft
4a985a3778 [AArch64] Fix SYMBOL_REF symbol classification.
The symbol classification logic in correctly classifies all
SYMBOL_REF's as SYMBOL_FORCE_TO_MEM, the intention of the code is to
catch only the large memory model case.

From-SVN: r207544
2014-02-06 10:17:18 +00:00
Arnaud Charlet
8c7ff9a02d 2014-02-06 Sergey Rybin <rybin@adacore.com frybin>
* gnat_ugn.texi, vms_data.ads: Add documentation of -j option for
	gnatelim.

2014-02-06  Eric Botcazou  <ebotcazou@adacore.com>

	* gnat_rm.texi (Pragma Optimize_Alignment): Document the effect
	of the pragma on individual objects.

2014-02-06  Hristian Kirtchev  <kirtchev@adacore.com>

	* einfo.adb Node29 is now used as BIP_Initialization_Call.
	(BIP_Initialization_Call): New routine.
	(Set_BIP_Initialization_Call): New routine.
	(Write_Field29_Name): Add an entry for constants and variables.
	* einfo.ads Add new attribute BIP_Initialization_Call and update
	its usage in nodes.
	(BIP_Initialization_Call): New routine along with pragma Inline.
	(Set_BIP_Initialization_Call): New routine along with pragma Inline.
	* exp_ch6.adb (Make_Build_In_Place_Call_In_Object_Declaration):
	Add local declaration Res_Decl. Capture the build-in-place
	initialization call when the related object declaration has
	created a transient block.
	* exp_ch7.adb (Process_Transient_Objects): Add local variable
	Fin_Insrt. Recognize a scenario where an object declaration acts
	as a transient context and is initialized by a build-in-place
	function call.

From-SVN: r207543
2014-02-06 11:13:42 +01:00
Arnaud Charlet
a0367a97c5 [multiple changes]
2014-02-06  Pascal Obry  <obry@adacore.com>

	* prj-util.adb (For_Interface_Sources): Fix handling of required
	bodies for aggregate libs.

2014-02-06  Robert Dewar  <dewar@adacore.com>

	* nlists.ads: Minor comment clarifications.

2014-02-06  Robert Dewar  <dewar@adacore.com>

	* gnat1drv.adb (Adjust_Global_Switches): Set Modify_Tree_For_C
	if gnatd.V set.
	* opt.ads (Modify_Tree_For_C): New flag.
	* output.ads, output.adb (Last_Char): New function.

2014-02-06  Pascal Obry  <obry@adacore.com>

	* projects.texi, prj-env.adb (Initialize_Default_Project_Path): Add
	share/gpr for cross-builds.

From-SVN: r207542
2014-02-06 11:11:07 +01:00
Ian Bolton
ce3904da34 Fix pr59597.c test to work with PIC variants too
From-SVN: r207541
2014-02-06 10:10:41 +00:00
Robert Dewar
155b4fccd4 exp_util.ads, [...]: Minor reformatting and code clean ups.
2014-02-06  Robert Dewar  <dewar@adacore.com>

	* exp_util.ads, checks.adb, sem_prag.adb, prj-util.adb, sem_ch13.adb:
	Minor reformatting and code clean ups.

From-SVN: r207540
2014-02-06 11:08:16 +01:00
Kyrylo Tkachov
c366d38c64 aarch64-cores.def (cortex-a53): Specify CRC32 and crypto support.
2014-02-06  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

	* config/aarch64/aarch64-cores.def (cortex-a53): Specify CRC32
	and crypto support.
	(cortex-a57): Likewise.
	(cortex-a57.cortex-a53): Likewise.

From-SVN: r207539
2014-02-06 10:08:12 +00:00
Pascal Obry
49d8d177c5 prj-util.adb (For_Interface_Sources): Skip non compilable languages.
2014-02-06  Pascal Obry  <obry@adacore.com>

	* prj-util.adb (For_Interface_Sources): Skip non compilable languages.
	* prj.ads: Minor typo fix in comment.

From-SVN: r207538
2014-02-06 11:06:38 +01:00
Arnaud Charlet
8e1e62e3de [multiple changes]
2014-02-06  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_prag.adb (Analyze_Depends_In_Decl_Part): Add
	local variable Expr. Flag clauses with extra parenthesis as this
	is not allowed by the syntax of the pragma. Code reformatting.

2014-02-06  Hristian Kirtchev  <kirtchev@adacore.com>

	* exp_attr.adb (Expand_N_Attribute_Reference): Alphabetize
	variables. Rename variabme Tnn to Temp. Do not create a temporary
	if assertions are disabled. Find enclosing routine _Postconditions
	and insert the temporary that captures the value of the prefix
	before the routine.
	* exp_ch6.adb (Build_Postconditions_Procedure):
	Insert the generated _Postconditions routine
	before the first source declaration of the related
	subprogram.
	(Insert_After_Last_Declaration): Removed.
	(Insert_Before_First_Source_Declaration): New routine.

2014-02-06  Ed Schonberg  <schonberg@adacore.com>

	* exp_util.adb, exp_util.ads (Within_Internal_Subprogram):
	Utility to determine whether current expansion is for the body
	of a predefined primitive operation.
	(Make_Predicate_Check): Use Within_Internal_Subpgram
	* checks.adb (Apply_Predicate_Check): Use
	Within_Internal_Subprogram
	* sem_ch13.adb (Freeze_Entity_Checks): Ditto.

2014-02-06  Pascal Obry  <obry@adacore.com>

	* prj.ads, prj-util.adb: Minor reformatting.

From-SVN: r207537
2014-02-06 11:04:39 +01:00
Arnaud Charlet
cbee4f7497 [multiple changes]
2014-02-06  Ed Schonberg  <schonberg@adacore.com>

	* exp_ch6.adb (Expand_Subprogram_Contract, Append_Enabled_Item):
	Take into account the Split_PPC flag to ensure that conjuncts
	in a composite postcondition aspect are tested in source order.

2014-02-06  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_ch6.adb (Analyze_Generic_Subprogram_Body): Flag illegal
	use of SPARK_Mode.
	* sem_ch12.adb (Analyze_Generic_Subprogram_Declaration): Flag
	illegal use of SPARK_Mode.
	(Instantiate_Subprogram_Body): Flag illegal use of SPARK_Mode.
	* sem_prag.adb (Analyze_Pragma): Code reformatting.
	* sem_util.adb Add with and use clause for Aspects.
	(Check_SPARK_Mode_In_Generic): New routine.
	* sem_util.ads (Check_SPARK_Mode_In_Generic): New routine.

2014-02-06  Thomas Quinot  <quinot@adacore.com>

	* a-calend.adb (Formatting_Operations.Split): Ensure that
	Time_Error is raised for invalid time values.

From-SVN: r207536
2014-02-06 10:58:37 +01:00
Arnaud Charlet
e2ef0ff683 [multiple changes]
2014-02-06  Arnaud Charlet  <charlet@adacore.com>

	* sem_prag.adb (Analyze_Pragma): Rewrite as a null statement
	in GNATprove_Mode.

2014-02-06  Robert Dewar  <dewar@adacore.com>

	* einfo.ads, einfo.adb (Is_Discriminant_Check_Function): New flag.
	* exp_ch3.adb (Build_Dcheck_Function): Set
	Is_Discriminant_Check_Function.

2014-02-06  Hristian Kirtchev  <kirtchev@adacore.com>

	* exp_ch7.adb (Is_Subprogram_Call): Inspect
	the original tree in certain cases where a construct has been
	factored out and replaced by a reference to a temporary.

2014-02-06  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch3.adb (Process_Full_View): Fix typo in the order of
	parameters when propagating predicate function to full view.
	(Find_Type_Of_Object): Freeze base type of object type to catch
	premature use of discriminated private type without a full view.

From-SVN: r207535
2014-02-06 10:56:29 +01:00
Arnaud Charlet
97779c340a [multiple changes]
2014-02-06  Robert Dewar  <dewar@adacore.com>

	* sprint.adb: Minor reformatting.

2014-02-06  Hristian Kirtchev  <kirtchev@adacore.com>

	* exp_ch4.adb (Process_Transient_Object): Add local variable
	Temp_Ins. When the transient object is initialized by an
	aggregate, the hook must capture the object after the last
	component assignment takes place.
	* exp_ch7.adb (Detect_Subprogram_Call): Expose the subprogram to
	routine Is_Subprogram_Call.
	(Is_Subprogram_Call): Inspect an
	aggregate that has been heavily expanded for subprogram calls.
	(Process_Transient_Objects): Add local variables Expr, Ptr_Id
	and Temp_Ins.  Remove the nested declare block and adjust the
	indentation. When the transient object is initialized by an
	aggregate, the hook must capture the object after the last
	component assignment takes place.

2014-02-06  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_prag.adb (Analyze_Global_Item): Detect illegal uses of
	external states with enabled properties that do not match the
	global mode.
	(Property_Error): New routine.
	* sem_res.adb (Property_Error): New routine.
	(Resolve_Actuals): Detect illegal uses of external variables with
	enabled properties in procedure calls that do not match the mode of
	the corresponding formal parameter.

2014-02-06  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_util.adb (Has_Enabled_Property): Rename
	formal parameter Prop_Nam to Property. Update the comment on usage
	and all occurrences in the body. Add local variable Prop_Nam. When
	inspecting a property with an expression, the property name
	appears as the first choice of the component association.

From-SVN: r207534
2014-02-06 10:53:00 +01:00
Yury Gribov
c801e24619 arm.c (arm_vector_alignment_reachable): Check unaligned_access.
2014-02-06  Yury Gribov  <y.gribov@samsung.com>
	    Kugan Vivekanandarajah  <kuganv@linaro.org>

gcc/
	* config/arm/arm.c (arm_vector_alignment_reachable): Check
	unaligned_access.
	* config/arm/arm.c (arm_builtin_support_vector_misalignment): Likewise.

testsuite/
	* gcc.target/arm/vect-noalign.c: New file.

Co-Authored-By: Kugan Vivekanandarajah <kuganv@linaro.org>

From-SVN: r207533
2014-02-06 09:48:15 +00:00
Richard Biener
d50f7b84e3 tree-cfg.c (gimple_duplicate_sese_region): Fix ordering of set_loop_copy and initialize_original_copy_tables.
2014-02-06  Richard Biener  <rguenther@suse.de>

	* tree-cfg.c (gimple_duplicate_sese_region): Fix ordering of
	set_loop_copy and initialize_original_copy_tables.

From-SVN: r207532
2014-02-06 09:41:44 +00:00
Alex Velenko
179d29415e [AArch64] Shift right pattern fix
gcc/

	* config/aarch64/aarch64-simd.md
	(aarch64_ashr_simddi): Change QI to SI.

From-SVN: r207531
2014-02-06 09:27:57 +00:00
Jan Hubicka
78b1469d8b re PR middle-end/60013 (Build of 176.gcc from CPU2000 loops in cc1 starting with r207231)
PR middle-end/60013
	* ipa-inline-analysis.c (compute_bb_predicates): Ensure monotonicity
	of the dataflow.
	* gcc.dg/pr60013.c: New testcase.

Co-Authored-By: Jakub Jelinek <jakub@redhat.com>

From-SVN: r207529
2014-02-06 07:39:24 +00:00
GCC Administrator
d24d2cef4f Daily bump.
From-SVN: r207528
2014-02-06 00:16:40 +00:00
Bill Schmidt
d85f364c76 rs6000.c (altivec_expand_vec_perm_const): Change CODE_FOR_altivec_vpku[hw]um to CODE_FOR_altivec_vpku[hw]um_direct.
2014-02-05  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

	* config/rs6000/rs6000.c (altivec_expand_vec_perm_const): Change
	CODE_FOR_altivec_vpku[hw]um to
	CODE_FOR_altivec_vpku[hw]um_direct.
	* config/rs6000/altivec.md (vec_unpacks_hi_<VP_small_lc>): Change
	UNSPEC_VUNPACK_HI_SIGN to UNSPEC_VUNPACK_HI_SIGN_DIRECT.
	(vec_unpacks_lo_<VP_small_lc>): Change UNSPEC_VUNPACK_LO_SIGN to
	UNSPEC_VUNPACK_LO_SIGN_DIRECT.

From-SVN: r207525
2014-02-05 23:54:57 +00:00
Marek Polacek
7ec4847ad4 re PR c/53123 (Double return statement in c-omp.c source file)
PR c/53123
c-family/
	* c-omp.c (c_finish_omp_atomic): Remove unreachable return
	statement.

From-SVN: r207524
2014-02-05 21:06:56 +00:00
Jan Hubicka
a33a931b5f * gimple-fold.c (can_refer_decl_in_current_unit_p): Default visibility is safe.
From-SVN: r207523
2014-02-05 20:42:37 +00:00
Bill Schmidt
7b1cd42745 altivec.md (altivec_vsum2sws): Adjust code generation for -maltivec=be.
gcc:

2014-02-05  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

	* config/rs6000/altivec.md (altivec_vsum2sws): Adjust code
	generation for -maltivec=be.
	(altivec_vsumsws): Simplify redundant test.

gcc/testsuite:

2014-02-05  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

	* gcc.dg/vmx/sum2s.c: New.
	* gcc.dg/vmx/sum2s-be-order.c: New.

From-SVN: r207521
2014-02-05 20:15:57 +00:00
Bill Schmidt
52a93551af altivec.md (UNSPEC_VPACK_UNS_UNS_MOD_DIRECT): New unspec.
gcc:

2014-02-05  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

	* altivec.md (UNSPEC_VPACK_UNS_UNS_MOD_DIRECT): New unspec.
	(UNSPEC_VUNPACK_HI_SIGN_DIRECT): Likewise.
	(UNSPEC_VUNPACK_LO_SIGN_DIRECT): Likewise.
	(mulv8hi3): Use gen_altivec_vpkuwum_direct instead of
	gen_altivec_vpkuwum.
	(altivec_vpkpx): Test for VECTOR_ELT_ORDER_BIG instead of for
	BYTES_BIG_ENDIAN.
	(altivec_vpks<VI_char>ss): Likewise.
	(altivec_vpks<VI_char>us): Likewise.
	(altivec_vpku<VI_char>us): Likewise.
	(altivec_vpku<VI_char>um): Likewise.
	(altivec_vpku<VI_char>um_direct): New (copy of
	altivec_vpku<VI_char>um that still relies on BYTES_BIG_ENDIAN, for
	internal use).
	(altivec_vupkhs<VU_char>): Emit vupkls* instead of vupkhs* when
	target is little endian and -maltivec=be is not specified.
	(*altivec_vupkhs<VU_char>_direct): New (copy of
	altivec_vupkhs<VU_char> that always emits vupkhs*, for internal
	use).
	(altivec_vupkls<VU_char>): Emit vupkhs* instead of vupkls* when
	target is little endian and -maltivec=be is not specified.
	(*altivec_vupkls<VU_char>_direct): New (copy of
	altivec_vupkls<VU_char> that always emits vupkls*, for internal
	use).
	(altivec_vupkhpx): Emit vupklpx instead of vupkhpx when target is
	little endian and -maltivec=be is not specified.
	(altivec_vupklpx): Emit vupkhpx instead of vupklpx when target is
	little endian and -maltivec=be is not specified.

gcc/testsuite:

2014-02-05  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

	* gcc.dg/vmx/pack.c: New.
	* gcc.dg/vmx/pack-be-order.c: New.
	* gcc.dg/vmx/unpack.c: New.
	* gcc.dg/vmx/unpack-be-order.c: New.

From-SVN: r207520
2014-02-05 20:07:51 +00:00
Balaji V. Iyer
7a62e56652 catch_exc.cc: Disable test for -O1.
2014-02-05  Balaji V. Iyer  <balaji.v.iyer@intel.com>

        * g++.dg/cilk-plus/CK/catch_exc.cc: Disable test for -O1.
        * c-c++-common/cilk-plus/CK/spawner_inline.c: Likewise.

From-SVN: r207519
2014-02-05 11:46:33 -08:00
Richard Henderson
76df831f5d re PR debug/52727 (internal compiler error at dwarf2cfi.c2:685)
PR debug/52727

        * combine-stack-adj.c: Revert r206943.
        * sched-int.h (struct deps_desc): Add last_args_size.
        * sched-deps.c (init_deps): Initialize it.
        (sched_analyze_insn): Add OUTPUT dependencies between insns that
        contain REG_ARGS_SIZE notes.

From-SVN: r207518
2014-02-05 10:42:19 -08:00
Jan Hubicka
9cf7975d8b lto-cgraph.c (asm_nodes_output): Make global.
* lto-cgraph.c (asm_nodes_output): Make global.
	* lto-wrapper.c (run_gcc): Pass down paralelizm to WPA.
	* gcc.c (AS_NEEDS_DASH_FOR_PIPED_INPUT): Allow WPA
	parameter
	(driver_handle_option): Handle OPT_fwpa.

From-SVN: r207516
2014-02-05 17:22:08 +00:00
Jan Hubicka
f300e7b88c lto-cgraph.c (asm_nodes_output): Make global.
* lto-cgraph.c (asm_nodes_output): Make global.
	* lto-wrapper.c (run_gcc): Pass down paralelizm to WPA.
	* gcc.c (AS_NEEDS_DASH_FOR_PIPED_INPUT): Allow WPA
	parameter
	(driver_handle_option): Handle OPT_fwpa.

	* lto.c (lto_parallelism): New static var.
	(do_stream_out, wait_for_child, stream_out): New static functions.
	(lto_wpa_write_files): Add support for parallel streaming.
	(do_whole_program_analysis): Set parallelism.
	* lang.opt (fwpa): Add parameter.
	* lto-lang.c (lto_handle_option): Handle flag_wpa.
	(lto_init): Update use of flag_wpa.
	* lto-streamer.h (asm_nodes_output): Declare.

From-SVN: r207515
2014-02-05 17:21:07 +00:00
Rainer Orth
7789742953 Fix gcc.target/i386/avx512f-vrndscaless-2.c on Solaris 9/x86
* gcc.target/i386/avx512f-vrndscaless-2.c (compute_rndscaless):
	Use __builtin_floorf, __builtin_ceilf.
	* gcc.target/i386/sse4_1-floorf-sfix-vec.c (floorf): Remove
	declaration.
	(TEST): Use __builtin_floorf.
	* gcc.target/i386/sse4_1-floorf-vec.c: Likewise.

From-SVN: r207514
2014-02-05 16:36:13 +00:00
Jakub Jelinek
add5c7634e re PR ipa/59947 (Segmentation fault with #pragma GCC optimize ("O2"), ICE in get_odr_type)
PR ipa/59947
	* ipa-devirt.c (possible_polymorphic_call_targets): Fix
	a comment typo and formatting issue.  If odr_hash hasn't been
	created, return vNULL and set *completep to false.

	* g++.dg/opt/pr59947.C: New test.

From-SVN: r207512
2014-02-05 16:34:25 +01:00
Jakub Jelinek
54e19c00d9 re PR c++/58703 (ICE with invalid types in OpenMP declare reduction clause)
PR c++/58703
	* parser.c (cp_parser_omp_declare_reduction): Save and free
	declarator_obstack.

	* c-c++-common/gomp/pr58703.c: New test.

From-SVN: r207511
2014-02-05 16:32:01 +01:00
Richard Biener
f0f91770c3 lto.h (lto_global_var_decls): Remove.
2014-02-05  Richard Biener  <rguenther@suse.de>

	lto/
	* lto.h (lto_global_var_decls): Remove.
	* lto-lang.c (lto_init): Do not allocate lto_global_var_decls.
	(lto_write_globals): Do nothing in WPA stage, gather globals from
	the varpool here ...
	* lto.c (lto_main): ... not here.
	(materialize_cgraph): Do not call rest_of_decl_compilation
	on the empty lto_global_var_decls vector.
	(lto_global_var_decls): Remove.

From-SVN: r207510
2014-02-05 15:23:36 +00:00
Richard Biener
6fc595232b re PR target/60076 (gcc.dg/vect/pr60012.c FAILs on Solaris/SPARC)
2014-02-05  Richard Biener  <rguenther@suse.de>

	PR testsuite/60076
	* gcc.dg/vect/pr60012.c: Require vect_extract_even_odd and
	avoid using unsigned long long.

From-SVN: r207509
2014-02-05 15:14:56 +00:00
Andreas Krebbel
bbf391dbf7 config.host: Include t-floattodi also for s390x.
2014-02-05  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

	* config.host: Include t-floattodi also for s390x.
	* config/s390/32/_fixdfdi.c: Omit in 64 bit mode.
	* config/s390/32/_fixsfdi.c: Likewise.
	* config/s390/32/_fixtfdi.c: Likewise.
	* config/s390/32/_fixunsdfdi.c: Likewise.
	* config/s390/32/_fixunssfdi.c: Likewise.
	* config/s390/32/_fixunstfdi.c: Likewise.

From-SVN: r207507
2014-02-05 15:02:50 +00:00
Jakub Jelinek
609524d29c re PR middle-end/57499 (ICE when noreturn destructor returns after throw with -O)
PR middle-end/57499
	* tree-eh.c (cleanup_empty_eh): Bail out on totally empty
	bb with no successors.

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

From-SVN: r207504
2014-02-05 15:34:30 +01:00
James Greenhalgh
05ab6e2119 [ARM Documentation] Clarify -mcpu, -mtune, -march
gcc/

	PR target/59718
	* doc/invoke.texi (-march=): Clarify documentation for ARM.
	(-mtune=): Likewise.
	(-mcpu=): Likewise.

From-SVN: r207501
2014-02-05 11:42:50 +00:00
Richard Biener
d55d9ed0ae tree-vect-loop.c (vect_analyze_loop_2): Be more informative when not vectorizing because of too many alias checks.
2014-02-05  Richard Biener  <rguenther@suse.de>

	* tree-vect-loop.c (vect_analyze_loop_2): Be more informative
	when not vectorizing because of too many alias checks.
	* tree-vect-data-refs.c (vect_prune_runtime_alias_test_list):
	Add more verboseness, avoid duplicate MSG_MISSED_OPTIMIZATION.

From-SVN: r207499
2014-02-05 10:28:26 +00:00
Nick Clifton
c70da878e5 mn10300.c (mn10300_hard_regno_mode_ok): Do not accept extended registers in any mode when compiling for the MN10300.
* config/mn10300/mn10300.c (mn10300_hard_regno_mode_ok): Do not
	accept extended registers in any mode when compiling for the
	MN10300.

From-SVN: r207498
2014-02-05 09:47:59 +00:00