Commit Graph

146892 Commits

Author SHA1 Message Date
Jakub Sejdak a34c0db51e config.host: Add suport for arm*-*-phoenix* targets.
2016-06-23  Jakub Sejdak  <jakub.sejdak@phoesys.com>

   * config.host: Add suport for arm*-*-phoenix* targets.

From-SVN: r237729
2016-06-23 07:32:58 +00:00
Jakub Sejdak bfdd80d44c config.gcc: Add support for arm*-*-phoenix* targets.
2016-06-23  Jakub Sejdak  <jakub.sejdak@phoesys.com>

	* config.gcc: Add support for arm*-*-phoenix* targets.
	* config/arm/t-phoenix: New.
	* config/phoenix.h: New.

From-SVN: r237728
2016-06-23 07:28:17 +00:00
Jakub Sejdak fd6487af15 configure.ac: Disable libgcj and libgloss for Phoenix-RTOS targets.
2016-06-23  Jakub Sejdak  <jakub.sejdak@phoesys.com>

    * configure.ac: Disable libgcj and libgloss for Phoenix-RTOS targets.
    * configure: Regenerate.

From-SVN: r237727
2016-06-23 07:12:16 +00:00
GCC Administrator cc425e3da7 Daily bump.
From-SVN: r237726
2016-06-23 00:16:18 +00:00
Uros Bizjak cc901875eb * testsuite/ChangeLog: Whitespace fixes.
From-SVN: r237721
2016-06-23 00:13:41 +02:00
Uros Bizjak e3d62871c3 re PR target/67400 (-fno-plt doesn't work with function pointers)
PR target/67400
	* config/i386/i386-protos.h (ix86_force_load_from_GOT_p): New.
	* config/i386/i386.c (ix86_force_load_from_GOT_p): New function.
	(ix86_legitimate_constant_p): Do not allow UNSPEC_GOTPCREL if
	ix86_force_load_from_GOT_p returns true.
	(ix86_legitimate_address_p): Allow UNSPEC_GOTPCREL if
	ix86_force_load_from_GOT_p returns true.
	(ix86_print_operand_address_as): Support UNSPEC_GOTPCREL if
	ix86_force_load_from_GOT_p returns true.
	(ix86_expand_move): Load the external function address via the
	GOT slot if ix86_force_load_from_GOT_p returns true.
	* config/i386/predicates.md (x86_64_immediate_operand): Return
	false for SYMBOL_REFs where ix86_force_load_from_GOT_p returns true.
	(x86_64_zext_immediate_operand): Ditto.

testsuite/ChangeLog:

	PR target/67400
        * gcc.target/i386/pr67400-1.c: New test.
        * gcc.target/i386/pr67400-2.c: Likewise.
        * gcc.target/i386/pr67400-3.c: Likewise.
        * gcc.target/i386/pr67400-4.c: Likewise.
        * gcc.target/i386/pr67400-5.c: Likewise.
        * gcc.target/i386/pr67400-6.c: Likewise.
        * gcc.target/i386/pr67400-7.c: Likewise.

From-SVN: r237720
2016-06-23 00:06:56 +02:00
Uros Bizjak 37c467c0a5 i386.c (ix86_expand_move): Simplify SYMBOL_REF handling.
* config/i386/i386.c (ix86_expand_move): Simplify SYMBOL_REF handling.

From-SVN: r237716
2016-06-22 20:40:21 +02:00
David Malcolm ac81cf0b2b libcpp: Tweak to missing #include source location
This patch tweaks the error message location for missing header files.

Previously these read:

test.c:1:17: fatal error: 404.h: No such file or directory
 #include "404.h"
                 ^
compilation terminated.

With this patch, the pertinent string is underlined:

test.c:1:10: fatal error: 404.h: No such file or directory
 #include "404.h"
          ^~~~~~~
compilation terminated.

gcc/testsuite/ChangeLog:
	* c-c++-common/missing-header-1.c: New test case.
	* c-c++-common/missing-header-2.c: New test case.
	* c-c++-common/missing-header-3.c: New test case.
	* c-c++-common/missing-header-4.c: New test case.

libcpp/ChangeLog:
	* directives.c (do_include_common): Pass on "location" to
	_cpp_stack_include.
	* errors.c (cpp_diagnostic): Reimplement in terms of...
	(cpp_diagnostic_at): New function.
	(cpp_error_at): New function.
	(cpp_errno_filename): Add "loc" param and use it by using
	cpp_error_at rather than cpp_error.
	* files.c (find_file_in_dir): Add "loc" param and pass it to
	open_file_failed.
	(_cpp_find_file): Add "loc" param.  Use it to convert calls to
	cpp_error to cpp_error_at, and pass it to find_file_in_dir and
	open_file_failed.
	(read_file_guts): Add "loc" param.  Use it to convert calls to
	cpp_error to cpp_error_at.  Pass it to cpp_errno_filename.
	(read_file): Add "loc" param.  Pass it to open_file_failed and
	read_file_guts.
	(should_stack_file): Add "loc" param.  Pass it to read_file.
	(_cpp_stack_file): Add "loc" param.  Pass it to should_stack_file.
	(_cpp_stack_include): Add "loc" param.  Pass it to
	_cpp_find_file and _cpp_stack_file.
	(open_file_failed): Add "loc" param.  Pass it to
	cpp_errno_filename.
	(_cpp_fake_include): Add 0 as a source_location in call to
	_cpp_find_file.
	(_cpp_compare_file_date): Likewise.
	(cpp_push_include): Likewise for call to _cpp_stack_include.
	(cpp_push_default_include): Likewise.
	(_cpp_save_file_entries): Likewise for call to open_file_failed.
	(_cpp_has_header): Likewise for call to _cpp_find_file.
	* include/cpplib.h (cpp_errno_filename): Add source_location
	param.
	(cpp_error_at): New declaration.
	* init.c (cpp_read_main_file): Add 0 as a source_location in calls
	to _cpp_find_file and _cpp_stack_file.
	* internal.h (_cpp_find_file): Add source_location param.
	(_cpp_stack_file): Likewise.
	(_cpp_stack_include): Likewise.

From-SVN: r237715
2016-06-22 15:29:21 +00:00
David Malcolm 1a4f11c88a C FE: suggest corrections for misspelled identifiers and type names
gcc/c-family/ChangeLog:
	PR c/70339
	* c-common.h (enum lookup_name_fuzzy_kind): New enum.
	(lookup_name_fuzzy): New prototype.

gcc/c/ChangeLog:
	PR c/70339
	* c-decl.c: Include spellcheck-tree.h and gcc-rich-location.h.
	(implicit_decl_warning): When issuing warnings for implicit
	declarations, attempt to provide a suggestion via
	lookup_name_fuzzy.
	(undeclared_variable): Likewise when issuing errors.
	(lookup_name_in_scope): Likewise.
	(struct edit_distance_traits<cpp_hashnode *>): New struct.
	(best_macro_match): New typedef.
	(find_closest_macro_cpp_cb): New function.
	(lookup_name_fuzzy): New function.
	* c-parser.c: Include gcc-rich-location.h.
	(c_token_starts_typename): Split out case CPP_KEYWORD into...
	(c_keyword_starts_typename): ...this new function.
	(c_parser_declaration_or_fndef): When issuing errors about
	missing "struct" etc, add a fixit.  For other kinds of errors,
	attempt to provide a suggestion via lookup_name_fuzzy.
	(c_parser_parms_declarator): When looking ahead to detect typos in
	type names, also reject CPP_KEYWORD.
	(c_parser_parameter_declaration): When issuing errors about
	unknown type names, attempt to provide a suggestion via
	lookup_name_fuzzy.
	* c-tree.h (c_keyword_starts_typename): New prototype.

gcc/ChangeLog:
	PR c/70339
	* diagnostic-core.h (pedwarn_at_rich_loc): New prototype.
	* diagnostic.c (pedwarn_at_rich_loc): New function.
	* spellcheck.h (best_match::best_match): Add a
	"best_distance_so_far" optional parameter.
	(best_match::set_best_so_far): New method.
	(best_match::get_best_distance): New accessor.
	(best_match::get_best_candidate_length): New accessor.

gcc/testsuite/ChangeLog:
	PR c/70339
	* c-c++-common/attributes-1.c: Update dg-prune-output to include
	hint.
	* gcc.dg/diagnostic-token-ranges.c (undeclared_identifier): Update
	expected results due to builtin "nanl" now being suggested for
	"name".
	* gcc.dg/pr67580.c: Update expected messages.
	* gcc.dg/spellcheck-identifiers.c: New testcase.
	* gcc.dg/spellcheck-typenames.c: New testcase.

From-SVN: r237714
2016-06-22 15:20:41 +00:00
Nick Clifton 6f99ef82f1 dwarf2out.c (scompare_loc_descriptor): Use SCALAR_INT_MODE_P() in place of GET_MODE_CLASS() == MODE_INT...
* dwarf2out.c (scompare_loc_descriptor): Use SCALAR_INT_MODE_P() in
	place of GET_MODE_CLASS() == MODE_INT, so that partial integer
	modes are accepted as well.
	(ucompare_loc_descriptor): Likewise.
	(minmax_loc_descriptor): Likewise.
	(clz_loc_descriptor): Likewise.
	(popcount_loc_descriptor): Likewise.
	(bswap_loc_descriptor): Likewise.
	(rotate_loc_descriptor): Likewise.
	(mem_loc_descriptor): Likewise.
	(loc_descriptor): Likewise.

From-SVN: r237713
2016-06-22 15:12:39 +00:00
David Malcolm a93eac6a84 Implement -fdiagnostics-parseable-fixits
gcc/ChangeLog:
	* common.opt (fdiagnostics-parseable-fixits): New option.
	* diagnostic.c: Include "selftest.h".
	(print_escaped_string): New function.
	(print_parseable_fixits): New function.
	(diagnostic_report_diagnostic): Call print_parseable_fixits.
	(selftest::assert_print_escaped_string): New function.
	(ASSERT_PRINT_ESCAPED_STRING_STREQ): New macro.
	(selftest::test_print_escaped_string): New function.
	(selftest::test_print_parseable_fixits_none): New function.
	(selftest::test_print_parseable_fixits_insert): New function.
	(selftest::test_print_parseable_fixits_remove): New function.
	(selftest::test_print_parseable_fixits_replace): New function.
	(selftest::diagnostic_c_tests): New function.
	* diagnostic.h (struct diagnostic_context): Add field
	"parseable_fixits_p".
	* doc/invoke.texi (Diagnostic Message Formatting Options): Add
	-fdiagnostics-parseable-fixits.
	(-fdiagnostics-parseable-fixits): New option.
	* opts.c (common_handle_option): Handle
	-fdiagnostics-parseable-fixits.
	* selftest-run-tests.c (selftest::run_tests): Call
	selftest::diagnostic_c_tests.
	* selftest.h (selftest::diagnostic_c_tests): New prototype.

gcc/testsuite/ChangeLog:
	* gcc.dg/plugin/diagnostic-test-show-locus-parseable-fixits.c: New
	file.
	* gcc.dg/plugin/plugin.exp (plugin_test_list): Add
	diagnostic-test-show-locus-parseable-fixits.c to sources for
	diagnostic_plugin_test_show_locus.c.
	* lib/gcc-defs.exp (freeform_regexps): New global.
	(dg-regexp): New function.
	(handle-dg-regexps): New function.
	* lib/gcc-dg.exp (cleanup-after-saved-dg-test): Reset
	freeform_regexps to the empty list.
	* lib/prune.exp (prune_gcc_output): Call handle-dg-regexps.

libcpp/ChangeLog:
	* include/line-map.h (fixit_hint::get_start_loc): New pure virtual
	function.
	(fixit_hint::maybe_get_end_loc): Likewise.
	(fixit_insert::get_start_loc): New function, implementing
	fixit_hint::get_start_loc.
	(fixit_insert::maybe_get_end_loc): New function, implementing
	fixit_hint::maybe_get_end_loc.
	(fixit_remove::get_start_loc): New function, implementing
	fixit_hint::get_start_loc.
	(fixit_remove::maybe_get_end_loc): New function, implementing
	fixit_hint::maybe_get_end_loc.
	(fixit_replace::get_start_loc): New function, implementing
	fixit_hint::get_start_loc.
	(fixit_replace::maybe_get_end_loc): New function, implementing
	fixit_hint::maybe_get_end_loc.

From-SVN: r237712
2016-06-22 14:42:30 +00:00
Eric Botcazou d53c039815 * gcc.dg/guality/param-5.c (clear_stack): Tweak.
From-SVN: r237710
2016-06-22 14:35:50 +00:00
Georg-Johann Lay e0277d6b51 re PR target/71151 ([avr] -fmerge-constants and -fdata-sections/-ffunction-sections results in string constants in .progmem.gcc_sw section)
* gcc/ChangeLog: Add pointer to PR71151 for r237536.
	* gcc/testsuite/ChangeLog: Same.

From-SVN: r237709
2016-06-22 14:29:59 +00:00
Eric Botcazou e193b105a1 * gcc.dg/guality/param-5.c (clear_stack): Tweak.
From-SVN: r237707
2016-06-22 14:28:57 +00:00
Ilya Enkovich 49e76ff114 re PR tree-optimization/71488 (Wrong code for vector comparisons with ivybridge and westmere targets)
gcc/

	PR middle-end/71488
	* tree-vect-patterns.c (vect_recog_mask_conversion_pattern): Support
	comparison of boolean vectors.
	* tree-vect-stmts.c (vectorizable_comparison): Vectorize comparison
	of boolean vectors using bitwise operations.

gcc/testsuite/

	PR middle-end/71488
	* g++.dg/pr71488.C: New test.
	* gcc.dg/vect/vect-bool-cmp.c: New test.

From-SVN: r237706
2016-06-22 14:05:55 +00:00
Andreas Schwab 79c94ff796 aarch64-protos.h (aarch64_elf_asm_named_section): Remove declaration.
* config/aarch64/aarch64-protos.h (aarch64_elf_asm_named_section):
Remove declaration.

From-SVN: r237705
2016-06-22 13:50:23 +00:00
Eric Botcazou 951d8c8a23 * function.c (assign_parm_setup_reg): Prevent sharing in another case.
From-SVN: r237703
2016-06-22 13:13:22 +00:00
Bernd Edlinger b60fc3bdf8 i386.c (print_reg): Emit an error message on attempt to print FLAGS_REG.
gcc:
2016-06-22  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        * config/i386/i386.c (print_reg): Emit an error message on attempt to
        print FLAGS_REG.

testsuite:
2016-06-22  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        * gcc.target/i386/asm-flag-7.c: New test.

From-SVN: r237702
2016-06-22 13:01:11 +00:00
Eric Botcazou 9465f1d3fc Add final newline.
From-SVN: r237701
2016-06-22 12:25:34 +00:00
Arnaud Charlet e3de253ff0 Minor reformatting.
From-SVN: r237700
2016-06-22 13:50:48 +02:00
Arnaud Charlet d13ecc2dc7 sem_prag.adb: Revert unwanted change in previous commit, only keep message fix.
2016-06-22  Arnaud Charlet  <charlet@adacore.com>

	* sem_prag.adb: Revert unwanted change in previous commit,
	only keep message fix.

From-SVN: r237699
2016-06-22 12:51:37 +02:00
Ed Schonberg 017d237ede sem_prag.ads (Build_Classwide_Expression): new procedure to build the expression for an inherited classwide condition...
2016-06-22  Ed Schonberg  <schonberg@adacore.com>

	* sem_prag.ads (Build_Classwide_Expression): new procedure to
	build the expression for an inherited classwide condition, and
	to validate such expressions when they apply to an inherited
	operation that is not overridden.
	* sem_prag.adb (Primitives_Mapping): new data structure to
	handle the mapping between operations of a root type and the
	corresponding overriding operations of a type extension. Used
	to construct the expression for an inherited classwide condition.
	(Update_Primitives_Mapping): add to Primitives_Mapping the links
	between primitive operations of a root type and those of a given
	type extension.
	(Build_Pragma_Check_Equivalent): use Primitives_Mapping.
	* sem_ch6.adb (New_Overloaded_Entity): Remove call to
	Collect_Iherited_Class_Wide_Conditions in GNATprove_Mode. This
	needs to be done at freeze point of the type.
	* freeze.adb (Check_Inherited_Conditions): new procedure to
	verify the legality of inherited classwide conditions. In normal
	compilation mode the procedure determines whether an inherited
	operation needs a wrapper to handle an inherited condition that
	differs from the condition of the root type.  In SPARK mode
	the routine invokes Collect_Inherited_Class_Wide_Conditions to
	produce the SPARK version of these inherited conditions.
	(Freeze_Record_Type): For a type extension, call
	Check_Inherited_Conditions.

From-SVN: r237698
2016-06-22 12:49:48 +02:00
Arnaud Charlet 497a660d21 [multiple changes]
2016-06-22  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_ch3.adb, sem_type.adb, sem.adb, freeze.adb, sem_util.adb,
	s-htable.adb, exp_ch11.adb, s-secsta.adb, restrict.adb, exp_disp.adb,
	sem_ch8.adb, s-tpobop.adb, exp_aggr.ads, sem_ch13.adb: Minor
	reformatting.

2016-06-22  Yannick Moy  <moy@adacore.com>

	* lib-xref-spark_specific.adb (Collect_SPARK_Xrefs): Inverse order of
	treatments so that files without compilation unit are simply skipped
	before more elaborate treatments.

2016-06-22  Bob Duff  <duff@adacore.com>

	* s-memory.ads: Minor typo fixes in comments.
	* s-memory.adb: Code cleanup.

From-SVN: r237697
2016-06-22 12:48:33 +02:00
Olivier Hainque 35484fc8b0 * vxworks-crtbe-link.spec: Removed, no longer used.
From-SVN: r237696
2016-06-22 12:46:14 +02:00
Arnaud Charlet a9f5b1b836 Code cleanup.
From-SVN: r237695
2016-06-22 12:43:12 +02:00
Justin Squirek 194d6f3fc9 sem_ch8.adb (Push_Scope): Add a check for when the scope table is empty to assign the global variable...
2016-06-22  Justin Squirek  <squirek@adacore.com>

	* sem_ch8.adb (Push_Scope): Add a check for when the
	scope table is empty to assign the global variable
	Configuration_Component_Alignment.
	* sem.adb (Do_Analyze): Add Configuration_Component_Alignment
	to be assigned when the environment is cleaned instead of the
	default.
	* sem.ads Add a global variable Configuration_Component_Alignment
	to store the value given by pragma Component_Alignment in the
	context of a configuration file.
	* sem_prag.adb (Analyze_Pragma): Correct the case for
	Component_Alignment so that the pragma is verified and add
	comments to explain how it is applied to the scope stack.

2016-06-22  Justin Squirek  <squirek@adacore.com>

	* sprint.adb (Sprint_Node_Actual): Add check in
	the case of an N_Object_Declaration when evaluating an expression
	to properly ignore errors.

From-SVN: r237694
2016-06-22 12:42:46 +02:00
Arnaud Charlet d1aea5ddc5 [multiple changes]
2016-06-22  Bob Duff  <duff@adacore.com>

	* g-comlin.ads (Parameter_Type): Change subtype of Last to
	Natural.
	* g-comlin.adb (Set_Parameter): Change subtype of Last to
	Natural.
	(Getopt): Check for Arg = "", and Switches /= "".
	(Internal_Initialize_Option_Scan): Check for Argument (Parser,
	Index) /= "".

2016-06-22  Gary Dismukes  <dismukes@adacore.com>

	* sem_prag.adb, sem_ch8.adb: Minor reformatting.

From-SVN: r237693
2016-06-22 12:39:31 +02:00
Arnaud Charlet 405b907c8f [multiple changes]
2016-06-22  Ed Schonberg  <schonberg@adacore.com>

	* einfo.ads, einfo.adb (Is_Actual_Subtype): New flag, defined
	on subtypes that are created within subprogram bodies to handle
	unconstrained composite formals.
	* checks.adb (Apply_Predicate_Check): Do not generate a check on
	an object whose type is an actual subtype.
	* sem_ch6.adb (Set_Actual_Subtypes): Do not generate an
	actual subtype for a formal whose base type is private.
	Set Is_Actual_Subtype on corresponding entity after analyzing
	its declaration.

2016-06-22  Justin Squirek  <squirek@adacore.com>

	* sem_prag.adb (Check_Expr_Is_OK_Static_Expression): Fix ordering
	of if-block and add in a condition to test for errors during
	resolution.
	* sem_res.adb (Resolution_Failed): Add comment to explain why
	the type of a node which failed to resolve is set to the desired
	type instead of Any_Type.
	* sem_ch8.adb (Analyze_Object_Renaming): Add a check for Any_Type
	to prevent crashes on Is_Access_Constant.

From-SVN: r237692
2016-06-22 12:37:08 +02:00
Arnaud Charlet 80007176a5 [multiple changes]
2016-06-22  Hristian Kirtchev  <kirtchev@adacore.com>

	* lib-xref-spark_specific.adb, checks.adb, sem_ch13.adb: Minor
	reformatting.
	* exp_ch7.adb: Minor typo fix.
	* lib.ads (Get_Top_Level_Code_Unit): Add comment.

2016-06-22  Bob Duff  <duff@adacore.com>

	* s-tassta.adb (Task_Wrapper): Fix handling of Fall_Back_Handler
	wrt independent tasks.

2016-06-22  Ed Schonberg  <schonberg@adacore.com>

	* sem_dim.adb (Analyze_Dimension): Propagate dimension for
	explicit_dereference nodes when they do not come from source,
	to handle correctly dimensional analysis on iterators over
	containers whose elements have declared dimensions.

From-SVN: r237691
2016-06-22 12:35:28 +02:00
Arnaud Charlet 7ffbef9966 spark_xrefs.ads (Scope_Num): type refined to positive integers.
2016-06-22  Arnaud Charlet  <charlet@adacore.com>

	* spark_xrefs.ads (Scope_Num): type refined to positive integers.
	* lib-xref-spark_specific.adb (Detect_And_Add_SPARK_Scope):
	moved into scope of Collect_SPARK_Xrefs.
	(Add_SPARK_Scope): moved into scope of Collect_SPARK_Xrefs;
	now uses Dspec and Scope_Id from Collect_SPARK_Xrefs.
	(Collect_SPARK_Xrefs): refactored to avoid retraversing the list
	of scopes.
	(Traverse_Compilation_Unit): refactored as a generic procedure.
	* types.ads (Unit_Number_Type): range refined.

From-SVN: r237690
2016-06-22 12:31:47 +02:00
Arnaud Charlet 71b235999d Minor cleanup.
From-SVN: r237689
2016-06-22 12:06:57 +02:00
Arnaud Charlet f26a3587a6 [multiple changes]
2016-06-22  Hristian Kirtchev  <kirtchev@adacore.com>

	* lib-xref-spark_specific.adb, a-cuprqu.ads, sem_ch6.adb: Minor
	reformatting.

2016-06-22  Eric Botcazou  <ebotcazou@adacore.com>

	* sem_util.ads (Address_Value): Declare new function.
	* sem_util.adb (Address_Value): New function extracted
	unmodified from Apply_Address_Clause_Check, which returns the
	underlying value of the expression of an address clause.
	* checks.adb (Compile_Time_Bad_Alignment): Delete.
	(Apply_Address_Clause_Check): Call Address_Value on
	the expression.  Do not issue the main warning here and
	issue the secondary warning only when the value of the
	expression is not known at compile time.
	* sem_ch13.adb (Address_Clause_Check_Record): Add A component and
	adjust the description.
	(Analyze_Attribute_Definition_Clause): In the case
	of an address, move up the code creating an entry in the table of
	address clauses.  Also create an entry for an absolute address.
	(Validate_Address_Clauses): Issue the warning for absolute
	addresses here too.  Tweak condition associated with overlays
	for consistency.

From-SVN: r237688
2016-06-22 12:05:04 +02:00
Arnaud Charlet f24ea9120d [multiple changes]
2016-06-22  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch13.adb (Is_Predicate_Static): An inherited predicate
	can be static only if it applies to a scalar type.

2016-06-22  Ed Schonberg  <schonberg@adacore.com>

	* exp_util.adb (Adjust_Result_Type): Convert operand to base
	type to prevent spurious constraint checks on subtypes of Boolean.

2016-06-22  Bob Duff  <duff@adacore.com>

	* debug.adb: Document debug switch -gnatd.o.
	* sem_elab.adb (Check_Internal_Call): Debug switch -gnatd.o
	now causes a more conservative treatment of indirect calls,
	treating P'Access as a call to P in more cases. We Can't make
	this the default, because it breaks common idioms, for example
	the soft links.
	* sem_util.adb: Add an Assert.

2016-06-22  Bob Duff  <duff@adacore.com>

	* a-cuprqu.ads, a-cuprqu.adb: Completely rewrite this package. Use
	red-black trees, which gives O(lg N) worst-case performance on
	Enqueue and Dequeue. The previous version had O(N) Enqueue in
	the worst case.

2016-06-22  Arnaud Charlet  <charlet@adacore.com>

	* sem_warn.adb: minor style fix in comment.
	* spark_xrefs.ads (Scope_Num): type refined to positive integers.
	* lib-xref-spark_specific.adb (Detect_And_Add_SPARK_Scope):
	moved into scope of Collect_SPARK_Xrefs.
	(Add_SPARK_Scope): moved into scope of Collect_SPARK_Xrefs;
	now uses Dspec and Scope_Id from Collect_SPARK_Xrefs.
	(Collect_SPARK_Xrefs): refactored to avoid retraversing the list
	of scopes.
	* sem_ch3.adb (Build_Discriminal): Set Parent of the discriminal.

From-SVN: r237687
2016-06-22 12:00:24 +02:00
Arnaud Charlet 3ae6c64384 Minor reformatting.
From-SVN: r237686
2016-06-22 11:55:54 +02:00
Arnaud Charlet b48a45e33c lib-xref-spark_specific.adb (Generate_Dereference): Assignment to not commented local variables replaced with direct uses of their...
2016-06-22  Arnaud Charlet  <charlet@adacore.com>

	* lib-xref-spark_specific.adb (Generate_Dereference): Assignment to not
	commented local variables replaced with direct uses of their values.

From-SVN: r237685
2016-06-22 11:55:42 +02:00
Arnaud Charlet 22da877084 [multiple changes]
2016-06-22  Hristian Kirtchev  <kirtchev@adacore.com>

	* exp_ch7.adb (Add_Invariant): Replace the
	current type instance with the _object parameter even in ASIS mode.
	(Build_Invariant_Procedure_Body): Do not insert the
	invariant procedure body into the tree for ASIS and GNATprove.
	(Build_Invariant_Procedure_Declaration): Do not insert the
	invariant procedure declaration into the tree for ASIS and
	GNATprove.
	* lib-xref-spark_specific.adb (Add_SPARK_Scope): Update comment.

2016-06-22  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch6.adb (Set_Actual_Subtypes): If the type of the actual
	has predicates, the actual subtype must be frozen properly
	because of the generated tests that may follow.  The predicate
	may be specified by an explicit aspect, or may be inherited in
	a derivation.

From-SVN: r237684
2016-06-22 11:51:47 +02:00
Ed Schonberg 444656ce62 exp_ch4.adb (In_Range_Chec)): New predicate, subsidiary of Expand_N_In...
2016-06-22  Ed Schonberg  <schonberg@adacore.com>

	* exp_ch4.adb (In_Range_Chec)): New predicate, subsidiary of
	Expand_N_In: within an expanded range check that might raise
	Constraint_Error do not generate a predicate check as well. It
	is redundant because the context will add an explicit predicate
	check, and it will raise the wrong exception if it fails.
	* lib-xref-spark_specific.adb (Add_SPARK_File): Remove useless checks
	since dependency units always have an associated compilation unit.

From-SVN: r237683
2016-06-22 11:48:49 +02:00
Arnaud Charlet 3bb91f983b lib.ads: Code cleanup.
2016-06-22  Arnaud Charlet  <charlet@adacore.com>

	* lib.ads: Code cleanup.
	* inline.adb: Type refinement for a counter variable.
	* lib-xref-spark_specific.adb (Add_SPARK_File): removal of no-op code.
	Code cleanup.

From-SVN: r237682
2016-06-22 11:47:02 +02:00
Kyrylo Tkachov f9405b6348 [ARM] Add initial support for Cortex-A73
* config/arm/arm.c (arm_cortex_a73_tune): New struct.
        * config/arm/arm-cores.def (cortex-a73): New entry.
        (cortex-a73.cortex-a35): Likewise.
        (cortex-a73.cortex-a53): Likewise.
        * config/arm/arm-tables.opt: Regenerate.
        * config/arm/arm-tune.md: Likewise.
        * config/arm/bpabi.h (BE8_LINK_SPEC): Handle mcpu=cortex-a73,
        mcpu=cortex-a73.cortex-a35 and mcpu=cortex-a73.cortex-a53.
        * config/arm/t-aprofile: Handle mcpu=cortex-a73,
        mcpu=cortex-a73.cortex-a35 and mcpu=cortex-a73.cortex-a53.
        * doc/invoke.texi (ARM Options): Document cortex-a73,
        cortex-a73.cortex-a35 and cortex-a73.cortex-a53.

From-SVN: r237681
2016-06-22 09:25:54 +00:00
Rainer Orth 7320a4b519 Handle gas/gld --compress-debug-sections=type
* configure.ac (gcc_cv_as_compress_debug): Remove
	--compress-debug-sections as extra as switch.
	Handle gas --compress-debug-sections=type.
	(gcc_cv_ld_compess_debug): Remove bogus ld_date check.
	Handle gld --compress-debug-sections=type.
	* configure: Regenerate.

From-SVN: r237680
2016-06-22 09:09:27 +00:00
Kyrylo Tkachov 4fb570c42b [AArch64] Add initial support for Cortex-A73
* config/aarch64/aarch64.c (cortexa73_tunings): New struct.
	* config/aarch64/aarch64-cores.def (cortex-a73): New entry.
	(cortex-a73.cortex-a35): Likewise.
	(cortex-a73.cortex-a53): Likewise.
	* config/aarch64/aarch64-tune.md: Regenerate.
	* doc/invoke.texi (AArch64 Options): Document cortex-a73,
	cortex-a73.cortex-a35 and cortex-a73.cortex-a53 arguments to
	-mcpu and -mtune.

From-SVN: r237679
2016-06-22 09:01:54 +00:00
Andrew Burgess cd98b1cf06 * bb-reorder.c (pass_partition_blocks::gate): Update comment.
From-SVN: r237677
2016-06-21 20:58:24 -06:00
John David Anglin fe55692cb3 c-common.c (get_source_date_epoch): Use int64_t instead of long long.
* c-common.c (get_source_date_epoch): Use int64_t instead of long long.

	* gcov-tool.c (profile_rewrite): Use int64_t instead of long long.
	(do_rewrite): likewise.

	* line-map.c (location_adhoc_data_update): Use int64_t instead of
	long long.
	(get_combined_adhoc_loc): Likewise.

From-SVN: r237676
2016-06-22 01:46:06 +00:00
GCC Administrator d008cb31fd Daily bump.
From-SVN: r237675
2016-06-22 00:16:20 +00:00
Trevor Saunders 0609abdad8 remove mep-* support
libgcc/ChangeLog:

2016-06-21  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* config.host: Remove support for mep-*.
	* config/mep/lib1funcs.S: Remove.
	* config/mep/lib2funcs.c: Remove.
	* config/mep/t-mep: Remove.
	* config/mep/tramp.c: Remove.

gcc/ChangeLog:

2016-06-21  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* common/config/mep/mep-common.c: Remove.
	* config.gcc: Remove mep-* support.
	* config/mep/constraints.md: Remove.
	* config/mep/default.h: Remove.
	* config/mep/intrinsics.h: Remove.
	* config/mep/intrinsics.md: Remove.
	* config/mep/ivc2-template.h: Remove.
	* config/mep/mep-c5.cpu: Remove.
	* config/mep/mep-core.cpu: Remove.
	* config/mep/mep-default.cpu: Remove.
	* config/mep/mep-ext-cop.cpu: Remove.
	* config/mep/mep-intrin.h: Remove.
	* config/mep/mep-ivc2.cpu: Remove.
	* config/mep/mep-pragma.c: Remove.
	* config/mep/mep-protos.h: Remove.
	* config/mep/mep.c: Remove.
	* config/mep/mep.cpu: Remove.
	* config/mep/mep.h: Remove.
	* config/mep/mep.md: Remove.
	* config/mep/mep.opt: Remove.
	* config/mep/predicates.md: Remove.
	* config/mep/t-mep: Remove.
	* doc/install.texi: Remove mep-* documentation.
	* doc/md.texi: Likewise.

gcc/testsuite/ChangeLog:

2016-06-21  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* gcc.dg/tree-ssa/forwprop-28.c: Remove mep-* support.
	* gcc.dg/tree-ssa/reassoc-32.c: Likewise.
	* gcc.dg/tree-ssa/reassoc-33.c: Likewise.
	* gcc.dg/tree-ssa/reassoc-34.c: Likewise.
	* gcc.dg/tree-ssa/reassoc-35.c: Likewise.
	* gcc.dg/tree-ssa/reassoc-36.c: Likewise.
	* gcc.dg/tree-ssa/ssa-ifcombine-ccmp-1.c: Likewise.
	* gcc.dg/tree-ssa/ssa-ifcombine-ccmp-2.c: Likewise.
	* gcc.dg/tree-ssa/ssa-ifcombine-ccmp-3.c: Likewise.
	* gcc.dg/tree-ssa/ssa-ifcombine-ccmp-4.c: Likewise.
	* gcc.dg/tree-ssa/ssa-ifcombine-ccmp-5.c: Likewise.
	* gcc.dg/tree-ssa/ssa-ifcombine-ccmp-6.c: Likewise.
	* gcc.dg/tree-ssa/ssa-thread-11.c: Likewise.
	* gcc.dg/tree-ssa/vrp87.c: Likewise.
	* lib/target-supports.exp: Likewise.

contrib/ChangeLog:

2016-06-21  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* config-list.mk: Stop testing mep-elf.

libstdc++-v3/ChangeLog:

2016-06-21  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* configure.host: Remove mep-* support.

From-SVN: r237666
2016-06-21 21:57:49 +00:00
Trevor Saunders 3e32693501 remove avr-rtems support
contrib/ChangeLog:

2016-06-21  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* config-list.mk: Stop testing avr-rtems.

libgcc/ChangeLog:

2016-06-21  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* config.host: Remove support for avr-rtems.
	* config/avr/t-rtems: Remove.

ChangeLog:

2016-06-21  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* configure: Regenerate.
	* configure.ac: Remove support for avr-rtems.

gcc/ChangeLog:

2016-06-21  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* config.gcc: Remove support for avr-rtems.
	* config/avr/gen-avr-mmcu-specs.c: Likewise.
	* config/avr/rtems.h: Remove.
	* config/avr/t-rtems: Remove.

contrib/header-tools/ChangeLog:

2016-06-21  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* README: Remove references to avr-rtems.
	* reduce-headers: Likewise.

From-SVN: r237665
2016-06-21 21:57:44 +00:00
Trevor Saunders 914b155ca9 remove m32-rtems support
libgcc/ChangeLog:

2016-06-21  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* config.host: Remove m32r-rtems support.

gcc/ChangeLog:

2016-06-21  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* config.gcc: Remove m32r-rtems support.
	* config/m32r/rtems.h: Remove.

contrib/ChangeLog:

2016-06-21  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* config-list.mk: Stop testing m32r-rtems.

From-SVN: r237664
2016-06-21 21:57:37 +00:00
Trevor Saunders 5ebf89bde6 remove h8300-rtems support
contrib/ChangeLog:

2016-06-21  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* config-list.mk: Remove h8300-rtems support.

libgcc/ChangeLog:

2016-06-21  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* config.host: Remove h8300-rtems support.

gcc/ChangeLog:

2016-06-21  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* config.gcc: Remove h8300-rtems support.
	* config/h8300/rtems.h: Remove.
	* config/h8300/t-rtems: Remove.

From-SVN: r237663
2016-06-21 21:57:34 +00:00
Trevor Saunders 8466af0668 remove knetbsd support
gcc/ChangeLog:

2016-06-21  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* config.gcc: Remove support for knetbsd.
	* configure.ac: Likewise.
	* config/i386/knetbsd-gnu.h: Remove.  * config/i386/knetbsd-gnu64.h: Remove.
	* config/knetbsd-gnu.h: Remove.
	* configure: Regenerate.

libgcc/ChangeLog:

2016-06-21  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* config.host: Remove support for knetbsd.

libstdc++-v3/ChangeLog:

2016-06-21  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* configure: Regenerate.
	* configure.host: Remove support for knetbsd.
	* crossconfig.m4: Likewise.

contrib/ChangeLog:

2016-06-21  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* config-list.mk: stop testing knetbsd.

From-SVN: r237662
2016-06-21 21:57:30 +00:00
Trevor Saunders d980e73865 remove support for targeting openbsd 2 or 3
contrib/ChangeLog:

2016-06-21  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* config-list.mk: Stop testing openbsd3.0.

libgcc/ChangeLog:

2016-06-21  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* config.host: Remove support for openbsd 2 and 3.

gcc/ChangeLog:

2016-06-21  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* config.gcc: Remove support for openbsd 2 and 3.
	* config/openbsd-oldgas.h: Remove.

From-SVN: r237661
2016-06-21 21:57:25 +00:00