1. 04 Nov, 2011 40 commits
    • re PR target/50980 (arm-rtems multilib not matching for -mfpu=vfp -mfloat-abi=soft) · 79598127
      2011-11-04	Thomas Doerfler <thomas.doerfler@embedded-brains.de>
      
      	PR target/50980
      	* config/arm/rtems-elf.h, config/arm/t-rtems: Add optional
      	support for VFP floating point model.
      
      From-SVN: r180959
      Thomas Doerfler committed
    • Minor reformatting. · 288f28c8
      From-SVN: r180957
      Arnaud Charlet committed
    • gnat_ugn.texi (Performance Considerations): New sub-section. · 8daa1407
      2011-11-04  Eric Botcazou  <ebotcazou@adacore.com>
      
      	* gnat_ugn.texi (Performance Considerations) <Vectorization
      	of loops>: New sub-section.  <Other Optimization Switches>:
      	Minor tweak.
      
      From-SVN: r180956
      Eric Botcazou committed
    • [multiple changes] · 1adaea16
      2011-11-04  Robert Dewar  <dewar@adacore.com>
      
      	* sprint.adb (Sprint_Node_Actual, case Qualified_Expression):
      	Avoid junk semicolon after argument of machine code Asm operand.
      
      2011-11-04  Robert Dewar  <dewar@adacore.com>
      
      	* exp_ch11.adb (Generate_Push_Pop): Inhibit push/pop nodes in
      	CodePeer mode or if restriction No_Exception_Handlers is present.
      	* exp_ch6.adb (Expand_N_Subprogram_Body): (Inhibit push/pop
      	nodes in CodePeer mode or if restriction No_Exception_Handlers
      	is present.
      
      2011-11-04  Robert Dewar  <dewar@adacore.com>
      
      	* s-tassta.adb, atree.ads, errout.adb, sinput.adb: Minor reformatting.
      
      2011-11-04  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch6.adb (Analyze_Subprogram_Specification): The
      	specification is legal if it is a function that returns an
      	abstract type, if it comes from an attribute renaming of a stream
      	attribute of an abstract type.
      
      2011-11-04  Gary Dismukes  <dismukes@adacore.com>
      
      	* exp_util.adb (Is_Possibly_Unaligned_Object): In case of indexed
      	components, check whether recursively check whether the prefix
      	denotes an unaligned object.
      
      2011-11-04  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_prag.adb (Analyze_Pragma, case Debug): The argument of
      	the pragma is legal if it is an expanded name that denotes a
      	procedure that be can called without parameters.
      
      2011-11-04  Eric Botcazou  <ebotcazou@adacore.com>
      
      	* gnat_ugn.texi (Performance Considerations) <Vectorization
      	of loops>: New sub-section.  <Other Optimization Switches>:
      	Minor tweak.
      
      From-SVN: r180955
      Arnaud Charlet committed
    • [multiple changes] · 4c9fe6c7
      2011-11-04  Robert Dewar  <dewar@adacore.com>
      
      	* gnat_rm.texi: Minor reformatting.
      
      2011-11-04  Matthew Heaney  <heaney@adacore.com>
      
      	* a-convec.adb, a-coinve.adb, a-cobove.adb (Merge): Raise PE
      	when Target and Source denote same non-empty object
      	* a-cdlili.adb, a-cidlli.adb, a-cbdlli.adb (Merge): Ditto
      
      2011-11-04  Robert Dewar  <dewar@adacore.com>
      
      	* exp_attr.adb: Minor reformatting.
      
      2011-11-04  Ed Schonberg  <schonberg@adacore.com>
      
      	* exp_ch5.adb (Expand_Assign_Record): Do not generate a
      	discriminant assignment within an initialization proc if the
      	record is an unchecked union, as it can only come from the
      	initialization of an unchecked union component.
      
      2011-11-04  Robert Dewar  <dewar@adacore.com>
      
      	* gnat_ugn.texi: Minor reformatting.
      
      2011-11-04  Robert Dewar  <dewar@adacore.com>
      
      	* par-labl.adb (Rewrite_As_Loop): Generate info msg rather than
      	warning message.
      
      2011-11-04  Robert Dewar  <dewar@adacore.com>
      
      	* exp_ch4.adb: Minor code reorganization (remove junk obsolete
      	var Save_Space).
      
      From-SVN: r180954
      Arnaud Charlet committed
    • exp_alfa.adb: Add local constant Disable_Processing_Of_Renamings; · 6ec084f3
      2011-11-04  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* exp_alfa.adb: Add local constant
      	Disable_Processing_Of_Renamings;
      	(Expand_Alfa_N_Object_Renaming_Declaration): Disable
      	the name evaluation of object renamings for now.
      	(Expand_Potential_Renaming): Do not perform the substitution
      	for now.
      	* exp_util.adb (Remove_Side_Effects): Remove processing for
              functions with side effects in Alfa mode.
      
      From-SVN: r180953
      Hristian Kirtchev committed
    • [multiple changes] · 73fe1679
      2011-11-04  Gary Dismukes  <dismukes@adacore.com>
      
      	* bindgen.adb (Gen_Elab_Calls): In the case
      	of the AAMP target, set elaboration entities to 1 rather than
      	incrementing.
      
      2011-11-04  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch10.adb (Install_Limited_With_Unit): To establish the
      	proper entities on the ancestors of a child unit that appear
      	in a limited_with clause, follow the unit links because the
      	units are not analyzed and scope information is incomplete.
      
      2011-11-04  Eric Botcazou  <ebotcazou@adacore.com>
      
      	* exp_ch4.adb (Expand_N_Selected_Component): Refine code
      	setting the Atomic_Sync_Required flag to detect one more case.
      	* exp_util.adb (Activate_Atomic_Synchronization): Refine code
      	setting the Atomic_Sync_Required flag to exclude more cases,
      	depending on the parent of the node to be examined.
      
      2011-11-04  Bob Duff  <duff@adacore.com>
      
      	* g-excact.adb: Minor: use named notation.
      
      2011-11-04  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch5.adb: Improve error messages for illegal iterators.
      
      From-SVN: r180952
      Arnaud Charlet committed
    • [multiple changes] · b2ab8c33
      2011-11-04  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* exp_alfa.adb: Add with and use clauses for Exp_Ch8 and
      	Sem_Util.
      	(Expand_Alfa): Alphabetize cases on first choice. Add
      	processing for object renaming declarations, identifiers and
      	expanded names.
      	(Expand_Alfa_N_In): Remove useless return.
      	(Expand_Alfa_N_Object_Renaming_Declaration): New routine.
      	(Expand_Potential_Renaming): New routine.
      	* exp_ch8.adb (Evaluate_Name): Moved to the top level.
      	(Expand_N_Object_Declaration): Alphabetize local variables. Move
      	Evaluate_Name out to the top level.
      	* exp_ch8.ads (Evaluate_Name): Moved from body to package spec.
      	* exp_util.adb (Remove_Side_Effects): Add processing for
      	functions with side effects in Alfa mode.
      
      2011-11-04  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* gnat_rm.texi: Add entries for
      	restrictions No_Relative_Delay, No_Requeue_Statements and
      	No_Stream_Optimizations.
      
      2011-11-04  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch4.adb: Set type of entity in prefixed call, for
      	completeness in a generic context.
      
      From-SVN: r180951
      Arnaud Charlet committed
    • [multiple changes] · 4c318253
      2011-11-04  Yannick Moy  <moy@adacore.com>
      
      	* sem_prag.adb: Minor refactoring (renaming of a parameter).
      
      2011-11-04  Robert Dewar  <dewar@adacore.com>
      
      	* atree.ads: Minor reformatting.
      
      2011-11-04  Robert Dewar  <dewar@adacore.com>
      
      	* checks.adb (Atomic_Synchronization_Disabled): Check -gnatd.d
      	and -gnatd.e here
      	* exp_ch2.adb (Expand_Entity_Reference): Use
      	Activate_Atomic_Synchronization
      	* exp_ch4.adb (Expand_N_Explicit_Dereference): Use
      	Activate_Atomic_Synchronization (Expand_N_Indexed_Compoonent):
      	Activate_Atomic_Synchronization (Expand_N_Selected_Component):
      	Use Activate_Atomic_Synchronization
      	* exp_util.ads, exp_util.adb (Activate_Atomic_Synchronization): New
      	procedure.
      	* sinfo.ads, sinfo.adb (Atomic_Sync_Required): Can now apply to
      	N_Selected_Component node
      
      From-SVN: r180950
      Arnaud Charlet committed
    • sem_prag.adb, [...]: Minor reformatting. · 37765e95
      2011-11-04  Robert Dewar  <dewar@adacore.com>
      
      	* sem_prag.adb, atree.ads, prj-env.adb, prj-env.ads: Minor reformatting.
      
      From-SVN: r180949
      Robert Dewar committed
    • [multiple changes] · 8c18a165
      2011-11-04  Yannick Moy  <moy@adacore.com>
      
      	* atree.adb, atree.ads (Set_Original_Node): New set procedure.
      	* sem_ch13.adb (Analyze_Aspect_Specifications/Pre_Post_Aspects):
      	In ASIS mode, no splitting of aspects between conjuncts.
      	(Analyze_Aspect_Specifications/Aspect_Test_Case): Make pragma
      	expressions refer to the original aspect expressions through
      	the Original_Node link. This is used in semantic analysis for
      	ASIS mode, so that the original expression also gets analyzed.
      	* sem_prag.adb (Preanalyze_TC_Args,
      	Check_Precondition_Postcondition,
      	Analyze_Pragma/Pragma_Test_Case): In ASIS mode, for a pragma
      	generated from a source aspect, also analyze the original aspect
      	expression.
      	(Check_Expr_Is_Static_Expression): New procedure
      	similar to existing procedure Check_Arg_Is_Static_Expression,
      	except called on expression inside pragma.
      
      2011-11-04  Tristan Gingold  <gingold@adacore.com>
      
      	* prj-env.adb, prj-env.ads (Find_Name_In_Path): New function, from
      	Find_Project.Try_Path_Name.
      	(Find_Project): Use Find_Name_In_Path to implement Try_Path_Name.
      
      2011-11-04  Eric Botcazou  <ebotcazou@adacore.com>
      
      	* s-atocou.ads (Atomic_Counter): Remove redundant pragma Volatile.
      
      2011-11-04  Pascal Obry  <obry@adacore.com>
      
      	* projects.texi: Add short description for qualifiers aggregate
      	and aggregate library.
      
      2011-11-04  Matthew Heaney  <heaney@adacore.com>
      
      	* Makefile.rtl, impunit.adb: Added a-cogeso.ad[sb]
      	* a-cgaaso.adb: Replaced implementation with instantiation
      	of Generic_Sort.
      	* a-cogeso.ad[sb] This is the new Ada 2012 unit
      	Ada.Containers.Generic_Sort
      
      From-SVN: r180948
      Arnaud Charlet committed
    • vms.h (ASM_OUTPUT_DEF): Do not switch section. · 872b942a
      2011-11-04  Tristan Gingold  <gingold@adacore.com>
      
      	* config/alpha/vms.h (ASM_OUTPUT_DEF): Do not switch section.
      
      From-SVN: r180947
      Tristan Gingold committed
    • re PR target/50989 (sparc libgcc2 __udivmoddi4 has undefined reference to .umul) · 7084e037
      2011-11-04  Joel Sherrill  <joel.sherrill@oarcorp.com>
      
      	PR target/50989
      	* config.host (sparc-*-rtems*): Add sparc/t-softmul.
      
      From-SVN: r180946
      Joel Sherrill committed
    • Unrevert: · ba65ae42
              2011-10-24  Ira Rosen  <ira.rosen@linaro.org>
      
              PR tree-optimization/50730
              * tree-vect-data-refs.c (vect_analyze_data_refs): Stop basic
              block analysis if encountered unsupported data-ref.
      
      From-SVN: r180945
      Ira Rosen committed
    • re PR c++/48370 (G++ fails to extend reference temporary lifetime in some situations) · b25dd954
      	PR c++/48370
      	* call.c (extend_ref_init_temps, extend_ref_init_temps_1): New.
      	(set_up_extended_ref_temp): Use it.  Change cleanup parm to VEC.
      	(initialize_reference): Just call convert_like.
      	* decl.c (grok_reference_init): Just call initialize_reference.
      	(build_init_list_var_init): Remove.
      	(check_initializer): Change cleanup parm to VEC.  Handle references
      	like other types.  Call perform_implicit_conversion instead
      	of build_init_list_var_init.  Don't use build_aggr_init for
      	aggregate initialization of arrays.
      	(cp_finish_decl): Change cleanup to VEC.
      	* typeck2.c (store_init_value): Call extend_ref_init_temps.
      	Use build_vec_init for non-constant arrays.
      	* init.c (expand_aggr_init_1): Adjust.
      	(build_vec_init): Avoid re-converting an initializer
      	that's already digested.
      	* mangle.c (mangle_ref_init_variable): Add a discriminator.
      	* cp-tree.h: Adjust.
      	* typeck.c (convert_for_initialization): Adjust.
      	* decl2.c (maybe_emit_vtables): Adjust.
      
      From-SVN: r180944
      Jason Merrill committed
    • [multiple changes] · 5972791c
      2011-11-04  Robert Dewar  <dewar@adacore.com>
      
      	* exp_ch2.adb (Expand_Entity_Reference): Do not set
      	Atomic_Sync_Required for the case of a prefix of an attribute.
      	* exp_ch4.adb (Expand_N_Explicit_Dereference): May require
      	atomic synchronization
      	(Expand_N_Indexed_Component): Ditto.
      	(Expand_B_Selected_Component): Ditto.
      	* sem_prag.adb (Process_Suppress_Unsuppress):
      	Disable/Enable_Atomic_Synchronization can now occur for array
      	types with pragma Atomic_Components.
      	* sinfo.ads, sinfo.adb (Atomic_Sync_Required): Can now occur on
      	N_Explicit_Dereference nodes and on N_Indexed_Component nodes.
      
      2011-11-04  Gary Dismukes  <dismukes@adacore.com>
      
      	* gnat_ugn.texi: Editorial corrections for gnattest section.
      
      From-SVN: r180943
      Arnaud Charlet committed
    • Restore c6x-elf bootstrap · 1a032034
      	* config/c6x/t-elf (LIB2ADDEH): Set.
      	* config/c6x/t-c6x-elf: Remove.
      
      From-SVN: r180942
      Rainer Orth committed
    • Use sol2-c[1n].S on more targets · d385f772
      	* config/i386/sol2-ci.S: Rename to ...
      	* config/i386/crti.S: ... this.
      	* config/i386/sol2-cn.S: Rename to ...
      	* config/i386/crtn.S: ... this.
      	* config/sparc/sol2-ci.S: Rename to ...
      	* config/sparc/crti.S: ... this.
      	* config/sparc/sol2-cn.S: Rename to ...
      	* config/sparc/crtn.S: ... this.
      	* config/t-sol2 (CUSTOM_CRTIN): Remove.
      	(crti.o, crtn.o): Remove.
      
      From-SVN: r180941
      Rainer Orth committed
    • re PR tree-optimization/50763 (ICE: verify_gimple failed: missing PHI def with -ftree-tail-merge) · 5a042b47
      2011-11-04  Tom de Vries  <tom@codesourcery.com>
      
      	PR tree-optimization/50763
      	* gcc.dg/pr50763-5.c: New test.
      
      From-SVN: r180940
      Tom de Vries committed
    • sem_prag.adb: Minor reformatting. · 8751a35c
      2011-11-04  Robert Dewar  <dewar@adacore.com>
      
      	* sem_prag.adb: Minor reformatting.
      	* gnat_rm.texi: Update documentation for pragma Warnings (Off,
      	"***") usage.
      	* exp_ch2.adb (Expand_Entity_Reference): Only set
      	Atomic_Sync_Required on entities that are variables. Doesn't
      	make any sense on anything else.
      
      From-SVN: r180939
      Robert Dewar committed
    • exp_ch2.adb (Expand_Entity_Reference): Extend handling of atomic sync to type case. · fb5d63c6
      2011-11-04  Robert Dewar  <dewar@adacore.com>
      
      	* exp_ch2.adb (Expand_Entity_Reference): Extend handling of
      	atomic sync to type case.
      	* sem_prag.adb (Process_Suppress_Unsuppress): Atomic Sync can
      	apply to types.
      
      From-SVN: r180938
      Robert Dewar committed
    • re PR tree-optimization/50763 (ICE: verify_gimple failed: missing PHI def with -ftree-tail-merge) · c2d1a474
      2011-11-04  Tom de Vries  <tom@codesourcery.com>
      
      	PR tree-optimization/50763
      	* g++.dg/pr50763-4.C: New test.
      
      From-SVN: r180936
      Tom de Vries committed
    • [multiple changes] · a51cd0ec
      2011-11-04  Robert Dewar  <dewar@adacore.com>
      
      	* sem_warn.adb (Warn_On_Useless_Assignment): More accurate test
      	for call vs assign.
      	* gcc-interface/Make-lang.in: Update dependencies.
      
      2011-11-04  Robert Dewar  <dewar@adacore.com>
      
      	* sem_prag.adb: Detect more cases of Long_Float inconsistencies at
      	compile time.
      
      2011-11-04  Matthew Heaney  <heaney@adacore.com>
      
      	* Makefile.rtl, impunit.adb: Added a-sfecin.ads,
      	* a-sfhcin.ads, a-sflcin.ads, a-sbecin.ad[sb], a-sbhcin.ad[sb],
      	a-sblcin.ad[sb], a-suecin.ad[sb], a-suhcin.ad[sb], a-sulcin.ad[sb]
      	* a-sfecin.ads, a-sfhcin.ads, a-sflcin.ads, a-sbecin.ad[sb],
      	a-sbhcin.ad[sb], a-sblcin.ad[sb], a-suecin.ad[sb], a-suhcin.ad[sb],
      	a-sulcin.ad[sb]: New files.
      
      2011-11-04  Geert Bosch  <bosch@adacore.com>
      
      	* i-forbla-unimplemented.ads, s-gecola.adb, s-gecola.ads,
      	s-gerebl.adb, s-gerebl.ads, i-forbla.adb, i-forbla.ads,
      	i-forlap.ads, i-forbla-darwin.adb, s-gecobl.adb, s-gecobl.ads,
      	s-gerela.adb, s-gerela.ads: Remove partial interface to BLAS/LAPACK.
      	* gcc-interface/Makefile.in: Remove libgnala and related objects.
      
      From-SVN: r180935
      Arnaud Charlet committed
    • i386.c (ix86_expand_vector_convert_uns_vsivsf): New function. · 635c6321
      	* config/i386/i386.c (ix86_expand_vector_convert_uns_vsivsf): New
      	function.
      	* config/i386/i386-protos.h (ix86_expand_vector_convert_uns_vsivsf):
      	New prototype.
      	* config/i386/sse.md (floatuns<sseintvecmodelower><mode>2): Use it.
      	For floatunsv8siv8sf2 require TARGET_AVX2.
      
      	* gcc.dg/torture/vec-cvt-1.c: Enable commented out inttoflttestui
      	test.
      
      From-SVN: r180934
      Jakub Jelinek committed
    • i386.c (ix86_expand_adjust_ufix_to_sfix_si): Add XORP argument. · 2f2da9e9
      	* config/i386/i386.c (ix86_expand_adjust_ufix_to_sfix_si): Add
      	XORP argument.  Subtract 0x1p31 instead of 0x1p32.  Use normal
      	signalling comparison instead of non-signalling.  Store into
      	*XORP pseudo holding 0x80000000 integers if 0x1p31 has been
      	subtracted and 0 otherwise.
      	* config/i386/i386-protos.h (ix86_expand_adjust_ufix_to_sfix_si):
      	Adjust prototype.
      	* config/i386/sse.md (fixuns_trunc<mode><sseintvecmodelower>2): Enable
      	already for TARGET_SSE2.  Xor in vector initialized by
      	ix86_expand_adjust_ufix_to_sfix_si at the end.
      	(vec_pack_ufix_trunc_<mode>): Likewise.
      
      	* gcc.dg/torture/vec-cvt-1.c: Enable flttointtestui test.
      
      From-SVN: r180933
      Jakub Jelinek committed
    • tree-vect-stmts.c (vectorizable_conversion): Rewritten to handle not just… · 4a00c761
      tree-vect-stmts.c (vectorizable_conversion): Rewritten to handle not just FLOAT_EXPR and FIX_TRUNC_EXPR...
      
      	* tree-vect-stmts.c (vectorizable_conversion): Rewritten to handle
      	not just FLOAT_EXPR and FIX_TRUNC_EXPR, but also CONVERT_EXPR_CODE_P,
      	WIDEN_MULT_EXPR and WIDEN_LSHIFT_EXPR to handle what
      	vectorizable_type_demotion and vectorizable_type_promotion did.
      	Additionally handle FLOAT_EXPR and FIX_TRUNC_EXPR where the integer
      	is {,un}signed {char,short}.
      	(vect_create_vectorized_demotion_stmts): Fix comment typo.  For
      	recursive calls unconditionally use VEC_PACK_TRUNC_EXPR.
      	Push vec_dest back to the vec_dsts vector at the end.
      	(vect_create_vectorized_promotion_stmts): Don't recurse, do just
      	one step.  Removed multi_step_cvt, vec_dsts, slp_node and
      	prev_stmt_info arguments, add vec_dest argument.  Push always
      	into vec_tmp, not just when multi_step_cvt != 0, replace *vec_oprdn0
      	with vec_tmp at the end after freeing old *vec_oprnd0 vector.
      	(vectorizable_type_demotion, vectorizable_type_promotion): Removed.
      	(vect_analyze_stmt): Don't call vectorizable_type_demotion and
      	vectorizable_type_promotion.  Call vectorizable_conversion even
      	for SLP bb vectorization.
      	(vect_transform_stmt): Call vectorizable_conversion instead of
      	vectorizable_type_demotion and vectorizable_type_promotion.
      	(supportable_widening_operation): Clear *multi_step_cvt first,
      	simplify c1/c2 computation, free *interm_types vector on failure.
      	(supportable_narrowing_operation): Clear *multi_step_cvt first,
      	free *interm_types vector on failure, handle multi-step
      	FIX_TRUNC_EXPR.
      
      	* gcc.dg/torture/vec-cvt-1.c: New test.
      
      From-SVN: r180932
      Jakub Jelinek committed
    • decl.c (gnat_to_gnu_entity): Do not assert that the type of the parameters isn't… · 25ec1790
      decl.c (gnat_to_gnu_entity): Do not assert that the type of the parameters isn't dummy in type_annotate_only...
      
      	* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Function>: Do not assert
      	that the type of the parameters isn't dummy in type_annotate_only mode.
      
      From-SVN: r180931
      Eric Botcazou committed
    • [multiple changes] · a31945d7
      2011-11-04  Matthew Heaney  <heaney@adacore.com>
      
      	* a-cdlili.ad[sb], a-cidlli.ad[sb], a-coorse.ad[sb], a-ciorse.ad[sb],
      	a-coorma.ad[sb], a-ciorma.ad[sb], a-coormu.ad[sb], a-ciormu.ad[sb],
      	a-cohama.ad[sb], a-cihama.ad[sb], a-cohase.ad[sb], a-cihase.ad[sb],
      	a-convec.ad[sb], a-coinve.ad[sb] (Assign, Copy): New operations
      	added to package.
      
      2011-11-04  Robert Dewar  <dewar@adacore.com>
      
      	* sem_ch12.adb: Minor reformatting
      
      2011-11-04  Gary Dismukes  <dismukes@adacore.com>
      
      	* bindgen.adb (Gen_Elab_Calls): In the case of the AAMP target,
      	initialize elaboration entities to zero when specs are processed.
      
      From-SVN: r180930
      Arnaud Charlet committed
    • fde-vms.c: Do not include md-unwind-support.h · 1ba878a9
      2011-11-04  Tristan Gingold  <gingold@adacore.com>
      
      	* config/ia64/fde-vms.c: Do not include md-unwind-support.h
      
      From-SVN: r180929
      Tristan Gingold committed
    • alpha.c (alpha_write_linkage): Remove fundecl argument. · 735f469b
      2011-11-04  Tristan Gingold  <gingold@adacore.com>
      
      	* config/alpha/alpha.c (alpha_write_linkage): Remove fundecl
      	argument.  Conditionally generate crash debug info.  Adjust
      	for alpha_funcs_tree removal.
      	(machine_function): Add links field.
      	(alpha_start_function): Conditionally generate crash debug info.
      	(alpha_end_function): Adjust call to alpha_write_linkage.
      	(alpha_funcs): Remove.
      	(links_kind): Remove.
      	(alpha_links): Remove num, target and lkind field.  Add func field.
      	(alpha_links_tree): Remove.
      	(alpha_funcs_tree): Remove.
      	(alpha_need_linkage): Remove.
      	(alpha_use_linkage): Change prototype.  Adjust.
      	(alpha_write_one_linkage): Use ASM_OUTPUT_INTERNAL_LABEL.
      	Use SYMBOL_REF_EXTERNAL_P and SYMBOL_REF_LOCAL_P macro.
      	* config/alpha/alpha-protos.h (alpha_use_linkage): Update.
      	(alpha_need_linkage): Remove.
      	* config/alpha/alpha.md: Update calls to alpha_use_linkage.
      	Adjust calls to alpha_need_linkage.
      
      From-SVN: r180928
      Tristan Gingold committed
    • re PR fortran/43829 (Scalarization of reductions) · 75118c2e
      	PR fortran/43829
      	* gfortran.dg/function_optimize_7.f90: Disable sum inlining.
      	* gfortran.dg/inline_sum_1.f90: New.
      	* gfortran.dg/inline_sum_2.f90: New.
      	* gfortran.dg/inline_sum_bounds_check_1.f90: New.
      	* gfortran.dg/inline_sum_bounds_check_2.f90: New.
      	* gfortran.dg/inline_product_1.f90: New.
      
      From-SVN: r180922
      Mikael Morin committed
    • t-sh: Use $(gcc_compile) instead of $(compile). · 02750c15
      	* config/sh/t-sh: Use $(gcc_compile) instead of $(compile).
      
      From-SVN: r180921
      Kaz Kojima committed
    • re PR fortran/43829 (Scalarization of reductions) · 0c08de8f
      	PR fortran/43829
      	* trans-array.c (gfc_conv_expr_descriptor): Accept the inline intrinsic
      	case in the assertion.
      	* trans-intrinsic (enter_nested_loop): New function.
      	(gfc_conv_intrinsic_arith): Support non-scalar cases.
      	(nest_loop_dimension, walk_inline_intrinsic_arith): New functions.
      	(walk_inline_intrinsic_function): Handle sum and product.
      	(gfc_inline_intrinsic_function_p): Ditto.
      	* trans.h (gfc_get_loopinfo): New macro.
      
      From-SVN: r180920
      Mikael Morin committed
    • trans-intrinsic.c (gfc_conv_intrinsic_arith): Introduce parent expression variable. · 44d23d9e
      	* trans-intrinsic.c (gfc_conv_intrinsic_arith): Introduce parent
      	expression variable.  Use it.
      
      From-SVN: r180919
      Mikael Morin committed
    • trans-intrinsic.c (gfc_conv_intrinsic.c): Introduce current loop pointer. · b1a65f62
      	* trans-intrinsic.c (gfc_conv_intrinsic.c): Introduce current loop
      	pointer.  Use it.
      
      From-SVN: r180918
      Mikael Morin committed
    • trans-intrinsic.c (gfc_conv_intrinsic_arith): Small argument handling cleanup. · bc4b3d2d
      	* trans-intrinsic.c (gfc_conv_intrinsic_arith): Small argument handling
      	cleanup.
      
      From-SVN: r180917
      Mikael Morin committed
    • Daily bump. · 6492221c
      From-SVN: r180916
      GCC Administrator committed
    • trans-intrinsic.c (gfc_conv_intrinsic_arith): Update conditions. · a831ffb8
      	* trans-intrinsic.c (gfc_conv_intrinsic_arith): Update conditions.
      
      From-SVN: r180913
      Mikael Morin committed
    • frontend-passes.c (cfe_register_funcs): Return early in the case of an inline intrinsic function. · 93ee6382
      	* frontend-passes.c (cfe_register_funcs): Return early in the case
      	of an inline intrinsic function.
      	(optimize_binop_array_assignment): Skip optimization in the case of
      	an inline intrinsic function.
      
      From-SVN: r180911
      Mikael Morin committed
    • array.c (match_subscript): Skip whitespaces before setting locus. · 00b9bf8b
      	* array.c (match_subscript): Skip whitespaces before setting locus.
      	* matchexp.c (match_level_1): Ditto.
      
      From-SVN: r180910
      Mikael Morin committed