Commit Graph

153003 Commits

Author SHA1 Message Date
Andreas Tobler bd94ba42e8 backport: config.host: Use the generic FreeBSD t-slibgcc-elf-ver for arm*-*-freebsd* instead of the...
2017-05-10  Andreas Tobler  <andreast@gcc.gnu.org>

    Backport from mainline
    2017-05-09  Andreas Tobler  <andreast@gcc.gnu.org>

    * config.host: Use the generic FreeBSD t-slibgcc-elf-ver for
    arm*-*-freebsd* instead of the t-slibgcc-libgcc.

From-SVN: r247859
2017-05-10 22:42:58 +02:00
H.J. Lu 96764ede56 Ada/x32: PR ada/80626: Correct Memory_Size
X32 uses 64 as word size instead of 32.  This must not affect the
Address type definition which is based on Memory_Size.

	Back port from mainline
	PR ada/80626
	* system-linux-x86.ads (Memory_Size): Use Long_Integer'Size
	instead of Word_Size.

From-SVN: r247850
2017-05-10 10:36:50 -07:00
GCC Administrator 13de5a6a04 Daily bump.
From-SVN: r247824
2017-05-10 00:16:18 +00:00
Michael Meissner 560e3ca7cd backport: re PR target/79038 (Improve PowerPC ISA 3.0 conversion between integers and hardware _Float128)
[gcc]
2017-05-09  Michael Meissner  <meissner@linux.vnet.ibm.com>

	Back port from mainline
	2017-05-05  Michael Meissner  <meissner@linux.vnet.ibm.com>

	PR target/79038
	PR target/79202
	PR target/79203
	* config/rs6000/rs6000.md (u code attribute): Add FIX and
	UNSIGNED_FIX.
	(extendsi<mode>2): Add support for doing sign extension via
	VUPKHSW and XXPERMDI if the value is in Altivec registers and we
	don't have ISA 3.0 instructions.
	(extendsi<mode>2 splitter): Likewise.
	(fix_trunc<mode>si2): If we are at ISA 2.07 (VSX small integer),
	generate the normal insns since SImode can now go in vector
	registers.  Disallow the special UNSPECs needed for previous
	machines to hide SImode being used.  Add new insns
	fctiw{,w}_<mode>_smallint if SImode can go in vector registers.
	(fix_trunc<mode>si2_stfiwx): Likewise.
	(fix_trunc<mode>si2_internal): Likewise.
	(fixuns_trunc<mode>si2): Likewise.
	(fixuns_trunc<mode>si2_stfiwx): Likewise.
	(fctiw<u>z_<mode>_smallint): Likewise.
	(fctiw<u>z_<mode>_mem): New combiner pattern to prevent conversion
	of floating point to 32-bit integer from doing a direct move to
	the GPR registers to do a store.
	(fctiwz_<mode>): Break long line.

[gcc/testsuite]
2017-05-09  Michael Meissner  <meissner@linux.vnet.ibm.com>

	Back port from mainline
	2017-05-05  Michael Meissner  <meissner@linux.vnet.ibm.com>

	PR target/79038
	PR target/79202
	PR target/79203
	* gcc.target/powerpc/ppc-round3.c: New test.
	* gcc.target/powerpc/ppc-round2.c: Update expected code.

From-SVN: r247820
2017-05-09 23:49:37 +00:00
GCC Administrator 7627f79d6d Daily bump.
From-SVN: r247775
2017-05-09 00:16:14 +00:00
Joseph Myers e08470ef04 * es.po, sv.po: Update.
From-SVN: r247744
2017-05-08 16:42:51 +01:00
Tamar Christina 50bb67c7fe re PR middle-end/79665 (gcc's signed (x*x)/200 is slower than clang's)
2017-05-08  Tamar Christina  <tamar.christina@arm.com>

        PR middle-end/79665
        * expr.c (expand_expr_real_2): Move TRUNC_MOD_EXPR, FLOOR_MOD_EXPR,
        CEIL_MOD_EXPR, ROUND_MOD_EXPR cases.

From-SVN: r247734
2017-05-08 09:45:46 +00:00
GCC Administrator e92ec7dde0 Daily bump.
From-SVN: r247732
2017-05-08 00:16:21 +00:00
GCC Administrator 8da9a3b7aa Daily bump.
From-SVN: r247725
2017-05-07 00:16:20 +00:00
GCC Administrator 7e1dffb12f Daily bump.
From-SVN: r247708
2017-05-06 00:16:40 +00:00
Janus Weil 533a17774d backport: re PR fortran/80121 (Memory leak with derived-type intent(out) argument)
2017-05-05  Janus Weil  <janus@gcc.gnu.org>

	Backport from trunk
	PR fortran/80121
	* trans-expr.c (gfc_conv_procedure_call): Deallocate the components
	of allocatable intent(out) arguments.


2017-05-05  Janus Weil  <janus@gcc.gnu.org>

	Backport from trunk
	PR fortran/80121
	* gfortran.dg/intent_out_9.f90: New test case.

From-SVN: r247662
2017-05-05 23:00:53 +02:00
Janus Weil 52637de8cc backport: re PR fortran/80392 ([OOP] ICE with allocatable polymorphic function result in a procedure pointer component)
2017-05-05  Janus Weil  <janus@gcc.gnu.org>

	Backport from trunk
	PR fortran/80392
	* trans-types.c (gfc_get_derived_type): Prevent an infinite loop when
	building a derived type that includes a procedure pointer component
	with a polymorphic result.

2017-05-05  Janus Weil  <janus@gcc.gnu.org>

	Backport from trunk
	PR fortran/80392
	* gfortran.dg/proc_ptr_comp_49.f90: New test case.

From-SVN: r247655
2017-05-05 22:09:20 +02:00
GCC Administrator 80a54139d9 Daily bump.
From-SVN: r247626
2017-05-05 00:16:16 +00:00
Jerry DeLisle 9bf7f47385 backport: re PR fortran/80484 (Three syntax errors involving derived-type I/O)
2017-05-04  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	Backport from trunk.
	PR fortran/80484
	* io.c (format_lex): Check for '/' and set token to FMT_SLASH.
	(check_format): Move FMT_DT checking code to data_desc section.
	* module.c (gfc_match_use): Include the case of INTERFACE_DTIO.
	Backport from mainline
	PR fortran/80484
	* gfortran.dg/dtio_29.f03: New test.

From-SVN: r247615
2017-05-04 18:45:50 +00:00
Joseph Myers 7a1bde3e98 Update .po files.
* be.po, da.po, el.po, fi.po, hr.po, id.po, ja.po, nl.po, ru.po,
	sr.po, sv.po, tr.po, uk.po, vi.po, zh_CN.po, zh_TW.po: Update.

From-SVN: r247602
2017-05-04 16:54:38 +01:00
GCC Administrator 2835960e74 Daily bump.
From-SVN: r247574
2017-05-04 00:16:14 +00:00
Joseph Myers b5cc246922 * de.po: Update.
From-SVN: r247571
2017-05-03 23:25:04 +01:00
Jan Beulich 6dc0137e89 x86: vpermil2p{s,d} have no commutative operands
While either of the last two operands can be in memory, they can't be
swapped.

gcc/
2017-05-03  Jan Beulich  <jbeulich@suse.com>

	* config/i386/sse.md (xop_vpermil2<mode>3): Do not allow operand
	swapping, add (x,x,m,x,n) alternative.

From-SVN: r247554
2017-05-03 15:36:29 +00:00
Richard Biener 6987b50fcc backport: [multiple changes]
2017-05-03  Richard Biener  <rguenther@suse.de>

	Backport from mainline
	2017-04-20  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/80453
	* tree-ssa-sccvn.h (struct vn_phi_s): Add cclhs and ccrhs members.
	* tree-ssa-sccvn.c (cond_stmts_equal_p): Use recorded lhs and rhs
	from the conditions.
	(vn_phi_eq): Pass them down.
	(vn_phi_lookup): Record them.
	(vn_phi_insert): Likewise.

	2017-04-25  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/80492
	* alias.c (compare_base_decls): Handle registers with asm
	specification conservatively.

	* gcc.dg/pr80492.c: New testcase.

	2017-04-27  Richard Biener  <rguenther@suse.de>

	PR middle-end/80539
	* tree-chrec.c (chrec_fold_plus_poly_poly): Deal with not
	being in loop-closed SSA form conservatively.
	(chrec_fold_multiply_poly_poly): Likewise.

	* gcc.dg/torture/pr80539.c: New testcase.

From-SVN: r247545
2017-05-03 11:22:34 +00:00
Jakub Jelinek 4041b42a3b backport: re PR c/80468 (ICE on invalid AVX512 code with -m32)
Backported from mainline
	2017-04-21  Jakub Jelinek  <jakub@redhat.com>

	PR c/80468
	* c-decl.c (finish_declspecs) <case cts_int_n>: If int_n_idx is not
	enabled, set specs->type to integer_type_node.

	* gcc.dg/pr80468.c: New test.

From-SVN: r247534
2017-05-03 08:45:29 +02:00
GCC Administrator 67fef366b0 Daily bump.
From-SVN: r247532
2017-05-03 00:16:14 +00:00
Joseph Myers 6dd5eb866b * es.po: Update.
From-SVN: r247525
2017-05-02 21:46:37 +01:00
Uros Bizjak 114e5a84ae backport: re PR target/68491 (libgcc calls __get_cpuid with 0 level breaks on early 486)
Backport from mainline
	2017-05-01  Uros Bizjak  <ubizjak@gmail.com>

	PR target/68491
	* config/i386/cpuid.h (__get_cpuid): Always return 0 when
	__get_cpuid_max returns 0.
	(__get_cpuid_count): Ditto.

From-SVN: r247523
2017-05-02 22:36:26 +02:00
Joseph Myers a411c8bfb5 * fr.po: Update.
From-SVN: r247521
2017-05-02 18:27:50 +01:00
Jakub Jelinek 1f5e8060cd backport: Makefile.in (s-options): Invoke opt-gather.awk with LC_ALL=C in the environment.
Backported from mainline
	2017-04-25 Jakub Jelinek <jakub@redhat.com>

	* Makefile.in (s-options): Invoke opt-gather.awk with LC_ALL=C in the
	environment.

From-SVN: r247513
2017-05-02 18:12:40 +02:00
Jakub Jelinek 3c19ece144 * BASE-VER: Set to 7.1.1.
From-SVN: r247506
2017-05-02 17:29:37 +02:00
GCC Administrator 303f81ad7e Update ChangeLog and version files for release
From-SVN: r247493
2017-05-02 12:42:24 +00:00
Jakub Jelinek 0f942c6aaf * gennews (files): Add files for GCC 7.
From-SVN: r247492
2017-05-02 14:38:31 +02:00
Richard Biener cdd7941640 re PR tree-optimization/80591 (AArch64 kernel miscompilation starting with r246809)
2017-05-02  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/80591
	Revert
	2017-04-10  Richard Biener  <rguenther@suse.de>

	* tree-ssa-structalias.c (find_func_aliases): Properly handle
	asm inputs.

	* gcc.dg/torture/pr80591.c: New testcase.

From-SVN: r247487
2017-05-02 11:26:25 +00:00
GCC Administrator 12bdf10b34 Daily bump.
From-SVN: r247458
2017-05-02 00:16:14 +00:00
Joseph Myers 7bb5d3b9e4 Regenerate .pot files.
gcc/po:
	* gcc.pot: Regenerate.

libcpp/po:
	* cpplib.pot: Regenerate.

From-SVN: r247448
2017-05-01 23:28:48 +01:00
GCC Administrator 38a50ebc56 Daily bump.
From-SVN: r247424
2017-05-01 00:16:28 +00:00
Joseph Myers 63e838b127 * fr.po: Update.
From-SVN: r247421
2017-05-01 00:21:04 +01:00
Joseph Myers 90393627bc Update .po files.
* be.po, da.po, de.po, el.po, es.po, fi.po, fr.po, hr.po, id.po,
	ja.po, nl.po, ru.po, sr.po, sv.po, tr.po, uk.po, vi.po, zh_CN.po,
	zh_TW.po: Update.

From-SVN: r247419
2017-05-01 00:16:59 +01:00
GCC Administrator 21268e17c9 Daily bump.
From-SVN: r247415
2017-04-30 00:16:18 +00:00
GCC Administrator 934d79ae1a Daily bump.
From-SVN: r247404
2017-04-29 00:16:13 +00:00
Jakub Jelinek 82052c2822 re PR bootstrap/80531 (RC1 bootstrap comparison failure)
PR bootstrap/80531
	* cgraph.h (symtab_node::debug_symtab): No longer inline.
	* symtab.c (symtab_node::debug_symtab): Move definition here.

From-SVN: r247368
2017-04-28 13:42:14 +02:00
GCC Administrator 9a4ea63e40 Daily bump.
From-SVN: r247360
2017-04-28 00:16:19 +00:00
Jakub Jelinek 4c41782be3 re PR bootstrap/80531 (RC1 bootstrap comparison failure)
PR bootstrap/80531
	* configure.tgt (*-*-aix*): Add -frandom-seed=$@ to XCFLAGS to avoid
	bootstrap compare failures.

From-SVN: r247351
2017-04-27 22:03:38 +02:00
Richard Earnshaw c2f36c35da [AArch64] Fix for gcc-7 regression PR 80530
This patch fixes the regression caused by the changes to add square root
estimation when compiling for xgene-1 or exynos-m1 targets.

The issue is that the expand path for the reciprocal estimate square
root pattern assumes that pattern cannot fail once it has been decided
that this expansion path is available, but because the logic deep inside
aarch64_emit_approx_sqrt() differs from use_rsqrt_p() the two disagree
as to what is safe.

This patch refactors the logic to ensure that we cannot unknowingly make
different choices here.

	PR target/80530
	* config/aarch64/aarch64.c (aarch64_emit_approx_sqrt): Ensure
	that the logic for permitting reciprocal estimates matches that
	in use_rsqrt_p.

From-SVN: r247341
2017-04-27 14:11:47 +00:00
Jakub Jelinek a240da2d3a re PR c++/80534 (7.1 RC - internal compiler error: in finish_member_declaration, at cp/semantics.c:2963)
PR c++/80534
	* tree.c (type_cache_hasher::equal): Only compare
	TYPE_TYPELESS_STORAGE flag on non-aggregate element types.
	(build_array_type_1): Only hash TYPE_TYPELESS_STORAGE flag on
	non-aggregate element types.
	* tree.h (TYPE_TYPELESS_STORAGE): Fix comment typo, add more details
	about the flag on ARRAY_TYPEs in the comment, formatting fix.
c-family/
	* c-common.c (complete_array_type): Only hash TYPE_TYPELESS_STORAGE
	flag on non-aggregate element types.
testsuite/
	* g++.dg/other/pr80534-1.C: New test.
	* g++.dg/other/pr80534-2.C: New test.

From-SVN: r247337
2017-04-27 15:47:54 +02:00
Jakub Jelinek e469603e97 re PR target/79430 (action of statement incorrectly optimised away)
PR target/79430
	* reg-stack.c (emit_swap_insn): If i1src mentions the stack pointer,
	punt if tmp contains autoinc of stack pointer.

From-SVN: r247308
2017-04-27 11:58:43 +02:00
Jakub Jelinek a22d92795b re PR target/77728 (Miscompilation multiple vector iteration on ARM)
PR target/77728
	* config/aarch64/aarch64.c (struct aarch64_fn_arg_alignment): Remove.
	(aarch64_function_arg_alignment): Return unsigned int again, but still
	ignore TYPE_FIELDS chain decls other than FIELD_DECLs.
	(aarch64_layout_arg): Adjust aarch64_function_arg_alignment caller.
	Don't emit -Wpsabi note.
	(aarch64_function_arg_boundary): Likewise.
	(aarch64_gimplify_va_arg_expr): Adjust aarch64_function_arg_alignment
	caller.
testsuite/
	* g++.dg/abi/pr77728-2.C: Don't expect -Wpsabi notes.

From-SVN: r247293
2017-04-27 09:14:24 +02:00
GCC Administrator 2879a3773d Daily bump.
From-SVN: r247290
2017-04-27 00:16:17 +00:00
GCC Administrator 140360e969 Daily bump.
From-SVN: r247272
2017-04-26 00:16:18 +00:00
Martin Sebor 8550e48ac4 PR tree-optimization/80497 - ICE at -O1 and above on valid code on x86_64-linux-gnu in tree_to_uhwi
gcc/ChangeLog:

	PR tree-optimization/80497
	* gimple-ssa-sprintf.c (get_int_range): Avoid assuming all integer
	constants are representable in HOST_WIDE_INT.
	(parse_directive): Ditto.

gcc/testsuite/ChangeLog:

	PR tree-optimization/80497
	* gcc.dg/tree-ssa/builtin-sprintf-warn-17.c: New test.

From-SVN: r247264
2017-04-25 11:58:32 -06:00
Marek Polacek 8ef2085d4c re PR sanitizer/80349 (UBSAN: compile time crash with "type mismatch in binary expression" message)
PR sanitizer/80349
	* fold-const.c (fold_binary_loc) <case BIT_IOR_EXPR>: Convert arg0's
	first argument to type.

	* g++.dg/ubsan/pr80349-2.C: New test.

From-SVN: r247260
2017-04-25 17:02:27 +00:00
Ramana Radhakrishnan 6bcf239ec5 re PR target/77728 (Miscompilation multiple vector iteration on ARM)
PR target/77728
	* config/arm/arm.c: Include gimple.h.
	(aapcs_layout_arg): Emit -Wpsabi note if arm_needs_doubleword_align
	returns negative, increment ncrn only if it returned positive.
	(arm_needs_doubleword_align): Return int instead of bool,
	ignore DECL_ALIGN of non-FIELD_DECL TYPE_FIELDS chain
	members, but if there is any such non-FIELD_DECL
	> PARM_BOUNDARY aligned decl, return -1 instead of false.
	(arm_function_arg): Emit -Wpsabi note if arm_needs_doubleword_align
	returns negative, increment nregs only if it returned positive.
	(arm_setup_incoming_varargs): Likewise.
	(arm_function_arg_boundary): Emit -Wpsabi note if
	arm_needs_doubleword_align returns negative, return
	DOUBLEWORD_ALIGNMENT only if it returned positive.
testsuite/
	* g++.dg/abi/pr77728-1.C: New test.

Co-Authored-By: Jakub Jelinek <jakub@redhat.com>

From-SVN: r247259
2017-04-25 18:47:32 +02:00
Bill Seurer d3de3474fc [PATCH, rs6000] pr80482 Relax vector builtin parameter checks
PR target/80482
Backport from mainline

This patch changes the parameter testing for powerpc vector builtins to relax
the existing requirement that the parameters be identical to instead that they
be compatible.  This allows for mixing parameters with differing qualified
(const, volatile, etc.) types.

See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80482 for more information.

Bootstrapped and tested on powerpc64le-unknown-linux-gnu and
powerpc64be-unknown-linux-gnu with no regressions.  Is this ok for trunk?

[gcc]

2017-04-25  Bill Seurer  <seurer@linux.vnet.ibm.com>

	Backport from mainline
	PR target/80482
	* config/rs6000/rs6000-c.c (altivec_resolve_overloaded_builtin): Change
	type checks to test for compatibility instead of equality.

[gcc/testsuite]

2017-04-25  Bill Seurer  <seurer@linux.vnet.ibm.com>

	Backport from mainline
	PR target/80482
	* gcc.target/powerpc/vec-constvolatile.c: New test.

From-SVN: r247256
2017-04-25 16:16:13 +00:00
Ramana Radhakrishnan fd8de490a7 re PR target/77728 (Miscompilation multiple vector iteration on ARM)
PR target/77728
	* config/aarch64/aarch64.c (struct aarch64_fn_arg_alignment): New
	type.
	(aarch64_function_arg_alignment): Return aarch64_fn_arg_alignment
	struct.  Ignore DECL_ALIGN of decls other than FIELD_DECL for
	the alignment computation, but return their maximum in warn_alignment.
	(aarch64_layout_arg): Adjust aarch64_function_arg_alignment caller.
	Emit a -Wpsabi note if warn_alignment is 16 bytes, but alignment
	is smaller.
	(aarch64_function_arg_boundary): Likewise.  Simplify using MIN/MAX.
	(aarch64_gimplify_va_arg_expr): Adjust aarch64_function_arg_alignment
	caller.
testsuite/
	* g++.dg/abi/pr77728-2.C: New test.

Co-Authored-By: Jakub Jelinek <jakub@redhat.com>

From-SVN: r247241
2017-04-25 15:56:10 +02:00