1. 02 May, 2016 36 commits
    • [multiple changes] · 2cc2e964
      2016-05-02  Gary Dismukes  <dismukes@adacore.com>
      
      	* exp_ch5.adb, exp_ch7.adb, exp_ch7.ads, checks.adb, sem_attr.adb,
      	gnat1drv.adb, sem_ch4.adb, sem_ch13.adb: Minor reformatting and typo
      	fixes.
      	* sem_prag.adb, sem_ch12.adb: Minor typo fixes.
      
      2016-05-02  Ed Schonberg  <schonberg@adacore.com>
      
      	* exp_ch6.adb (Make_Build_In_Place_Call_In_Allocator): The
      	function call may be wrapped in an explicit type conversion.
      
      2016-05-02  Jerome Lambourg  <lambourg@adacore.com>
      
      	* interfac.ads: use pragma No_Elaboration_Code_All.
      	* s-unstyp.ads: s-unstyp.ads: use pragma No_Elaboration_Code_All.
      
      2016-05-02  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem.adb (Analyze: If node is an error node previously created
      	by the parser, disable expansion to prevent subsequent glitches
      	in error recovery.
      
      From-SVN: r235736
      Arnaud Charlet committed
    • re PR rtl-optimization/70886 (-frename-registers causes boostrap comparison failures on ia64) · 08e5cf22
      	PR rtl-optimization/70886
      	* sched-deps.c (estimate_dep_weak): Canonicalize cselib values.
      
      	* cselib.h (rtx_equal_for_cselib_1): Declare.
      	(rtx_equal_for_cselib_p: New inline function.
      	* cselib.c (rtx_equal_for_cselib_p): Delete.
      	(rtx_equal_for_cselib_1): Make public.
      
      From-SVN: r235735
      Eric Botcazou committed
    • Minor reformatting. · 86d2f056
      From-SVN: r235734
      Arnaud Charlet committed
    • sem_ch13.adb (Alignment_Error): Removed. · 51122913
      2016-05-02  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* sem_ch13.adb (Alignment_Error): Removed.
      	(Get_Alignment_Value): Code cleanup.
      
      From-SVN: r235733
      Hristian Kirtchev committed
    • [multiple changes] · 32b794c8
      2016-05-02  Tristan Gingold  <gingold@adacore.com>
      
      	* sem_ch3.adb (Analyze_Object_Declaration): Use Has_Protected
      	to check for the no local protected objects restriction.
      
      2016-05-02  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* einfo.adb Anonymous_Master now uses Node35.
      	(Anonymous_Master): Update the assertion and node reference.
      	(Set_Anonymous_Master): Update the assertion and node reference.
      	(Write_Field35_Name): Add output for Anonymous_Master.
      	(Write_Field36_Name): The output is now undefined.
      	* einfo.ads Update the node and description of attribute
      	Anonymous_Master. Remove prior occurrences in entities as this
      	is now a type attribute.
      	* exp_ch3.adb (Expand_Freeze_Array_Type): Remove local variable
      	Ins_Node. Anonymous access- to-controlled component types no
      	longer need finalization masters. The master is now built when
      	a related allocator is expanded.
      	(Expand_Freeze_Record_Type): Remove local variable Has_AACC. Do not
      	detect whether the record type has at least one component of anonymous
      	access-to- controlled type. These types no longer need finalization
      	masters. The master is now built when a related allocator is expanded.
      	* exp_ch4.adb Remove with and use clauses for Lib and Sem_Ch8.
      	(Current_Anonymous_Master): Removed.
      	(Expand_N_Allocator): Call Build_Anonymous_Master to create a
      	finalization master for an anonymous access-to-controlled type.
      	* exp_ch6.adb (Add_Finalization_Master_Actual_To_Build_In_Place_Call):
      	Call routine Build_Anonymous_Master to create a finalization master
      	for an anonymous access-to-controlled type.
      	* exp_ch7.adb (Allows_Finalization_Master): New routine.
      	(Build_Anonymous_Master): New routine.
      	(Build_Finalization_Master): Remove formal parameter
      	For_Anonymous. Use Allows_Finalization_Master to determine whether
      	circumstances warrant a finalization master. This routine no
      	longer creates masters for anonymous access-to-controlled types.
      	(In_Deallocation_Instance): Removed.
      	* exp_ch7.ads (Build_Anonymous_Master): New routine.
      	(Build_Finalization_Master): Remove formal parameter For_Anonymous
      	and update the comment on usage.
      	* sem_util.adb (Get_Qualified_Name): New routines.
      	(Output_Name): Reimplemented.
      	(Output_Scope): Removed.
      	* sem_util.ads (Get_Qualified_Name): New routines.
      
      2016-05-02  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* debug.adb: Document the use of switch -gnatd.H.
      	* gnat1drv.adb (Adjust_Global_Switches): Set ASIS_GNSA mode when
      	-gnatd.H is present.
      	(Gnat1drv): Suppress the call to gigi when ASIS_GNSA mode is active.
      	* opt.ads: Add new option ASIS_GNSA_Mode.
      	* sem_ch13.adb (Alignment_Error): New routine.
      	(Analyze_Attribute_Definition_Clause): Suppress certain errors in
      	ASIS mode for attribute clause Alignment, Machine_Radix, Size, and
      	Stream_Size.
      	(Check_Size): Use routine Size_Too_Small_Error to
      	suppress certain errors in ASIS mode.
      	(Get_Alignment_Value): Use routine Alignment_Error to suppress certain
      	errors in ASIS mode.
      	(Size_Too_Small_Error): New routine.
      
      From-SVN: r235732
      Arnaud Charlet committed
    • 2016-05-02 Arnaud Charlet <charlet@adacore.com> · 4871a41d
      	* spark_xrefs.ads Description of the spark cross-references
      	clarified; small style fixes.
      	* lib-xref-spark_specific.adb (Add_SPARK_Scope,
      	Detect_And_Add_SPARK_Scope): consider protected types and bodies
      	as yet another scopes.
      	(Enclosing_Subprogram_Or_Library_Package): refactored using
      	Hristian's suggestions; added support for scopes of protected
      	types and bodies; fix for entries to return the scope of the
      	enclosing concurrent type, which is consistent with what is
      	returned for protected subprograms.
      	* sem_intr.adb: Minor style fix in comment.
      
      From-SVN: r235731
      Arnaud Charlet committed
    • [multiple changes] · 8d4611f7
      2016-05-02  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* lib-xref.ads, lib-xref-spark_specific.adb, get_spark_xrefs.adb,
      	put_spark_xrefs.adb: Minor reformatting.
      
      2016-05-02  Doug Rupp  <rupp@adacore.com>
      
      	* g-traceb.ads: Document traceback for ARM.
      
      2016-05-02  Javier Miranda  <miranda@adacore.com>
      
      	* exp_disp.adb (Make_Tags): Do not generate the
      	external name of interface tags adding the suffix counter since
      	it causes problems at link time when the IP routines are inlined
      	across units with optimization.
      
      2016-05-02  Ed Schonberg  <schonberg@adacore.com>
      
      	* einfo.ads, einfo.adb (Predicates_Ignared): new flag to indicate
      	that predicate checking is disabled for predicated subtypes in
      	the context of an Assertion_Policy pragma.
      	* checks.adb (Apply_Predicate_Check): Do nothing if
      	Predicates_Ignored is true.
      	* exp_ch3.adb (Expand_Freeze_Enumeration_Type): If
      	Predicates_Ignores is true, the function Rep_To_Pos does raise
      	an exception for invalid data.
      	* exp_ch4.adb (Expand_N_Type_Conversion): IF target is a predicated
      	type do not apply check if Predicates_Ignored is true.
      	* exp_ch5.adb (Expand_N_Case_Statement): If Predicates_Ignored
      	is true, sem_prag.adb:
      	* sem_ch3.adb (Analyze_Object_Declaration): If Predicates_Ignored
      	is true do not emit predicate check on initializing expression.
      
      From-SVN: r235730
      Arnaud Charlet committed
    • get_spark_xrefs.adb (Get_Nat, Get_Name): Initialize variables when they are declared... · bcb0389e
      2016-05-02  Arnaud Charlet  <charlet@adacore.com>
      
      	* get_spark_xrefs.adb (Get_Nat, Get_Name): Initialize variables when
      	they are declared; refine type of a counter from Integer to Natural.
      	* sem_ch5.adb, gnatcmd.adb, s-intman-posix.adb, eval_fat.adb,
      	prj.adb, sem_util.adb, s-intman-android.adb, prj-nmsc.adb, sem_ch8.adb,
      	exp_ch3.adb: Minor editing.
      
      From-SVN: r235729
      Arnaud Charlet committed
    • a-tigeli.adb (Get_Line): Always set Last prior to returning. · ef25192b
      2016-05-02  Yannick Moy  <moy@adacore.com>
      
      	* a-tigeli.adb (Get_Line): Always set Last prior to returning.
      
      2016-05-02  Yannick Moy  <moy@adacore.com>
      
      	* lib-xref.adb: Minor style fix in whitespace of declarations.
      	* put_spark_xrefs.adb (Put_SPARK_Xrefs): printing of strings
      	refactored without loops.
      	* put_spark_xrefs.ads (Write_Info_Str): new formal argument of
      	generic procedure.
      	* spark_xrefs.adb (Write_Info_Str): new actual in instantiation
      	of generic procedure.
      
      From-SVN: r235728
      Yannick Moy committed
    • predicates.md (nonimm_ssenomem_operand): New predicate. · ebae28e9
      	* config/i386/predicates.md (nonimm_ssenomem_operand): New predicate.
      	(register_mixssei387nonimm_operand): Remove predicate.
      	* config/i386/i386.md (*fop_<mode>_comm): Merge from
      	*fop_<mode>_comm_mixed and *fop_<mode>_comm_i387.  Disable unsupported
      	alternatives using "enabled" attribute.  Also check X87_ENABLE_ARITH
      	for TARGET_MIX_SSE_I387 alternatives.
      	(*fop_<mode>_1): Merge from *fop_<mode>_1_mixed and *fop_<mode>_1_i387.
      	Disable unsupported alternatives using "enabled" attribute.  Use
      	nonimm_ssenomem_operand as operand 1 predicate.  Also check
      	X87_ENABLE_ARITH for TARGET_MIX_SSE_I387 alternatives.
      	* config/i386/predicates.md (nonimm_ssenomem_operand): New predicate.
      	(register_mixssei387nonimm_operand): Remove predicate.
      
      From-SVN: r235727
      Uros Bizjak committed
    • lib-xref-spark_specific.adb (Add_SPARK_Scope): add task type scope. · eff69022
      2016-05-02  Arnaud Charlet  <charlet@adacore.com>
      
      	* lib-xref-spark_specific.adb (Add_SPARK_Scope): add task type scope.
      	(Detect_And_Add_SPARK_Scope): detect and add task type scope.
      	(Enclosing_Subprogram_Or_Package): Respect boundaries of task
      	and entry declarations.
      	* spark_xrefs.ads: minor typo in comment.
      
      From-SVN: r235726
      Arnaud Charlet committed
    • make.adb: Minor... · fb8d37ef
      2016-05-02  Arnaud Charlet  <charlet@adacore.com>
      
      	* make.adb: Minor: avoid an exception when calling gnatmake with
      	no argument and gnatmake is built with checks on.
      	* lib-xref-spark_specific.adb: Minor code cleanup.
      
      From-SVN: r235725
      Arnaud Charlet committed
    • Minor reformatting. · 7cc9a6a9
      From-SVN: r235724
      Arnaud Charlet committed
    • sem_util.adb (Normalize_Actuals): Take into account extra actuals that may have… · c4405dfe
      sem_util.adb (Normalize_Actuals): Take into account extra actuals that may have been introduced previously.
      
      2016-05-02  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_util.adb (Normalize_Actuals): Take into account extra
      	actuals that may have been introduced previously. Normally extra
      	actuals are introduced when a call is expanded, but a validity
      	check may copy and reanalyze a call that carries an extra actual
      	(e.g. an accessibility parameter) before the call itself is
      	marked Analzyed, and the analysis of the copy has to be able to
      	cope with the added actual.
      
      From-SVN: r235723
      Ed Schonberg committed
    • Simplify cst_and_fits_in_hwi · 05ff4c5f
      While looking at the use of cst_and_fits_in_hwi in tree-ssa-loop-ivopts.c,
      I had difficulty working out what the function actually tests.  The
      final NUNITS check seems redundant, since it asks about the number of
      HWIs in the _unextended_ constant.  We've already checked that the
      unextended constant has no more than HOST_BITS_PER_WIDE_INT bits, so the
      length must be 1.
      
      I think this was my fault, sorry.
      
      Tested on x86_64-linux-gnu and aarch64-linux-gnu.
      
      gcc/
      	* tree.c (cst_and_fits_in_hwi): Simplify.
      
      From-SVN: r235722
      Richard Sandiford committed
    • Add a wi::to_wide helper function · 697e0b28
      As Richard says, we ought to have a convenient way of converting
      an INTEGER_CST to a wide_int of a particular precision without
      having to extract the sign of the INTEGER_CST's type each time.
      This patch adds a wi::to_wide helper for that, alongside the
      existing wi::to_offset and wi::to_widest.
      
      Tested on x86_64-linux-gnu and aarch64-linux-gnu.
      
      gcc/
      	* tree.h (wi::to_wide): New function.
      	* expr.c (expand_expr_real_1): Use wi::to_wide.
      	* fold-const.c (int_const_binop_1): Likewise.
      	(extract_muldiv_1): Likewise.
      
      gcc/c-family/
      	* c-common.c (shorten_compare): Use wi::to_wide.
      
      From-SVN: r235721
      Richard Sandiford committed
    • Support << and >> for offset_int and widest_int · 8de73453
      Following on from the comparison patch, I think it makes sense to
      support << and >> for offset_int (int128_t) and widest_int (intNNN_t),
      with >> being arithmetic shift.  It doesn't make sense to use
      logical right shift on a potentially negative offset_int, since
      the precision of 128 bits has no meaning on the target.
      
      Tested on x86_64-linux-gnu and aarch64-linux-gnu.
      
      gcc/
      	* wide-int.h: Update offset_int and widest_int documentation.
      	(WI_SIGNED_SHIFT_RESULT): New macro.
      	(wi::binary_shift): Define signed_shift_result_type for
      	shifts on offset_int- and widest_int-like types.
      	(generic_wide_int): Support <<= and >>= if << and >> are supported.
      	* tree.h (int_bit_position): Use shift operators instead of wi::
      	 shifts.
      	* alias.c (adjust_offset_for_component_ref): Likewise.
      	* expr.c (get_inner_reference): Likewise.
      	* fold-const.c (fold_comparison): Likewise.
      	* gimple-fold.c (fold_nonarray_ctor_reference): Likewise.
      	* gimple-ssa-strength-reduction.c (restructure_reference): Likewise.
      	* tree-dfa.c (get_ref_base_and_extent): Likewise.
      	* tree-ssa-alias.c (indirect_ref_may_alias_decl_p): Likewise.
      	(stmt_kills_ref_p): Likewise.
      	* tree-ssa-ccp.c (bit_value_binop_1): Likewise.
      	* tree-ssa-math-opts.c (find_bswap_or_nop_load): Likewise.
      	* tree-ssa-sccvn.c (copy_reference_ops_from_ref): Likewise.
      	(ao_ref_init_from_vn_reference): Likewise.
      
      gcc/cp/
      	* init.c (build_new_1): Use shift operators instead of wi:: shifts.
      
      From-SVN: r235720
      Richard Sandiford committed
    • Support <, <=, > and >= for offset_int and widest_int · 032c80e9
      offset_int and widest_int are supposed to be at least one bit wider
      than all the values they need to represent, with the extra bits
      being signs.  Thus offset_int is effectively int128_t and widest_int
      is effectively intNNN_t, for target-dependent NNN.
      
      Because the types are signed, there's not really any need to specify
      a sign for operations like comparison.  I think things would be clearer
      if we supported <, <=, > and >= for them (but not for wide_int, which
      doesn't have a sign).
      
      Tested on x86_64-linux-gnu and aarch64-linux-gnu.
      
      gcc/
      	* wide-int.h: Update offset_int and widest_int documentation.
      	(WI_SIGNED_BINARY_PREDICATE_RESULT): New macro.
      	(wi::binary_traits): Allow ordered comparisons between offset_int and
      	offset_int, between widest_int and widest_int, and between either
      	of these types and basic C types.
      	(operator <, <=, >, >=): Define for the same combinations.
      	* tree.h (tree_int_cst_lt): Use comparison operators instead
      	of wi:: comparisons.
      	(tree_int_cst_le): Likewise.
      	* gimple-fold.c (fold_array_ctor_reference): Likewise.
      	(fold_nonarray_ctor_reference): Likewise.
      	* gimple-ssa-strength-reduction.c (record_increment): Likewise.
      	* tree-affine.c (aff_comb_cannot_overlap_p): Likewise.
      	* tree-parloops.c (try_transform_to_exit_first_loop_alt): Likewise.
      	* tree-sra.c (completely_scalarize): Likewise.
      	* tree-ssa-alias.c (stmt_kills_ref_p): Likewise.
      	* tree-ssa-reassoc.c (extract_bit_test_mask): Likewise.
      	* tree-vrp.c (extract_range_from_binary_expr_1): Likewise.
      	(check_for_binary_op_overflow): Likewise.
      	(search_for_addr_array): Likewise.
      	* ubsan.c (ubsan_expand_objsize_ifn): Likewise.
      
      From-SVN: r235719
      Richard Sandiford committed
    • Fix warnings, update source code. · cd1e4d41
      include/
      2016-05-02  Claudiu Zissulescu  <claziss@synopsys.com>
      
      	* config/arc/arc.c (arc_preferred_simd_mode): Remove enum keyword.
      	(arc_save_restore): Likewise.
      	(arc_dwarf_register_span): Likewise.
      	(arc_output_pic_addr_const): Initialize suffix variable.
      
      From-SVN: r235718
      Claudiu Zissulescu committed
    • [multiple changes] · 07eb872e
      2016-05-02  Bob Duff  <duff@adacore.com>
      
      	* sem_ch10.adb (Analyze_Compilation_Unit): Preserve
      	treeishness. Previous version had Context_Items shared between
      	the spec and body.
      
      2016-05-02  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_aggr.adb (Resolve_Aggr_Expression): For both array and
      	record cases, apply predicate check on component for expression
      	only if expression has been analyzed already. For expressions
      	that need to be duplicated when they cover multiple components,
      	resolution and predicate checking take place later.
      
      2016-05-02  Olivier Hainque  <hainque@adacore.com>
      
      	* a-direct.adb (Delete_Tree): Use full names to designate subdirs
      	and files therein, instead of local names after a change of
      	current directory.
      
      From-SVN: r235717
      Arnaud Charlet committed
    • freeze.adb (Check_Component_Storage_Order): Get full view of component type. · a25ad01c
      2016-05-02  Thomas Quinot  <quinot@adacore.com>
      
      	* freeze.adb (Check_Component_Storage_Order): Get full view of
      	component type.
      
      From-SVN: r235716
      Thomas Quinot committed
    • checks.adb, [...]: Minor reformatting. · 558fbeb0
      2016-05-02  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* checks.adb, freeze.adb, sem_res.adb, s-stposu.adb, repinfo.adb:
      	Minor reformatting.
      
      From-SVN: r235714
      Hristian Kirtchev committed
    • [multiple changes] · 1e60643a
      2016-05-02  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* sem_ch4.adb (Find_Indexing_Operations): Use the underlying type
      	of the container base type in case the container is a subtype.
      	* sem_ch5.adb (Analyze_Iterator_Specification): Ensure that
      	the selector has an entity when checking for a component of a
      	mutable object.
      
      2016-05-02  Arnaud Charlet  <charlet@adacore.com>
      
      	Remove dead code.
      	* opt.ads (Latest_Ada_Only): New flag.
      	* sem_prag.adb, par-prag.adb: Ignore pragma Ada_xx under this flag.
      	* usage.adb, switch-c.adb: Disable support for -gnatxx under this flag.
      	* einfo.ads (Has_Predicates, Predicate_Function):
      	Clarify that Has_Predicates does not imply that Predicate_Function
      	will return a non-empty entity.
      
      2016-05-02  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_res.adb (Resolve_Qualified_Expression): Generate a predicate
      	check if type requires it.
      	* checks.adb (Apply_Predicate_Check): Disable checks in the
      	object declaration created for an expression with side-effects
      	that requires a predicate check to prevent infinite recursion
      	during expansion.
      
      2016-05-02  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch6.adb (Process_Formals): Check properly the type of a
      	formal to determine whether a given convention applies to it.
      
      2016-05-02  Doug Rupp  <rupp@adacore.com>
      
      	* tracebak.c: Add incantations for arm-vxworks[67] traceback.
      
      2016-05-02  Thomas Quinot  <quinot@adacore.com>
      
      	* freeze.adb (Check_Component_Storage_Order): Make it a warning, not an
      	error, to have a component with implicit SSO within a composite type
      	that has explicit SSO.
      
      2016-05-02  Bob Duff  <duff@adacore.com>
      
      	* s-stposu.adb (Allocate_Any_Controlled): Don't lock/unlock twice.
      
      2016-05-02  Ed Schonberg  <schonberg@adacore.com>
      
      	* repinfo.adb (List_Entities): Make procedure recursive, to
      	provide representation information for subprograms declared
      	within subprogram bodies.
      
      From-SVN: r235713
      Arnaud Charlet committed
    • Symbol summary: refactor usage of gcc_checking_asserts · 0ec955c2
      	* symbol-summary.h (function_summary::function_summary):
      	Remove checking assert for all cgraph nodes.
      	(function_summary::get): Check summary_uid.
      	(symtab_insertion): Check summary_uid.
      
      From-SVN: r235712
      Martin Liska committed
    • Minor reformatting. · 3702225c
      From-SVN: r235711
      Arnaud Charlet committed
    • [multiple changes] · f96fd197
      2016-05-02  Arnaud Charlet  <charlet@adacore.com>
      
      	* exp_ch5.adb, layout.adb, gnatcmd.adb exp_attr.adb, make.adb,
      	bindgen.adb, debug.adb, exp_pakd.adb, freeze.adb, sem_util.adb,
      	gnatlink.adb, switch-m.adb, exp_ch4.adb, repinfo.adb, adabkend.adb,
      	osint.adb: Remove dead code.
      
      2016-05-02  Yannick Moy  <moy@adacore.com>
      
      	* a-tigeli.adb (Get_Line): Fix bound for test to
      	decide when to compensate for character 0 added by call to fgets.
      
      From-SVN: r235710
      Arnaud Charlet committed
    • [multiple changes] · 3ba1a9eb
      2016-05-02  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch4.adb (Analyze_Allocator): If the expression does not
      	have a subtype indication and the type is an unconstrained tagged
      	type with defaulted discriminants, create an explicit constraint
      	for it during analysis to prevent out-of-order freezing actions
      	on generated classwide types.
      
      2016-05-02  Javier Miranda  <miranda@adacore.com>
      
      	* exp_ch5.adb (Expand_N_Assignment_Statement):
      	In the runtime check that ensures that the tags of source an
      	target match, add missing displacement of the pointer to the
      	objects if they cover interface types.
      
      2016-05-02  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_attr.adb (Analyze_Attribute, case 'Old): Do not use
      	base type for attribute when type is discrete: transformation
      	is not needed for such types, and leads to spurious errors if
      	the context is a case construct.
      
      From-SVN: r235709
      Arnaud Charlet committed
    • [ARC] Add new ARCv2 instructions. · fc1c2d04
      gcc/
      2016-05-02  Claudiu Zissulescu  <claziss@synopsys.com>
      
      	* config/arc/arc-protos.h (compact_memory_operand_p): Declare.
      	* config/arc/arc.c (arc_output_commutative_cond_exec): Consider
      	bmaskn instruction.
      	(arc_dwarf_register_span): Remove enum keyword.
      	(compact_memory_operand_p): New function.
      	* config/arc/arc.h (reg_class): Add code density register classes.
      	(REG_CLASS_NAMES): Likewise.
      	(REG_CLASS_CONTENTS): Likewise.
      	* config/arc/arc.md (*movqi_insn): Add code density instructions.
      	(*movhi_insn, *movsi_insn, *movsf_insn): Likewise.
      	(*extendhisi2_i, andsi3_i, cmpsi_cc_insn_mixed): Likewise.
      	(*cmpsi_cc_c_insn, *movsi_ne): Likewise.
      	* config/arc/constraints.md (C2p, Uts, Cm1, Cm3, Ucd): New
      	constraints.
      	(h, Rcd, Rsd, Rzd): New register constraints.
      	(T): Use compact_memory_operand_p function.
      	* config/arc/predicates.md (compact_load_memory_operand): Remove.
      
      From-SVN: r235707
      Claudiu Zissulescu committed
    • decl.c (grokdeclarator): Properly insert a DECL_EXPR for anonymous VLAs. · 02673c66
      2016-05-02  Richard Biener  <rguenther@suse.de>
      
      	cp/
      	* decl.c (grokdeclarator): Properly insert a DECL_EXPR for
      	anonymous VLAs.
      
      From-SVN: r235706
      Richard Biener committed
    • trans-array.c (gfc_trans_create_temp_array): Properly create a DECL_EXPR for the… · c83e6ebf
      trans-array.c (gfc_trans_create_temp_array): Properly create a DECL_EXPR for the anonymous VLA array type.
      
      2016-05-02  Richard Biener  <rguenther@suse.de>
      
      	fortran/
      	* trans-array.c (gfc_trans_create_temp_array): Properly
      	create a DECL_EXPR for the anonymous VLA array type.
      
      From-SVN: r235705
      Richard Biener committed
    • sh.md (*negnegt, *movtt): Remove. · 7555e8b2
      gcc/
      	* config/sh/sh.md (*negnegt, *movtt): Remove.
      
      From-SVN: r235704
      Oleg Endo committed
    • decl.c (elaborate_reference_1): Do not bother about operand #2 for COMPONENT_REF. · 552cc590
      	* gcc-interface/decl.c (elaborate_reference_1): Do not bother about
      	operand #2 for COMPONENT_REF.
      	* gcc-interface/utils2.c (gnat_save_expr): Likewise.
      	(gnat_protect_expr): Likewise.
      	(gnat_stabilize_reference_1): Likewise.
      	(gnat_rewrite_reference): Do not bother about operand #3 for ARRAY_REF.
      	(get_inner_constant_reference): Likewise.
      	(gnat_invariant_expr): Likewise.
      	* gcc-interface/trans.c (fold_constant_decl_in_expr): Likewise.
      
      From-SVN: r235701
      Eric Botcazou committed
    • Fix ICE in dump_pred_graph · 6b9933b9
      2016-05-02  Marek Polacek  <polacek@redhat.com>
      	    Tom de Vries  <tom@codesourcery.com>
      
      	PR tree-optimization/70700
      	* tree-ssa-structalias.c (dump_pred_graph): Fix getting varinfo for ids
      	bigger than FIRST_REF_NODE.
      
      	* gcc.dg/pr70700.c: New test.
      
      Co-Authored-By: Tom de Vries <tom@codesourcery.com>
      
      From-SVN: r235700
      Marek Polacek committed
    • trans.c (Range_to_gnu): New static function. · 3eaec285
      	* gcc-interface/trans.c (Range_to_gnu): New static function.
      	(Raise_Error_to_gnu) <N_In>: Call it to translate the range.
      	(gnat_to_gnu) <N_In>: Likewise.
      
      From-SVN: r235699
      Eric Botcazou committed
    • re PR target/52898 (SH Target: Inefficient DImode comparisons) · 40d848c7
      gcc/
      	PR target/52898
      	* config/sh/sh.c (sh_option_override): Remove TARGET_CBRANCHDI4,
      	TARGET_CMPEQDI_T.
      	(prepare_cbranch_operands): Don't use scratch register.  Assume that
      	function is used when pseudos can be created.
      	(expand_cbranchdi4): Likewise.  Remove unused TARGET_CMPEQDI_T paths.
      	* config/sh/sh.md (cbranchsi4): Allow only when pseudos can be created.
      	(cbranchdi4, cbranchdi4_i): Simplify to single cbranchdi4
      	define_expand.  Allow it only when pseudos can be created.
      	* config/sh/sh.opt (mcbranchdi, mcmpeqdi): Delete.
      
      From-SVN: r235698
      Oleg Endo committed
    • Daily bump. · 126fa2bb
      From-SVN: r235697
      GCC Administrator committed
  2. 01 May, 2016 4 commits