]> git.ipfire.org Git - thirdparty/gcc.git/log
thirdparty/gcc.git
3 years agoDaily bump.
GCC Administrator [Sun, 17 Apr 2022 00:19:23 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Sat, 16 Apr 2022 00:19:32 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Fri, 15 Apr 2022 00:19:39 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Thu, 14 Apr 2022 00:20:05 +0000 (00:20 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Wed, 13 Apr 2022 00:19:21 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Tue, 12 Apr 2022 00:19:27 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Mon, 11 Apr 2022 00:19:09 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Sun, 10 Apr 2022 00:19:16 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Sat, 9 Apr 2022 00:19:35 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Fri, 8 Apr 2022 00:19:31 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Thu, 7 Apr 2022 00:19:42 +0000 (00:19 +0000)] 
Daily bump.

3 years agoarm: Fix ICEs with compare-and-swap and -march=armv8-m.base [PR99977]
Alex Coplan [Wed, 6 Apr 2022 10:16:10 +0000 (11:16 +0100)] 
arm: Fix ICEs with compare-and-swap and -march=armv8-m.base [PR99977]

The PR shows two ICEs with __sync_bool_compare_and_swap and
-mcpu=cortex-m23 (equivalently, -march=armv8-m.base): one in LRA and one
later on, after the CAS insn is split.

The LRA ICE occurs because the
@atomic_compare_and_swap<CCSI:arch><SIDI:mode>_1 pattern attempts to tie
two output operands together (operands 0 and 1 in the third
alternative). LRA can't handle this, since it doesn't make sense for an
insn to assign to the same operand twice.

The later (post-splitting) ICE occurs because the expansion of the
cbranchsi4_scratch insn doesn't quite go according to plan. As it
stands, arm_split_compare_and_swap calls gen_cbranchsi4_scratch,
attempting to pass a register (neg_bval) to use as a scratch register.
However, since the RTL template has a match_scratch here,
gen_cbranchsi4_scratch ignores this argument and produces a scratch rtx.
Since this is all happening after RA, this is doomed to fail (and we get
an ICE about the insn not matching its constraints).

It seems that the motivation for the choice of constraints in the
atomic_compare_and_swap pattern comes from an attempt to satisfy the
constraints of the cbranchsi4_scratch insn. This insn requires the
scratch register to be the same as the input register in the case that
we use a larger negative immediate (one that satisfies J, but not L).

Of course, as noted above, LRA refuses to assign two output operands to
the same register, so this was never going to work.

The solution I'm proposing here is to collapse the alternatives to the
CAS insn (allowing the two output register operands to be matched to
different registers) and to ensure that the constraints for
cbranchsi4_scratch are met in arm_split_compare_and_swap. We do this by
inserting a move to ensure the source and destination registers match if
necessary (i.e. in the case of large negative immediates).

Another notable change here is that we only do:

  emit_move_insn (neg_bval, const1_rtx);

for non-negative immediates. This is because the ADDS instruction used in
the negative case suffices to leave a suitable value in neg_bval: if the
operands compare equal, we don't take the branch (so neg_bval will be
set by the load exclusive). Otherwise, the ADDS will leave a nonzero
value in neg_bval, which will correctly signal that the CAS has failed
when it is later negated.

gcc/ChangeLog:

PR target/99977
* config/arm/arm.c (arm_split_compare_and_swap): Fix up codegen
with negative immediates: ensure we expand cbranchsi4_scratch
correctly and ensure we satisfy its constraints.
* config/arm/sync.md
(@atomic_compare_and_swap<CCSI:arch><NARROW:mode>_1): Don't
attempt to tie two output operands together with constraints;
collapse two alternatives.
(@atomic_compare_and_swap<CCSI:arch><SIDI:mode>_1): Likewise.
* config/arm/thumb1.md (cbranchsi4_neg_late): New.

gcc/testsuite/ChangeLog:

PR target/99977
* gcc.target/arm/pr99977.c: New test.

3 years agoDaily bump.
GCC Administrator [Wed, 6 Apr 2022 00:19:30 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Tue, 5 Apr 2022 00:19:29 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Mon, 4 Apr 2022 08:04:11 +0000 (08:04 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Fri, 1 Apr 2022 00:19:47 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Thu, 31 Mar 2022 00:19:20 +0000 (00:19 +0000)] 
Daily bump.

3 years agocplxlower: Avoid a transform when looking at a default definition
Martin Jambor [Wed, 30 Mar 2022 11:47:24 +0000 (13:47 +0200)] 
cplxlower: Avoid a transform when looking at a default definition

In PR 97456, IPA-SRA triggers a bug in tree-complex.c where it
converts:

 <bb 2>
   a$_M_value_21 = COMPLEX_EXPR <ISRA.18_10(D), ISRA.18_10(D)>;

(where ISRA.18 is IPA-SRA created PARM_DECL with DECL_IGNORED_P set,
which is why it only happens with IPA-SRA) into:

  <bb 2>
    a$_M_value_21 = COMPLEX_EXPR <a$_M_value$real_10(D), a$_M_value$real_10(D)>;

i.e. it replaces two uses of the parameter default-def with two
uninitialized default-defs of a new variable - all in hope to produce
code with better debug info.

This patch fixes it by avoiding the transform when the SSA_NAME to be
replaced is a default definition.

gcc/ChangeLog:

2020-10-19  Martin Jambor  <mjambor@suse.cz>

PR tree-optimization/97456
PR middle-end/105071
* tree-complex.c (set_component_ssa_name): Do not replace ignored decl
default definitions with new component vars.  Reorder if conditions.

gcc/testsuite/ChangeLog:

2020-10-19  Martin Jambor  <mjambor@suse.cz>

PR tree-optimization/97456
* gcc.dg/tree-ssa/pr97456.c: New test.

(cherry picked from commit 619f91eaa8c8a50f1f9d3e7b96ee837037f0e806)

3 years agoDaily bump.
GCC Administrator [Wed, 30 Mar 2022 00:19:52 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Tue, 29 Mar 2022 00:20:00 +0000 (00:20 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Mon, 28 Mar 2022 00:19:07 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Sun, 27 Mar 2022 00:19:40 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Sat, 26 Mar 2022 10:25:15 +0000 (10:25 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Fri, 25 Mar 2022 00:21:45 +0000 (00:21 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Thu, 24 Mar 2022 00:19:48 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Wed, 23 Mar 2022 00:19:46 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Tue, 22 Mar 2022 00:19:17 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Mon, 21 Mar 2022 00:19:28 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Sun, 20 Mar 2022 00:19:05 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Sat, 19 Mar 2022 00:19:19 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Fri, 18 Mar 2022 00:19:17 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Thu, 17 Mar 2022 00:19:51 +0000 (00:19 +0000)] 
Daily bump.

3 years agotarget/104453 - guard call folding with NULL LHS
Richard Biener [Wed, 9 Feb 2022 07:48:35 +0000 (08:48 +0100)] 
target/104453 - guard call folding with NULL LHS

This guards shift builtin folding to do nothing when there is
no LHS, similar to what other foldings do.

2022-02-09  Richard Biener  <rguenther@suse.de>

PR target/104453
* config/i386/i386.c (ix86_gimple_fold_builtin): Guard shift
folding for NULL LHS.

* gcc.target/i386/pr104453.c: New testcase.

(cherry picked from commit 1c827873ed283df282f2df11dfe0ff607e07dab3)

3 years agoDaily bump.
GCC Administrator [Wed, 16 Mar 2022 00:19:33 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Tue, 15 Mar 2022 00:19:49 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Mon, 14 Mar 2022 00:19:09 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Sun, 13 Mar 2022 00:19:10 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Sat, 12 Mar 2022 00:19:12 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Fri, 11 Mar 2022 00:19:23 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Thu, 10 Mar 2022 00:19:19 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Wed, 9 Mar 2022 00:19:17 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Tue, 8 Mar 2022 12:26:21 +0000 (12:26 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Mon, 7 Mar 2022 00:19:31 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Sun, 6 Mar 2022 00:19:07 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Sat, 5 Mar 2022 00:19:32 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Thu, 3 Mar 2022 00:19:05 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Wed, 2 Mar 2022 00:19:20 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Tue, 1 Mar 2022 00:19:39 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Mon, 28 Feb 2022 00:18:48 +0000 (00:18 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Sun, 27 Feb 2022 00:19:01 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Sat, 26 Feb 2022 00:19:11 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Fri, 25 Feb 2022 00:19:26 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Thu, 24 Feb 2022 00:18:46 +0000 (00:18 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Wed, 23 Feb 2022 00:19:15 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Tue, 22 Feb 2022 00:18:58 +0000 (00:18 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Mon, 21 Feb 2022 00:19:21 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Sun, 20 Feb 2022 00:19:04 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Sat, 19 Feb 2022 00:19:22 +0000 (00:19 +0000)] 
Daily bump.

3 years agotree-optimization/97043 - fix latent wrong-code with SLP vectorization
Richard Biener [Mon, 14 Sep 2020 09:25:04 +0000 (11:25 +0200)] 
tree-optimization/97043 - fix latent wrong-code with SLP vectorization

When the unrolling decision comes late and would have prevented
eliding a SLP load permutation we can end up generating aligned
loads when the load is in fact unaligned.  Most of the time
alignment analysis figures out the load is in fact unaligned
but that cannot be relied upon.

The following removes the SLP load permutation eliding based on
the still premature vectorization factor.

2020-09-14  Richard Biener  <rguenther@suse.de>

PR tree-optimization/97043
* tree-vect-slp.c (vect_analyze_slp_instance): Do not
elide a load permutation if the current vectorization
factor is one.

(cherry picked from commit e93428a8b056aed83a7678d4dc8272131ab671ba)

3 years agotree-optimization/96522 - transfer of flow-sensitive info in copy_ref_info
Richard Biener [Thu, 27 Aug 2020 09:48:15 +0000 (11:48 +0200)] 
tree-optimization/96522 - transfer of flow-sensitive info in copy_ref_info

This removes the bogus tranfer of flow-sensitive info in copy_ref_info
plus fixes one oversight in FRE when flow-sensitive non-NULLness was added to
points-to info.

2020-08-27  Richard Biener  <rguenther@suse.de>

PR tree-optimization/96522
* tree-ssa-address.c (copy_ref_info): Reset flow-sensitive
info of the copied points-to.  Transfer bigger alignment
via the access type.
* tree-ssa-sccvn.c (eliminate_dom_walker::eliminate_stmt):
Reset all flow-sensitive info.

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

(cherry picked from commit eb68d9d828f94d28afa5900fbf3072bbcd64ba8a)

3 years agoDaily bump.
GCC Administrator [Fri, 18 Feb 2022 00:19:10 +0000 (00:19 +0000)] 
Daily bump.

3 years agotree-optimization/102798 - avoid copying PTA info to old SSA names
Richard Biener [Mon, 18 Oct 2021 07:10:43 +0000 (09:10 +0200)] 
tree-optimization/102798 - avoid copying PTA info to old SSA names

The vectorizer duplicates pointer-info to created pointer bases
but it has to avoid changing points-to info on existing SSA names
because there's now flow-sensitive info in there (pt->pt_null as
set from VRP).

2021-10-18  Richard Biener  <rguenther@suse.de>

PR tree-optimization/102798
* tree-vect-data-refs.c (vect_create_addr_base_for_vector_ref):
Only copy points-to info to newly generated SSA names.

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

(cherry picked from commit 1631d6d2910e03e4517079d6e6ad0ae1aeb24dfa)

3 years agomiddle-end/103181 - fix operation_could_trap_p for vector division
Richard Biener [Thu, 11 Nov 2021 08:40:36 +0000 (09:40 +0100)] 
middle-end/103181 - fix operation_could_trap_p for vector division

For integer vector division we only checked for all zero vector
constants rather than checking whether any element in the constant
vector is zero.

It also fixes the adjustment to operation_could_trap_helper_p
where I failed to realize that RDIV_EXPR is also used for
fixed-point types.  It also fixes that handling by properly
checking for a fixed_zerop divisor.

2021-11-11  Richard Biener  <rguenther@suse.de>

PR middle-end/103181
PR middle-end/103248
* tree-eh.c (operation_could_trap_helper_p): Properly
check vector constants for a zero element for integer
division.  Separate floating point and integer division code.
Properly handle fixed-point RDIV_EXPR.

* gcc.dg/torture/pr103181.c: New testcase.
* gcc.dg/pr103248.c: Likewise.

(cherry picked from commit 2f0c8f74daef93c0c7b33294213e7db6df58c4d1)

3 years agotree-optimization/103237 - avoid vectorizing unhandled double reductions
Richard Biener [Mon, 15 Nov 2021 10:37:56 +0000 (11:37 +0100)] 
tree-optimization/103237 - avoid vectorizing unhandled double reductions

Double reductions which have multiple LC PHIs in the inner loop
are not handled correctly during transformation since those PHIs
are not properly classified as reduction.  The following disables
vectorizing them.

2021-11-15  Richard Biener  <rguenther@suse.de>

PR tree-optimization/103237
* tree-vect-loop.c (vect_is_simple_reduction): Fail for
double reductions with multiple inner loop LC PHI nodes.

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

(cherry picked from commit 220bd61874cf114667b44f9ded76ed0639eb278b)

3 years agoDaily bump.
GCC Administrator [Thu, 17 Feb 2022 00:19:18 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Wed, 16 Feb 2022 00:19:07 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Tue, 15 Feb 2022 00:19:05 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Mon, 14 Feb 2022 00:19:00 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Sun, 13 Feb 2022 00:18:57 +0000 (00:18 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Sat, 12 Feb 2022 00:19:24 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Fri, 11 Feb 2022 00:19:16 +0000 (00:19 +0000)] 
Daily bump.

3 years agoi386: Fix vec_unpacks_float_lo_v4si operand constraint [PR104469]
Uros Bizjak [Thu, 10 Feb 2022 16:23:17 +0000 (17:23 +0100)] 
i386: Fix vec_unpacks_float_lo_v4si operand constraint [PR104469]

2022-02-10  Uroš Bizjak  <ubizjak@gmail.com>

gcc/ChangeLog:

PR target/104469
* config/i386/sse.md (vec_unpacks_float_lo_v4si):
Change operand 1 constraint to register_operand.

gcc/testsuite/ChangeLog:

PR target/104469
* gcc.target/i386/pr104469.c: New test.

(cherry picked from commit 53fcc46339239c4958e2a15bb9e59274133bbcf7)

3 years agoDaily bump.
GCC Administrator [Thu, 10 Feb 2022 00:19:07 +0000 (00:19 +0000)] 
Daily bump.

3 years agoICE: QImode(not SImode) operand should be passed to gen_vec_initv16qiqi in ashlv16qi3.
liuhongt [Wed, 9 Feb 2022 05:14:43 +0000 (13:14 +0800)] 
ICE: QImode(not SImode) operand should be passed to gen_vec_initv16qiqi in ashlv16qi3.

ix86_expand_vector_init expects vals to be a parallel containing
values of individual fields which should be either element mode of the
vector mode, or a vector mode with the same element mode and smaller
number of elements.

But in the expander ashlv16qi3, the second operand is SImode which
can't be directly passed to gen_vec_initv16qiqi.

gcc/ChangeLog:

PR target/104451
* config/i386/sse.md (<insn><mode>3): lowpart_subreg
operands[2] from SImode to QImode.

gcc/testsuite/ChangeLog:

PR target/104451
* gcc.target/i386/pr104451.c: New test.

3 years agoDaily bump.
GCC Administrator [Wed, 9 Feb 2022 00:19:18 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Tue, 8 Feb 2022 00:19:20 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Mon, 7 Feb 2022 00:19:20 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Sat, 5 Feb 2022 00:19:18 +0000 (00:19 +0000)] 
Daily bump.

3 years agoFortran: reject simplifying TRANSFER for MOLD with storage size 0
Harald Anlauf [Tue, 1 Feb 2022 22:33:24 +0000 (23:33 +0100)] 
Fortran: reject simplifying TRANSFER for MOLD with storage size 0

gcc/fortran/ChangeLog:

PR fortran/104311
* check.c (gfc_calculate_transfer_sizes): Checks for case when
storage size of SOURCE is greater than zero while the storage size
of MOLD is zero and MOLD is an array shall not depend on SIZE.

gcc/testsuite/ChangeLog:

PR fortran/104311
* gfortran.dg/transfer_simplify_15.f90: New test.

(cherry picked from commit 4e4252db0348a7274663a892c3a96d3ed7702aff)

3 years agoDaily bump.
GCC Administrator [Fri, 4 Feb 2022 00:19:06 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Thu, 3 Feb 2022 00:19:11 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Wed, 2 Feb 2022 12:18:55 +0000 (12:18 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Tue, 1 Feb 2022 00:18:53 +0000 (00:18 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Mon, 31 Jan 2022 00:19:05 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Sun, 30 Jan 2022 00:18:58 +0000 (00:18 +0000)] 
Daily bump.

3 years agoFortran: fix simplification of TRANSFER for zero-sized character array result
Harald Anlauf [Thu, 20 Jan 2022 21:36:50 +0000 (22:36 +0100)] 
Fortran: fix simplification of TRANSFER for zero-sized character array result

gcc/fortran/ChangeLog:

PR fortran/104127
* simplify.c (gfc_simplify_transfer): Ensure that the result
typespec is set up for TRANSFER with MOLD of type CHARACTER
including character length even if the result is a zero-sized
array.

gcc/testsuite/ChangeLog:

PR fortran/104127
* gfortran.dg/transfer_simplify_11.f90: Fix logic.
* gfortran.dg/transfer_simplify_13.f90: New test.

(cherry picked from commit 6c1a93102b41a558f3ad49a7c66015257535c747)

3 years agoDaily bump.
GCC Administrator [Sat, 29 Jan 2022 00:19:06 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Fri, 28 Jan 2022 00:18:54 +0000 (00:18 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Thu, 27 Jan 2022 00:19:46 +0000 (00:19 +0000)] 
Daily bump.

3 years agoFortran: MOLD argument to TRANSFER intrinsic having storage size zero
Harald Anlauf [Tue, 25 Jan 2022 20:56:39 +0000 (21:56 +0100)] 
Fortran: MOLD argument to TRANSFER intrinsic having storage size zero

gcc/fortran/ChangeLog:

PR fortran/104227
* check.c (gfc_calculate_transfer_sizes): Fix checking of arrays
passed as MOLD argument to the TRANSFER intrinsic for having
storage size zero.

gcc/testsuite/ChangeLog:

PR fortran/104227
* gfortran.dg/transfer_check_6.f90: New test.

(cherry picked from commit ec543c9833c2d9283c035cd8430849eb4ec04406)

3 years agoDaily bump.
GCC Administrator [Wed, 26 Jan 2022 00:19:17 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Tue, 25 Jan 2022 00:19:12 +0000 (00:19 +0000)] 
Daily bump.

3 years agogcc-changelog: sync from master.
Martin Liska [Mon, 24 Jan 2022 12:44:57 +0000 (13:44 +0100)] 
gcc-changelog: sync from master.

contrib/ChangeLog:

* gcc-changelog/git_commit.py: Sync from master.
* gcc-changelog/test_email.py: Likewise.
* gcc-changelog/test_patches.txt: Likewise.

3 years agoDaily bump.
GCC Administrator [Mon, 24 Jan 2022 00:19:01 +0000 (00:19 +0000)] 
Daily bump.

3 years agoFortran: fix ICE overloading elemental intrinsics
Harald Anlauf [Thu, 13 Jan 2022 20:50:45 +0000 (21:50 +0100)] 
Fortran: fix ICE overloading elemental intrinsics

gcc/fortran/ChangeLog:

PR fortran/103782
* expr.c (gfc_simplify_expr): Adjust logic for when to scalarize a
call of an intrinsic which may have been overloaded.

gcc/testsuite/ChangeLog:

PR fortran/103782
* gfortran.dg/overload_4.f90: New test.

(cherry picked from commit a4a8ae123cd70188e4b4bf5e288a84e0a76fb0fd)

3 years agoDaily bump.
GCC Administrator [Sun, 23 Jan 2022 00:19:08 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Sat, 22 Jan 2022 00:19:09 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Fri, 21 Jan 2022 00:19:07 +0000 (00:19 +0000)] 
Daily bump.

3 years agoDaily bump.
GCC Administrator [Thu, 20 Jan 2022 00:19:24 +0000 (00:19 +0000)] 
Daily bump.

3 years agolibsanitizer: Cherry-pick LLVM release/13.x commit d96358a28193
H.J. Lu [Fri, 17 Dec 2021 19:08:32 +0000 (11:08 -0800)] 
libsanitizer: Cherry-pick LLVM release/13.x commit d96358a28193

Cherry-pick from LLVM release/13.x branch:

commit d96358a2819399a2abb60ad3b26444ab7b4409cf
Author: Michał Górny <mgorny@moritz.systems>
Date:   Mon Dec 13 22:28:26 2021 +0100

    [compiler-rt] Increase kDlsymAllocPoolSize to fix test failures

    Increase kDlsymAllocPoolSize on the release branch as discussed on bug
    51620, as an alternative to backporting
    cb0e14ce6dcdd614a7207f4ce6fcf81a164471ab and its dependencies.
    The minimum size is 8192, as needed for the following test to pass:

      AddressSanitizer-i386-linux :: TestCases/Linux/long-object-path.cpp

    Fixes #51620

PR sanitizer/102911
* asan/asan_malloc_linux.cc (kDlsymAllocPoolSize): Set it to
8192 on Linux.

(cherry picked from commit 8c0f58cd71ec3afcce5abf10c750ec494e88232b)