Commit Graph

166873 Commits

Author SHA1 Message Date
Iain Buclaw 5522686e52 libphobos: Fallback on UnwindBacktrace if LibBacktrace not defined.
In the gcc.backtrace module, either one of LibBacktrace or
UnwindBacktrace will always be defined.  Giving UnwindBacktrace a higher
precedence over the libc backtrace as the default handler because the
latter depends on a rt.backtrace module that is not compiled in.

libphobos/ChangeLog:

	* libdruntime/core/runtime.d (defaultTraceHandler): Give
	UnwindBacktrace handler precedence over backtrace.

From-SVN: r268836
2019-02-13 07:14:46 +00:00
Martin Liska 91c50487de Remove a barrier when EDGE_CROSSING is removed (PR lto/88858).
2019-02-13  Martin Liska  <mliska@suse.cz>

	PR lto/88858
	* cfgrtl.c (remove_barriers_from_footer): New function.
	(try_redirect_by_replacing_jump): Use it.
	(cfg_layout_redirect_edge_and_branch): Likewise.

From-SVN: r268835
2019-02-13 06:57:38 +00:00
Xiong Hu Luo d60a02c80d rs6000: Add support for the vec_sbox_be, vec_cipher_be etc. builtins.
The 5 new builtins vec_sbox_be, vec_cipher_be, vec_cipherlast_be, vec_ncipher_be
and vec_ncipherlast_be only support vector unsigned char type parameters.
Add new instruction crypto_vsbox_<mode> and crypto_<CR_insn>_<mode> to handle
them accordingly, where the new mode CR_vqdi can be expanded to vector unsigned
long long for none _be postfix builtins or vector unsigned char for _be postfix
builtins.

gcc/ChangeLog

2019-02-13  Xiong Hu Luo  <luoxhu@linux.vnet.ibm.com>

	* config/rs6000/altivec.h (vec_sbox_be, vec_cipher_be,
	vec_cipherlast_be, vec_ncipher_be, vec_ncipherlast_be): New #defines.
	* config/rs6000/crypto.md (CR_vqdi): New define_mode_iterator.
	(crypto_vsbox_<mode>, crypto_<CR_insn>_<mode>): New define_insns.
	* config/rs6000/rs6000-builtin.def (VSBOX_BE): New BU_CRYPTO_1.
	(VCIPHER_BE, VCIPHERLAST_BE, VNCIPHER_BE, VNCIPHERLAST_BE):
	New BU_CRYPTO_2.
	* config/rs6000/rs6000.c (builtin_function_type)
	<CRYPTO_BUILTIN_VSBOX_BE, CRYPTO_BUILTIN_VCIPHER_BE,
	CRYPTO_BUILTIN_VCIPHERLAST_BE, CRYPTO_BUILTIN_VNCIPHER_BE,
	CRYPTO_BUILTIN_VNCIPHERLAST_BE>: New switch options.
	* doc/extend.texi (vec_sbox_be, vec_cipher_be, vec_cipherlast_be,
	vec_ncipher_be, vec_ncipherlast_be): New builtin functions.

gcc/testsuite/ChangeLog

2019-02-13  Xiong Hu Luo  <luoxhu@linux.vnet.ibm.com>

	* gcc.target/powerpc/crypto-builtin-1.c
	(crypto1_be, crypto2_be, crypto3_be, crypto4_be, crypto5_be):
	New testcases.

From-SVN: r268834
2019-02-13 06:31:01 +00:00
GCC Administrator ce22f324ff Daily bump.
From-SVN: r268833
2019-02-13 00:16:15 +00:00
Ian Lance Taylor 7ca1909caa re PR go/89193 ("make distclean" leaves stuff in gotools/)
PR go/89193
	* Makefile.am (mostlyclean-local): Avoid getting an error from
	chmod.  Remove check-vet-dir and gocache-test.
	* Makefile.in: Regenerate.

From-SVN: r268830
2019-02-13 00:10:06 +00:00
Pat Haugen ced20a50bc invoke.texi (RS/6000 and PowerPC Options): Remove duplicate -maltivec.
* doc/invoke.texi (RS/6000 and PowerPC Options): Remove duplicate
	-maltivec. Delete -maltivec=be and -maltivec=le documentation.

From-SVN: r268829
2019-02-12 22:03:00 +00:00
Ian Lance Taylor 2faf2a305d syscall: don't assume that WIFCONTINUED is defined
It's not defined on the Hurd.
    
    Reviewed-on: https://go-review.googlesource.com/c/161963

From-SVN: r268828
2019-02-12 21:29:52 +00:00
Jason Merrill d950b005f9 PR c++/89144 - link error with constexpr initializer_list.
In this PR, we were unnecessarily rejecting a constexpr initializer_list
with no elements.  This seems like a fairly useless degenerate case, but it
makes sense to avoid allocating an underlying array at all if there are no
elements and instead use a null pointer, like the initializer_list default
constructor.

If the (automatic storage duration) list does have initializer elements, we
continue to reject the declaration, because the initializer_list ends up
referring to an automatic storage duration temporary array, which is not a
suitable constant initializer.  If we make it static, it should be OK
because we refer to a static array.  The second hunk fixes that case.  It
also means we won't diagnose some real errors in templates, but those
diagnostics aren't required, and we'll get them when the template is
instantiated.

	* call.c (convert_like_real) [ck_list]: Don't allocate a temporary
	array for an empty list.
	* typeck2.c (store_init_value): Don't use cxx_constant_init in a
	template.

From-SVN: r268827
2019-02-12 16:18:51 -05:00
H.J. Lu 705c92a2ab i386: Revert revision 268678 and revision 268657
i386 backend has

INT_MODE (OI, 32);
INT_MODE (XI, 64);

So, XI_MODE represents 64 INTEGER bytes = 64 * 8 = 512 bit operation,
in case of const_1, all 512 bits set.

We can load zeros with narrower instruction, (e.g. 256 bit by inherent
zeroing of highpart in case of 128 bit xor), so TImode in this case.

Some targets prefer V4SF mode, so they will emit float xorps for zeroing

Then the introduction of AVX512F fubared everything by overloading the
meaning of insn mode.

How should we use INSN mode,  MODE_XI, in standard_sse_constant_opcode
and patterns which use standard_sse_constant_opcode? 2 options:

1.  MODE_XI should only used to check if EXT_REX_SSE_REG_P is true
in any register operand.  The operand size must be determined by operand
itself , not by MODE_XI.  The operand encoding size should be determined
by the operand size, EXT_REX_SSE_REG_P and AVX512VL.
2. MODE_XI should be used to determine the operand encoding size.
EXT_REX_SSE_REG_P and AVX512VL should be checked for encoding
instructions.

gcc/

	PR target/89229
	* config/i386/i386.md (*movoi_internal_avx): Revert revision
	268678 and revision 268657.
	(*movti_internal): Likewise.

gcc/testsuite/

	PR target/89229
	* gcc.target/i386/pr89229-1.c: New test.

From-SVN: r268811
2019-02-12 11:00:35 -08:00
Iain Buclaw ec696cae16 libphobos: Merge upstream phobos 791c5d240
Adds missing HPPA support in std.experimental.allocator.

Reviewed-on: https://github.com/dlang/phobos/pull/6838

From-SVN: r268810
2019-02-12 18:28:04 +00:00
Ilya Leoshkevich dd0df13685 S/390: Reject invalid Q/R/S/T addresses after LRA
The following insn:

(insn (set (reg:DI %r2)
           (sign_extend:DI (mem:SI
            (const:DI (plus:DI (symbol_ref:DI ("*.LC0"))
                               (const_int 16)))))))

is correctly recognized by LRA as RIL alternative of extendsidi2
define_insn.  However, when recognition runs after LRA, it returns RXY
alternative, which is incorrect, since the offset 16 points past the
end of of *.LC0 literal pool entry.  Such addresses are normally
rejected by s390_decompose_address ().

This inconsistency confuses annotate_constant_pool_refs: the selected
alternative makes it proceed with annotation, only to find that the
annotated address is invalid, causing ICE.

This patch fixes the root cause, namely, that s390_check_qrst_address ()
behaves differently during and after LRA.

gcc/ChangeLog:

2019-02-12  Ilya Leoshkevich  <iii@linux.ibm.com>

	PR target/89233
	* config/s390/s390.c (s390_decompose_address): Update comment.
	(s390_check_qrst_address): Reject invalid address forms after
	LRA.

gcc/testsuite/ChangeLog:

2019-02-12  Ilya Leoshkevich  <iii@linux.ibm.com>

	PR target/89233
	* gcc.target/s390/pr89233.c: New test.

From-SVN: r268798
2019-02-12 14:51:39 +00:00
Bill Schmidt 8ced066037 vec-sld-modulo.c: Require p8vector_hw.
2018-01-12  Bill Schmidt  <wschmidt@linux.ibm.com>

	* gcc.target/powerpc/vec-sld-modulo.c: Require p8vector_hw.
	* gcc.target/powerpc/vec-srad-modulo.c: Likewise.
	* gcc.target/powerpc/vec-srd-modulo.c: Likewise.

From-SVN: r268797
2019-02-12 14:24:58 +00:00
Tom de Vries 68641fb77c [libbacktrace] Handle bsearch with NULL base in dwarf_lookup_pc
The call to bsearch in dwarf_lookup_pc can have NULL as base argument when
the nmemb argument is 0.  The base argument is required to be pointing to the
initial member of an array of nmemb objects.  It is not specified what
constitutes a valid pointer to an array of 0 objects, but glibc declares base
with attribute non-null, so the NULL will trigger a sanitizer runtime error.

Fix this by only calling bsearch if nmemb != 0.

2019-02-12  Tom de Vries  <tdevries@suse.de>

	PR libbacktrace/81983
	* dwarf.c (dwarf_lookup_pc): Don't call bsearch if nmemb == 0.

From-SVN: r268796
2019-02-12 14:00:59 +00:00
Martin Liska b3f2b048eb Revert a hunk from r261322 (PR lto/88876).
2019-02-12  Martin Liska  <mliska@suse.cz>

	PR lto/88876
	* ipa-pure-const.c (propagate_pure_const): Revert hunk as
	we need default values of funct_state for a function that
	is not optimized.

From-SVN: r268795
2019-02-12 13:46:41 +00:00
Philippe Waroquiers f9f75f8d3c Fix splay tree KEY leak detected in GDB test gdb.base/macscp.exp
When a node is removed from a splay tree, the splay tree was
not using the function splay_tree_delete_key_fn to release the key.
This was causing a leak, fixed by Tom Tromey.

This patch fixes another key leak, that happens when a key equal to
a key already present is inserted.  In such a case, we have to release
the old KEY.
Note that this is based on the assumption that the caller always
allocates a new KEY when doing an insert.

Also, clarify the documentation about when the release functions are
called.

2019-02-11  Philippe Waroquiers  <philippe.waroquiers@skynet.be>

	* splay-tree.h (splay_tree_delete_key_fn): Update comment.
	(splay_tree_delete_value_fn): Likewise.

libiberty/ChangeLog
2019-02-11  Philippe Waroquiers  <philippe.waroquiers@skynet.be>

	* splay-tree.c (splay_tree_insert): Also release old KEY in case
	of insertion of a key equal to an already present key.
	(splay_tree_new_typed_alloc): Update comment.

From-SVN: r268793
2019-02-12 13:02:48 +00:00
Eric Botcazou c4d5763224 asan.c (asan_expand_mark_ifn): Take into account the alignment of the object to pick the size of stores on...
* asan.c (asan_expand_mark_ifn): Take into account the alignment of
	the object to pick the size of stores on strict-alignment platforms.

	* config/sparc/sparc.md (*movsi_insn): Minor tweak.
	(*movdi_insn_sp32): Likewise.
	(*movdi_insn_sp64): Likewise.

From-SVN: r268792
2019-02-12 12:23:08 +00:00
Jan Hubicka baaf860b33 re PR target/88777 (Out-of-range offsets building glibc test-tgmath2.c for hppa-linux-gnu)
PR lto/88777
	* cgraphunit.c (analyze_functions): Clear READONLY flag for external
	types that needs constructiong.
	* tree.h (may_be_aliased): Do not check TYPE_NEEDS_CONSTRUCTING.

From-SVN: r268791
2019-02-12 11:25:11 +00:00
Richard Biener 0dcbc6dd8e re PR tree-optimization/89253 (ICE in split_loop, at tree-ssa-loop-split.c:566)
2019-02-12  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/89253
	* tree-ssa-loop-split.c (tree_ssa_split_loops): Check we can
	duplicate the loop.

	* gfortran.dg/pr89253.f: New testcase.

From-SVN: r268790
2019-02-12 09:29:39 +00:00
David Malcolm a4553534df linemap_line_start: protect against location_t overflow (PR lto/88147)
PR lto/88147 reports an assertion failure due to a bogus location_t value
when adding a line to a pre-existing line map, when there's a large
difference between the two line numbers.

For some "large differences", this leads to a location_t value that exceeds
LINE_MAP_MAX_LOCATION, in which case linemap_line_start returns 0.  This
isn't ideal, but at least should lead to safe degradation of location
information.

However, if the difference is very large, it's possible for the line
number offset (relative to the start of the map) to be sufficiently large
that overflow occurs when left-shifted by the column-bits, and hence
the check against the LINE_MAP_MAX_LOCATION limit fails, leading to
a seemingly-valid location_t value, but encoding the wrong location.  This
triggers the assertion failure:
  linemap_assert (SOURCE_LINE (map, r) == to_line);

The fix (thanks to Martin) is to check for overflow when determining
whether to reuse an existing map, and to not reuse it if it would occur.

gcc/ChangeLog: David Malcolm  <dmalcolm@redhat.com>
	PR lto/88147
	* input.c (selftest::test_line_offset_overflow): New selftest.
	(selftest::input_c_tests): Call it.

libcpp/ChangeLog: Martin Liska  <mliska@suse.cz>
	PR lto/88147
	* line-map.c (linemap_line_start): Don't reuse the existing line
	map if the line offset is sufficiently large to cause overflow
	when computing location_t values.

From-SVN: r268789
2019-02-12 01:09:31 +00:00
GCC Administrator f11bb3106f Daily bump.
From-SVN: r268788
2019-02-12 00:16:20 +00:00
Ian Lance Taylor 42ee82045d mksysinfo: remove incorrect quotes in st_fsid handling for Hurd
Also stop converting st_dev on Hurd; it shouldn't appear, but if it
    somehow does we don't want to convert it.
    
    Reviewed-on: https://go-review.googlesource.com/c/161961

From-SVN: r268785
2019-02-12 00:15:34 +00:00
Jason Merrill 0df9962aa8 PR c++/89241 - ICE with __func__ in lambda in template.
When we're instantiating a generic lambda, its enclosing context will
have already been instantiated, so we need to look for that as well.

	* pt.c (enclosing_instantiation_of): Also check
	instantiated_lambda_fn_p for the template context.

From-SVN: r268784
2019-02-11 18:05:16 -05:00
Marek Polacek ab97c3cdaf PR c++/89212 - ICE converting nullptr to pointer-to-member-function.
* pt.c (tsubst_copy_and_build) <case CONSTRUCTOR>: Return early for
	null member pointer value.

	* g++.dg/cpp0x/nullptr40.C: New test.
	* g++.dg/cpp0x/nullptr41.C: New test.

From-SVN: r268781
2019-02-11 20:03:43 +00:00
Jakub Jelinek 75c5639de1 re PR c++/88977 (__builtin_is_constant_evaluated() as function template argument causes substitution failure)
PR c++/88977
	* pt.c (convert_nontype_argument): Pass true as manifestly_const_eval
	to maybe_constant_value calls.

	* g++.dg/cpp2a/is-constant-evaluated7.C: New test.

From-SVN: r268780
2019-02-11 21:00:16 +01:00
Marek Polacek f9fb2d275e * typeck2.c (digest_init_r): Remove commented code.
From-SVN: r268779
2019-02-11 19:46:54 +00:00
Joseph Myers 62b835cd8b * fi.po, fr.po: Update.
From-SVN: r268778
2019-02-11 19:05:33 +00:00
Wilco Dijkstra 7009c55e1d [COMMITTED] Fix pthread errors in pr86637-2.c
Fix test errors on targets which do not support pthreads.

Committed as obvious.

    testsuite/
	PR tree-optimization/86637
	* gcc.c-torture/compile/pr86637-2.c: Test pthread and graphite target.

From-SVN: r268777
2019-02-11 18:14:37 +00:00
Martin Sebor 287ef129b6 PR tree-optimization/88771 - Misleading -Werror=array-bounds error
gcc/ChangeLog:

	PR tree-optimization/88771
	* gimple-ssa-warn-restrict.c (pass_wrestrict::gate): Also enable
	when -Wstringop-overflow is set.
	(builtin_memref::builtin_memref): Adjust excessive upper bound
	only when lower bound is not excessive.
	(maybe_diag_overlap): Detect and diagnose excessive bounds via
	-Wstringop-ovefflow.
	(maybe_diag_offset_bounds): Rename...
	(maybe_diag_access_bounds): ...to this.
	(check_bounds_or_overlap): Adjust for name change above.

gcc/testsuite/ChangeLog:

	PR tree-optimization/88771
	* gcc.dg/Wstringop-overflow-8.c: New test.
	* gcc.dg/Wstringop-overflow-9.c: New test.
	* gcc.dg/Warray-bounds-40.c: New test.
	* gcc.dg/builtin-stpncpy.c: Adjust.
	* gcc.dg/builtin-stringop-chk-4.c: Adjust.
	* g++.dg/opt/memcpy1.C: Adjust.

From-SVN: r268775
2019-02-11 10:44:05 -07:00
Martin Sebor 28a8cef1e2 PR c++/87996 - size of array is negative error when SIZE_MAX/2 < sizeof(array) <= SIZE_MAX
gcc/ChangeLog:

	PR c++/87996
	* builtins.c (max_object_size): Move from here...
	* builtins.h (max_object_size): ...and here...
	* tree.c (max_object_size): ...to here...
	* tree.h (max_object_size): ...and here.

gcc/c-family/ChangeLog:

	PR c++/87996
	* c-common.c (invalid_array_size_error): New function.
	(valid_array_size_p): Call it.  Handle size as well as type.
	* c-common.h (valid_constant_size_p): New function.
	(enum cst_size_error): New type.

gcc/cp/ChangeLog:

	PR c++/87996
	* decl.c (compute_array_index_type_loc): Preserve signed sizes
	for diagnostics.  Call valid_array_size_p instead of error.
	* init.c (build_new_1): Compute size for diagnostic.  Call
	invalid_array_size_error
	(build_new): Call valid_array_size_p instead of error.

gcc/testsuite/ChangeLog:

	PR c++/87996
	* c-c++-common/array-5.c: New test.
	* c-c++-common/pr68107.c: Adjust text of diagnostics.
	* g++.dg/init/new38.C: Same.
	* g++.dg/init/new43.C: Same.
	* g++.dg/init/new44.C: Same.
	* g++.dg/init/new46.C: Same.
	* g++.dg/other/large-size-array.C: Same.
	* g++.dg/other/new-size-type.C: Same.
	* g++.dg/template/array30.C: Same.
	* g++.dg/template/array32.C: New test.
	* g++.dg/template/dependent-name3.C: Adjust.
	* gcc.dg/large-size-array-3.c: Same.
	* gcc.dg/large-size-array-5.c: Same.
	* gcc.dg/large-size-array.c: Same.
	* g++.old-deja/g++.brendan/array1.C: Same.
	* g++.old-deja/g++.mike/p6149.C: Same.

From-SVN: r268774
2019-02-11 10:35:17 -07:00
Martin Sebor 3c4860e346 inliner-1.c: Correct comments.
gcc/testsuite/ChangeLog:

	* gcc.dg/tree-prof/inliner-1.c: Correct comments.

From-SVN: r268773
2019-02-11 10:07:41 -07:00
Tamar Christina e43a01394c Arm: Update tests after register allocation changes. (PR/target 88560)
After the register allocator changes of r268705 we need to update a few tests
with new output.

In all cases the compiler is now generating the expected code, since the tests
are all float16 testcases using a hard-floar abi, we expect that actual fp16
instructions are used rather than using integer loads and stores.  Because of
we also save on some mov.f16s that were being emitted before to move between
the two.

The aapcs cases now match the f32 cases in using floating point operations.

gcc/testsuite/Changelog

	PR middle-end/88560
	* gcc.target/arm/armv8_2-fp16-move-1.c: Update assembler scans.
	* gcc.target/arm/fp16-aapcs-1.c: Likewise.
	* gcc.target/arm/fp16-aapcs-3.c: Likewise.

From-SVN: r268772
2019-02-11 16:54:18 +00:00
Bill Schmidt 09e0c98bc4 rs6000.c (rs6000_gimple_fold_builtin): Shift-right and shift-left vector built-ins need to include a TRUNC_MOD_EXPR...
[gcc]

2019-02-11  Bill Schmidt  <wschmidt@linux.ibm.com>

	* config/rs6000/rs6000.c (rs6000_gimple_fold_builtin): Shift-right
	and shift-left vector built-ins need to include a TRUNC_MOD_EXPR
	for correct semantics.

[gcc/testsuite]

2019-02-11  Bill Schmidt  <wschmidt@linux.ibm.com>

	* gcc.target/powerpc/vec-sld-modulo.c: New.
	* gcc.target/powerpc/vec-srad-modulo.c: New.
	* gcc.target/powerpc/vec-srd-modulo.c: New.

From-SVN: r268771
2019-02-11 16:50:33 +00:00
Alan Modra ff7fa48863 [RS6000] No inline PLT for V4 bss-plt, implement -mno-pltseq
Inline PLT calls need PLT to be an array of addresses.  PowerPC 32-bit
bss-plt works differently, so this patch disables inline PLT calls
when -mbss-plt.  The patch also adds support for a new -mno-pltseq
option, which may be required when linking with -mbss-plt code.

	* doc/invoke.texi (man page RS/6000 and PowerPC Options): Mention
	-mlongcall and -mpltseq.
	(RS/6000 and PowerPC Options <-mlongcall>): Mention inline PLT calls.
	(RS/6000 and PowerPC Options <-mpltseq>): Document.
	* config/rs6000/rs6000.h (TARGET_PLTSEQ): Define.
	* config/rs6000/sysv4.opt (mpltseq): New option.
	* config/rs6000/sysv4.h (TARGET_PLTSEQ): Redefine.
	(SUBTARGET_OVERRIDE_OPTIONS): Error if given -mpltseq when assembler
	support is lacking.  Don't allow -mpltseq with -mbss-plt.
	* config/rs6000/linux64.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Warn if
	-mpltseq given for ELFv1.
	* config/rs6000/rs6000.c (rs6000_call_aix): Comment on UNSPEC_PLTSEQ.
	Only use UNSPEC_PLTSEQ for inline PLT calls.
	(rs6000_call_sysv, rs6000_sibcall_sysv): Expand comments.  Only
	use UNSPEC_PLTSEQ for inline PLT calls.
	(rs6000_indirect_call_template_1, rs6000_longcall_ref),
	(rs6000_call_aix, rs6000_call_sysv, rs6000_sibcall_sysv): Replace
	uses of HAVE_AS_PLTSEQ with TARGET_PLTSEQ, simplifying.
	* config/rs6000/rs6000.md (pltseq_tocsave_<mode>),
	(pltseq_plt16_ha_<mode>, pltseq_plt16_lo_<mode>),
	(pltseq_mtctr_<mode>): Likewise.

From-SVN: r268770
2019-02-12 01:49:59 +10:30
Jonathan Wakely 271ad97b6b PR libstdc++/89023 fix test that fails when <omp.h> not available
Instead of a single test that only checks whether <regex> can be
included in Parallel Mode, add tests for each of C++11/C++14/C++17 that
check whether <bits/extc++.h> is compatible with _GLIBCXX_PARALLEL.
This increases the coverage to (almost) all headers.

If <omp.h> is not available then the tests will trivially pass, because
we don't care about compatibility with _GLIBCXX_PARALLEL in that case.

	PR libstdc++/89023
	* testsuite/17_intro/headers/c++2011/parallel_mode.cc: New test.
	* testsuite/17_intro/headers/c++2014/parallel_mode.cc: New test.
	* testsuite/17_intro/headers/c++2017/parallel_mode.cc: New test.
	* testsuite/28_regex/headers/regex/parallel_mode.cc: Remove.

From-SVN: r268769
2019-02-11 12:56:59 +00:00
Rainer Orth e66084a445 Restore .init_array etc. detection on 64-bit Solaris
* acinclude.m4 (gcc_AC_INITFINI_ARRAY): Use 8-byte strings with
	Solaris ld.
	* configure: Regenerate.

From-SVN: r268768
2019-02-11 12:06:19 +00:00
Andrew Stubbs 60f32352bd Add AMD GCN maintainers
2019-02-11  Andrew Stubbs  <ams@codesourcery.com>

	* MAINTAINERS (amdgcn port): Add myself and Julian Brown.
	(Write After Approval): Remove myself and Julian.

From-SVN: r268767
2019-02-11 11:31:43 +00:00
Jakub Jelinek 85fef82fc1 re PR bootstrap/88714 (bootstrap comparison failure on armv7l since r265398)
PR bootstrap/88714
	* config/arm/ldrdstrd.md (*arm_ldrd, *arm_strd): Use q constraint
	instead of r.

From-SVN: r268766
2019-02-11 11:39:59 +01:00
Hans-Peter Nilsson 9fb117e831 function.c (assign_parm_setup_block): Use the stored size...
* function.c (assign_parm_setup_block): Use the stored
	size, not the passed size, when allocating stack-space,
	also for a parameter with alignment larger than
	MAX_SUPPORTED_STACK_ALIGNMENT.

From-SVN: r268763
2019-02-11 09:03:51 +00:00
Martin Liska 45272fd22f Construct ipa_reduced_postorder always for overwritable (PR ipa/89009).
2019-02-11  Martin Liska  <mliska@suse.cz>

	PR ipa/89009
	* ipa-cp.c (build_toporder_info): Remove usage of a param.
	* ipa-inline.c (inline_small_functions): Likewise.
	* ipa-pure-const.c (propagate_pure_const): Likewise.
	(propagate_nothrow): Likewise.
	* ipa-reference.c (propagate): Likewise.
	* ipa-utils.c (struct searchc_env): Remove unused field.
	(searchc): Always search across AVAIL_INTERPOSABLE.
	(ipa_reduced_postorder): Always allow AVAIL_INTERPOSABLE as
	the only called IPA pure const can properly not propagate
	across interposable boundary.
	* ipa-utils.h (ipa_reduced_postorder): Remove param.
2019-02-11  Martin Liska  <mliska@suse.cz>

	PR ipa/89009
	* g++.dg/ipa/pr89009.C: New test.

From-SVN: r268762
2019-02-11 08:13:03 +00:00
Chung-Ju Wu d29cce74b2 [NDS32] Add memory mode in call pattern.
gcc/
	* config/nds32/nds32.md (call_internal, call_value_internal,
	sibcall_internal, sibcall_value_internal): Use SImode for mem rtx.

From-SVN: r268761
2019-02-11 07:04:00 +00:00
Hans-Peter Nilsson bfb31c3d41 cris.c (cris_preferred_minimum_alignment): Fix name typo.
* config/cris/cris.c (cris_preferred_minimum_alignment): Fix name
	typo.

From-SVN: r268760
2019-02-11 02:04:02 +00:00
H.J. Lu 8d75ab4d5c i386: Fix a typo in comments for for "Yd"
config/i386/constraints.md has

(define_register_constraint "Yd"
 "TARGET_AVX512DQ ? ALL_SSE_REGS : TARGET_SSE4_1 ? SSE_REGS : NO_REGS"
 "@internal Any EVEX encodable SSE register (@code{%xmm0-%xmm31}) for AVX512DQ target or any SSE register for SSE4_1 target.")

Comments for "Yd" should mention AVX512DQ, not AVX512BW.

	* config/i386/constraints.md (Yd): Replace AVX512BW with AVX512DQ
	in comments

From-SVN: r268759
2019-02-10 17:39:54 -08:00
GCC Administrator 05eca51175 Daily bump.
From-SVN: r268758
2019-02-11 00:16:19 +00:00
Iain Buclaw d8b1f499d9 libphobos: Merge upstream druntime 2f764ab6
Fixes hashing of complex reals, enabling testing of rt.util.typeinfo and
core.internal.hash.

Reviewed-on: https://github.com/dlang/druntime/pull/6837

libphobos/ChangeLog:

	* Makefile.in: Rebuild.
	* configure: Rebuild.
	* libdruntime/Makefile.am: Test rt.util.typeinfo and
	core.internal.convert.
	* libdruntime/Makefile.in: Rebuild.
	* src/Makefile.in: Rebuild.
	* testsuite/Makefile.in: Rebuild.
	* testsuite/libphobos.hash/test_hash.d: Update test.

From-SVN: r268755
2019-02-10 22:10:22 +00:00
Iain Buclaw e613d99266 libphobos: Apply core.internal.hash updates from druntime
Backported from upstream druntime 2.084

Reviewed-on: https://github.com/dlang/druntime/pull/2469

libphobos/ChangeLog:

	* libdruntime/Makefile.am (DRUNTIME_DSOURCES): Remove rt/util/hash.d
	* libdruntime/Makefile.in: Rebuild.
	* testsuite/libphobos.aa/aa.exp: New file.
	* testsuite/libphobos.aa/test_aa.d: New test.
	* testsuite/libphobos.hash/hash.exp: New file.
	* testsuite/libphobos.hash/test_hash.d: New test.

From-SVN: r268754
2019-02-10 21:01:24 +00:00
Thomas Koenig f1b7b50aff re PR fortran/71723 ([F08] ICE on invalid pointer initialization)
2019-02-10  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/71723
	* expr.c (gfc_check_assign): Add argument is_init_expr.  If we are
	looking at an init expression, issue error if the target is not a
	TARGET and we are not looking at a procedure pointer.
	* gfortran.h (gfc_check_assign): Add optional argument
	is_init_expr.

2019-02-10  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/71723
	* gfortran.dg/pointer_init_2.f90: Adjust error messages.
	* gfortran.dg/pointer_init_6.f90: Likewise.
	* gfortran.dg/pointer_init_9.f90: New test.

From-SVN: r268749
2019-02-10 15:56:41 +00:00
Thomas Koenig cedf8d2ee7 re PR fortran/71723 ([F08] ICE on invalid pointer initialization)
2019-02-10  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/71237
	* expr.c (gfc_check_assign): Add argument is_init_expr.  If we are
	looking at an init expression, issue error if the target is not a
	TARGET and we are not looking at a procedure pointer.
	* gfortran.h (gfc_check_assign): Add optional argument
	is_init_expr.

2019-02-10  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/71237
	* gfortran.dg/pointer_init_2.f90: Adjust error messages.
	* gfortran.dg/pointer_init_6.f90: Likewise.
	* gfortran.dg/pointer_init_9.f90: New test.

From-SVN: r268748
2019-02-10 15:52:38 +00:00
Thomas Koenig 1386121ecd re PR fortran/67679 (-Wunitialized reports on compiler-generated variables)
2019-02-10  Thomas Koenig  <tkoenig@gcc.gnu.org>

    PR fortran/67679
    * gfortran.dg/warn_undefined_1.f90: New test.

From-SVN: r268747
2019-02-10 15:38:19 +00:00
Iain Buclaw ab23d6fa98 libphobos: Merge phobos upstream 6c9fb28b0
Fixes a thread deadlock that occurs in the test runner if libcurl is
missing.

Library fix for https://gcc.gnu.org/PR88654

Reviewed-on: https://github.com/dlang/phobos/pull/6824

From-SVN: r268746
2019-02-10 14:27:17 +00:00
Chung-Ju Wu 2a484d1453 [NDS32] Set default --with-nds32-lib correctly.
gcc/
	* config.gcc (with_nds32_lib): Set default --with-nds32-lib correctly.

From-SVN: r268744
2019-02-10 12:27:01 +00:00