Commit Graph

182584 Commits

Author SHA1 Message Date
Nicolas Koenig 9fc240973e Only allocate a single chunk of memory on startup. 2021-10-28 22:41:40 +02:00
Thomas Koenig 8df87c9e2c Take memory from envirnoment variables; document those. 2021-10-04 22:34:53 +02:00
Thomas Koenig c92ee4037c Install libcaf_shared libraries in the same directory as libgfortran. 2021-09-24 20:38:01 +02:00
Thomas Koenig d2bcab37e1 Add correct link flags to libgfortran.spec.in.
Removed extraneous HUHU.
2021-09-24 19:03:46 +02:00
Thomas Koenig b18a97e5dd Merged current trunk to branch. 2021-09-13 19:49:49 +02:00
Thomas Koenig e76a53644c Use an initial shared memory size of 256 GB on Apple.
This implements an idea that Nicolas had to overcome the Darwin
problem that it is not possible to extend a shared memory segment
on that system.

The remedy is simple: Use a memory segment that is larger than
what can reasonably be used. This should only waste a few page
table entries, while providing the functionality, at least for
further testing.

libgfortran/ChangeLog:

	* caf_shared/shared_memory.c (shared_memory_init): On Apple,
	use an initial size of 256 GB.
2021-01-17 19:13:20 +01:00
Thomas Koenig a3f20923e1 Add test cases for atomic subroutines, remove atomics from TODO.
libgfortran/ChangeLog:

	* caf_shared/README.native_coarrays: Remove atomics from list
	of unsupported features.
2021-01-17 15:11:20 +01:00
Thomas Koenig 1b152d44ac Add error checking to mutexes and condition variables.
After the discussions about PTHREAD_PROCESS_SHARED and after
observing that on Cygwin the program simply hangs because
this flag is not implemented there, the best way is to check
for errors and exit with a clear error message instead of
some mysterious hang.

libgfortran/ChangeLog:

	* caf_shared/util.c (ERRCHECK): New macro.
	(initialize_shared_mutex): Use it to check return codes.
	(initialize_shared_condition): Likewise.
2021-01-10 13:25:09 +01:00
Thomas Koenig 5ec390b478 Fix CO_REDUCE with RESULT_IMAGE.
gcc/fortran/ChangeLog:

	* trans-array.c (gfc_conv_ss_descriptor): Use correct ref.
	* trans-intrinsic.c (trans_argument): Use gfc_conv_expr_reference.
	* trans-decl.c (gfc_build_builtin_function_decls):
	Correct spec for array.

libgfortran/ChangeLog:

	* caf_shared/collective_subroutine.c (collsub_reduce_array):
	Fix off by one error for result.

gcc/testsuite/ChangeLog:

	* gfortran.dg/caf-shared/co_reduce_1.f90: New test.
2021-01-05 13:04:44 +01:00
Thomas Koenig afae4a55cc Merge branch 'master' into devel/coarray_native 2021-01-03 21:40:04 +01:00
Thomas Koenig 9d9a82ec84 Make SYNC IMAGES(*) work by handling size of -1 in library.
libgfortran/ChangeLog:

	* caf_shared/sync.c (sync_table): Change size argument and index
	to int.
	* caf_shared/sync.h (sync_table): Adjust prototype.
	* caf_shared/wrapper.c (cas_sync_images): Add s argument to int,
	adjust call to sync_table.

gcc/testsuite/ChangeLog:

	* gfortran.dg/caf-shared/sync_images_1.f90: New test.
	* gfortran.dg/caf-shared/sync_images_2.f90: New test.
2021-01-01 12:12:49 +01:00
Jakub Jelinek d2eb616a0f match.pd: Add clz(X) == 0 -> (int)X < 0 etc. simpifications [PR94802]
The following patch adds some clz simplifications.  If
clz is 0, then the MSB of the argument is set, and if clz is prec-1, then
the argument is 1.

2020-12-31  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/94802
	* match.pd (clz(X) == 0 -> (int)X < 0): New simplification.
	(clz(X) == (prec-1) -> X == 1): Likewise.

	* gcc.dg/tree-ssa/pr94802-1.c: New test.
2020-12-31 11:09:26 +01:00
Jakub Jelinek 8f12ce2ea3 match.pd: Add (-(X < 0) | 1) * X -> abs (X) etc. simplifications [PR94785]
The following patch adds two simplifications to recognize idioms
for ABS_EXPR resp. ABSU_EXPR.

2020-12-31  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/94785
	* match.pd ((-(X < 0) | 1) * X -> abs (X)): New simplification.
	((-(X < 0) | 1U) * X -> absu (X)): Likewise.

	* gcc.dg/tree-ssa/pr94785.c: New test.
2020-12-31 11:08:15 +01:00
Jakub Jelinek 9e603837f7 wide-int: Fix wi::to_mpz [PR98474]
The following testcase is miscompiled, because niter analysis miscomputes
the number of iterations to 0.
The problem is that niter analysis uses mpz_t (wonder why, wouldn't
widest_int do the same job?) and when wi::to_mpz is called e.g. on the
TYPE_MAX_VALUE of __uint128_t, it initializes the mpz_t result with wrong
value.
wi::to_mpz has code to handle negative wide_ints in signed types by
inverting all bits, importing to mpz and complementing it, which is fine,
but doesn't handle correctly the case when the wide_int's len (times
HOST_BITS_PER_WIDE_INT) is smaller than precision when wi::neg_p.
E.g. the 0xffffffffffffffffffffffffffffffff TYPE_MAX_VALUE is represented
in wide_int as 0xffffffffffffffff len 1, and wi::to_mpz would create
0xffffffffffffffff mpz_t value from that.
This patch handles it by adding the needed -1 host wide int words (and has
also code to deal with precision that aren't multiple of
HOST_BITS_PER_WIDE_INT).

2020-12-31  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/98474
	* wide-int.cc (wi::to_mpz): If wide_int has MSB set, but type
	is unsigned and excess negative, append set bits after len until
	precision.

	* gcc.c-torture/execute/pr98474.c: New test.
2020-12-31 11:06:56 +01:00
Jakub Jelinek a9ec9902d7 fold-const: Avoid (cast) ((cast2) x p+ y) folding for -fsanitize=alignment [PR98206]
The following testcase is diagnosed by UBSan as invalid, even when it is
valid.
We have a derived type Base2 at offset 1 with alignment 1 and do:
(const Derived &) ((const Base2 *) this + -1)
but the folder before ubsan in the FE gets a chance to instrument it
optimizes that into:
(const Derived &) this + -1
and so we require that this has 8-byte alignment which Derived class needs.

Fixed by avoiding such an optimization when -fsanitize=alignment is in
effect if it would affect the alignments (and guarded with !in_gimple_form
because we don't really care during GIMPLE, though pointer conversions are
useless then and so such folding isn't needed very much during GIMPLE).

2020-12-31  Jakub Jelinek  <jakub@redhat.com>

	PR c++/98206
	* fold-const.c: Include asan.h.
	(fold_unary_loc): Don't optimize (ptr_type) (((ptr_type2) x) p+ y)
	into ((ptr_type) x) p+ y if sanitizing alignment in GENERIC and
	ptr_type points to type with higher alignment than ptr_type2.

	* g++.dg/ubsan/align-4.C: New test.
2020-12-31 10:20:39 +01:00
Jakub Jelinek d96b8556e5 reassoc: Optimize x > 0x1fff || y > 0x1fff into (x | y) > 0x1fff [PR56719]
The following patch adds an optimization mentioned in PR56719 #c8.
We already have the x != 0 && y != 0 && z != 0 into (x | y | z) != 0
and x != -1 && y != -1 && y != -1 into (x & y & z) != -1
optimizations, this patch just extends that to
x < C && y < C && z < C for power of two constants C into
(x | y | z) < C (for unsigned comparisons).

I didn't want to create too many buckets (there can be TYPE_PRECISION such
constants), so the patch instead just uses one buckets for all such
constants and loops over that bucket up to TYPE_PRECISION times.

2020-12-31  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/56719
	* tree-ssa-reassoc.c (optimize_range_tests_cmp_bitwise): Also optimize
	x < C && y < C && z < C when C is a power of two constant into
	(x | y | z) < C.

	* gcc.dg/tree-ssa/pr56719.c: New test.
2020-12-31 10:19:06 +01:00
Iain Buclaw 1af3f4a289 d: Mangled Symbols now back reference types and identifiers
Symbols with extern(D) linkage are now mangled using back references to
types and identifiers if these occur more than once in the mangled name
as emitted before.  This reduces symbol length, especially with chained
expressions of templated functions with Voldemort return types.

For example, the average symbol length of the 127000+ symbols created by
a libphobos unittest build is reduced by a factor of about 3, while the
longest symbol shrinks from 416133 to 1142 characters.

Reviewed-on: https://github.com/dlang/dmd/pull/12079

gcc/d/ChangeLog:

	* dmd/MERGE: Merge upstream dmd 2bd4fc3fe.
2020-12-31 01:27:06 +01:00
GCC Administrator 5478fec445 Daily bump. 2020-12-31 00:16:29 +00:00
Ian Lance Taylor cfcbb4227f libgo: update to Go1.16beta1 release
This does not yet include support for the //go:embed directive added
in this release.

	* Makefile.am (check-runtime): Don't create check-runtime-dir.
	(mostlyclean-local): Don't remove check-runtime-dir.
	(check-go-tool, check-vet): Copy in go.mod and modules.txt.
	(check-cgo-test, check-carchive-test): Add go.mod file.
	* Makefile.in: Regenerate.

Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/280172
2020-12-30 15:13:24 -08:00
Thomas Koenig 4726e39b0b Make STAT and ERRMSG work on ALLOCATE, move error handling to library.
This makes STAT and ERRMSG work on ALLOCATE.  It also separates
the allocation of coarrays into two functions: One without error
checking, which is called by compiler-generated code, and one
with error checking for call from user code.

In the course of looking at this, it was also noticed that
allocatable coarrays were not automatically deallocated;
this is now also fixed.  Also, saved allocatable coarrays
are now saved.

gcc/fortran/ChangeLog:

	* trans-array.c (gfc_allocate_shared_coarray): Remove extra
	arguments, just build the call.
	(allocate_shared_coarray_chk): New function.
	(gfc_array_allocate): Adjust where to set the offset.
	Error handling is done in the library for shared coarrays.
	(gfc_trans_deferred_array): No early return for allocatable
	shared coarrays.
	* trans-array.h (gfc_array_allocate): Adjust prototype.
	(gfc_allocate_shared_coarray): Likewise.
	* trans-decl.c: Rename gfor_fndecl_cas_coarray_allocate to
	gfor_fndecl_cas_coarray_alloc for
	brevity.  Add gfor_fndecl_cas_coarray_alloc_chk.
	(gfc_build_builtin_function_decls): Likewise.
	(gfc_trans_shared_coarray): Adjust calling sequence for
	gfc_allocate_shared_coarray.
	(gfc_trans_deferred_vars): Correct handling of saved
	allocatable shared coarrays.
	* trans-stmt.c (gfc_trans_sync): Adjust whitespace.o
	(coarray_alloc_p): Remove.
	(gfc_trans_allocate): Add shared_coarray variable to adjust
	status and errmsg handling.
	* trans.h: Rename gfor_fndecl_cas_coarray_allocate to
	gfor_fndecl_cas_coarray_alloc for brevity.  Add
	gfor_fndecl_cas_coarray_alloc_chk.

libgfortran/ChangeLog:

	* caf_shared/coarraynative.c (test_for_cas_errors): Correct
	handling of stat.
	* caf_shared/libcoarraynative.h (STAT_ERRMSG_ENTRY_CHECK): Use
	unlikely in condition.
	(STAT_ERRMSG_ENTRY_CHECK_RET): Likewise.
	* caf_shared/wrapper.c (cas_coarray_alloc): Adjust arguments.
	Call cas_coarray_alloc_work.
	(cas_coarray_alloc_chk): New function.
	(cas_coarray_alloc_work): New function.

gcc/testsuite/ChangeLog:

	* gfortran.dg/caf-shared/allocate_1.f90: Adjust number of calls to
	sync_all.
	* gfortran.dg/caf-shared/allocate_status_1.f90: New test.
	* gfortran.dg/caf-shared/automatic_deallocate_1.f90: New test.
	* gfortran.dg/caf-shared/save_allocatable_1.f90: New test.
2020-12-30 17:53:31 +01:00
Uros Bizjak 0696141107 i386: Remove unnecessary clobbers from combine splitters.
There is no need for combine splitters to emit insn patterns with clobbers,
the pass is smart enough to add clobbers to patterns  as necessary.

2020-12-30  Uroš Bizjak  <ubizjak@gmail.com>

gcc/
	* config/i386/i386.md: Remove unnecessary clobbers
	from combine splitters.
2020-12-30 17:42:15 +01:00
Iain Buclaw 209da90b40 d: Simplify quoting characters in deps_add_target
The implementation in d-lang.cc was based on what was present in libcpp.
This synchronizes the escaping logic to match the current version.

gcc/d/ChangeLog:

	* d-lang.cc (deps_add_target): Handle quoting ':' character.
	Reimplement backslash tracking.
2020-12-30 11:27:53 +01:00
Iain Buclaw ac78516b27 d: Give the result of evaluated expressions a location
CST trees that were converted back to a D front-end AST node lost all
location information of the original expression.  Now this is propagated
on to the literal expression.

gcc/d/ChangeLog:

	* d-tree.h (d_eval_constant_expression): Add location argument.
	* d-builtins.cc (d_eval_constant_expression): Give generated constants
	a proper file location.
	* d-compiler.cc (Compiler::paintAsType): Pass expression location to
	d_eval_constant_expression.
	* d-frontend.cc (eval_builtin): Likewise.
2020-12-30 11:27:52 +01:00
Jakub Jelinek 8f7941ca37 i386: Optimize pmovmskb on inverted vector to inversion of pmovmskb result [PR98461]
The following patch adds combine splitters to optimize:
-       vpcmpeqd        %ymm1, %ymm1, %ymm1
-       vpandn  %ymm1, %ymm0, %ymm0
        vpmovmskb       %ymm0, %eax
+       notl    %eax
etc. (for vectors with less than 32 elements with xorl instead of notl).

2020-12-30  Jakub Jelinek  <jakub@redhat.com>

	PR target/98461
	* config/i386/sse.md (<sse2_avx2>_pmovmskb): Add splitters
	for pmovmskb of NOT vector.

	* gcc.target/i386/sse2-pr98461.c: New test.
	* gcc.target/i386/avx2-pr98461.c: New test.
2020-12-30 11:21:24 +01:00
GCC Administrator 86b3edf1ff Daily bump. 2020-12-30 00:16:25 +00:00
Paul Thomas eeb145317b Fortran: Correct missing structure constructor comps. [PR97612].
2020-12-29  Paul Thomas  <pault@gcc.gnu.org>

gcc/fortran
	PR fortran/97612
	* primary.c (build_actual_constructor): Missing allocatable
	components are set unallocated using EXPR_NULL. Then missing
	components are tested for a default initializer.

gcc/testsuite/
	PR fortran/97612
	* gfortran.dg/structure_constructor_17.f90: New test.
2020-12-29 17:44:48 +00:00
Paul Thomas feae0af827 Fortran: Fix deferred character lengths in array constructors [PR93833].
2020-12-29  Paul Thomas  <pault@gcc.gnu.org>

gcc/fortran
	PR fortran/93833
	* trans-array.c (get_array_ctor_var_strlen): If the character
	length backend_decl cannot be found, convert the expression and
	use the string length. Clear up some minor white space issues
	in the rest of the file.

gcc/testsuite/
	PR fortran/93833
	* gfortran.dg/deferred_character_36.f90 : New test.
2020-12-29 17:37:25 +00:00
Claudiu Zissulescu 02a2d78f7a arc: generate mac(u) insn instead of macd(u) when destination is accl
Generate MAC(U) instruction instead of MACD(U) when the destination
register is already choosen as ACCL register.

gcc/
2020-12-29  Claudiu Zissulescu  <claziss@synopsys.com>

	* config/arc/arc.md (maddsidi4_split): Skip macd gen, use mac insn
	instead.
	(macd): Update register letters.
	(umaddsidi4_split): Skip macdu gen, use macu insn instead.
	(macdu): Update register letters.

Signed-off-by: Claudiu Zissulescu <claziss@synopsys.com>
2020-12-29 13:41:20 +02:00
Claudiu Zissulescu 8a90673bed arc: flip if-condition predicates in secondary reload hook
The ARC code contains code which should only work with the old reload
pass. Such code is found in arc_secondary_reload hook, however it was
not properly quarded. Reverse the if-condition predicate such that
req_equiv_mem is called when lra is not in progress.

gcc/
2020-12-29  Claudiu Zissulescu  <claziss@synopsys.com>

	* config/arc/arc.c (arc_secondary_reload): Flip if-condition
	predicates.

Signed-off-by: Claudiu Zissulescu <claziss@synopsys.com>
2020-12-29 13:41:20 +02:00
Claudiu Zissulescu 5ccd07e329 arc: Make use reg_renumber safe.
The REGNO_OK_FOR_BASE_P is using reg_renumber array. However, it is
not always defined. Use it only when it is defined.

gcc/
2020-12-29  Claudiu Zissulescu  <claziss@synopsys.com>

	* config/arc/arc.h (REGNO_OK_FOR_BASE_P): Check if defined
	reg_renumber.

Signed-off-by: Claudiu Zissulescu <claziss@synopsys.com>
2020-12-29 13:41:20 +02:00
Claudiu Zissulescu 6c80603413 arc: Update test pattern.
gcc/testsuite
2020-12-29  Claudiu Zissulescu  <claziss@synopsys.com>

	* gcc.target/arc/loop-3.c: Update test pattern.

Signed-off-by: Claudiu Zissulescu <claziss@synopsys.com>
2020-12-29 13:41:19 +02:00
Claudiu Zissulescu e51727c691 arc: Fix cached to uncached moves.
We need an temporary register when moving data from a cached memory to
an uncached memory. Fix this issue and add a test for it.

gcc/
2020-12-29  Claudiu Zissulescu  <claziss@synopsys.com>

	* config/arc/arc.c (prepare_move_operands): Use a temporary
	registers when we have cached mem-to-uncached mem moves.

gcc/testsuite/
2020-12-29  Vladimir Isaev  <isaev@synopsys.com>

	* gcc.target/arc/uncached-9.c: New test.

Signed-off-by: Claudiu Zissulescu <claziss@synopsys.com>
2020-12-29 13:41:03 +02:00
Claudiu Zissulescu 052870c3d1 arc: Don't use predicated vadd2 instructions in mov patterns.
Update movdi, movdf and mov vectors not to use predicated vadd2
instructions. vadd2 is used as a "fast" move in these patterns. This
fixes a number of failures in dejagnu.

gcc/
2020-12-29  Claudiu Zissulescu  <claziss@synopsys.com>

	* config/arc/arc.md (movdi_insn): Update pattern, no predicated
	vadd2 usage.
	(movdf_insn): Likewise.
	* config/arc/simdext.md (movVEC_insn): Likewise.

Signed-off-by: Claudiu Zissulescu <claziss@synopsys.com>
2020-12-29 13:30:04 +02:00
Uros Bizjak d2754fbb65 i386: Rounding functions TLC
Use copy_to_reg where appropriate, use int_mode_for_mode
and fix comment indentation.

2020-12-29  Uroš Bizjak  <ubizjak@gmail.com>

gcc/
	* config/i386/i386-expand.c (ix86_gen_TWO52): Use REAL_MODE_FORMAT
	to determine number of mantissa bits.  Use real_2expN instead
	of real_ldexp.
	(ix86_expand_rint): Use copy_to_reg.
	(ix86_expand_floorceildf_32): Ditto.
	(ix86_expand_truncdf_32): Ditto.
	(ix86_expand_rounddf_32): Ditto.
	(ix86_expand_floorceil): Use copy_to_reg and int_mode_for_mode.
	(ix86_expand_trunc): Ditto.
	(ix86_expand_round): Ditto.
2020-12-29 08:44:20 +01:00
GCC Administrator 2d3425a52f Daily bump. 2020-12-29 00:16:34 +00:00
Gerald Pfeifer c33fd16076 libgomp: Avoid bad "up" link in libgomp docs
The libgomp texinfo docs lead to an invalid "up" link on the Top node,
which we can avoid similarly to the Top link in the main GCC manual.

2020-12-28  Sandra Loosemore <sandra@codesourcery.com>

libgomp/
	* libgomp.texi (Top): Avoid bad "up" link.
2020-12-28 23:53:29 +01:00
Gerald Pfeifer 7e999bd84f doc: Remove HSAIL from Language Standards
Support for HSAIL has been deprecated with GCC 10 and their web server
has been down for weeks.

gcc/
2020-12-28  Gerald Pfeifer  <gerald@pfeifer.com>

	* doc/standards.texi (HSAIL): Remove section.
2020-12-28 21:48:20 +01:00
Uros Bizjak 81615bb072 i386: Fix __builtin_rint with FE_DOWNWARD rounding direction [PR96793]
x86_expand_rint expander uses x86_sse_copysign_to_positive, which
is unable to change the sign from - to +.  When FE_DOWNWARD rounding
direction is in effect, the expanded sequence that involves subtraction
can trigger x - x = -0.0 special rule.  x86_sse_copysign_to_positive
fails to change the sign of the intermediate value, assumed to always
be positive, back to positive.

The patch adds one extra fabs that strips the sign from the intermediate
value when flag_rounding_math is in effect.

2020-12-28  Uroš Bizjak  <ubizjak@gmail.com>

gcc/
	PR target/96793
	* config/i386/i386-expand.c (ix86_expand_rint):
	Remove the sign of the intermediate value for flag_rounding_math.

gcc/testsuite/
	PR target/96793
	* gcc.target/i386/pr96793-2.c: New test.
2020-12-28 21:30:08 +01:00
Uros Bizjak 97d3ddcfc9 i386: Use existing temporary register in rounding functions
It is possible to avoid the call to force_reg and use existing
temporary register in ix86_expand_trunc, ix86_expand_round and
ix86_expand_rounddf_32 expanders.

2020-12-28  Uroš Bizjak  <ubizjak@gmail.com>

gcc/
	* config/i386/i386-expand.c (ix86_expand_trunc): Use
	existing temporary register to avoid a call to force_reg.
2020-12-28 16:53:56 +01:00
Hongyu Wang 12ae2bc708 Fix standard name for zero/sign extend expanders
gcc/ChangeLog:

	* config/i386/i386.md (optab): New code attr.
	* config/i386/sse.md (<code>v32qiv32hi2): Rename to ...
	(<optab>v32qiv32hi2) ... this.
	(<code>v16qiv16hi2): Likewise.
	(<code>v8qiv8hi2): Likewise.
	(<code>v16qiv16si2): Likewise.
	(<code>v8qiv8si2): Likewise.
	(<code>v4qiv4si2): Likewise.
	(<code>v16hiv16si2): Likewise.
	(<code>v8hiv8si2): Likewise.
	(<code>v4hiv4si2): Likewise.
	(<code>v8qiv8di2): Likewise.
	(<code>v4qiv4di2): Likewise.
	(<code>v2qiv2di2): Likewise.
	(<code>v8hiv8di2): Likewise.
	(<code>v4hiv4di2): Likewise.
	(<code>v2hiv2di2): Likewise.
	(<code>v8siv8di2): Likewise.
	(<code>v4siv4di2): Likewise.
	(<code>v2siv2di2): Likewise.

gcc/testsuite/ChangeLog:

	* gcc.target/i386/pr92658-avx2-2.c: New test.
	* gcc.target/i386/pr92658-avx512bw-2.c: Likewise.
	* gcc.target/i386/pr92658-sse4-2.c: Likewise.
2020-12-28 16:28:43 +08:00
GCC Administrator adfe99ad8f Daily bump. 2020-12-28 00:16:28 +00:00
Gerald Pfeifer 9a48892bea doc: New source for "Memory Model for Static Analysis" paper
gcc:

2020-12-27  Gerald Pfeifer  <gerald@pfeifer.com>

	* doc/analyzer.texi (Analyzer Internals): Find a new source for
	the "A Memory Model for Static Analysis of C Programs" paper.
2020-12-27 21:40:36 +01:00
Gerald Pfeifer 15b99a6b83 libstdc++: Update link to Arm ABI
libstdc++-v3:

2020-12-27  Gerald Pfeifer  <gerald@pfeifer.com>

	* doc/xml/manual/abi.xml: Update link to Arm ABI.
	* doc/html/manual/abi.html: Regenerate.
2020-12-27 21:25:32 +01:00
Jeff Law bbd5868bb4 Fix regressions for iq2000-elf after recent changes
gcc/testsuite
	* gcc.dg/tree-ssa/asm-2.c: Use different register for iq2000.
	* gcc.dg/tree-ssa/asm-3.c: Likewise.
2020-12-27 11:43:36 -07:00
Thomas Koenig 2b0eabeb48 Fix for broken MacOS limitation for name length of shm_open.
libgfortran/ChangeLog:

	* caf_shared/util.c (CUT_INT): New macro.
	(MEMOBJ_NAME): Set to something short if __APPLE__ is defined.
	(get_shmem_fd): Exit on any error but EEXIST.
2020-12-27 16:55:50 +01:00
Thomas Koenig e4c896fd15 Fix errors introduced by last commit.
gcc/fortran/ChangeLog:

	* trans-array.c (gfc_conv_array_ref): Before discarding offset,
	check if this is a coarray and we are building shared coarrays.
	* trans-decl.c (gfc_build_builtin_function_decls): Clear up
	types for cas_coarray_allocate.
	(gfc_trans_shared_coarray): Pass NULL_TREEs to status and
	errmsg.

libgfortran/ChangeLog:

	* caf_shared/util.h (CAS_DEBUG_PR): New macro.

gcc/testsuite/ChangeLog:

	* gfortran.dg/caf-shared/cas.exp: Add -g to debug flags to allow
	better backtrace.
2020-12-27 16:31:33 +01:00
Paul Thomas c4a6789815 Fortran: Fix some select rank issues [PR97694 and 97723].
2020-12-27  Paul Thomas  <pault@gcc.gnu.org>

gcc/fortran
	PR fortran/97694
	PR fortran/97723
	* check.c (allocatable_check): Select rank temporaries are
	permitted even though they are treated as associate variables.
	* resolve.c (gfc_resolve_code): Break on select rank as well as
	select type so that the block os resolved.
	* trans-stmt.c (trans_associate_var): Class associate variables
	that are optional dummies must use the backend_decl.

gcc/testsuite/
	PR fortran/97694
	PR fortran/97723
	* gfortran.dg/select_rank_5.f90: New test.
2020-12-27 14:59:38 +00:00
Gerald Pfeifer 0e283e2c9f libstdc++: Move Valgrind references to https
libstdc++-v3:

2020-12-27  Gerald Pfeifer  <gerald@pfeifer.com>

	* doc/xml/manual/debug.xml: Move Valgrind references to https.
	* doc/html/manual/debug.html: Regenerate.
2020-12-27 11:17:21 +01:00
GCC Administrator 521bc8e1b0 Daily bump. 2020-12-27 00:16:18 +00:00
Iain Sandoe 6037ebeff1 Objective-C++ : Fix up testcase EOF diagnostics.
Some Objective-C++ testcases need modification in reponse to the
solution to PR 96045.

gcc/testsuite/ChangeLog:

	PR c++/96045
	* obj-c++.dg/property/property-neg-6.mm: Adjust EOF
	diagnostic location.
	* obj-c++.dg/syntax-error-10.mm: Likewise.
	* obj-c++.dg/syntax-error-8.mm: Likewise.
	* obj-c++.dg/syntax-error-9.mm: Likewise.
2020-12-26 19:51:15 +00:00