Commit Graph

164297 Commits

Author SHA1 Message Date
Ian Lance Taylor
91b01194c9 runtime: skip testSetPanicOnFault for gollvm
LLVM doesn't support non-call exception. This test was passing
    more or less by luck: if the faulting instruction is between two
    calls with the same landing pad (in instruction layout order,
    not the program's logic order), it generates a merged PC range
    that covers the faulting instruction. If the instruction layout
    order changes, or it uses two different (but may be degenerate)
    landing pads, this doesn't work.
    
    Reviewed-on: https://go-review.googlesource.com/c/140517

From-SVN: r264985
2018-10-09 16:51:10 +00:00
Eric Botcazou
c743425fce [Ada] Fix spurious -Wuninitialized warnings for small records
This change is aimed at getting rid of spurious -Wuninitialized warnings
issued for small records passed by copy and containing default values
for some of their components.

The source of the problem is that the _Init parameter of the
initialization routine is declared as an in/out parameter, so the
uninitialized object is passed by copy to it and this can be flagged by
-Wuninitialized.

That's why the mode of the parameter is changed to out, except for the
cases where information really needs to be passed in: unconstrained
array types, protected and task types.

For the following record type Rec!

 type Rec is record
    B : Boolean := True;
  end record;

the initialization routine must now be:

      procedure r__recIP (_init : out r__rec1) is
      begin
         _init.b := true;
         return;
      end r__recIP;

2018-10-09  Eric Botcazou  <ebotcazou@adacore.com>

gcc/ada/

	* exp_ch3.adb (Is_Null_Statement_List): New predicate.
	(Build_Array_Init_Proc): Use it to find out whether the
	initialization procedure Is_Null_Init_Proc; if so, set
	Warnings_Off on the parameter.
	(Build_Init_Procedure): Likewise.
	(Init_Formals): Use an in/out first parameter only for
	unconstrained arrays and for records either containing or built
	for proteced types or task types; use an out parameter in all
	the other cases.
	* fe.h (Is_Init_Proc): Declare.
	* gcc-interface/decl.c (type_requires_init_of_formal): Do not
	return true for a discriminant in an unchecked union.
	(gnat_to_gnu_param): Do not create a PARM_DECL for the Out
	parameter of an initialization procedure.

From-SVN: r264984
2018-10-09 15:06:55 +00:00
Eric Botcazou
4b9e1bc781 [Ada] Fix incorrect computation of Component_Size in ASIS mode
2018-10-09  Eric Botcazou  <ebotcazou@adacore.com>

gcc/ada/

	* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Constant>: If
	this is not a definition, retrieve the expression in all cases
	even if we are just annotating types.
	* gcc-interface/trans.c (gnat_to_gnu): Also translate Size
	attribute for constrained types in this mode.

From-SVN: r264983
2018-10-09 15:06:50 +00:00
Eric Botcazou
005f870e91 [Ada] Minor tweaks to suppress warnings
2018-10-09  Eric Botcazou  <ebotcazou@adacore.com>

gcc/ada/

	* adaint.c (__gnat_get_executable_suffix_ptr): Add new line.
	(__gnat_locate_exec): Check that HOST_EXECUTABLE_SUFFIX is not
	empty before doing a string search for it.
	* socket.c (ATTRIBUTE_UNUSED): Define.
	(__gnat_disable_sigpipe): Add ATTRIBUTE_UNUSED on parameter.
	* terminals.c (ATTRIBUTE_UNUSED): Move around.
	(__gnat_setup_child_communication): Add ATTRIBUTE_UNUSED on
	parameter.
	(__gnat_send_header): Add ATTRIBUTE_UNUSED on parameters.

From-SVN: r264982
2018-10-09 15:06:46 +00:00
Yannick Moy
ea891b439e [Ada] Ignore pragmas Compile_Time_Error/Warning in GNATprove mode
GNATprove does not have sometimes the precise information of the
compiler about size of types and objects, so that it cannot evaluate the
expressions in pragma Compile_Time_Error/Warning the same way the
compiler does.  Thus, these pragmas should be ignored in GNATprove mode,
as it can neither verify them nor assume them (if the expression cannot
be evaluated at compile time, then the semantics for GNAT is to ignore
them).

2018-10-09  Yannick Moy  <moy@adacore.com>

gcc/ada/

	* sem_prag.adb (Process_Compile_Time_Warning_Or_Error): Rewrite
	pragmas as null statements in GNATprove mode.

From-SVN: r264981
2018-10-09 15:06:41 +00:00
Eric Botcazou
e693ddbec3 [Ada] Fix spurious error on derived record passed as Out parameter
This fixlet gets rid of a spurious error issued in the specific case of
a call to a subprogram taking an Out parameter of a discriminated record
type without default discriminants, if the actual parameter is the
result of the conversion to the record type of a variable whose type is
derived from the record and has a representation clause.

The compiler was failing to initialize the temporary made around the
call because of the representation clause, but this is required for a
type with discriminants because discriminants may be read by the called
subprogram.

2018-10-09  Eric Botcazou  <ebotcazou@adacore.com>

gcc/ada/

	* exp_ch6.adb (Add_Call_By_Copy_Code): Initialize the temporary
	made for an Out parameter if the formal type has discriminants.

gcc/testsuite/

	* gnat.dg/derived_type5.adb, gnat.dg/derived_type5_pkg.ads: New
	testcase.

From-SVN: r264980
2018-10-09 15:06:35 +00:00
Maroua Maalej
38c2f655ff [Ada] SPARK: fix bug related to non access object permissions
2018-10-09  Maroua Maalej  <maalej@adacore.com>

gcc/ada/

	* sem_spark.adb (Check_Declaration): fix bug related to non
	access object permissions.

From-SVN: r264979
2018-10-09 15:06:30 +00:00
Doug Rupp
827845b829 [Ada] Minor copyright header fix
2018-10-09  Doug Rupp  <rupp@adacore.com>

gcc/ada/

	* libgnat/a-ncelfu.ads: Fix name in header to match package.

From-SVN: r264978
2018-10-09 15:06:26 +00:00
Eric Botcazou
865234bf36 [Ada] Fix strange warning when using Ada.Iterator_Interface
The back-end was recently changed to issue more -Wuninitialized warnings
on Out parameters and this has caught a case related to
Ada.Iterator_Interface.: This patchlet simply kills this uninteresting
warning.

2018-10-09  Eric Botcazou  <ebotcazou@adacore.com>

gcc/ada/

	* exp_disp.adb (Make_Disp_Asynchronous_Select_Spec): Set
	Warnings_Off on the B out parameter.

gcc/testsuite/

	* gnat.dg/warn17.adb: New testcase.

From-SVN: r264977
2018-10-09 15:06:21 +00:00
Eric Botcazou
fd40a157ba [Ada] Einfo: minor comment fix
2018-10-09  Eric Botcazou  <ebotcazou@adacore.com>

gcc/ada/

	* einfo.ads: Small comment fix.

From-SVN: r264976
2018-10-09 15:06:16 +00:00
Eric Botcazou
0444d0671d [Ada] Internal error on inlined renaming of subprogram instance
This fixes a recent regression introduced in the compiler for the
inlined renaming of a subprogram instantiated in a package body.  It was
wrongly clearing the Is_Public flag on the entity associated with the
body.

2018-10-09  Eric Botcazou  <ebotcazou@adacore.com>

gcc/ada/

	* sem_ch7.adb (Has_Referencer): Add comment for the
	N_Freeze_Entity case.  Do not rely on
	Has_Referencer_Of_Non_Subprograms to clear the Is_Public flag on
	subprogram entities.

gcc/testsuite/

	* gnat.dg/inline14.adb, gnat.dg/inline14_pkg.adb,
	gnat.dg/inline14_pkg.ads: New testcase.

From-SVN: r264975
2018-10-09 15:06:11 +00:00
Ed Schonberg
c14bd5028a [Ada] Unnesting: fix handling of private types that are synchronized
2018-10-09  Ed Schonberg  <schonberg@adacore.com>

gcc/ada/

	* exp_unst.adb (In_Synchronized_Call): Handle properly private
	types whose full views are synchronized types, in order to
	recognize generated subprograms whose bodies must be considered
	reachable even if no direct calls to them are visible in the
	source.

From-SVN: r264974
2018-10-09 15:06:05 +00:00
Ed Schonberg
184d0451c4 [Ada] Fix expansion of operations on nonbinary modular types
2018-10-09  Ed Schonberg  <schonberg@adacore.com>

gcc/ada/

	* exp_ch4.adb (Expand_Modular_Op): When expanding an operation
	on nonbinary modular types, convert the opersnds to an integer
	type that is large enough to hold the modulus of the type, which
	may be larger than Integer'Last.

From-SVN: r264973
2018-10-09 15:05:59 +00:00
Ed Schonberg
9e25affdbd [Ada] Unnesting: fix handling of uplevel refs to unconstrained formals
2018-10-09  Ed Schonberg  <schonberg@adacore.com>

gcc/ada/

	* exp_unst.adb (Unnest_Subprogram):  When an uplevel reference
	is to an unconstrained formal, the 'Access reference that is
	created to initialize the corresponding component of the
	activation record must be wrapped in an unchecked conversion to
	the generated type of the component. Otherwise, spurious suvtype
	conformance errors will be generated when the code is within an
	instantiation and the type of the formal is a formal type of the
	enclosing generic. Note that during unnesting there is no simple
	way to determine that the code appears within an instance
	because ther is no scope stack.

From-SVN: r264972
2018-10-09 15:05:54 +00:00
Eric Botcazou
8dcefdc003 [Ada] Remove spurious -Wuninitialized warning for small array at -O2
2018-10-09  Eric Botcazou  <ebotcazou@adacore.com>

gcc/ada/

	* gcc-interface/decl.c (type_requires_init_of_formal): New
	predicate.
	(gnat_to_gnu_param): Use it to determine whether a PARM_DECL
	must be created for an Out parameter passed by copy.

From-SVN: r264971
2018-10-09 15:05:49 +00:00
Arnaud Charlet
da5f6eb46b [Ada] Bounded_Holders: fix a typo
2018-10-09  Arnaud Charlet  <charlet@adacore.com>

gcc/ada/

	* libgnat/a-coboho.ads (Storage_Element): Fix a typo.

From-SVN: r264970
2018-10-09 15:05:44 +00:00
Claire Dross
ead467895d [Ada] Functional_Vectors: remove default value for max size
2018-10-09  Claire Dross  <dross@adacore.com>

gcc/ada/

	* libgnat/a-cfinve.ads: Remove default value for
	Max_Size_In_Storage_Elements as it was not supported in SPARK.

From-SVN: r264969
2018-10-09 15:05:39 +00:00
Ed Schonberg
8f0303e751 [Ada] Reset Is_True_Constant on entites used as OUT/IN OUT actuals
2018-10-09  Ed Schonberg  <schonberg@adacore.com>

gcc/ada/

	* exp_ch6.adb (Add_Call_By_Copy_Node,
	Add_Simple_Call_By_Copy_Node, Expand_Call_Helper): Reset
	Is_True_Constant on entities used as Out or In_Out parameters in
	calls.

From-SVN: r264968
2018-10-09 15:05:34 +00:00
Ed Schonberg
73efc7ff4c [Ada] Unnesting: avoid unnecessary loads of System
2018-10-09  Ed Schonberg  <schonberg@adacore.com>

gcc/ada/

	* exp_unst.adb (Unnest_Subprogram): Do not load System to obtain
	the Address entity unless an activation record is being built.
	Removes useless with_clauses for System when nested subprograms
	do not have uplevel references, and therefore do not need
	activation records.

From-SVN: r264967
2018-10-09 15:05:29 +00:00
Ed Schonberg
e7e72f9b7a [Ada] Spurious error message on visibiliy change in aspect expression
This patch removes an improper error message on a visibility change in
an aspect expression between the freeze point and the end of the
declaration list, when the expression involves a call to a instance of
Unchecked_Conversion and the enclosing package declaration has a package
body with multiple subprogram bodies.

The following must compile quietly:

----
package body Par.Rep is
   procedure Nothing is begin null; end;
   procedure Rien is begin null; end;
end;
----
with Par.Loc;
package Par.Rep is
   type Rec is record
      X, Y : Integer;
   end record
      with Volatile;

   Thing2 : Unsigned_32 := 15;
   Thing3 : Rec
    with Volatile, Address => To_Address (Par.Loc.Flash_Base);
    procedure Nothing;
end;
----
pragma Restrictions (No_Elaboration_Code);
with interfaces;  use interfaces;
pragma unreferenced (interfaces);
with Tp;       use Tp;
pragma unreferenced (Tp);
package Par is
end Par;
----
with Ada.Unchecked_Conversion;
with System;
with Interfaces; use Interfaces;
package Tp is
subtype system_address is unsigned_32;
   function to_address is new
      ada.unchecked_conversion (system_address, system.address);
   function To_32 is new
      ada.unchecked_conversion (System.Address, System_Address);
end;
----
with TP; use TP;
package Par.Loc is
FLASH_BASE        : constant system_address := 16#0800_0000#;
end;

2018-10-09  Ed Schonberg  <schonberg@adacore.com>

gcc/ada/

	* sem_ch6.adb (Fully_Conformant_Expressions): Handle properly
	the conformance check on an aspect expression that includes a
	call to an instance of Unchecked_Conversion, or more generally a
	call to an intrinsic operation.

From-SVN: r264966
2018-10-09 15:05:24 +00:00
Eric Botcazou
96d268c284 [Ada] Repinfo: list the mechanism of functions only
2018-10-09  Eric Botcazou  <ebotcazou@adacore.com>

gcc/ada/

	* repinfo.adb: Remove with/use clause for Stand.
	(List_Mechanisms): List the mechanism of functions only.

From-SVN: r264965
2018-10-09 15:05:19 +00:00
Bob Duff
98ebcae861 [Ada] Various User Manual updates for GNATpp
2018-10-09  Bob Duff  <duff@adacore.com>

gcc/ada/

	* doc/gnat_ugn/gnat_utility_programs.rst: Correct spelling of
	--eol switch.  Document the language-version switches.  Update
	description for --no-exception.

From-SVN: r264964
2018-10-09 15:05:14 +00:00
Vasiliy Fofanov
9aa47367b3 [Ada] System.Os_Lib.Normalize_Pathname: fix incorrect comment
2018-10-09  Vasiliy Fofanov  <fofanov@adacore.com>

gcc/ada/

	* libgnat/s-os_lib.ads (Normalize_Pathname): Fix incorrect
	comment.

From-SVN: r264963
2018-10-09 15:05:09 +00:00
Arnaud Charlet
0960ddad82 [Ada] Remove CodePeer annotation
2018-10-09  Arnaud Charlet  <charlet@adacore.com>

gcc/ada/

	* vxlink.adb: Remove pragma Annotate, no longer needed.

From-SVN: r264962
2018-10-09 15:05:04 +00:00
Ed Schonberg
94a98e801a [Ada] Preserve Do_Range_Check flags in SPARK mode
2018-10-09  Ed Schonberg  <schonberg@adacore.com>

gcc/ada/

	* checks.adb (Apply_Type_Conversion_Checks): Use GNATprove_Mode
	rather than SPARK_mode in order to preserve the Do_Range_Check
	flag for verification purposes.

From-SVN: r264961
2018-10-09 15:04:58 +00:00
Ed Schonberg
0ffbef9f35 [Ada] Spurious warning on uninitialized entity during code generation
This patch suppresses a spurious warning coming from the GCC backend, on
an aggregate that cannot be built in place and for which a temporary
variable must be created. If the type of the aggregate is a packed
boolean array, the generated code may appear to use an uninitialized
value for a component of the array, when in fact the code simply sets a
single bit of that array.

2018-10-09  Ed Schonberg  <schonberg@adacore.com>

gcc/ada/

	* exp_aggr.adb (Expand_Array_Aggregate): If it is not possible
	to build in place an aggregate with component associations, set
	the Warnings_Off flag on the generated temporary, to prevent
	spurious warnings from the backend when compiling with the
	-Wuninitialized gcc flag.

gcc/testsuite/

	* gnat.dg/warn18.adb: New testcase.

From-SVN: r264960
2018-10-09 15:04:53 +00:00
Jonathan Wakely
33b43b0d8c Define std::string and related typedefs outside __cxx11 namespace
The typedefs for common specializations of std::__cxx11::basic_string do
not need to be in the std::__cxx11 namespace. Those typedefs are never
used for linkage purposes so don't appear in mangled names, and so don't
need to be distinct from the equivalent typedefs for the COW
std::basic_string specializations. It is OK for the same typedef to
refer to different types in different translation units.

Defining them directly in namespace std improves diagnostics that use
those typedefs. For example:

error: could not convert '1' from 'int' to 'std::__cxx11::string' {aka 'std::__cxx11::basic_string<char>'}

will now be printed as:

error: could not convert '1' from 'int' to 'std::string' {aka 'std::__cxx11::basic_string<char>'}

The precise type is still shown, but the typedef is not obfuscated with
the inline namespace.

	* include/bits/stringfwd.h (string, wstring, u16string, u32string):
	Define typedefs outside of __cxx11 inline namespace.
	* python/libstdcxx/v6/printers.py (register_type_printers): Also
	register printers for typedefs in new location.

From-SVN: r264958
2018-10-09 14:06:46 +01:00
Richard Biener
fe8a86e1f4 re PR middle-end/63155 (memory hog)
2018-10-09  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/63155
	* tree-ssa-structalias.c: Include tree-ssa.h.
	(get_constraint_for_ssa_var): For undefs return nothing_id.
	(find_func_aliases): Cleanup PHI handling.

From-SVN: r264956
2018-10-09 11:43:46 +00:00
Richard Biener
c885142a15 tree-vectorizer.c (dump_stmt_cost): Fix cut&paste missing replacements.
2018-10-09  Richard Biener  <rguenther@suse.de>

	* tree-vectorizer.c (dump_stmt_cost): Fix cut&paste missing
	replacements.

From-SVN: r264954
2018-10-09 11:37:46 +00:00
Martin Liska
2c73950ded ASAN: emit line information of stack variables.
2018-10-09  Martin Liska  <mliska@suse.cz>

	* asan.c (asan_emit_stack_protection): If a stack variable
	is located in a same file as current function, then emit
	line info into variable definition string.
2018-10-09  Martin Liska  <mliska@suse.cz>

	* c-c++-common/asan/pr64820.c: Add line number to scanned
	pattern.
	* c-c++-common/asan/use-after-return-1.c: Likewise.
	* g++.dg/asan/function-argument-1.C (main): Likewise.
	* g++.dg/asan/function-argument-2.C (main): Likewise.
	* g++.dg/asan/function-argument-3.C (main): Likewise.
	* g++.dg/asan/use-after-scope-1.C (main): Likewise.
	* g++.dg/asan/use-after-scope-2.C (main): Likewise.
	* g++.dg/asan/use-after-scope-types-1.C (main): Likewise.
	* g++.dg/asan/use-after-scope-types-2.C (main): Likewise.
	* g++.dg/asan/use-after-scope-types-3.C (main): Likewise.
	* g++.dg/asan/use-after-scope-types-4.C (main): Likewise.
	* g++.dg/asan/use-after-scope-types-5.C (main): Likewise.
	* gcc.dg/asan/pr78541.c (main): Likewise.
	* gcc.dg/asan/use-after-scope-1.c (main): Likewise.
	* gcc.dg/asan/use-after-scope-10.c (main): Likewise.
	* gcc.dg/asan/use-after-scope-2.c (main): Likewise.
	* gcc.dg/asan/use-after-scope-3.c (main): Likewise.
	* gcc.dg/asan/use-after-scope-5.c (main): Likewise.
	* gcc.dg/asan/use-after-scope-9.c (main): Likewise.

From-SVN: r264951
2018-10-09 08:34:52 +00:00
Paul Thomas
9d44426f78 re PR fortran/87151 (allocating array of character)
2018-10-09  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/87151
	* trans-array.c (gfc_get_array_span): Deal with deferred char
	array components having a TYPE_MAX_VALUE of zero.
	(gfc_array_init_size): Use the hidden string length component
	to build the descriptor dtype.
	(gfc_array_allocate): Remove the erroneous replacement of the
	charlen backend decl with a temporary.
	(gfc_conv_expr_descriptor): Use the ss_info string length in
	the case of deferred character components.
	(gfc_alloc_allocatable_for_assignment): Actually compare the
	string lengths for deferred characters. Make sure that kind > 1
	is handled correctly. Set the span field of the descriptor.
	* trans-intrinsic.c (gfc_conv_intrinsic_len): Remove the stupid
	comment.

	PR fortran/80931
	* trans-array.c (gfc_array_allocate): Set the span field for
	variable length character arrays.


2018-10-09  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/87151
	* gfortran.dg/deferred_type_component_3.f90: New test.

	PR fortran/80931
	* gfortran.dg/deferred_character_28.f90: New test.
	* gfortran.dg/deferred_character_29.f90: New test (note that
	this test appears in PR83196 comment #4 by mistake).

From-SVN: r264949
2018-10-09 07:46:48 +00:00
GCC Administrator
6d52096313 Daily bump.
From-SVN: r264948
2018-10-09 00:16:37 +00:00
Eric Botcazou
87bd153645 print-rtl.c (rtx_writer::print_rtx_operand_code_i): Print column information.
* print-rtl.c (rtx_writer::print_rtx_operand_code_i): Print column
	information.

From-SVN: r264944
2018-10-08 22:50:51 +00:00
Eric Botcazou
23d8024177 cgraphunit.c (cgraph_node::expand_thunk): Do not force DECL_IGNORED_P on the thunk.
* cgraphunit.c (cgraph_node::expand_thunk): Do not force DECL_IGNORED_P
	on the thunk.

From-SVN: r264943
2018-10-08 22:49:07 +00:00
Eric Botcazou
de3101937e re PR tree-optimization/86659 (gnat.dg/sso/q[23].adb FAIL)
PR tree-optimization/86659
	* gimple-match.h (struct gimple_match_op): Add reverse field.
	(gimple_match_op::set_op): New overloaded method.
	* gimple-match-head.c (maybe_build_generic_op) <BIT_FIELD_REF>: Set
	the REF_REVERSE_STORAGE_ORDER flag on the value.
	(gimple_simplify) <GIMPLE_ASSIGN>: For BIT_FIELD_REF, propagate the
	REF_REVERSE_STORAGE_ORDER flag and avoid simplifying if it is set.

From-SVN: r264942
2018-10-08 22:47:32 +00:00
Richard Sandiford
91a3cbb4d2 Use FOR_EACH_IMM_USE_FAST in gimple-ssa-backprop.c
As pointed out by Richard in PR63155.  It speeds up the testcase a few %.

2018-10-08  Richard Sandiford  <richard.sandiford@arm.com>

gcc/
	PR middle-end/63155
	* gimple-ssa-backprop.c (backprop::intersect_uses): Use
	FOR_EACH_IMM_USE_FAST instead of FOR_EACH_IMM_USE_STMT.

From-SVN: r264941
2018-10-08 18:58:59 +00:00
Paul Koning
be86efa7cc * config/pdp11/t-pdp11: Remove -mfloat32 switch.
From-SVN: r264939
2018-10-08 12:49:48 -04:00
H.J. Lu
a70b966196 i386: Correct _mm512_mask3_fmaddsub_round_pd
Define _mm512_mask3_fmaddsub_round_pd with
__builtin_ia32_vfmaddsubpd512_mask, instead of
__builtin_ia32_vfmaddpd512_mask.

	PR target/87517
	* config/i386/avx512fintrin.h (_mm512_mask_fmaddsub_round_pd):
	Defined with __builtin_ia32_vfmaddsubpd512_mask.

From-SVN: r264935
2018-10-08 07:54:53 -07:00
Richard Biener
45e87b24f3 x86-tune-costs.h (znver1_cost): Make AVX256 vector loads cost the same as AVX128 ones.
2018-10-08  Richard Biener  <rguenther@suse.de>

	* config/i386/x86-tune-costs.h (znver1_cost): Make AVX256 vector loads
	cost the same as AVX128 ones.

From-SVN: r264934
2018-10-08 14:47:40 +00:00
Ian Lance Taylor
3cbb7cbb09 libgo: update to Go 1.11.1 release
Reviewed-on: https://go-review.googlesource.com/c/140277

From-SVN: r264932
2018-10-08 14:21:30 +00:00
Paul Koning
a3368b8ea1 Fix ICE on block move when using LRA.
* config/pdp11/pdp11-protos.h (output_block_move): Remove.
    (expand_block_move): New function.
    * config/pdp11/pdp11.c (output_block_move): Remove.
    (expand_block_move): New function.
    * config/pdp11/pdp11.h (MOVE_RATIO): New definition.
    * config/pdp11/pdp11.md (movmemhi): Use expand_block_move.
    (*movmemhi1): Remove.

From-SVN: r264930
2018-10-08 10:16:13 -04:00
Martin Liska
a3927ffb90 Come up with gcc/testsuite/g++.target/i386/i386.dg and move there some tests.
2018-10-08  Martin Liska  <mliska@suse.cz>

	* gcc.target/i386/i386.exp: Move procedures to
	target-supports.exp.
	* g++.target/i386/i386.exp: New file.
	* gcc.target/i386/mv*.C: Move here tests and remove
	target filter in these tests.

From-SVN: r264929
2018-10-08 14:12:53 +00:00
Cesar Philippidis
ed9984a030 [Fortran] Disable "Assignment to contiguous pointer from non-contiguous target" error
gcc/fortran/
	* expr.c (gfc_check_pointer_assign): Demote "Assignment to
	contiguous pointer from non-contiguous target" to a warning.

	gcc/testsuite/
	* gfortran.dg/contiguous_4.f90: Adjust.
	* gfortran.dg/contiguous_4.f90: New test.

From-SVN: r264928
2018-10-08 07:04:45 -07:00
Robin Dapp
49108562af S/390: Increase latencies for some FP instructions
This patch increases the latency of some floating point instructions to better
match the real machine's behavior.

2018-10-08  Robin Dapp  <rdapp@linux.ibm.com>

	* config/s390/2827.md: Increase latencies for some FP instructions.

From-SVN: r264927
2018-10-08 13:16:32 +00:00
Richard Biener
269ba95042 tree-vect-loop.c (vect_compute_single_scalar_iteration_cost): Open a dump scope.
2018-10-08  Richard Biener  <rguenther@suse.de>

	* tree-vect-loop.c (vect_compute_single_scalar_iteration_cost):
	Open a dump scope.
	* tree-vectorizer.c (dump_stmt_cost): Add cost param and dump it.
	* tree-vectorizer.h (dump_stmt_cost): Adjust.
	(add_stmt_cost): Dump return value of the hook.

From-SVN: r264923
2018-10-08 12:29:51 +00:00
Jonathan Wakely
aca0dcde1f PR libstdc++/87538 Verify fix for std::experimental::not_fn
PR libstdc++/87538
	* testsuite/experimental/functional/87538.cc: New test.

From-SVN: r264922
2018-10-08 13:17:58 +01:00
Jonathan Wakely
606f6be67b PR libstdc++/87538 fix std::not_fn exception specifications
PR libstdc++/87538
	* include/std/functional (_Not_fn::operator()): Check value of
	__is_nothrow_invocable as well.
	* testsuite/20_util/function_objects/not_fn/87538.cc: New test.

From-SVN: r264921
2018-10-08 13:07:22 +01:00
Paul Thomas
0054ef84b0 re PR fortran/86372 (Segfault on ASSOCIATE statement with CHARACTER variable)
2018-10-08  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/86372
	* trans-stmt.c (trans_associate_var): Character associate names
	with variable string length do not have to be deferred length
	for the string length to be set, if variable.

2018-10-08  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/86372
	* gfortran.dg/associate_41.f90: New test.

From-SVN: r264919
2018-10-08 11:17:10 +00:00
Rainer Orth
87454aad99 Require string merging support in gnat.dg/string_merge?.adb etc.
* gcc.dg/merge-all-constants-2.c: Require string_merging support.
	* gnat.dg/string_merge1.adb: Likewise.
	* gnat.dg/string_merge2.adb: Likewise.

From-SVN: r264918
2018-10-08 11:03:22 +00:00
Rainer Orth
1a2a0b6044 Require constructor priority support in c-c++-common/Wprio-ctor-dtor.c
* c-c++-common/Wprio-ctor-dtor.c: Require init_priority support.

From-SVN: r264917
2018-10-08 10:59:36 +00:00