1 === 0342-ARC-Propagate-uncached-type-attribute-to-each-member.patch ===
2 From 62a715c706d8482560dadfa9ead0766f3c20e434 Mon Sep 17 00:00:00 2001
3 From: Claudiu Zissulescu <claziss@gmail.com>
4 Date: Mon, 27 Jan 2020 14:51:03 +0200
5 Subject: [PATCH 0342/2034] [ARC] Propagate uncached type attribute to each
8 Like `packed` type attribute, the ARC's `uncached` type attribute
9 needs to be propagated to each member of the struct where it is used,
10 triggering the .di flag for any access of the struct members. However,
11 any complex CFG manipulation may drop memory pointer type attributes,
12 leading to the impossibility to discriminate the direct accesses from
13 normal ones. To solve this issue, we will treat the direct memory
14 accessed specially via unspecs.
17 xxxx-xx-xx Claudiu Zissulescu <claziss@synopsys.com>
18 Petro Karashchenko <petro.karashchenko@ring.com>
20 * config/arc/arc.c (arc_is_uncached_mem_p): Check struct
22 (prepare_move_operands): Generate special
23 unspec instruction for direct access.
24 (arc_isuncached_mem_p): Propagate uncached attribute to each
26 * config/arc/arc.md (VUNSPEC_ARC_LDDI): Define.
27 (VUNSPEC_ARC_STDI): Likewise.
28 (ALLI): New mode iterator.
29 (mALLI): New mode attribute.
30 (lddi): New instruction pattern.
32 (stdidi_split): Split instruction for architectures which are not
33 supporting ll64 option.
34 (lddidi_split): Likewise.
37 xxxx-xx-xx Claudiu Zissulescu <claziss@synopsys.com>
38 Petro Karashchenko <petro.karashchenko@ring.com>
40 * gcc.target/arc/uncached-1.c: Update test.
41 * gcc.target/arc/uncached-2.c: Likewise.
42 * gcc.target/arc/uncached-3.c: New test.
43 * gcc.target/arc/uncached-4.c: Likewise.
44 * gcc.target/arc/uncached-5.c: Likewise.
45 * gcc.target/arc/uncached-6.c: Likewise.
46 * gcc.target/arc/uncached-7.c: Likewise.
47 * gcc.target/arc/uncached-8.c: Likewise.
48 * gcc.target/arc/arc.exp (ll64): New predicate.
50 gcc/ChangeLog | 19 ++++
51 gcc/config/arc/arc.c | 118 ++++++++++++++--------
52 gcc/config/arc/arc.md | 60 +++++++++++
53 gcc/testsuite/ChangeLog | 11 ++
54 gcc/testsuite/gcc.target/arc/arc.exp | 9 ++
55 gcc/testsuite/gcc.target/arc/uncached-1.c | 2 +-
56 gcc/testsuite/gcc.target/arc/uncached-2.c | 2 +-
57 gcc/testsuite/gcc.target/arc/uncached-3.c | 22 ++++
58 gcc/testsuite/gcc.target/arc/uncached-4.c | 42 ++++++++
59 gcc/testsuite/gcc.target/arc/uncached-5.c | 29 ++++++
60 gcc/testsuite/gcc.target/arc/uncached-6.c | 35 +++++++
61 gcc/testsuite/gcc.target/arc/uncached-7.c | 11 ++
62 gcc/testsuite/gcc.target/arc/uncached-8.c | 33 ++++++
63 13 files changed, 351 insertions(+), 42 deletions(-)
64 create mode 100644 gcc/testsuite/gcc.target/arc/uncached-3.c
65 create mode 100644 gcc/testsuite/gcc.target/arc/uncached-4.c
66 create mode 100644 gcc/testsuite/gcc.target/arc/uncached-5.c
67 create mode 100644 gcc/testsuite/gcc.target/arc/uncached-6.c
68 create mode 100644 gcc/testsuite/gcc.target/arc/uncached-7.c
69 create mode 100644 gcc/testsuite/gcc.target/arc/uncached-8.c
71 diff --git a/gcc/config/arc/arc.c b/gcc/config/arc/arc.c
72 index 22475f2732e..e1a865f02e6 100644
73 --- a/gcc/config/arc/arc.c
74 +++ b/gcc/config/arc/arc.c
78 diff --git a/gcc/config/arc/arc.md b/gcc/config/arc/arc.md
79 index cf7aa8d83c9..46cb254ed28 100644
80 --- a/gcc/config/arc/arc.md
81 +++ b/gcc/config/arc/arc.md
85 diff --git a/gcc/testsuite/gcc.target/arc/arc.exp b/gcc/testsuite/gcc.target/arc/arc.exp
86 index 8d1844edd22..501d4589c53 100644
87 --- a/gcc/testsuite/gcc.target/arc/arc.exp
88 +++ b/gcc/testsuite/gcc.target/arc/arc.exp
92 diff --git a/gcc/testsuite/gcc.target/arc/uncached-1.c b/gcc/testsuite/gcc.target/arc/uncached-1.c
93 index 7a6bade81c4..fa5ecb7b7d3 100644
94 --- a/gcc/testsuite/gcc.target/arc/uncached-1.c
95 +++ b/gcc/testsuite/gcc.target/arc/uncached-1.c
99 diff --git a/gcc/testsuite/gcc.target/arc/uncached-2.c b/gcc/testsuite/gcc.target/arc/uncached-2.c
100 index 89eed326e01..9d6bfbbb50e 100644
101 --- a/gcc/testsuite/gcc.target/arc/uncached-2.c
102 +++ b/gcc/testsuite/gcc.target/arc/uncached-2.c
106 diff --git a/gcc/testsuite/gcc.target/arc/uncached-3.c b/gcc/testsuite/gcc.target/arc/uncached-3.c
108 index 00000000000..f2a317b2816
110 +++ b/gcc/testsuite/gcc.target/arc/uncached-3.c
113 diff --git a/gcc/testsuite/gcc.target/arc/uncached-4.c b/gcc/testsuite/gcc.target/arc/uncached-4.c
115 index 00000000000..fecb16648b8
117 +++ b/gcc/testsuite/gcc.target/arc/uncached-4.c
120 diff --git a/gcc/testsuite/gcc.target/arc/uncached-5.c b/gcc/testsuite/gcc.target/arc/uncached-5.c
122 index 00000000000..4fe0464fdde
124 +++ b/gcc/testsuite/gcc.target/arc/uncached-5.c
127 diff --git a/gcc/testsuite/gcc.target/arc/uncached-6.c b/gcc/testsuite/gcc.target/arc/uncached-6.c
129 index 00000000000..581a9eccb3b
131 +++ b/gcc/testsuite/gcc.target/arc/uncached-6.c
134 diff --git a/gcc/testsuite/gcc.target/arc/uncached-7.c b/gcc/testsuite/gcc.target/arc/uncached-7.c
136 index 00000000000..4001b8bd821
138 +++ b/gcc/testsuite/gcc.target/arc/uncached-7.c
141 diff --git a/gcc/testsuite/gcc.target/arc/uncached-8.c b/gcc/testsuite/gcc.target/arc/uncached-8.c
143 index 00000000000..060229b11df
145 +++ b/gcc/testsuite/gcc.target/arc/uncached-8.c
151 === 0814-sra-Avoid-totally-scalarizing-overallping-field_decl.patch ===
152 From 665c5bad168ab63629b29ed2ce08ed042c088dc2 Mon Sep 17 00:00:00 2001
153 From: Martin Jambor <mjambor@suse.cz>
154 Date: Wed, 19 Feb 2020 11:08:40 +0100
155 Subject: [PATCH 0814/2034] sra: Avoid totally scalarizing overallping
156 field_decls (PR 93667)
158 [[no_unique_address]] C++ attribute can cause two fields of a
159 RECORD_TYPE overlap, which currently confuses the totally scalarizing
160 code into creating invalid access tree. For GCC 10, I'd like to
161 simply disable total scalarization of types where this happens.
163 For GCC 11 I'll write down a TODO item to enable total scalarization
164 of cases like this where the problematic fields are basically empty -
165 despite having a non-zero size - i.e. when they are just RECORD_TYPEs
166 without any data fields.
168 2020-02-19 Martin Jambor <mjambor@suse.cz>
172 PR tree-optimization/93667
173 * tree-sra.c (scalarizable_type_p): Return false if record fields
174 do not follow wach other.
178 PR tree-optimization/93667
179 * g++.dg/tree-ssa/pr93667.C: New test.
181 gcc/ChangeLog | 6 ++++++
182 gcc/testsuite/ChangeLog | 5 +++++
183 gcc/testsuite/g++.dg/tree-ssa/pr93667.C | 11 +++++++++++
184 gcc/tree-sra.c | 14 ++++++++++++++
185 4 files changed, 36 insertions(+)
186 create mode 100644 gcc/testsuite/g++.dg/tree-ssa/pr93667.C
188 diff --git a/gcc/testsuite/g++.dg/tree-ssa/pr93667.C b/gcc/testsuite/g++.dg/tree-ssa/pr93667.C
190 index 00000000000..d875f53d9ec
192 +++ b/gcc/testsuite/g++.dg/tree-ssa/pr93667.C
195 diff --git a/gcc/tree-sra.c b/gcc/tree-sra.c
196 index 0cfac0a8192..4c7d651e6b9 100644
205 === 0413-SRA-Total-scalarization-after-access-propagation-PR9.patch ===
206 From 636e80eea24b780f1d5f4c14c58fc00001df8508 Mon Sep 17 00:00:00 2001
207 From: Martin Jambor <mjambor@suse.cz>
208 Date: Wed, 29 Jan 2020 13:13:13 +0100
209 Subject: [PATCH 0413/2034] SRA: Total scalarization after access propagation
212 2020-01-29 Martin Jambor <mjambor@suse.cz>
214 PR tree-optimization/92706
215 * tree-sra.c (struct access): Adjust comment of
216 grp_total_scalarization.
217 (find_access_in_subtree): Look for single children spanning an entire
219 (scalarizable_type_p): Allow register accesses, adjust callers.
220 (completely_scalarize): Remove function.
221 (scalarize_elem): Likewise.
222 (create_total_scalarization_access): Likewise.
223 (sort_and_splice_var_accesses): Do not track total scalarization
225 (analyze_access_subtree): New parameter totally, adjust to new meaning
226 of grp_total_scalarization.
227 (analyze_access_trees): Pass new parameter to analyze_access_subtree.
228 (can_totally_scalarize_forest_p): New function.
229 (create_total_scalarization_access): Likewise.
230 (create_total_access_and_reshape): Likewise.
231 (total_should_skip_creating_access): Likewise.
232 (totally_scalarize_subtree): Likewise.
233 (analyze_all_variable_accesses): Perform total scalarization after
234 subaccess propagation using the new functions above.
235 (initialize_constant_pool_replacements): Output initializers by
236 traversing the access tree.
239 * gcc.dg/tree-ssa/pr92706-2.c: New test.
240 * gcc.dg/guality/pr59776.c: Xfail tests for s2.g.
243 gcc/testsuite/ChangeLog | 6 +
244 gcc/testsuite/gcc.dg/guality/pr59776.c | 4 +-
245 gcc/testsuite/gcc.dg/tree-ssa/pr92706-2.c | 19 +
246 gcc/tree-sra.c | 666 ++++++++++++++++------
247 5 files changed, 537 insertions(+), 184 deletions(-)
248 create mode 100644 gcc/testsuite/gcc.dg/tree-ssa/pr92706-2.c
250 diff --git a/gcc/testsuite/gcc.dg/guality/pr59776.c b/gcc/testsuite/gcc.dg/guality/pr59776.c
251 index 382abb622bb..6c1c8165b70 100644
252 --- a/gcc/testsuite/gcc.dg/guality/pr59776.c
253 +++ b/gcc/testsuite/gcc.dg/guality/pr59776.c
257 diff --git a/gcc/testsuite/gcc.dg/tree-ssa/pr92706-2.c b/gcc/testsuite/gcc.dg/tree-ssa/pr92706-2.c
259 index 00000000000..37ab9765db0
261 +++ b/gcc/testsuite/gcc.dg/tree-ssa/pr92706-2.c
264 diff --git a/gcc/tree-sra.c b/gcc/tree-sra.c
265 index 36106fecaf1..2b0849858de 100644
274 === 0334-Do-not-generate-a-unique-fnname-for-resolver.patch ===
275 From c2bd2b4664be8b73f8fd58a64dec1e93871797cc Mon Sep 17 00:00:00 2001
276 From: Martin Liska <mliska@suse.cz>
277 Date: Mon, 27 Jan 2020 10:48:18 +0100
278 Subject: [PATCH 0334/2034] Do not generate a unique fnname for resolver.
281 * config/i386/i386-features.c (make_resolver_func):
282 Align the code with ppc64 target implementation.
283 Do not generate a unique name for resolver function.
285 * gcc.target/i386/pr81213.c: Adjust to not expect
286 a globally unique name.
288 gcc/ChangeLog | 7 +++++++
289 gcc/config/i386/i386-features.c | 19 ++++---------------
290 gcc/testsuite/ChangeLog | 6 ++++++
291 gcc/testsuite/gcc.target/i386/pr81213.c | 4 ++--
292 4 files changed, 19 insertions(+), 17 deletions(-)
294 diff --git a/gcc/config/i386/i386-features.c b/gcc/config/i386/i386-features.c
295 index e580b26b995..b49e6f8d408 100644
296 --- a/gcc/config/i386/i386-features.c
297 +++ b/gcc/config/i386/i386-features.c
301 diff --git a/gcc/testsuite/gcc.target/i386/pr81213.c b/gcc/testsuite/gcc.target/i386/pr81213.c
302 index 13e15d5fef0..89c47529861 100644
303 --- a/gcc/testsuite/gcc.target/i386/pr81213.c
304 +++ b/gcc/testsuite/gcc.target/i386/pr81213.c
311 === 1850-List-valid-pairs-for-new-and-delete-operators.patch ===
312 From d7a65edb629a010f7ef907d457343abcb569fab7 Mon Sep 17 00:00:00 2001
313 From: Martin Liska <mliska@suse.cz>
314 Date: Thu, 16 Apr 2020 15:39:22 +0200
315 Subject: [PATCH 1850/2034] List valid pairs for new and delete operators.
318 * cgraphclones.c (set_new_clone_decl_and_node_flags): Drop
319 DECL_IS_REPLACEABLE_OPERATOR during cloning.
320 * tree-ssa-dce.c (valid_new_delete_pair_p): New function.
321 (propagate_necessity): Check operator names.
324 * g++.dg/pr94314.C: Do not use dg-additional-options
325 and remove not needed stdio.h include.
326 * g++.dg/pr94314-2.C: Likewise.
327 * g++.dg/pr94314-3.C: Likewise.
328 * g++.dg/pr94314-4.C: New test.
330 Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
332 gcc/ChangeLog | 9 +++
333 gcc/cgraphclones.c | 2 +
334 gcc/testsuite/ChangeLog | 10 ++++
335 gcc/testsuite/g++.dg/pr94314-2.C | 5 +-
336 gcc/testsuite/g++.dg/pr94314-3.C | 5 +-
337 gcc/testsuite/g++.dg/pr94314-4.C | 30 ++++++++++
338 gcc/testsuite/g++.dg/pr94314.C | 5 +-
339 gcc/tree-ssa-dce.c | 98 ++++++++++++++++++++++++++++----
340 8 files changed, 142 insertions(+), 22 deletions(-)
341 create mode 100644 gcc/testsuite/g++.dg/pr94314-4.C
343 diff --git a/gcc/cgraphclones.c b/gcc/cgraphclones.c
344 index c73b8f810f0..8f541a28b6e 100644
345 --- a/gcc/cgraphclones.c
346 +++ b/gcc/cgraphclones.c
350 diff --git a/gcc/testsuite/g++.dg/pr94314-2.C b/gcc/testsuite/g++.dg/pr94314-2.C
351 index 36b93ed6d4d..998ce601767 100644
352 --- a/gcc/testsuite/g++.dg/pr94314-2.C
353 +++ b/gcc/testsuite/g++.dg/pr94314-2.C
357 diff --git a/gcc/testsuite/g++.dg/pr94314-3.C b/gcc/testsuite/g++.dg/pr94314-3.C
358 index 575ba9d8ad8..846a5d6a3d8 100644
359 --- a/gcc/testsuite/g++.dg/pr94314-3.C
360 +++ b/gcc/testsuite/g++.dg/pr94314-3.C
364 diff --git a/gcc/testsuite/g++.dg/pr94314-4.C b/gcc/testsuite/g++.dg/pr94314-4.C
366 index 00000000000..d097f29d4ad
368 +++ b/gcc/testsuite/g++.dg/pr94314-4.C
371 diff --git a/gcc/testsuite/g++.dg/pr94314.C b/gcc/testsuite/g++.dg/pr94314.C
372 index 86e651d10ba..4e5ae122e9f 100644
373 --- a/gcc/testsuite/g++.dg/pr94314.C
374 +++ b/gcc/testsuite/g++.dg/pr94314.C
378 diff --git a/gcc/tree-ssa-dce.c b/gcc/tree-ssa-dce.c
379 index fd5f24c746c..757cfad5b5e 100644
380 --- a/gcc/tree-ssa-dce.c
381 +++ b/gcc/tree-ssa-dce.c
388 === 0085-Daily-bump.patch ===
389 From 03647d2e26176bb874460b67deab0c30aa715d59 Mon Sep 17 00:00:00 2001
390 From: GCC Administrator <gccadmin@gcc.gnu.org>
391 Date: Thu, 16 Jan 2020 00:16:32 +0000
392 Subject: [PATCH 0085/2034] Daily bump.
396 1 file changed, 1 insertion(+), 1 deletion(-)
398 diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP
399 index ba948c594d4..62611957f86 100644
408 === 0040-PR90916-ICE-in-retrieve-specialization.patch ===
409 From a5a3c2dcf73aa245b0eb6f6cf56c4d03ab6056da Mon Sep 17 00:00:00 2001
410 From: Nathan Sidwell <nathans@fb.com>
411 Date: Tue, 14 Jan 2020 11:12:40 -0800
412 Subject: [PATCH 0040/2034] [PR90916] ICE in retrieve specialization
414 https://gcc.gnu.org/ml/gcc-patches/2020-01/msg00809.html
416 * pt.c (retrieve_specialization): Get the TI from the decl or the
417 classtype as appropriate.
419 gcc/cp/ChangeLog | 6 ++++++
420 gcc/cp/pt.c | 15 ++++++++++-----
421 gcc/testsuite/g++.dg/template/pr90916.C | 8 ++++++++
422 3 files changed, 24 insertions(+), 5 deletions(-)
423 create mode 100644 gcc/testsuite/g++.dg/template/pr90916.C
425 diff --git a/gcc/cp/pt.c b/gcc/cp/pt.c
426 index fa82ecad233..4fdc74f9ca8 100644
432 diff --git a/gcc/testsuite/g++.dg/template/pr90916.C b/gcc/testsuite/g++.dg/template/pr90916.C
434 index 00000000000..bdb7e7b58ef
436 +++ b/gcc/testsuite/g++.dg/template/pr90916.C
442 === 2004-amdgcn-Check-HSA-return-codes-PR94629.patch ===
443 From 966de09be91c639d66d252c9ae6ab8da5ebfca18 Mon Sep 17 00:00:00 2001
444 From: Andrew Stubbs <ams@codesourcery.com>
445 Date: Mon, 20 Apr 2020 15:25:31 +0100
446 Subject: [PATCH 2004/2034] amdgcn: Check HSA return codes [PR94629]
448 Ensure that the returned status values are not ignored. The old code was
449 not broken, but this is both safer and satisfies static analysis.
451 2020-04-23 Andrew Stubbs <ams@codesourcery.com>
456 * plugin/plugin-gcn.c (init_hsa_context): Check return value from
458 (GOMP_OFFLOAD_init_device): Check return values from both calls to
459 hsa_agent_iterate_regions.
461 libgomp/ChangeLog | 9 +++++++++
462 libgomp/plugin/plugin-gcn.c | 8 ++++++++
463 2 files changed, 17 insertions(+)
465 diff --git a/libgomp/plugin/plugin-gcn.c b/libgomp/plugin/plugin-gcn.c
466 index dc72c90962c..4c6a4c03b6e 100644
467 --- a/libgomp/plugin/plugin-gcn.c
468 +++ b/libgomp/plugin/plugin-gcn.c
475 === 0198-Change-recursive-prepare_block_for_update-to-use-a-w.patch ===
476 From 6fc2f9337311c11dabcc464c808cbef205f17a52 Mon Sep 17 00:00:00 2001
477 From: Andrew Pinski <apinski@marvell.com>
478 Date: Tue, 21 Jan 2020 08:34:42 +0000
479 Subject: [PATCH 0198/2034] Change recursive prepare_block_for_update to use a
482 Reported as PR 93321, prepare_block_for_update with some huge
483 recusive inlining can go past the stack limit. Transforming this
484 recursive into worklist improves the stack usage here and we no
485 longer seg fault for the testcase. Note the order we walk the siblings
490 * tree-into-ssa.c (prepare_block_for_update_1): Split out from ...
491 (prepare_block_for_update): This. Use a worklist instead of recursing.
493 gcc/ChangeLog | 8 ++++++
494 gcc/tree-into-ssa.c | 59 ++++++++++++++++++++++++++++++++++++---------
495 2 files changed, 55 insertions(+), 12 deletions(-)
497 diff --git a/gcc/tree-into-ssa.c b/gcc/tree-into-ssa.c
498 index c27bf2ce121..6528acac31a 100644
499 --- a/gcc/tree-into-ssa.c
500 +++ b/gcc/tree-into-ssa.c
507 === 0184-PR-80005-Fix-__has_include.patch ===
508 From ad1a3914ae8d67c94b0d2428e3f9672e7db491a1 Mon Sep 17 00:00:00 2001
509 From: Nathan Sidwell <nathan@acm.org>
510 Date: Mon, 20 Jan 2020 05:39:59 -0800
511 Subject: [PATCH 0184/2034] [PR 80005] Fix __has_include
513 __has_include is funky in that it is macro-like from the POV of #ifdef and
514 friends, but lexes its parenthesize argument #include-like. We were
515 failing the second part of that, because we used a forwarding macro to an
516 internal name, and hence always lexed the argument in macro-parameter
517 context. We componded that by not setting the right flag when lexing, so
518 it didn't even know. Mostly users got lucky.
520 This reimplements the handline.
521 1) Remove the forwarding, but declare object-like macros that
522 expand to themselves. This satisfies the #ifdef requirement
524 2) Correctly set angled_brackets when lexing the parameter. This tells
525 the lexer (a) <...> is a header name and (b) "..." is too (not a string).
527 3) Remove the in__has_include lexer state, just tell find_file that that's
528 what's happenning, so it doesn't emit an error.
530 We lose the (undocumented) ability to #undef __has_include. That may well
531 have been an accident of implementation. There are no tests for it.
533 We gain __has_include behaviour for all users of the preprocessors -- not
534 just the C-family ones that defined a forwarding macro.
537 PR preprocessor/80005
538 * include/cpplib.h (BT_HAS_ATTRIBUTE): Fix comment.
539 * internal.h (struct lexer_state): Delete in__has_include field.
540 (struct spec_nodes): Rename n__has_include{,_next}__ fields.
541 (_cpp_defined_macro_p): New.
542 (_cpp_find_file): Add has_include parm.
543 * directives.c (lex_macro_node): Combine defined,
544 __has_inline{,_next} checking.
545 (do_ifdef, do_ifndef): Use _cpp_defined_macro_p.
546 (_cpp_init_directives): Refactor.
547 * expr.c (parse_defined): Use _cpp_defined_macro_p.
548 (eval_token): Adjust parse_has_include calls.
549 (parse_has_include): Add OP parameter. Reimplement.
550 * files.c (_cpp_find_file): Add HAS_INCLUDE parm. Use it to
551 inhibit error message.
552 (_cpp_stack_include): Adjust _cpp_find_file call.
553 (_cpp_fake_include, _cpp_compare_file_date): Likewise.
554 (open_file_failed): Remove in__has_include check.
555 (_cpp_has_header): Adjust _cpp_find_file call.
556 * identifiers.c (_cpp_init_hashtable): Don't init
557 __has_include{,_next} here ...
558 * init.c (cpp_init_builtins): ... init them here. Define as
560 (cpp_read_main_file): Adjust _cpp_find_file call.
561 * pch.c (cpp_read_state): Adjust __has_include{,_next} access.
562 * traditional.c (_cpp_scan_out_locgical_line): Likewise.
565 PR preprocessor/80005
566 * c-cppbuiltins.c (c_cpp_builtins): Don't define __has_include{,_next}.
569 PR preprocessor/80005
570 * g++.dg/cpp1y/feat-cxx14.C: Adjust.
571 * g++.dg/cpp1z/feat-cxx17.C: Adjust.
572 * g++.dg/cpp2a/feat-cxx2a.C: Adjust.
573 * g++.dg/cpp/pr80005.C: New.
575 gcc/c-family/ChangeLog | 5 ++++
576 gcc/c-family/c-cppbuiltin.c | 6 -----
577 gcc/testsuite/ChangeLog | 8 +++++++
578 gcc/testsuite/g++.dg/cpp/pr80005.C | 24 +++++++++++++++++++
579 gcc/testsuite/g++.dg/cpp1y/feat-cxx14.C | 10 ++------
580 gcc/testsuite/g++.dg/cpp1z/feat-cxx1z.C | 10 ++------
581 gcc/testsuite/g++.dg/cpp2a/feat-cxx2a.C | 10 ++------
582 libcpp/ChangeLog | 29 +++++++++++++++++++++-
583 libcpp/directives.c | 29 ++++++++--------------
584 libcpp/expr.c | 32 ++++++++++++-------------
585 libcpp/files.c | 27 +++++++++++----------
586 libcpp/identifiers.c | 3 +--
587 libcpp/include/cpplib.h | 2 +-
588 libcpp/init.c | 14 ++++++++++-
589 libcpp/internal.h | 20 +++++++++++-----
590 libcpp/pch.c | 4 ++--
591 libcpp/traditional.c | 8 +++----
592 17 files changed, 146 insertions(+), 95 deletions(-)
593 create mode 100644 gcc/testsuite/g++.dg/cpp/pr80005.C
595 diff --git a/gcc/c-family/c-cppbuiltin.c b/gcc/c-family/c-cppbuiltin.c
596 index a6308921dc9..70a12055e27 100644
597 --- a/gcc/c-family/c-cppbuiltin.c
598 +++ b/gcc/c-family/c-cppbuiltin.c
602 diff --git a/gcc/testsuite/g++.dg/cpp/pr80005.C b/gcc/testsuite/g++.dg/cpp/pr80005.C
604 index 00000000000..cc752616782
606 +++ b/gcc/testsuite/g++.dg/cpp/pr80005.C
609 diff --git a/gcc/testsuite/g++.dg/cpp1y/feat-cxx14.C b/gcc/testsuite/g++.dg/cpp1y/feat-cxx14.C
610 index a2a93f437b3..a78b6a36f36 100644
611 --- a/gcc/testsuite/g++.dg/cpp1y/feat-cxx14.C
612 +++ b/gcc/testsuite/g++.dg/cpp1y/feat-cxx14.C
616 diff --git a/gcc/testsuite/g++.dg/cpp1z/feat-cxx1z.C b/gcc/testsuite/g++.dg/cpp1z/feat-cxx1z.C
617 index 55e56a06fe8..e6f456b2415 100644
618 --- a/gcc/testsuite/g++.dg/cpp1z/feat-cxx1z.C
619 +++ b/gcc/testsuite/g++.dg/cpp1z/feat-cxx1z.C
623 diff --git a/gcc/testsuite/g++.dg/cpp2a/feat-cxx2a.C b/gcc/testsuite/g++.dg/cpp2a/feat-cxx2a.C
624 index dd15cd6af3c..82fd602f9f1 100644
625 --- a/gcc/testsuite/g++.dg/cpp2a/feat-cxx2a.C
626 +++ b/gcc/testsuite/g++.dg/cpp2a/feat-cxx2a.C
630 diff --git a/libcpp/directives.c b/libcpp/directives.c
631 index 983206a5838..10735c8c668 100644
632 --- a/libcpp/directives.c
633 +++ b/libcpp/directives.c
637 diff --git a/libcpp/expr.c b/libcpp/expr.c
638 index 317faf50208..df21a4b9fb9 100644
644 diff --git a/libcpp/files.c b/libcpp/files.c
645 index 7abae7ae6ec..260e787c329 100644
651 diff --git a/libcpp/identifiers.c b/libcpp/identifiers.c
652 index 562d8fee3b5..9627e1bf4b0 100644
653 --- a/libcpp/identifiers.c
654 +++ b/libcpp/identifiers.c
658 diff --git a/libcpp/include/cpplib.h b/libcpp/include/cpplib.h
659 index 1c26c365347..56cbbd82750 100644
660 --- a/libcpp/include/cpplib.h
661 +++ b/libcpp/include/cpplib.h
665 diff --git a/libcpp/init.c b/libcpp/init.c
666 index 2b4923e1451..e798140ef8b 100644
672 diff --git a/libcpp/internal.h b/libcpp/internal.h
673 index 3623baf8191..5453c3bff85 100644
674 --- a/libcpp/internal.h
675 +++ b/libcpp/internal.h
679 diff --git a/libcpp/pch.c b/libcpp/pch.c
680 index 607f805bebe..e631050936b 100644
686 diff --git a/libcpp/traditional.c b/libcpp/traditional.c
687 index 21c63b47dd5..ff06d31a897 100644
688 --- a/libcpp/traditional.c
689 +++ b/libcpp/traditional.c
696 === long-lines.patch ===
697 From eb7c7c524556df5364f03adc20f6a9db20858484 Mon Sep 17 00:00:00 2001
698 From: Jakub Jelinek <jakub@redhat.com>
699 Date: Mon, 13 Jan 2020 14:14:57 +0100
700 Subject: [PATCH 0004/2034] tree-opt: Fix bootstrap failure in
701 tree-ssa-forwprop.c some more PR90838
703 2020-01-13 Jakub Jelinek <jakub@redhat.com>
705 PR tree-optimization/90838
706 * tree-ssa-forwprop.c (simplify_count_trailing_zeroes): Use
707 SCALAR_INT_TYPE_MODE directly in CTZ_DEFINED_VALUE_AT_ZERO macro and and SCALAR_INT_TYPE_MODE directly in and so
708 argument rather than to initialize temporary for targets that
709 don't use the mode argument at all. Initialize ctzval to avoid
712 gcc/ChangeLog | 9 +++++++++
713 gcc/tree-ssa-forwprop.c | 6 +++---
714 2 files changed, 12 insertions(+), 3 deletions(-)
716 diff --git a/gcc/tree-ssa-forwprop.c b/gcc/tree-ssa-forwprop.c
717 index aac31d02b6c..56c470f6ecf 100644
718 --- a/gcc/tree-ssa-forwprop.c
719 +++ b/gcc/tree-ssa-forwprop.c
726 === 0735-PR-87488-Add-with-diagnostics-urls-configuration-opt.patch ===
727 From 458c8d6459c4005fc9886b6e25d168a6535ac415 Mon Sep 17 00:00:00 2001
728 From: Bernd Edlinger <bernd.edlinger@hotmail.de>
729 Date: Wed, 29 Jan 2020 15:31:10 +0100
730 Subject: [PATCH 0735/2034] PR 87488: Add --with-diagnostics-urls configuration
733 2020-02-15 David Malcolm <dmalcolm@redhat.com>
734 Bernd Edlinger <bernd.edlinger@hotmail.de>
738 * config.in (DIAGNOSTICS_URLS_DEFAULT): New define.
739 * configure.ac (--with-diagnostics-urls): New configuration
740 option, based on --with-diagnostics-color.
741 (DIAGNOSTICS_URLS_DEFAULT): New define.
742 * config.h: Regenerate.
743 * configure: Regenerate.
744 * diagnostic.c (diagnostic_urls_init): Handle -1 for
745 DIAGNOSTICS_URLS_DEFAULT from configure-time
746 --with-diagnostics-urls=auto-if-env by querying for a GCC_URLS
747 and TERM_URLS environment variable.
748 * diagnostic-url.h (diagnostic_url_format): New enum type.
749 (diagnostic_urls_enabled_p): rename to...
750 (determine_url_format): ... this, and change return type.
751 * diagnostic-color.c (parse_env_vars_for_urls): New helper function.
752 (auto_enable_urls): Disable URLs on xfce4-terminal, gnome-terminal,
753 the linux console, and mingw.
754 (diagnostic_urls_enabled_p): rename to...
755 (determine_url_format): ... this, and adjust.
756 * pretty-print.h (pretty_printer::show_urls): rename to...
757 (pretty_printer::url_format): ... this, and change to enum.
758 * pretty-print.c (pretty_printer::pretty_printer,
759 pp_begin_url, pp_end_url, test_urls): Adjust.
760 * doc/install.texi (--with-diagnostics-urls): Document the new
761 configuration option.
762 (--with-diagnostics-color): Document the existing interaction
763 with GCC_COLORS better.
764 * doc/invoke.texi (-fdiagnostics-urls): Add GCC_URLS and TERM_URLS
765 vindex reference. Update description of defaults based on the above.
766 (-fdiagnostics-color): Update description of how -fdiagnostics-color
767 interacts with GCC_COLORS.
769 gcc/ChangeLog | 36 +++++++++++++++
770 gcc/config.in | 6 +++
771 gcc/configure | 41 ++++++++++++++++-
772 gcc/configure.ac | 28 ++++++++++++
773 gcc/diagnostic-color.c | 101 ++++++++++++++++++++++++++++++++++++++---
774 gcc/diagnostic-url.h | 18 +++++++-
775 gcc/diagnostic.c | 21 +++++++--
776 gcc/doc/install.texi | 15 ++++--
777 gcc/doc/invoke.texi | 39 ++++++++++++++--
778 gcc/pretty-print.c | 44 +++++++++++++++---
779 gcc/pretty-print.h | 5 +-
780 11 files changed, 328 insertions(+), 26 deletions(-)
782 diff --git a/gcc/config.in b/gcc/config.in
783 index 48292861842..01fb18dbbb5 100644
789 diff --git a/gcc/configure b/gcc/configure
790 index 5fa565a40a4..f55cdb8c77f 100755
796 diff --git a/gcc/configure.ac b/gcc/configure.ac
797 index 671b9a67d81..0e6e475950d 100644
798 --- a/gcc/configure.ac
799 +++ b/gcc/configure.ac
803 diff --git a/gcc/diagnostic-color.c b/gcc/diagnostic-color.c
804 index d5547952921..b1baded2c9e 100644
805 --- a/gcc/diagnostic-color.c
806 +++ b/gcc/diagnostic-color.c
810 diff --git a/gcc/diagnostic-url.h b/gcc/diagnostic-url.h
811 index 6be056941f1..d28460b928b 100644
812 --- a/gcc/diagnostic-url.h
813 +++ b/gcc/diagnostic-url.h
817 diff --git a/gcc/diagnostic.c b/gcc/diagnostic.c
818 index 3386f070256..e4a08f76def 100644
819 --- a/gcc/diagnostic.c
820 +++ b/gcc/diagnostic.c
824 diff --git a/gcc/doc/install.texi b/gcc/doc/install.texi
825 index 6ffafacff50..8ddebbb6267 100644
826 --- a/gcc/doc/install.texi
827 +++ b/gcc/doc/install.texi
831 diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
832 index bd9ecebf103..597151670be 100644
833 --- a/gcc/doc/invoke.texi
834 +++ b/gcc/doc/invoke.texi
838 diff --git a/gcc/pretty-print.c b/gcc/pretty-print.c
839 index 817c1059e08..dde138b0533 100644
840 --- a/gcc/pretty-print.c
841 +++ b/gcc/pretty-print.c
845 diff --git a/gcc/pretty-print.h b/gcc/pretty-print.h
846 index 001468c966e..22892f12ab7 100644
847 --- a/gcc/pretty-print.h
848 +++ b/gcc/pretty-print.h
855 === 0031-Fix-typo-and-avoid-possible-memory-leak-in-average_n.patch ===
856 From b38e86ddb7a9b6d7e87d7cc0b23983d027fcbd96 Mon Sep 17 00:00:00 2001
857 From: Kewen Lin <linkw@linux.ibm.com>
858 Date: Tue, 14 Jan 2020 02:34:10 -0600
859 Subject: [PATCH 0031/2034] Fix typo and avoid possible memory leak in
860 average_num_loop_insns
862 Function average_num_loop_insns forgets to free loop body in early
863 return. Besides, overflow comparison checks 1000000 (e6) but the
864 return value is 100000 (e5), fix this typo.
868 2020-01-14 Kewen Lin <linkw@gcc.gnu.org>
870 * cfgloopanal.c (average_num_loop_insns): Free bbs when early
871 return, fix typo on return value.
873 gcc/ChangeLog | 5 +++++
874 gcc/cfgloopanal.c | 5 ++++-
875 2 files changed, 9 insertions(+), 1 deletion(-)
877 diff --git a/gcc/cfgloopanal.c b/gcc/cfgloopanal.c
878 index 392b1c337c4..0b33e8272a7 100644
879 --- a/gcc/cfgloopanal.c
880 +++ b/gcc/cfgloopanal.c
887 === 0735-PR-87488-Add-with-diagnostics-urls-configuration-opt.patch ===
888 From 458c8d6459c4005fc9886b6e25d168a6535ac415 Mon Sep 17 00:00:00 2001
889 From: Bernd Edlinger <bernd.edlinger@hotmail.de>
890 Date: Wed, 29 Jan 2020 15:31:10 +0100
891 Subject: [PATCH 0735/2034] PR 87488: Add --with-diagnostics-urls configuration
894 2020-02-15 David Malcolm <dmalcolm@redhat.com>
895 Bernd Edlinger <bernd.edlinger@hotmail.de>
899 * config.in (DIAGNOSTICS_URLS_DEFAULT): New define.
900 * configure.ac (--with-diagnostics-urls): New configuration
901 option, based on --with-diagnostics-color.
902 (DIAGNOSTICS_URLS_DEFAULT): New define.
903 * config.h: Regenerate.
904 * configure: Regenerate.
905 * diagnostic.c (diagnostic_urls_init): Handle -1 for
906 DIAGNOSTICS_URLS_DEFAULT from configure-time
907 --with-diagnostics-urls=auto-if-env by querying for a GCC_URLS
908 and TERM_URLS environment variable.
909 * diagnostic-url.h (diagnostic_url_format): New enum type.
910 (diagnostic_urls_enabled_p): rename to...
911 (determine_url_format): ... this, and change return type.
912 * diagnostic-color.c (parse_env_vars_for_urls): New helper function.
913 (auto_enable_urls): Disable URLs on xfce4-terminal, gnome-terminal,
914 the linux console, and mingw.
915 (diagnostic_urls_enabled_p): rename to...
916 (determine_url_format): ... this, and adjust.
917 * pretty-print.h (pretty_printer::show_urls): rename to...
918 (pretty_printer::url_format): ... this, and change to enum.
919 * pretty-print.c (pretty_printer::pretty_printer,
920 pp_begin_url, pp_end_url, test_urls): Adjust.
921 * doc/install.texi (--with-diagnostics-urls): Document the new
922 configuration option.
923 (--with-diagnostics-color): Document the existing interaction
924 with GCC_COLORS better.
925 * doc/invoke.texi (-fdiagnostics-urls): Add GCC_URLS and TERM_URLS
926 vindex reference. Update description of defaults based on the above.
927 (-fdiagnostics-color): Update description of how -fdiagnostics-color
928 interacts with GCC_COLORS.
930 gcc/ChangeLog | 36 +++++++++++++++
931 gcc/config.in | 6 +++
932 gcc/configure | 41 ++++++++++++++++-
933 gcc/configure.ac | 28 ++++++++++++
934 gcc/diagnostic-color.c | 101 ++++++++++++++++++++++++++++++++++++++---
935 gcc/diagnostic-url.h | 18 +++++++-
936 gcc/diagnostic.c | 21 +++++++--
937 gcc/doc/install.texi | 15 ++++--
938 gcc/doc/invoke.texi | 39 ++++++++++++++--
939 gcc/pretty-print.c | 44 +++++++++++++++---
940 gcc/pretty-print.h | 5 +-
941 11 files changed, 328 insertions(+), 26 deletions(-)
943 diff --git a/gcc/config.in b/gcc/config.in
944 index 48292861842..01fb18dbbb5 100644
950 diff --git a/gcc/configure b/gcc/configure
951 index 5fa565a40a4..f55cdb8c77f 100755
957 diff --git a/gcc/configure.ac b/gcc/configure.ac
958 index 671b9a67d81..0e6e475950d 100644
959 --- a/gcc/configure.ac
960 +++ b/gcc/configure.ac
964 diff --git a/gcc/diagnostic-color.c b/gcc/diagnostic-color.c
965 index d5547952921..b1baded2c9e 100644
966 --- a/gcc/diagnostic-color.c
967 +++ b/gcc/diagnostic-color.c
971 diff --git a/gcc/diagnostic-url.h b/gcc/diagnostic-url.h
972 index 6be056941f1..d28460b928b 100644
973 --- a/gcc/diagnostic-url.h
974 +++ b/gcc/diagnostic-url.h
978 diff --git a/gcc/diagnostic.c b/gcc/diagnostic.c
979 index 3386f070256..e4a08f76def 100644
980 --- a/gcc/diagnostic.c
981 +++ b/gcc/diagnostic.c
985 diff --git a/gcc/doc/install.texi b/gcc/doc/install.texi
986 index 6ffafacff50..8ddebbb6267 100644
987 --- a/gcc/doc/install.texi
988 +++ b/gcc/doc/install.texi
992 diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
993 index bd9ecebf103..597151670be 100644
994 --- a/gcc/doc/invoke.texi
995 +++ b/gcc/doc/invoke.texi
999 diff --git a/gcc/pretty-print.c b/gcc/pretty-print.c
1000 index 817c1059e08..dde138b0533 100644
1001 --- a/gcc/pretty-print.c
1002 +++ b/gcc/pretty-print.c
1006 diff --git a/gcc/pretty-print.h b/gcc/pretty-print.h
1007 index 001468c966e..22892f12ab7 100644
1008 --- a/gcc/pretty-print.h
1009 +++ b/gcc/pretty-print.h
1016 === co-authored-by.patch ===
1017 From d7a65edb629a010f7ef907d457343abcb569fab7 Mon Sep 17 00:00:00 2001
1018 From: Martin Liska <mliska@suse.cz>
1019 Date: Thu, 16 Apr 2020 15:39:22 +0200
1020 Subject: [PATCH 1850/2034] List valid pairs for new and delete operators.
1023 * cgraphclones.c (set_new_clone_decl_and_node_flags): Drop
1024 DECL_IS_REPLACEABLE_OPERATOR during cloning.
1025 * tree-ssa-dce.c (valid_new_delete_pair_p): New function.
1026 (propagate_necessity): Check operator names.
1029 * g++.dg/pr94314.C: Do not use dg-additional-options
1030 and remove not needed stdio.h include.
1031 * g++.dg/pr94314-2.C: Likewise.
1032 * g++.dg/pr94314-3.C: Likewise.
1033 * g++.dg/pr94314-4.C: New test.
1035 co-authored-By: Jakub Jelinek <jakub@redhat.com>
1036 Co-Authored-by: John Miller <jm@example.com>
1037 co-authored-by: John Miller2 <jm2@example.com>
1039 gcc/ChangeLog | 9 +++
1040 gcc/cgraphclones.c | 2 +
1041 gcc/testsuite/ChangeLog | 10 ++++
1042 gcc/testsuite/g++.dg/pr94314-2.C | 5 +-
1043 gcc/testsuite/g++.dg/pr94314-3.C | 5 +-
1044 gcc/testsuite/g++.dg/pr94314-4.C | 30 ++++++++++
1045 gcc/testsuite/g++.dg/pr94314.C | 5 +-
1046 gcc/tree-ssa-dce.c | 98 ++++++++++++++++++++++++++++----
1047 8 files changed, 142 insertions(+), 22 deletions(-)
1048 create mode 100644 gcc/testsuite/g++.dg/pr94314-4.C
1050 diff --git a/gcc/cgraphclones.c b/gcc/cgraphclones.c
1051 index c73b8f810f0..8f541a28b6e 100644
1052 --- a/gcc/cgraphclones.c
1053 +++ b/gcc/cgraphclones.c
1057 diff --git a/gcc/testsuite/g++.dg/pr94314-2.C b/gcc/testsuite/g++.dg/pr94314-2.C
1058 index 36b93ed6d4d..998ce601767 100644
1059 --- a/gcc/testsuite/g++.dg/pr94314-2.C
1060 +++ b/gcc/testsuite/g++.dg/pr94314-2.C
1064 diff --git a/gcc/testsuite/g++.dg/pr94314-3.C b/gcc/testsuite/g++.dg/pr94314-3.C
1065 index 575ba9d8ad8..846a5d6a3d8 100644
1066 --- a/gcc/testsuite/g++.dg/pr94314-3.C
1067 +++ b/gcc/testsuite/g++.dg/pr94314-3.C
1071 diff --git a/gcc/testsuite/g++.dg/pr94314-4.C b/gcc/testsuite/g++.dg/pr94314-4.C
1072 new file mode 100644
1073 index 00000000000..d097f29d4ad
1075 +++ b/gcc/testsuite/g++.dg/pr94314-4.C
1078 diff --git a/gcc/testsuite/g++.dg/pr94314.C b/gcc/testsuite/g++.dg/pr94314.C
1079 index 86e651d10ba..4e5ae122e9f 100644
1080 --- a/gcc/testsuite/g++.dg/pr94314.C
1081 +++ b/gcc/testsuite/g++.dg/pr94314.C
1085 diff --git a/gcc/tree-ssa-dce.c b/gcc/tree-ssa-dce.c
1086 index fd5f24c746c..757cfad5b5e 100644
1087 --- a/gcc/tree-ssa-dce.c
1088 +++ b/gcc/tree-ssa-dce.c
1095 === 1699-combine-Fix-split_i2i3-ICE-PR94291.patch ===
1096 From c23c899aedf11069e992eed7358802b262d62f98 Mon Sep 17 00:00:00 2001
1097 From: Jakub Jelinek <jakub@redhat.com>
1098 Date: Tue, 7 Apr 2020 21:30:12 +0200
1099 Subject: [PATCH 1699/2034] combine: Fix split_i2i3 ICE [PR94291]
1101 The following testcase ICEs on armv7hl-linux-gnueabi.
1102 try_combine is called on:
1103 (gdb) p debug_rtx (i3)
1104 (insn 20 12 22 2 (set (mem/c:SI (plus:SI (reg/f:SI 102 sfp)
1105 (const_int -4 [0xfffffffffffffffc])) [1 x+0 S4 A32])
1106 (reg:SI 125)) "pr94291.c":7:8 241 {*arm_movsi_insn}
1107 (expr_list:REG_DEAD (reg:SI 125)
1109 (gdb) p debug_rtx (i2)
1110 (insn 12 7 20 2 (parallel [
1111 (set (reg:CC 100 cc)
1112 (compare:CC (reg:SI 121 [ <retval> ])
1115 (reg:SI 121 [ <retval> ]))
1116 ]) "pr94291.c":7:8 248 {*movsi_compare0}
1117 (expr_list:REG_UNUSED (reg:CC 100 cc)
1119 and tries to recognize cc = r121 cmp 0; [sfp-4] = r121 parallel,
1120 but that isn't recognized, so it splits it into two: split_i2i3
1121 [sfp-4] = r121 followed by cc = r121 cmp 0 which is recognized, but
1122 ICEs because the code below insist that the SET_DEST of newi2pat
1123 (or first set in PARALLEL thereof) must be a REG or SUBREG of REG,
1124 but it is a MEM in this case. I don't see any condition that would
1125 guarantee that, perhaps for the swap_i2i3 case it was somehow guaranteed.
1127 As the code just wants to update LOG_LINKS and LOG_LINKS are only for
1128 registers, not for MEM or anything else, the patch just doesn't update those
1129 if it isn't a REG or SUBREG of REG.
1131 2020-04-07 Jakub Jelinek <jakub@redhat.com>
1133 PR rtl-optimization/94291
1134 PR rtl-optimization/84169
1135 * combine.c (try_combine): For split_i2i3, don't assume SET_DEST
1136 must be a REG or SUBREG of REG; if it is not one of these, don't
1139 * gcc.dg/pr94291.c: New test.
1141 gcc/ChangeLog | 8 +++++++
1142 gcc/combine.c | 42 +++++++++++++++++++---------------
1143 gcc/testsuite/ChangeLog | 6 +++++
1144 gcc/testsuite/gcc.dg/pr94291.c | 14 ++++++++++++
1145 4 files changed, 51 insertions(+), 19 deletions(-)
1146 create mode 100644 gcc/testsuite/gcc.dg/pr94291.c
1148 diff --git a/gcc/combine.c b/gcc/combine.c
1149 index 58366a6d331..cff76cd3303 100644
1155 diff --git a/gcc/testsuite/gcc.dg/pr94291.c b/gcc/testsuite/gcc.dg/pr94291.c
1156 new file mode 100644
1157 index 00000000000..7daa2b01166
1159 +++ b/gcc/testsuite/gcc.dg/pr94291.c
1165 === 0001-Add-patch_area_size-and-patch_area_entry-to-crtl.patch ===
1166 From 6607bdd99994c834f92fce924abdaea3405f62dc Mon Sep 17 00:00:00 2001
1167 From: "H.J. Lu" <hjl.tools@gmail.com>
1168 Date: Fri, 1 May 2020 21:03:10 -0700
1169 Subject: [PATCH] Add patch_area_size and patch_area_entry to crtl
1171 Currently patchable area is at the wrong place. It is placed immediately
1172 after function label and before .cfi_startproc. A backend should be able
1173 to add a pseudo patchable area instruction durectly into RTL. This patch
1174 adds patch_area_size and patch_area_entry to crtl so that the patchable
1175 area info is available in RTL passes.
1177 It also limits patch_area_size and patch_area_entry to 65535, which is
1178 a reasonable maximum size for patchable area.
1183 * cfgexpand.c (pass_expand::execute): Set crtl->patch_area_size
1184 and crtl->patch_area_entry.
1185 * emit-rtl.h (rtl_data): Add patch_area_size and patch_area_entry.
1186 * opts.c (common_handle_option): Limit
1187 function_entry_patch_area_size and function_entry_patch_area_start
1188 to USHRT_MAX. Fix a typo in error message.
1189 * varasm.c (assemble_start_function): Use crtl->patch_area_size
1190 and crtl->patch_area_entry.
1191 * doc/invoke.texi: Document the maximum value for
1192 -fpatchable-function-entry.
1197 * c-attribs.c (handle_patchable_function_entry_attribute): Limit
1198 value to USHRT_MAX (65535).
1201 gcc/ChangeLog | 14 ++++++++
1202 gcc/c-family/ChangeLog | 6 ++++
1203 gcc/c-family/c-attribs.c | 9 +++++
1204 gcc/cfgexpand.c | 33 +++++++++++++++++++
1205 gcc/doc/invoke.texi | 1 +
1206 gcc/emit-rtl.h | 6 ++++
1208 gcc/testsuite/ChangeLog | 7 ++++
1209 .../patchable_function_entry-error-1.c | 9 +++++
1210 .../patchable_function_entry-error-2.c | 9 +++++
1211 .../patchable_function_entry-error-3.c | 17 ++++++++++
1212 gcc/varasm.c | 30 ++---------------
1213 12 files changed, 116 insertions(+), 29 deletions(-)
1214 create mode 100644 gcc/testsuite/c-c++-common/patchable_function_entry-error-1.c
1215 create mode 100644 gcc/testsuite/c-c++-common/patchable_function_entry-error-2.c
1216 create mode 100644 gcc/testsuite/c-c++-common/patchable_function_entry-error-3.c
1218 diff --git a/gcc/ChangeLog b/gcc/ChangeLog
1219 index e85a8e8813e..fb776ba5a0e 100644
1225 diff --git a/gcc/c-family/c-attribs.c b/gcc/c-family/c-attribs.c
1226 index ac936d5bbbb..a101312c581 100644
1227 --- a/gcc/c-family/c-attribs.c
1228 +++ b/gcc/c-family/c-attribs.c
1232 diff --git a/gcc/cfgexpand.c b/gcc/cfgexpand.c
1233 index a7ec77d5c85..86efa22bf60 100644
1234 --- a/gcc/cfgexpand.c
1235 +++ b/gcc/cfgexpand.c
1239 diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
1240 index 527d362533a..767d1f07801 100644
1241 --- a/gcc/doc/invoke.texi
1242 +++ b/gcc/doc/invoke.texi
1246 diff --git a/gcc/emit-rtl.h b/gcc/emit-rtl.h
1247 index a878efe3cf7..3d6565c8a30 100644
1248 --- a/gcc/emit-rtl.h
1249 +++ b/gcc/emit-rtl.h
1253 diff --git a/gcc/opts.c b/gcc/opts.c
1254 index c212a1a57dc..3dccef39701 100644
1260 diff --git a/gcc/testsuite/c-c++-common/patchable_function_entry-error-1.c b/gcc/testsuite/c-c++-common/patchable_function_entry-error-1.c
1261 new file mode 100644
1262 index 00000000000..f60bf46cfe3
1264 +++ b/gcc/testsuite/c-c++-common/patchable_function_entry-error-1.c
1267 diff --git a/gcc/testsuite/c-c++-common/patchable_function_entry-error-2.c b/gcc/testsuite/c-c++-common/patchable_function_entry-error-2.c
1268 new file mode 100644
1269 index 00000000000..90f88c78be7
1271 +++ b/gcc/testsuite/c-c++-common/patchable_function_entry-error-2.c
1274 diff --git a/gcc/testsuite/c-c++-common/patchable_function_entry-error-3.c b/gcc/testsuite/c-c++-common/patchable_function_entry-error-3.c
1275 new file mode 100644
1276 index 00000000000..4490e5c15ca
1278 +++ b/gcc/testsuite/c-c++-common/patchable_function_entry-error-3.c
1281 diff --git a/gcc/varasm.c b/gcc/varasm.c
1282 index 271a67abf56..f062e48071f 100644
1291 === 0002-Add-patch_area_size-and-patch_area_entry-to-crtl.patch ===
1292 From 6607bdd99994c834f92fce924abdaea3405f62dc Mon Sep 17 00:00:00 2001
1293 From: "H.J. Lu" <hjl.tools@gmail.com>
1294 Date: Fri, 1 May 2020 21:03:10 -0700
1295 Subject: [PATCH] Add patch_area_size and patch_area_entry to crtl
1297 Currently patchable area is at the wrong place. It is placed immediately
1298 after function label and before .cfi_startproc. A backend should be able
1299 to add a pseudo patchable area instruction durectly into RTL. This patch
1300 adds patch_area_size and patch_area_entry to crtl so that the patchable
1301 area info is available in RTL passes.
1303 It also limits patch_area_size and patch_area_entry to 65535, which is
1304 a reasonable maximum size for patchable area.
1309 * cfgexpand.c (pass_expand::execute): Set crtl->patch_area_size
1310 and crtl->patch_area_entry.
1311 * emit-rtl.h (rtl_data): Add patch_area_size and patch_area_entry.
1312 * opts.c (common_handle_option): Limit
1313 function_entry_patch_area_size and function_entry_patch_area_start
1314 to USHRT_MAX. Fix a typo in error message.
1315 * varasm.c (assemble_start_function): Use crtl->patch_area_size
1316 and crtl->patch_area_entry.
1317 * doc/invoke.texi: Document the maximum value for
1318 -fpatchable-function-entry.
1323 * c-attribs.c (handle_patchable_function_entry_attribute): Limit
1324 value to USHRT_MAX (65535).
1327 gcc/ChangeLog | 14 ++++++++
1328 gcc/c-family/ChangeLog | 6 ++++
1329 gcc/c-family/c-attribs.c | 9 +++++
1330 gcc/cfgexpand.c | 33 +++++++++++++++++++
1331 gcc/doc/invoke.texi | 1 +
1332 gcc/emit-rtl.h | 6 ++++
1334 gcc/testsuite/ChangeLog | 7 ++++
1335 .../patchable_function_entry-error-1.c | 9 +++++
1336 .../patchable_function_entry-error-2.c | 9 +++++
1337 .../patchable_function_entry-error-3.c | 17 ++++++++++
1338 gcc/varasm.c | 30 ++---------------
1339 12 files changed, 116 insertions(+), 29 deletions(-)
1340 create mode 100644 gcc/testsuite/c-c++-common/patchable_function_entry-error-1.c
1341 create mode 100644 gcc/testsuite/c-c++-common/patchable_function_entry-error-2.c
1342 create mode 100644 gcc/testsuite/c-c++-common/patchable_function_entry-error-3.c
1344 diff --git a/gcc/c-family/c-attribs.c b/gcc/c-family/c-attribs.c
1345 index ac936d5bbbb..a101312c581 100644
1346 --- a/gcc/c-family/c-attribs.c
1347 +++ b/gcc/c-family/c-attribs.c
1351 diff --git a/gcc/cfgexpand.c b/gcc/cfgexpand.c
1352 index a7ec77d5c85..86efa22bf60 100644
1353 --- a/gcc/cfgexpand.c
1354 +++ b/gcc/cfgexpand.c
1358 diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
1359 index 527d362533a..767d1f07801 100644
1360 --- a/gcc/doc/invoke.texi
1361 +++ b/gcc/doc/invoke.texi
1365 diff --git a/gcc/emit-rtl.h b/gcc/emit-rtl.h
1366 index a878efe3cf7..3d6565c8a30 100644
1367 --- a/gcc/emit-rtl.h
1368 +++ b/gcc/emit-rtl.h
1372 diff --git a/gcc/opts.c b/gcc/opts.c
1373 index c212a1a57dc..3dccef39701 100644
1379 diff --git a/gcc/testsuite/c-c++-common/patchable_function_entry-error-1.c b/gcc/testsuite/c-c++-common/patchable_function_entry-error-1.c
1380 new file mode 100644
1381 index 00000000000..f60bf46cfe3
1383 +++ b/gcc/testsuite/c-c++-common/patchable_function_entry-error-1.c
1386 diff --git a/gcc/testsuite/c-c++-common/patchable_function_entry-error-2.c b/gcc/testsuite/c-c++-common/patchable_function_entry-error-2.c
1387 new file mode 100644
1388 index 00000000000..90f88c78be7
1390 +++ b/gcc/testsuite/c-c++-common/patchable_function_entry-error-2.c
1393 diff --git a/gcc/testsuite/c-c++-common/patchable_function_entry-error-3.c b/gcc/testsuite/c-c++-common/patchable_function_entry-error-3.c
1394 new file mode 100644
1395 index 00000000000..4490e5c15ca
1397 +++ b/gcc/testsuite/c-c++-common/patchable_function_entry-error-3.c
1400 diff --git a/gcc/varasm.c b/gcc/varasm.c
1401 index 271a67abf56..f062e48071f 100644
1410 === 1957-c-generic-lambda-forwarding-function-PR94546.patch ===
1411 From aedd04caa945260ea77fd22f29b77292f7dba72e Mon Sep 17 00:00:00 2001
1412 From: Jason Merrill <jason@redhat.com>
1413 Date: Wed, 22 Apr 2020 02:27:54 -0400
1414 Subject: [PATCH 1957/2034] c++: generic lambda forwarding function [PR94546]
1416 While instantiating test(Plot) we partially instantiate the generic lambda.
1417 We look at forward<T>(rest)... and see that it's just replacing parameter
1418 packs with new parameter packs and tries to do a direct substitution. But
1419 because register_parameter_specializations had built up a
1420 NONTYPE_ARGUMENT_PACK around the new parameter pack, the substitution
1421 failed. So let's not wrap it that way.
1424 2020-04-22 Jason Merrill <jason@redhat.com>
1427 * pt.c (register_parameter_specializations): If the instantiation is
1428 still a parameter pack, don't wrap it in a NONTYPE_ARGUMENT_PACK.
1429 (tsubst_pack_expansion, tsubst_expr): Adjust.
1431 gcc/cp/ChangeLog | 7 +++++
1432 gcc/cp/pt.c | 28 +++++++------------
1433 .../g++.dg/cpp2a/lambda-generic-variadic20.C | 23 +++++++++++++++
1434 3 files changed, 40 insertions(+), 18 deletions(-)
1435 create mode 100644 gcc/testsuite/g++.dg/cpp2a/lambda-generic-variadic20.C
1437 diff --git a/gcc/cp/pt.c b/gcc/cp/pt.c
1438 index 7bf249cee5c..2fe7b66707c 100644
1444 diff --git a/gcc/testsuite/g++.dg/cpp2a/lambda-generic-variadic20.C b/gcc/testsuite/g++.dg/cpp2a/lambda-generic-variadic20.C
1445 new file mode 100644
1446 index 00000000000..3d69dbb8e98
1448 +++ b/gcc/testsuite/g++.dg/cpp2a/lambda-generic-variadic20.C
1454 === 0030-PR-c-92746-ICE-with-noexcept-of-function-concept-che.patch ===
1455 From edabbec31e3bfc9a9757f80c8610706ed00e5a1a Mon Sep 17 00:00:00 2001
1456 From: Jason Merrill <jason@redhat.com>
1457 Date: Mon, 13 Jan 2020 18:13:46 -0500
1458 Subject: [PATCH 0030/2034] PR c++/92746 - ICE with noexcept of function
1461 Another place that needs to specially handle Concepts TS function-style
1465 * except.c (check_noexcept_r): Handle concept-check.
1467 gcc/cp/ChangeLog | 3 +++
1468 gcc/cp/except.c | 2 ++
1469 gcc/testsuite/g++.dg/concepts/fn-concept3.C | 6 ++++++
1470 3 files changed, 11 insertions(+)
1471 create mode 100644 gcc/testsuite/g++.dg/concepts/fn-concept3.C
1473 diff --git a/gcc/cp/except.c b/gcc/cp/except.c
1474 index e073bd4d2bc..55b4b6af442 100644
1475 --- a/gcc/cp/except.c
1476 +++ b/gcc/cp/except.c
1480 diff --git a/gcc/testsuite/g++.dg/concepts/fn-concept3.C b/gcc/testsuite/g++.dg/concepts/fn-concept3.C
1481 new file mode 100644
1482 index 00000000000..ecb7f6b12f7
1484 +++ b/gcc/testsuite/g++.dg/concepts/fn-concept3.C
1490 === 0129-Add-PR-number-to-change-log.patch ===
1491 From f788c2d66a6ee1ded65dafccbc5e485d42af4808 Mon Sep 17 00:00:00 2001
1492 From: Richard Sandiford <richard.sandiford@arm.com>
1493 Date: Fri, 17 Jan 2020 12:22:58 +0000
1494 Subject: [PATCH 0129/2034] Add PR number to change log
1498 1 file changed, 1 insertion(+)
1503 === 0577-aarch64-Add-an-and.patch ===
1504 From bba0c624c8b1d6e54dc58091dd21b0c2ab000434 Mon Sep 17 00:00:00 2001
1505 From: Richard Sandiford <richard.sandiford@arm.com>
1506 Date: Mon, 3 Feb 2020 21:43:44 +0000
1507 Subject: [PATCH 0577/2034] aarch64: Add an and/ior-based movk pattern
1510 This patch adds a second movk pattern that models the instruction
1511 as a "normal" and/ior operation rather than an insertion. It fixes
1512 the third insv_1.c failure in PR87763, which was a regression from
1515 2020-02-06 Richard Sandiford <richard.sandiford@arm.com>
1519 * config/aarch64/aarch64-protos.h (aarch64_movk_shift): Declare.
1520 * config/aarch64/aarch64.c (aarch64_movk_shift): New function.
1521 * config/aarch64/aarch64.md (aarch64_movk<mode>): New pattern.
1525 * gcc.target/aarch64/movk_2.c: New test.
1527 gcc/ChangeLog | 7 ++
1528 gcc/config/aarch64/aarch64-protos.h | 1 +
1529 gcc/config/aarch64/aarch64.c | 24 +++++++
1530 gcc/config/aarch64/aarch64.md | 17 +++++
1531 gcc/testsuite/ChangeLog | 5 ++
1532 gcc/testsuite/gcc.target/aarch64/movk_2.c | 78 +++++++++++++++++++++++
1533 6 files changed, 132 insertions(+)
1534 create mode 100644 gcc/testsuite/gcc.target/aarch64/movk_2.c
1536 diff --git a/gcc/config/aarch64/aarch64-protos.h b/gcc/config/aarch64/aarch64-protos.h
1537 index 24cc65a383a..d29975a8921 100644
1538 --- a/gcc/config/aarch64/aarch64-protos.h
1539 +++ b/gcc/config/aarch64/aarch64-protos.h
1543 diff --git a/gcc/config/aarch64/aarch64.c b/gcc/config/aarch64/aarch64.c
1544 index 6581e4cb075..6a1b4099af1 100644
1545 --- a/gcc/config/aarch64/aarch64.c
1546 +++ b/gcc/config/aarch64/aarch64.c
1550 diff --git a/gcc/config/aarch64/aarch64.md b/gcc/config/aarch64/aarch64.md
1551 index 90eebce85c0..9c1f17d0f85 100644
1552 --- a/gcc/config/aarch64/aarch64.md
1553 +++ b/gcc/config/aarch64/aarch64.md
1557 diff --git a/gcc/testsuite/gcc.target/aarch64/movk_2.c b/gcc/testsuite/gcc.target/aarch64/movk_2.c
1558 new file mode 100644
1559 index 00000000000..a0477ad5d42
1561 +++ b/gcc/testsuite/gcc.target/aarch64/movk_2.c
1567 === 1975-S-390-Fix-several-test-cases.patch ===
1568 From 803596fe9591026a50b59ff961ebc114097677b5 Mon Sep 17 00:00:00 2001
1569 From: Stefan Schulze Frielinghaus <stefansf@linux.ibm.com>
1570 Date: Tue, 10 Mar 2020 10:49:28 +0100
1571 Subject: [PATCH 1975/2034] S/390: Fix several test cases
1575 2020-04-21 Stefan Schulze Frielinghaus <stefansf@linux.ibm.com>
1577 * config/s390/s390.md ("*<risbg_n>_ior_and_sr_ze<mode>"): Lift from SI
1578 mode to DSI. ("*trunc_sidi_and_subreg_ze<clobbercc_or_nocc>"): New
1581 gcc/testsuite/ChangeLog:
1583 2020-04-21 Stefan Schulze Frielinghaus <stefansf@linux.ibm.com>
1585 * gcc.target/s390/addsub-signed-overflow-1.c: Fix options.
1586 * gcc.target/s390/addsub-signed-overflow-2.c: Fix options.
1587 * gcc.target/s390/bswap-1.c: Fix scan assembler regex.
1588 * gcc.target/s390/global-array-element-pic2.c: Fix scan assembler regex.
1589 * gcc.target/s390/load-relative-check.c: Fix options.
1590 * gcc.target/s390/morestack.c: Fix options.
1591 * gcc.target/s390/nobp-return-mem-z900.c: Temporarily silence this case.
1592 * gcc.target/s390/risbg-ll-1.c: Fix scan assembler regex.
1593 * gcc.target/s390/risbg-ll-2.c: Fix scan assembler regex.
1594 * gcc.target/s390/risbg-ll-3.c: Fix scan assembler regex.
1595 * gcc.target/s390/target-attribute/pr82012.c: Fix error message.
1597 gcc/config/s390/s390.md | 39 ++++++++++++-------
1598 .../s390/addsub-signed-overflow-1.c | 2 +-
1599 .../s390/addsub-signed-overflow-2.c | 2 +-
1600 gcc/testsuite/gcc.target/s390/bswap-1.c | 8 ++--
1601 .../s390/global-array-element-pic2.c | 4 +-
1602 .../gcc.target/s390/load-relative-check.c | 2 +-
1603 gcc/testsuite/gcc.target/s390/morestack.c | 2 +-
1604 .../gcc.target/s390/nobp-return-mem-z900.c | 17 ++++++--
1605 gcc/testsuite/gcc.target/s390/risbg-ll-1.c | 13 +++----
1606 gcc/testsuite/gcc.target/s390/risbg-ll-2.c | 6 +--
1607 gcc/testsuite/gcc.target/s390/risbg-ll-3.c | 2 +-
1608 .../s390/target-attribute/pr82012.c | 2 +-
1609 12 files changed, 59 insertions(+), 40 deletions(-)
1611 diff --git a/gcc/config/s390/s390.md b/gcc/config/s390/s390.md
1612 index 44b59659e20..cf53ef1b791 100644
1613 --- a/gcc/config/s390/s390.md
1614 +++ b/gcc/config/s390/s390.md
1618 diff --git a/gcc/testsuite/gcc.target/s390/addsub-signed-overflow-1.c b/gcc/testsuite/gcc.target/s390/addsub-signed-overflow-1.c
1619 index 143220d5541..ebc02479587 100644
1620 --- a/gcc/testsuite/gcc.target/s390/addsub-signed-overflow-1.c
1621 +++ b/gcc/testsuite/gcc.target/s390/addsub-signed-overflow-1.c
1625 diff --git a/gcc/testsuite/gcc.target/s390/addsub-signed-overflow-2.c b/gcc/testsuite/gcc.target/s390/addsub-signed-overflow-2.c
1626 index 798e489cece..8bd1a764bc6 100644
1627 --- a/gcc/testsuite/gcc.target/s390/addsub-signed-overflow-2.c
1628 +++ b/gcc/testsuite/gcc.target/s390/addsub-signed-overflow-2.c
1632 diff --git a/gcc/testsuite/gcc.target/s390/bswap-1.c b/gcc/testsuite/gcc.target/s390/bswap-1.c
1633 index edfcdf888c0..c11a0ea780b 100644
1634 --- a/gcc/testsuite/gcc.target/s390/bswap-1.c
1635 +++ b/gcc/testsuite/gcc.target/s390/bswap-1.c
1639 diff --git a/gcc/testsuite/gcc.target/s390/global-array-element-pic2.c b/gcc/testsuite/gcc.target/s390/global-array-element-pic2.c
1640 index b9398a8042f..72b87d40b85 100644
1641 --- a/gcc/testsuite/gcc.target/s390/global-array-element-pic2.c
1642 +++ b/gcc/testsuite/gcc.target/s390/global-array-element-pic2.c
1646 diff --git a/gcc/testsuite/gcc.target/s390/load-relative-check.c b/gcc/testsuite/gcc.target/s390/load-relative-check.c
1647 index 3d4671a6b3f..a55bc2442f1 100644
1648 --- a/gcc/testsuite/gcc.target/s390/load-relative-check.c
1649 +++ b/gcc/testsuite/gcc.target/s390/load-relative-check.c
1653 diff --git a/gcc/testsuite/gcc.target/s390/morestack.c b/gcc/testsuite/gcc.target/s390/morestack.c
1654 index aa28b72aa6c..4cfa220e737 100644
1655 --- a/gcc/testsuite/gcc.target/s390/morestack.c
1656 +++ b/gcc/testsuite/gcc.target/s390/morestack.c
1660 diff --git a/gcc/testsuite/gcc.target/s390/nobp-return-mem-z900.c b/gcc/testsuite/gcc.target/s390/nobp-return-mem-z900.c
1661 index 0b318115a8f..3d6aca1f95f 100644
1662 --- a/gcc/testsuite/gcc.target/s390/nobp-return-mem-z900.c
1663 +++ b/gcc/testsuite/gcc.target/s390/nobp-return-mem-z900.c
1667 diff --git a/gcc/testsuite/gcc.target/s390/risbg-ll-1.c b/gcc/testsuite/gcc.target/s390/risbg-ll-1.c
1668 index 30350d04c45..1cac15820c0 100644
1669 --- a/gcc/testsuite/gcc.target/s390/risbg-ll-1.c
1670 +++ b/gcc/testsuite/gcc.target/s390/risbg-ll-1.c
1674 diff --git a/gcc/testsuite/gcc.target/s390/risbg-ll-2.c b/gcc/testsuite/gcc.target/s390/risbg-ll-2.c
1675 index 754c17311dd..8bf1a0ff88b 100644
1676 --- a/gcc/testsuite/gcc.target/s390/risbg-ll-2.c
1677 +++ b/gcc/testsuite/gcc.target/s390/risbg-ll-2.c
1681 diff --git a/gcc/testsuite/gcc.target/s390/risbg-ll-3.c b/gcc/testsuite/gcc.target/s390/risbg-ll-3.c
1682 index 2a2db543cd9..90d37f2c1ce 100644
1683 --- a/gcc/testsuite/gcc.target/s390/risbg-ll-3.c
1684 +++ b/gcc/testsuite/gcc.target/s390/risbg-ll-3.c
1688 diff --git a/gcc/testsuite/gcc.target/s390/target-attribute/pr82012.c b/gcc/testsuite/gcc.target/s390/target-attribute/pr82012.c
1689 index 2e1f7ae57be..ad1bf76d4d2 100644
1690 --- a/gcc/testsuite/gcc.target/s390/target-attribute/pr82012.c
1691 +++ b/gcc/testsuite/gcc.target/s390/target-attribute/pr82012.c
1698 === 1999-rs6000-Fix-C-14-vs.-C-17-ABI-bug-on-powerpc64le-PR94.patch ===
1699 From a39ed81b8a0b46320a7c6ece3f7ad4c3f8519609 Mon Sep 17 00:00:00 2001
1700 From: Jakub Jelinek <jakub@redhat.com>
1701 Date: Thu, 23 Apr 2020 09:59:57 +0200
1702 Subject: [PATCH 1999/2034] rs6000: Fix C++14 vs. C++17 ABI bug on powerpc64le
1705 As mentioned in the PR and on IRC, the recently added struct-layout-1.exp
1706 new tests FAIL on powerpc64le-linux (among other targets).
1707 FAIL: tmpdir-g++.dg-struct-layout-1/t032 cp_compat_x_tst.o-cp_compat_y_tst.o execute
1708 FAIL: tmpdir-g++.dg-struct-layout-1/t058 cp_compat_x_tst.o-cp_compat_y_tst.o execute
1709 FAIL: tmpdir-g++.dg-struct-layout-1/t059 cp_compat_x_tst.o-cp_compat_y_tst.o execute
1710 in particular. The problem is that the presence or absence of the C++17
1711 artificial empty base fields, which have non-zero TYPE_SIZE, but zero
1712 DECL_SIZE, change the ABI decisions, if it is present (-std=c++17), the type
1713 might not be considered homogeneous, while if it is absent (-std=c++14), it
1716 The following patch fixes that and emits a -Wpsabi inform; perhaps more
1717 often than it could, because the fact that rs6000_discover_homogeneous_aggregate
1718 returns true when it didn't in in GCC 7/8/9 with -std=c++17 doesn't still
1719 mean it will make a different ABI decision, but the warning triggered only
1720 on the test I've changed (the struct-layout-1.exp tests use -w -Wno-psabi
1723 2020-04-23 Jakub Jelinek <jakub@redhat.com>
1726 * config/rs6000/rs6000-call.c (rs6000_aggregate_candidate): Add
1727 cxx17_empty_base_seen argument. Pass it to recursive calls.
1728 Ignore cxx17_empty_base_field_p fields after setting
1729 *cxx17_empty_base_seen to true.
1730 (rs6000_discover_homogeneous_aggregate): Adjust
1731 rs6000_aggregate_candidate caller. With -Wpsabi, diagnose homogeneous
1732 aggregates with C++17 empty base fields.
1734 * g++.dg/tree-ssa/pr27830.C: Use -Wpsabi -w for -std=c++17 and higher.
1736 gcc/ChangeLog | 13 ++++++++++
1737 gcc/config/rs6000/rs6000-call.c | 34 +++++++++++++++++++++----
1738 gcc/testsuite/ChangeLog | 3 +++
1739 gcc/testsuite/g++.dg/tree-ssa/pr27830.C | 2 ++
1740 4 files changed, 47 insertions(+), 5 deletions(-)
1742 diff --git a/gcc/config/rs6000/rs6000-call.c b/gcc/config/rs6000/rs6000-call.c
1743 index e08621ace27..a9ae7ab70ca 100644
1744 --- a/gcc/config/rs6000/rs6000-call.c
1745 +++ b/gcc/config/rs6000/rs6000-call.c
1749 diff --git a/gcc/testsuite/g++.dg/tree-ssa/pr27830.C b/gcc/testsuite/g++.dg/tree-ssa/pr27830.C
1750 index 01c7fc18783..551ebc428cd 100644
1751 --- a/gcc/testsuite/g++.dg/tree-ssa/pr27830.C
1752 +++ b/gcc/testsuite/g++.dg/tree-ssa/pr27830.C
1759 === 0001-Add-patch_area_size-and-patch_area_entry-to-crtl.patch ===
1760 From 6607bdd99994c834f92fce924abdaea3405f62dc Mon Sep 17 00:00:00 2001
1761 From: "H.J. Lu" <hjl.tools@gmail.com>
1762 Date: Fri, 1 May 2020 21:03:10 -0700
1763 Subject: [PATCH] Add patch_area_size and patch_area_entry to crtl
1765 Currently patchable area is at the wrong place. It is placed immediately
1766 after function label and before .cfi_startproc. A backend should be able
1767 to add a pseudo patchable area instruction durectly into RTL. This patch
1768 adds patch_area_size and patch_area_entry to crtl so that the patchable
1769 area info is available in RTL passes.
1771 It also limits patch_area_size and patch_area_entry to 65535, which is
1772 a reasonable maximum size for patchable area.
1777 * cfgexpand.c (pass_expand::execute): Set crtl->patch_area_size
1778 and crtl->patch_area_entry.
1779 * emit-rtl.h (rtl_data): Add patch_area_size and patch_area_entry.
1780 * opts.c (common_handle_option): Limit
1781 function_entry_patch_area_size and function_entry_patch_area_start
1782 to USHRT_MAX. Fix a typo in error message.
1783 * varasm.c (assemble_start_function): Use crtl->patch_area_size
1784 and crtl->patch_area_entry.
1785 * doc/invoke.texi: Document the maximum value for
1786 -fpatchable-function-entry.
1791 * c-attribs.c (handle_patchable_function_entry_attribute): Limit
1792 value to USHRT_MAX (65535).
1795 gcc/ChangeLog | 14 ++++++++
1796 gcc/c-family/ChangeLog | 6 ++++
1797 gcc/c-family/c-attribs.c | 9 +++++
1798 gcc/cfgexpand.c | 33 +++++++++++++++++++
1799 gcc/doc/invoke.texi | 1 +
1800 gcc/emit-rtl.h | 6 ++++
1802 gcc/testsuite/ChangeLog | 7 ++++
1803 .../patchable_function_entry-error-1.c | 9 +++++
1804 .../patchable_function_entry-error-2.c | 9 +++++
1805 .../patchable_function_entry-error-3.c | 17 ++++++++++
1806 gcc/varasm.c | 30 ++---------------
1807 12 files changed, 116 insertions(+), 29 deletions(-)
1808 create mode 100644 gcc/testsuite/c-c++-common/patchable_function_entry-error-1.c
1809 create mode 100644 gcc/testsuite/c-c++-common/patchable_function_entry-error-2.c
1810 create mode 100644 gcc/testsuite/c-c++-common/patchable_function_entry-error-3.c
1812 diff --git a/gcc/ChangeLog b/gcc/ChangeLog
1813 index e85a8e8813e..fb776ba5a0e 100644
1819 diff --git a/gcc/c-family/ChangeLog b/gcc/c-family/ChangeLog
1820 index c429b49e68c..69ea1fdc4f3 100644
1821 --- a/gcc/c-family/ChangeLog
1822 +++ b/gcc/c-family/ChangeLog
1826 diff --git a/gcc/c-family/c-attribs.c b/gcc/c-family/c-attribs.c
1827 index ac936d5bbbb..a101312c581 100644
1828 --- a/gcc/c-family/c-attribs.c
1829 +++ b/gcc/c-family/c-attribs.c
1833 diff --git a/gcc/cfgexpand.c b/gcc/cfgexpand.c
1834 index a7ec77d5c85..86efa22bf60 100644
1835 --- a/gcc/cfgexpand.c
1836 +++ b/gcc/cfgexpand.c
1840 diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
1841 index 527d362533a..767d1f07801 100644
1842 --- a/gcc/doc/invoke.texi
1843 +++ b/gcc/doc/invoke.texi
1847 diff --git a/gcc/emit-rtl.h b/gcc/emit-rtl.h
1848 index a878efe3cf7..3d6565c8a30 100644
1849 --- a/gcc/emit-rtl.h
1850 +++ b/gcc/emit-rtl.h
1854 diff --git a/gcc/opts.c b/gcc/opts.c
1855 index c212a1a57dc..3dccef39701 100644
1861 diff --git a/gcc/testsuite/c-c++-common/patchable_function_entry-error-1.c b/gcc/testsuite/c-c++-common/patchable_function_entry-error-1.c
1862 new file mode 100644
1863 index 00000000000..f60bf46cfe3
1865 +++ b/gcc/testsuite/c-c++-common/patchable_function_entry-error-1.c
1868 diff --git a/gcc/testsuite/c-c++-common/patchable_function_entry-error-2.c b/gcc/testsuite/c-c++-common/patchable_function_entry-error-2.c
1869 new file mode 100644
1870 index 00000000000..90f88c78be7
1872 +++ b/gcc/testsuite/c-c++-common/patchable_function_entry-error-2.c
1875 diff --git a/gcc/testsuite/c-c++-common/patchable_function_entry-error-3.c b/gcc/testsuite/c-c++-common/patchable_function_entry-error-3.c
1876 new file mode 100644
1877 index 00000000000..4490e5c15ca
1879 +++ b/gcc/testsuite/c-c++-common/patchable_function_entry-error-3.c
1882 diff --git a/gcc/varasm.c b/gcc/varasm.c
1883 index 271a67abf56..f062e48071f 100644
1892 === 0002-Bump-date.patch ===
1893 From a139bafeec76732d964b99e8be3d61b3cab0359d Mon Sep 17 00:00:00 2001
1894 From: Martin Liska <mliska@suse.cz>
1895 Date: Tue, 12 May 2020 09:27:51 +0200
1896 Subject: [PATCH 2/2] Bump date.
1899 gcc/DATESTAMP | 2 +-
1900 1 file changed, 1 insertion(+), 1 deletion(-)
1902 diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP
1903 index c3d42a6f89a..b03d4a0feab 100644
1912 === 0001-Just-test-it.patch ===
1913 From 6b10b909c0b49ac7ace2cd53021b3ff7ffb2d3f4 Mon Sep 17 00:00:00 2001
1914 From: Martin Liska <mliska@suse.cz>
1915 Date: Tue, 12 May 2020 09:25:54 +0200
1916 Subject: [PATCH 1/2] Just test it.
1920 2020-05-12 Martin Liska <mliska@suse.cz>
1926 gcc/tree-vrp.c | 2 ++
1928 2 files changed, 5 insertions(+)
1930 diff --git a/gcc/tree-vrp.c b/gcc/tree-vrp.c
1931 index a8861670790..32722d2c714 100644
1932 --- a/gcc/tree-vrp.c
1933 +++ b/gcc/tree-vrp.c
1937 diff --git a/gcc/tree.c b/gcc/tree.c
1938 index 0ddf002e9eb..fa7c6b28a4e 100644
1947 === trailing-whitespaces.patch ===
1948 From eb7c7c524556df5364f03adc20f6a9db20858484 Mon Sep 17 00:00:00 2001
1949 From: Jakub Jelinek <jakub@redhat.com>
1950 Date: Mon, 13 Jan 2020 14:14:57 +0100
1951 Subject: [PATCH 0004/2034] tree-opt: Fix bootstrap failure in
1952 tree-ssa-forwprop.c some more PR90838
1954 2020-01-13 Jakub Jelinek <jakub@redhat.com>
1956 PR tree-optimization/90838
1957 * tree-ssa-forwprop.c (simplify_count_trailing_zeroes): Use
1958 SCALAR_INT_TYPE_MODE directly in CTZ_DEFINED_VALUE_AT_ZERO macro
1959 argument rather than to initialize temporary for targets that
1960 don't use the mode argument at all. Initialize ctzval to avoid
1963 gcc/ChangeLog | 9 +++++++++
1964 gcc/tree-ssa-forwprop.c | 6 +++---
1965 2 files changed, 12 insertions(+), 3 deletions(-)
1967 diff --git a/gcc/tree-ssa-forwprop.c b/gcc/tree-ssa-forwprop.c
1968 index aac31d02b6c..56c470f6ecf 100644
1969 --- a/gcc/tree-ssa-forwprop.c
1970 +++ b/gcc/tree-ssa-forwprop.c
1977 === pr-check1.patch ===
1978 From 5194b51ed9714808d88827531e91474895b6c706 Mon Sep 17 00:00:00 2001
1979 From: Jason Merrill <jason@redhat.com>
1980 Date: Thu, 16 Jan 2020 16:55:39 -0500
1981 Subject: [PATCH 0121/2034] PR c++/12345 - ICE with __is_constructible and
1984 Here we had been recursing in tsubst_copy_and_build if type2 was a TREE_LIST
1985 because that function knew how to deal with pack expansions, and tsubst
1986 didn't. But tsubst_copy_and_build expects to be dealing with expressions,
1987 so we crash when trying to convert_from_reference a type.
1991 * pt.c (tsubst) [TREE_LIST]: Handle pack expansion.
1992 (tsubst_copy_and_build) [TRAIT_EXPR]: Always use tsubst for type2.
1994 gcc/testsuite/ChangeLog:
1995 * g++.dg/ext/is_constructible4.C: New file.
1997 gcc/cp/ChangeLog | 4 ++
1998 gcc/cp/pt.c | 74 ++++++++++++++++++--
1999 gcc/testsuite/g++.dg/ext/is_constructible4.C | 18 +++++
2000 3 files changed, 89 insertions(+), 7 deletions(-)
2001 create mode 100644 gcc/testsuite/g++.dg/ext/is_constructible4.C
2003 diff --git a/gcc/cp/pt.c b/gcc/cp/pt.c
2004 index 9bb8cc13e5f..872f8ff8f52 100644
2010 diff --git a/gcc/testsuite/g++.dg/ext/is_constructible4.C b/gcc/testsuite/g++.dg/ext/is_constructible4.C
2011 new file mode 100644
2012 index 00000000000..6dfe3c01661
2014 +++ b/gcc/testsuite/g++.dg/ext/is_constructible4.C
2020 === 0020-IPA-Avoid-segfault-in-devirtualization_time_bonus-PR.patch ===
2021 From 8472660b98a31b32b7d030c2cdc4d41d326364d5 Mon Sep 17 00:00:00 2001
2022 From: Martin Jambor <mjambor@suse.cz>
2023 Date: Mon, 13 Jan 2020 19:13:46 +0100
2024 Subject: [PATCH 0020/2034] IPA: Avoid segfault in devirtualization_time_bonus
2027 2020-01-13 Martin Jambor <mjambor@suse.cz>
2030 * ipa-cp.c (devirtualization_time_bonus): Check whether isummary is
2034 * g++.dg/ipa/pr93223.C: New test.
2037 gcc/testsuite/g++.dg/ipa/pr93223.C | 62 ++++++++++++++++++++++++++++++
2038 2 files changed, 63 insertions(+), 1 deletion(-)
2039 create mode 100644 gcc/testsuite/g++.dg/ipa/pr93223.C
2041 diff --git a/gcc/ipa-cp.c b/gcc/ipa-cp.c
2042 index 612f3d0a89b..17da1d8e8a7 100644
2048 diff --git a/gcc/testsuite/g++.dg/ipa/pr93223.C b/gcc/testsuite/g++.dg/ipa/pr93223.C
2049 new file mode 100644
2050 index 00000000000..87f98b5e244
2052 +++ b/gcc/testsuite/g++.dg/ipa/pr93223.C
2058 === 0043-Compare-TREE_ADDRESSABLE-and-TYPE_MODE-when-ODR-chec.patch ===
2059 From 288c5324bf6e418dd94d718d1619464a4f68ff8e Mon Sep 17 00:00:00 2001
2060 From: Jan Hubicka <jh@suse.cz>
2061 Date: Tue, 14 Jan 2020 21:45:03 +0100
2062 Subject: [PATCH 0043/2034] Compare TREE_ADDRESSABLE and TYPE_MODE when ODR
2066 * ipa-devirt.c (odr_types_equivalent_p): Compare TREE_ADDRESSABLE and
2069 * testsuite/g++.dg/lto/odr-8_0.C: New testcase.
2070 * testsuite/g++.dg/lto/odr-8_1.C: New testcase.
2072 gcc/ChangeLog | 6 ++++++
2073 gcc/ipa-devirt.c | 21 +++++++++++++++++++++
2074 gcc/testsuite/ChangeLog | 6 ++++++
2075 gcc/testsuite/g++.dg/lto/odr-8_0.C | 7 +++++++
2076 gcc/testsuite/g++.dg/lto/odr-8_1.C | 12 ++++++++++++
2077 5 files changed, 52 insertions(+)
2078 create mode 100644 gcc/testsuite/g++.dg/lto/odr-8_0.C
2079 create mode 100644 gcc/testsuite/g++.dg/lto/odr-8_1.C
2081 diff --git a/gcc/ipa-devirt.c b/gcc/ipa-devirt.c
2082 index f0031957375..b609a77701d 100644
2083 --- a/gcc/ipa-devirt.c
2084 +++ b/gcc/ipa-devirt.c
2088 diff --git a/gcc/testsuite/g++.dg/lto/odr-8_0.C b/gcc/testsuite/g++.dg/lto/odr-8_0.C
2089 new file mode 100644
2090 index 00000000000..59f51399fac
2092 +++ b/gcc/testsuite/g++.dg/lto/odr-8_0.C
2095 diff --git a/gcc/testsuite/g++.dg/lto/odr-8_1.C b/gcc/testsuite/g++.dg/lto/odr-8_1.C
2096 new file mode 100644
2097 index 00000000000..742df8cc906
2099 +++ b/gcc/testsuite/g++.dg/lto/odr-8_1.C
2105 === 0096-GCC-PATCH-AArch64-Add-ACLE-intrinsics-for-dot-produc.patch ===
2106 From 8c197c851e7528baba7cb837f34c05ba2242f705 Mon Sep 17 00:00:00 2001
2107 From: Stam Markianos-Wright <stam.markianos-wright@arm.com>
2108 Date: Thu, 16 Jan 2020 14:20:48 +0000
2109 Subject: [PATCH 0096/2034] [GCC][PATCH][AArch64]Add ACLE intrinsics for dot
2110 product (usdot - vector, <us/su>dot - by element) for AArch64 AdvSIMD ARMv8.6
2115 2020-01-16 Stam Markianos-Wright <stam.markianos-wright@arm.com>
2117 * config/aarch64/aarch64-builtins.c: (enum aarch64_type_qualifiers):
2118 New qualifier_lane_quadtup_index, TYPES_TERNOP_SSUS,
2119 TYPES_QUADOPSSUS_LANE_QUADTUP, TYPES_QUADOPSSSU_LANE_QUADTUP.
2120 (aarch64_simd_expand_args): Add case SIMD_ARG_LANE_QUADTUP_INDEX.
2121 (aarch64_simd_expand_builtin): Add qualifier_lane_quadtup_index.
2122 * config/aarch64/aarch64-simd-builtins.def (usdot, usdot_lane,
2123 usdot_laneq, sudot_lane,sudot_laneq): New.
2124 * config/aarch64/aarch64-simd.md (aarch64_usdot): New.
2125 (aarch64_<sur>dot_lane): New.
2126 * config/aarch64/arm_neon.h (vusdot_s32): New.
2128 (vusdot_lane_s32): New.
2129 (vsudot_lane_s32): New.
2130 * config/aarch64/iterators.md (DOTPROD_I8MM): New iterator.
2131 (UNSPEC_USDOT, UNSPEC_SUDOT): New unspecs.
2133 gcc/testsuite/ChangeLog:
2135 2020-01-16 Stam Markianos-Wright <stam.markianos-wright@arm.com>
2137 * gcc.target/aarch64/advsimd-intrinsics/vdot-compile-3-1.c: New test.
2138 * gcc.target/aarch64/advsimd-intrinsics/vdot-compile-3-2.c: New test.
2139 * gcc.target/aarch64/advsimd-intrinsics/vdot-compile-3-3.c: New test.
2140 * gcc.target/aarch64/advsimd-intrinsics/vdot-compile-3-4.c: New test.
2142 gcc/ChangeLog | 18 +++
2143 gcc/config/aarch64/aarch64-builtins.c | 45 +++++-
2144 gcc/config/aarch64/aarch64-simd-builtins.def | 5 +
2145 gcc/config/aarch64/aarch64-simd.md | 34 +++++
2146 gcc/config/aarch64/arm_neon.h | 83 +++++++++++
2147 gcc/config/aarch64/iterators.md | 7 +
2148 gcc/testsuite/ChangeLog | 7 +
2149 .../aarch64/advsimd-intrinsics/vdot-3-1.c | 136 +++++++++++++++++
2150 .../aarch64/advsimd-intrinsics/vdot-3-2.c | 137 ++++++++++++++++++
2151 .../aarch64/advsimd-intrinsics/vdot-3-3.c | 31 ++++
2152 .../aarch64/advsimd-intrinsics/vdot-3-4.c | 31 ++++
2153 11 files changed, 531 insertions(+), 3 deletions(-)
2154 create mode 100755 gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vdot-3-1.c
2155 create mode 100755 gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vdot-3-2.c
2156 create mode 100755 gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vdot-3-3.c
2157 create mode 100755 gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vdot-3-4.c
2159 diff --git a/gcc/config/aarch64/aarch64-builtins.c b/gcc/config/aarch64/aarch64-builtins.c
2160 index f0e0461b7f0..f50c4857e1c 100644
2161 --- a/gcc/config/aarch64/aarch64-builtins.c
2162 +++ b/gcc/config/aarch64/aarch64-builtins.c
2166 diff --git a/gcc/config/aarch64/aarch64-simd-builtins.def b/gcc/config/aarch64/aarch64-simd-builtins.def
2167 index 57fc5933b43..4744dd1f6b2 100644
2168 --- a/gcc/config/aarch64/aarch64-simd-builtins.def
2169 +++ b/gcc/config/aarch64/aarch64-simd-builtins.def
2173 diff --git a/gcc/config/aarch64/aarch64-simd.md b/gcc/config/aarch64/aarch64-simd.md
2174 index 2989096b170..9e56e8caf35 100644
2175 --- a/gcc/config/aarch64/aarch64-simd.md
2176 +++ b/gcc/config/aarch64/aarch64-simd.md
2180 diff --git a/gcc/config/aarch64/arm_neon.h b/gcc/config/aarch64/arm_neon.h
2181 index eaba156e26c..c96214003dd 100644
2182 --- a/gcc/config/aarch64/arm_neon.h
2183 +++ b/gcc/config/aarch64/arm_neon.h
2187 diff --git a/gcc/config/aarch64/iterators.md b/gcc/config/aarch64/iterators.md
2188 index b9843b83c5f..83720d9802a 100644
2189 --- a/gcc/config/aarch64/iterators.md
2190 +++ b/gcc/config/aarch64/iterators.md
2194 diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vdot-3-1.c b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vdot-3-1.c
2195 new file mode 100755
2196 index 00000000000..ac4f821e771
2198 +++ b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vdot-3-1.c
2201 diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vdot-3-2.c b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vdot-3-2.c
2202 new file mode 100755
2203 index 00000000000..96bca2356e4
2205 +++ b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vdot-3-2.c
2208 diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vdot-3-3.c b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vdot-3-3.c
2209 new file mode 100755
2210 index 00000000000..18ecabef8dc
2212 +++ b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vdot-3-3.c
2215 diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vdot-3-4.c b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vdot-3-4.c
2216 new file mode 100755
2217 index 00000000000..66c87d48694
2219 +++ b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vdot-3-4.c
2225 === 0001-c-Alias.patch ===
2226 From 3f1a149fc35cdba988464562e2fb824b10652d6b Mon Sep 17 00:00:00 2001
2227 From: Nathan Sidwell <nathan@acm.org>
2228 Date: Tue, 19 May 2020 13:29:19 -0700
2229 Subject: [PATCH] c++: Alias template instantiation template info
2231 I discovered that the alias instantiation machinery would setup
2232 template_info, and then sometime later overwrite that with equivalent
2233 info. This broke modules, because the template info, once set, is
2234 logically immutable. Let's just not do that.
2236 * pt.c (lookup_template_class_1): Do not reinit template_info of an
2239 (cherry picked from commit 74744bb1f2847b5b9ce3e97e0fec9c23bb0e499f)
2241 gcc/cp/pt.c | 17 +++++++++++++++--
2242 1 file changed, 15 insertions(+), 2 deletions(-)
2244 diff --git a/gcc/cp/pt.c b/gcc/cp/pt.c
2245 index b8f03d18541..7230ac724ba 100644
2253 === 0001-RISC-V-Make-unique.patch ===
2254 From adce62f53d8ad00e8110a6a2de7962d7a850de16 Mon Sep 17 00:00:00 2001
2255 From: Keith Packard <keithp@keithp.com>
2256 Date: Wed, 29 Apr 2020 09:49:56 -0700
2257 Subject: [PATCH] RISC-V: Make unique SECCAT_SRODATA names start with .srodata
2260 default_unique_section uses ".sdata2" as a prefix for SECCAT_SRODATA
2261 unique sections, but RISC-V uses ".srodata" instead. Override the
2262 TARGET_ASM_UNIQUE_SECTION function to catch this case, allowing the
2263 default to be used for all other sections.
2266 * config/riscv/riscv.c (riscv_unique_section): New.
2267 (TARGET_ASM_UNIQUE_SECTION): New.
2269 Signed-off-by: Keith Packard <keithp@keithp.com>
2270 Reviewed-by: Keith Packard <keithp@keithp.com>
2271 Reviewed-on: Keith Packard <keithp@keithp.com>
2272 Co-Authored-by: Keith Packard <keithp@keithp.com>
2273 Acked-By: Keith Packard <keithp@keithp.com>
2274 Tested-by: Keith Packard <keithp@keithp.com>
2275 Reported-by: Keith Packard <keithp@keithp.com>
2276 Suggested-by: Keith Packard <keithp@keithp.com>
2278 gcc/ChangeLog | 5 +++++
2279 gcc/config/riscv/riscv.c | 40 ++++++++++++++++++++++++++++++++++++++++
2280 2 files changed, 45 insertions(+)
2282 diff --git a/gcc/config/riscv/riscv.c b/gcc/config/riscv/riscv.c
2283 index e4c08d780db..1ad9799fce4 100644
2284 --- a/gcc/config/riscv/riscv.c
2285 +++ b/gcc/config/riscv/riscv.c
2293 === 0001-Fortran-ProcPtr-function.patch ===
2294 From eb069ae8819c3a84d7f78becc5501e21ee3a9554 Mon Sep 17 00:00:00 2001
2295 From: Mark Eggleston <markeggleston@gcc.gnu.org>
2296 Date: Thu, 7 May 2020 08:02:02 +0100
2297 Subject: [PATCH] Fortran : ProcPtr function results: 'ppr@' in error message
2300 The value 'ppr@' is set in the name of result symbol, the actual
2301 name of the symbol is in the procedure name symbol pointed
2302 to by the result symbol's namespace (ns). When reporting errors for
2303 symbols that have the proc_pointer attribute check whether the
2304 result attribute is set and set the name accordingly.
2306 2020-05-20 Mark Eggleston <markeggleston@gcc.gnu.org>
2311 * resolve.c (resolve_fl_procedure): Set name depending on
2312 whether the result attribute is set. For PROCEDURE/RESULT
2313 conflict use the name in sym->ns->proc_name->name.
2314 * symbol.c (gfc_add_type): Add check for function and result
2315 attributes use sym->ns->proc_name->name if both are set.
2316 Where the symbol cannot have a type use the name in
2317 sym->ns->proc_name->name.
2319 2020-05-20 Mark Eggleston <markeggleston@gcc.gnu.org>
2324 * gfortran.dg/pr39695_1.f90: New test.
2325 * gfortran.dg/pr39695_2.f90: New test.
2326 * gfortran.dg/pr39695_3.f90: New test.
2327 * gfortran.dg/pr39695_4.f90: New test.
2329 gcc/fortran/ChangeLog | 11 +++++++++++
2330 gcc/fortran/resolve.c | 6 ++++--
2331 gcc/fortran/symbol.c | 7 +++++--
2332 gcc/testsuite/ChangeLog | 8 ++++++++
2333 gcc/testsuite/gfortran.dg/pr39695_1.f90 | 8 ++++++++
2334 gcc/testsuite/gfortran.dg/pr39695_2.f90 | 12 ++++++++++++
2335 gcc/testsuite/gfortran.dg/pr39695_3.f90 | 11 +++++++++++
2336 gcc/testsuite/gfortran.dg/pr39695_4.f90 | 14 ++++++++++++++
2337 8 files changed, 73 insertions(+), 4 deletions(-)
2338 create mode 100644 gcc/testsuite/gfortran.dg/pr39695_1.f90
2339 create mode 100644 gcc/testsuite/gfortran.dg/pr39695_2.f90
2340 create mode 100644 gcc/testsuite/gfortran.dg/pr39695_3.f90
2341 create mode 100644 gcc/testsuite/gfortran.dg/pr39695_4.f90
2343 diff --git a/gcc/fortran/resolve.c b/gcc/fortran/resolve.c
2344 index f6e10ea379c..aaee5eb6b9b 100644
2345 --- a/gcc/fortran/resolve.c
2346 +++ b/gcc/fortran/resolve.c
2350 diff --git a/gcc/fortran/symbol.c b/gcc/fortran/symbol.c
2351 index 59f602d80d5..b96706138c9 100644
2352 --- a/gcc/fortran/symbol.c
2353 +++ b/gcc/fortran/symbol.c
2357 diff --git a/gcc/testsuite/gfortran.dg/pr39695_1.f90 b/gcc/testsuite/gfortran.dg/pr39695_1.f90
2358 new file mode 100644
2359 index 00000000000..4c4b3045f69
2361 +++ b/gcc/testsuite/gfortran.dg/pr39695_1.f90
2364 diff --git a/gcc/testsuite/gfortran.dg/pr39695_2.f90 b/gcc/testsuite/gfortran.dg/pr39695_2.f90
2365 new file mode 100644
2366 index 00000000000..8534724959a
2368 +++ b/gcc/testsuite/gfortran.dg/pr39695_2.f90
2371 diff --git a/gcc/testsuite/gfortran.dg/pr39695_3.f90 b/gcc/testsuite/gfortran.dg/pr39695_3.f90
2372 new file mode 100644
2373 index 00000000000..661e2540bb3
2375 +++ b/gcc/testsuite/gfortran.dg/pr39695_3.f90
2378 diff --git a/gcc/testsuite/gfortran.dg/pr39695_4.f90 b/gcc/testsuite/gfortran.dg/pr39695_4.f90
2379 new file mode 100644
2380 index 00000000000..ecb0a43929f
2382 +++ b/gcc/testsuite/gfortran.dg/pr39695_4.f90
2388 === 0001-c-C-20-DR-2237.patch ===
2389 From 4b38d56dbac6742b038551a36ec80200313123a1 Mon Sep 17 00:00:00 2001
2390 From: Marek Polacek <polacek@redhat.com>
2391 Date: Sat, 4 Apr 2020 18:09:53 -0400
2392 Subject: [PATCH] c++: C++20 DR 2237, disallow simple-template-id in cdtor.
2394 This patch implements DR 2237 which says that a simple-template-id is
2395 no longer valid as the declarator-id of a constructor or destructor;
2396 see [diff.cpp17.class]#2. It is not explicitly stated but out-of-line
2397 destructors with a simple-template-id are also meant to be ill-formed
2398 now. (Out-of-line constructors like that are invalid since DR1435 I
2399 think.) This change only applies to C++20; it is not a DR against C++17.
2401 I'm not crazy about the diagnostic in constructors but ISTM that
2402 cp_parser_constructor_declarator_p shouldn't print errors.
2405 * parser.c (cp_parser_unqualified_id): Reject simple-template-id as
2406 the declarator-id of a destructor.
2408 diff --git a/gcc/cp/parser.c b/gcc/cp/parser.c
2409 index a6a5d975af3..a8082d39aca 100644
2410 --- a/gcc/cp/parser.c
2411 +++ b/gcc/cp/parser.c
2416 === 0001-go-in-ignored-location.patch ===
2417 From 81994eab700da7fea6644541c163aa0f0f3b8cf1 Mon Sep 17 00:00:00 2001
2418 From: =?UTF-8?q?Cl=C3=A9ment=20Chigot?= <chigot.c@gmail.com>
2419 Date: Tue, 19 May 2020 16:03:54 +0200
2420 Subject: libgo: update x/sys/cpu after gccgo support added
2422 Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/234597
2424 gcc/go/gofrontend/MERGE | 2 +-
2425 .../sys/cpu/{cpu_aix_ppc64.go => cpu_aix.go} | 2 +-
2426 .../golang.org/x/sys/cpu/syscall_aix_gccgo.go | 27 +++++++++++++++++++
2427 3 files changed, 29 insertions(+), 2 deletions(-)
2428 rename libgo/go/golang.org/x/sys/cpu/{cpu_aix_ppc64.go => cpu_aix.go} (96%)
2429 create mode 100644 libgo/go/golang.org/x/sys/cpu/syscall_aix_gccgo.go
2431 diff --git a/gcc/go/gofrontend/MERGE b/gcc/go/gofrontend/MERGE
2432 index bc9c1f07eda..284374820b0 100644
2433 --- a/gcc/go/gofrontend/MERGE
2434 +++ b/gcc/go/gofrontend/MERGE
2438 diff --git a/libgo/go/golang.org/x/sys/cpu/cpu_aix_ppc64.go b/libgo/go/golang.org/x/sys/cpu/cpu_aix.go
2439 similarity index 96%
2440 rename from libgo/go/golang.org/x/sys/cpu/cpu_aix_ppc64.go
2441 rename to libgo/go/golang.org/x/sys/cpu/cpu_aix.go
2442 index b0ede112d4e..02d03129e50 100644
2443 --- a/libgo/go/golang.org/x/sys/cpu/cpu_aix_ppc64.go
2444 +++ b/libgo/go/golang.org/x/sys/cpu/cpu_aix.go
2448 diff --git a/libgo/go/golang.org/x/sys/cpu/syscall_aix_gccgo.go b/libgo/go/golang.org/x/sys/cpu/syscall_aix_gccgo.go
2449 new file mode 100644
2450 index 00000000000..2609cc49ae7
2452 +++ b/libgo/go/golang.org/x/sys/cpu/syscall_aix_gccgo.go
2457 2.27.0.rc0.183.gde8f92d652-goog
2458 === 0001-Update-merge.sh-to-reflect.patch ===
2459 From b3d566f570f4416299240b51654b70c74f6cba6a Mon Sep 17 00:00:00 2001
2460 From: Martin Liska <mliska@suse.cz>
2461 Date: Mon, 25 May 2020 20:55:29 +0200
2462 Subject: [PATCH] Update merge.sh to reflect usage of git.
2464 After switching to GIT, we should use it in libsanitizer
2465 merge script. I'll do merge from master as soon as
2468 I'm going to install the patch.
2470 libsanitizer/ChangeLog:
2472 * LOCAL_PATCHES: Use git hash instead of SVN id.
2473 * merge.sh: Use git instead of VCS. Update paths
2474 relative to upstream git repository.
2476 libsanitizer/LOCAL_PATCHES | 2 +-
2477 libsanitizer/merge.sh | 10 ++++------
2478 2 files changed, 5 insertions(+), 7 deletions(-)
2480 diff --git a/libsanitizer/LOCAL_PATCHES b/libsanitizer/LOCAL_PATCHES
2481 index 292b7a6e489..7732de3d436 100644
2482 --- a/libsanitizer/LOCAL_PATCHES
2483 +++ b/libsanitizer/LOCAL_PATCHES
2487 diff --git a/libsanitizer/merge.sh b/libsanitizer/merge.sh
2488 index dfa7bf3d196..3f4f1629a22 100755
2489 --- a/libsanitizer/merge.sh
2490 +++ b/libsanitizer/merge.sh
2497 === 0001-Ada-Reuse-Is_Package_Or_Generic_Package-where-possib.patch ===
2498 From 557b268fffffdeb0980a17411f458eee333f55c6 Mon Sep 17 00:00:00 2001
2499 From: Piotr Trojanek <trojanek@adacore.com>
2500 Date: Thu, 12 Dec 2019 11:45:24 +0100
2501 Subject: [PATCH] [Ada] Reuse Is_Package_Or_Generic_Package where possible
2503 2020-05-26 Piotr Trojanek <trojanek@adacore.com>
2507 * contracts.adb, einfo.adb, exp_ch9.adb, sem_ch12.adb,
2508 sem_ch4.adb, sem_ch7.adb, sem_ch8.adb, sem_elab.adb,
2509 sem_type.adb, sem_util.adb: Reuse Is_Package_Or_Generic_Package
2510 where possible (similarly, reuse Is_Concurrent_Type if it was
2511 possible in the same expressions).
2513 gcc/ada/contracts.adb | 2 +-
2514 gcc/ada/einfo.adb | 22 +++++++++++-----------
2515 gcc/ada/exp_ch9.adb | 2 +-
2516 gcc/ada/sem_ch12.adb | 2 +-
2517 gcc/ada/sem_ch4.adb | 2 +-
2518 gcc/ada/sem_ch7.adb | 6 +++---
2519 gcc/ada/sem_ch8.adb | 6 +++---
2520 gcc/ada/sem_elab.adb | 2 +-
2521 gcc/ada/sem_type.adb | 2 +-
2522 gcc/ada/sem_util.adb | 6 +++---
2523 10 files changed, 26 insertions(+), 26 deletions(-)
2525 diff --git a/gcc/ada/contracts.adb b/gcc/ada/contracts.adb
2526 index 981bb91..d58f136 100644
2527 --- a/gcc/ada/contracts.adb
2528 +++ b/gcc/ada/contracts.adb
2531 diff --git a/gcc/ada/einfo.adb b/gcc/ada/einfo.adb
2532 index 98b508f..1df8ed0 100644
2533 --- a/gcc/ada/einfo.adb
2534 +++ b/gcc/ada/einfo.adb
2537 diff --git a/gcc/ada/exp_ch9.adb b/gcc/ada/exp_ch9.adb
2538 index 64ac353..392a221 100644
2539 --- a/gcc/ada/exp_ch9.adb
2540 +++ b/gcc/ada/exp_ch9.adb
2543 diff --git a/gcc/ada/sem_ch12.adb b/gcc/ada/sem_ch12.adb
2544 index dc3a3c2..209e060 100644
2545 --- a/gcc/ada/sem_ch12.adb
2546 +++ b/gcc/ada/sem_ch12.adb
2549 diff --git a/gcc/ada/sem_ch4.adb b/gcc/ada/sem_ch4.adb
2550 index 5910112..702f265 100644
2551 --- a/gcc/ada/sem_ch4.adb
2552 +++ b/gcc/ada/sem_ch4.adb
2555 diff --git a/gcc/ada/sem_ch7.adb b/gcc/ada/sem_ch7.adb
2556 index 6d9a1db..f217dfd 100644
2557 --- a/gcc/ada/sem_ch7.adb
2558 +++ b/gcc/ada/sem_ch7.adb
2561 diff --git a/gcc/ada/sem_ch8.adb b/gcc/ada/sem_ch8.adb
2562 index f083f7c..7f50b40 100644
2563 --- a/gcc/ada/sem_ch8.adb
2564 +++ b/gcc/ada/sem_ch8.adb
2567 diff --git a/gcc/ada/sem_elab.adb b/gcc/ada/sem_elab.adb
2568 index f3cac46..dbf3fac 100644
2569 --- a/gcc/ada/sem_elab.adb
2570 +++ b/gcc/ada/sem_elab.adb
2573 diff --git a/gcc/ada/sem_type.adb b/gcc/ada/sem_type.adb
2574 index e5d01dd..1868568 100644
2575 --- a/gcc/ada/sem_type.adb
2576 +++ b/gcc/ada/sem_type.adb
2579 diff --git a/gcc/ada/sem_util.adb b/gcc/ada/sem_util.adb
2580 index b980b4c..c1b1d9e 100644
2581 --- a/gcc/ada/sem_util.adb
2582 +++ b/gcc/ada/sem_util.adb
2588 === 0001-Ada-Add-support-for-XDR-streaming-in-the-default-run.patch ===
2589 From ed248d9bc3b72b6888a1b9cd84a8ef26809249f0 Mon Sep 17 00:00:00 2001
2590 From: Arnaud Charlet <charlet@adacore.com>
2591 Date: Thu, 23 Apr 2020 05:46:29 -0400
2592 Subject: [PATCH] [Ada] Add support for XDR streaming in the default runtime
2594 --!# FROM: /homes/derodat/tron/gnat2fsf/gnat
2595 --!# COMMIT: 5ad4cabb9f70114eb61c025e91406d4fba253f95
2596 --!# Change-Id: I21f92cad27933747495cdfa544a048f62f944cbd
2599 Currently we provide a separate implementation of Stream_Attributes via
2600 s-stratt__xdr.adb which needs to be recompiled manually.
2602 This change introduces instead a new binder switch to choose at bind
2603 time which stream implementation to use and replaces s-stratt__xdr.adb
2604 by a new unit System.Stream_Attributes.XDR.
2606 2020-05-04 Arnaud Charlet <charlet@adacore.com>
2610 * Makefile.rtl: Add s-statxd.o.
2611 * bindgen.adb (Gen_Adainit): Add support for XDR_Stream.
2612 * bindusg.adb (Display): Add mention of -xdr.
2613 * gnatbind.adb: Process -xdr switch.
2614 * init.c (__gl_xdr_stream): New.
2615 * opt.ads (XDR_Stream): New.
2616 * libgnat/s-stratt__xdr.adb: Rename to...
2617 * libgnat/s-statxd.adb: this and adjust.
2618 * libgnat/s-statxd.ads: New.
2619 * libgnat/s-stratt.ads, libgnat/s-stratt.adb: Choose between
2620 default and XDR implementation at runtime.
2621 * libgnat/s-ststop.ads: Update comments.
2622 * doc/gnat_rm/implementation_advice.rst: Update doc on XDR
2624 * gnat_rm.texi: Regenerate.
2626 gcc/ada/Makefile.rtl | 1 +
2627 gcc/ada/bindgen.adb | 29 +-
2628 gcc/ada/bindusg.adb | 5 +
2629 gcc/ada/doc/gnat_rm/implementation_advice.rst | 35 +--
2630 gcc/ada/gnat_rm.texi | 36 +--
2631 gcc/ada/gnatbind.adb | 5 +
2632 gcc/ada/init.c | 1 +
2633 .../{s-stratt__xdr.adb => s-statxd.adb} | 63 ++--
2634 gcc/ada/libgnat/s-statxd.ads | 117 +++++++
2635 gcc/ada/libgnat/s-stratt.adb | 286 +++++++++++++++---
2636 gcc/ada/libgnat/s-stratt.ads | 7 +-
2637 gcc/ada/libgnat/s-ststop.ads | 4 +-
2638 gcc/ada/opt.ads | 6 +-
2639 13 files changed, 428 insertions(+), 167 deletions(-)
2640 rename gcc/ada/libgnat/{s-stratt__xdr.adb => s-statxd.adb} (96%)
2641 create mode 100644 gcc/ada/libgnat/s-statxd.ads
2643 diff --git a/gcc/ada/Makefile.rtl b/gcc/ada/Makefile.rtl
2644 index b340a9ef919..15e4f68ccdb 100644
2645 --- a/gcc/ada/Makefile.rtl
2646 +++ b/gcc/ada/Makefile.rtl
2650 diff --git a/gcc/ada/bindgen.adb b/gcc/ada/bindgen.adb
2651 index 99ad3009d13..91b4cb38486 100644
2652 --- a/gcc/ada/bindgen.adb
2653 +++ b/gcc/ada/bindgen.adb
2657 diff --git a/gcc/ada/bindusg.adb b/gcc/ada/bindusg.adb
2658 index 45215d2ebea..6fd55ee8721 100644
2659 --- a/gcc/ada/bindusg.adb
2660 +++ b/gcc/ada/bindusg.adb
2664 diff --git a/gcc/ada/doc/gnat_rm/implementation_advice.rst b/gcc/ada/doc/gnat_rm/implementation_advice.rst
2665 index 31376d92461..998d0c597df 100644
2666 --- a/gcc/ada/doc/gnat_rm/implementation_advice.rst
2667 +++ b/gcc/ada/doc/gnat_rm/implementation_advice.rst
2671 diff --git a/gcc/ada/gnat_rm.texi b/gcc/ada/gnat_rm.texi
2672 index c174073d508..d72f905a2df 100644
2673 --- a/gcc/ada/gnat_rm.texi
2674 +++ b/gcc/ada/gnat_rm.texi
2678 diff --git a/gcc/ada/gnatbind.adb b/gcc/ada/gnatbind.adb
2679 index 4907082a42c..4372152b439 100644
2680 --- a/gcc/ada/gnatbind.adb
2681 +++ b/gcc/ada/gnatbind.adb
2685 diff --git a/gcc/ada/init.c b/gcc/ada/init.c
2686 index f9f627ebcff..e76aa79c5a8 100644
2687 --- a/gcc/ada/init.c
2688 +++ b/gcc/ada/init.c
2692 diff --git a/gcc/ada/libgnat/s-stratt__xdr.adb b/gcc/ada/libgnat/s-statxd.adb
2693 similarity index 96%
2694 rename from gcc/ada/libgnat/s-stratt__xdr.adb
2695 rename to gcc/ada/libgnat/s-statxd.adb
2696 index 7e32fcf9b91..fcefae7e6f2 100644
2697 --- a/gcc/ada/libgnat/s-stratt__xdr.adb
2698 +++ b/gcc/ada/libgnat/s-statxd.adb
2702 diff --git a/gcc/ada/libgnat/s-statxd.ads b/gcc/ada/libgnat/s-statxd.ads
2703 new file mode 100644
2704 index 00000000000..cca5e5471bd
2706 +++ b/gcc/ada/libgnat/s-statxd.ads
2710 diff --git a/gcc/ada/libgnat/s-stratt.adb b/gcc/ada/libgnat/s-stratt.adb
2711 index 64f3f040081..366dabdc7b6 100644
2712 --- a/gcc/ada/libgnat/s-stratt.adb
2713 +++ b/gcc/ada/libgnat/s-stratt.adb
2717 diff --git a/gcc/ada/libgnat/s-stratt.ads b/gcc/ada/libgnat/s-stratt.ads
2718 index 73369490146..c8c453aad2a 100644
2719 --- a/gcc/ada/libgnat/s-stratt.ads
2720 +++ b/gcc/ada/libgnat/s-stratt.ads
2724 diff --git a/gcc/ada/libgnat/s-ststop.ads b/gcc/ada/libgnat/s-ststop.ads
2725 index d0da0609d9d..321460b89d8 100644
2726 --- a/gcc/ada/libgnat/s-ststop.ads
2727 +++ b/gcc/ada/libgnat/s-ststop.ads
2731 diff --git a/gcc/ada/opt.ads b/gcc/ada/opt.ads
2732 index 9e0263b431d..37f3d030e3f 100644
2733 --- a/gcc/ada/opt.ads
2734 +++ b/gcc/ada/opt.ads
2740 === 0001-Fortran-type-is-real-kind-1.patch ===
2741 From 3ea6977d0f1813d982743a09660eec1760e981ec Mon Sep 17 00:00:00 2001
2742 From: Mark Eggleston <markeggleston@gcc.gnu.org>
2743 Date: Wed, 1 Apr 2020 09:52:41 +0100
2744 Subject: [PATCH] Fortran : "type is( real(kind(1.)) )" spurious syntax error
2747 Based on a patch in the comments of the PR. That patch fixed this
2748 problem but caused the test cases for PR93484 to fail. It has been
2749 changed to reduce initialisation expressions if the expression is
2750 not EXPR_VARIABLE and not EXPR_CONSTANT.
2752 2020-05-28 Steven G. Kargl <kargl@gcc.gnu.org>
2753 Mark Eggleston <markeggleston@gcc.gnu.org>
2758 * match.c (gfc_match_type_spec): New variable ok initialised
2759 to true. Set ok with the return value of gfc_reduce_init_expr
2760 called only if the expression is not EXPR_CONSTANT and is not
2761 EXPR_VARIABLE. Add !ok to the check for type not being integer
2762 or the rank being greater than zero.
2764 2020-05-28 Mark Eggleston <markeggleston@gcc.gnu.org>
2769 * gfortran.dg/pr94397.F90: New test.
2771 gcc/fortran/match.c | 5 ++++-
2772 gcc/testsuite/gfortran.dg/pr94397.F90 | 26 ++++++++++++++++++++++++++
2773 2 files changed, 30 insertions(+), 1 deletion(-)
2774 create mode 100644 gcc/testsuite/gfortran.dg/pr94397.F90
2776 diff --git a/gcc/fortran/match.c b/gcc/fortran/match.c
2777 index 8ae34a94a95..82d2b5087e5 100644
2778 --- a/gcc/fortran/match.c
2779 +++ b/gcc/fortran/match.c
2783 diff --git a/gcc/testsuite/gfortran.dg/pr94397.F90 b/gcc/testsuite/gfortran.dg/pr94397.F90
2784 new file mode 100644
2785 index 00000000000..fda10c1a88b
2787 +++ b/gcc/testsuite/gfortran.dg/pr94397.F90
2793 === 0001-Missing-change-description.patch ===
2794 From 8ec655bd94615ba45adabae9b50df299edb74eda Mon Sep 17 00:00:00 2001
2795 From: Martin Liska <mliska@suse.cz>
2796 Date: Fri, 29 May 2020 13:42:57 +0200
2797 Subject: [PATCH] Test me.
2801 * ipa-icf-gimple.c (compare_gimple_asm):
2802 * ipa-icf-gimple2.c (compare_gimple_asm): Good.
2803 * ipa-icf-gimple3.c (compare_gimple_asm):
2805 contrib/gcc-changelog/git_commit.py | 10 ++++++++++
2806 gcc/ipa-icf-gimple.c | 1 +
2807 2 files changed, 11 insertions(+)
2809 diff --git a/gcc/ipa-icf-gimple.c b/gcc/ipa-icf-gimple.c
2810 index 1cd5872c03d..6f95aedb3d3 100644
2811 --- a/gcc/ipa-icf-gimple.c
2812 +++ b/gcc/ipa-icf-gimple.c
2816 } // ipa_icf_gimple namespace
2821 === 0001-Fix-text-of-hyperlink-in-manual.patch ===
2822 From c7904d9e08a0ca3f733be3c2e8a3b912fa851fc5 Mon Sep 17 00:00:00 2001
2823 From: Jonathan Wakely <jwakely@redhat.com>
2824 Date: Fri, 8 Mar 2019 13:56:53 +0000
2825 Subject: [PATCH] Fix text of hyperlink in manual
2827 * doc/xml/manual/using.xml: Use link element instead of xref.
2828 * doc/html/*: Regenerate.
2831 libstdc++-v3/ChangeLog | 3 +++
2832 libstdc++-v3/doc/html/manual/using_macros.html | 3 ++-
2833 libstdc++-v3/doc/xml/manual/using.xml | 4 ++--
2834 3 files changed, 7 insertions(+), 3 deletions(-)
2836 diff --git a/libstdc++-v3/doc/html/manual/using_macros.html b/libstdc++-v3/doc/html/manual/using_macros.html
2837 index 7030bd2d0fd..dad6564a97d 100644
2838 --- a/libstdc++-v3/doc/html/manual/using_macros.html
2839 +++ b/libstdc++-v3/doc/html/manual/using_macros.html
2843 diff --git a/libstdc++-v3/doc/xml/manual/using.xml b/libstdc++-v3/doc/xml/manual/using.xml
2844 index 2d44a739406..7647e9b8dad 100644
2845 --- a/libstdc++-v3/doc/xml/manual/using.xml
2846 +++ b/libstdc++-v3/doc/xml/manual/using.xml
2853 === 0002-libstdc-Fake-test-change-1.patch ===
2854 From fe4ade6778d1d97214db12bf2c40d0f40e7f953a Mon Sep 17 00:00:00 2001
2855 From: Jonathan Wakely <jwakely@redhat.com>
2856 Date: Tue, 2 Jun 2020 11:52:34 +0100
2857 Subject: [PATCH] libstdc++: Fake change for testing git_commit.py
2859 libstdc++-v3/ChangeLog:
2861 * doc/xml/faq.xml: Fake change.
2862 * doc/html/*: Regenerated.
2864 libstdc++-v3/doc/xml/faq.xml | 1 +
2865 1 file changed, 1 insertion(+)
2867 diff --git a/libstdc++-v3/doc/xml/faq.xml b/libstdc++-v3/doc/xml/faq.xml
2868 index e419d3c22a0..bcc14dd6d90 100644
2869 --- a/libstdc++-v3/doc/xml/faq.xml
2870 +++ b/libstdc++-v3/doc/xml/faq.xml
2877 === 0003-libstdc-Fake-test-change-2.patch ===
2878 From e460effb3a42c1c046b682fe266da418f2693ef3 Mon Sep 17 00:00:00 2001
2879 From: Jonathan Wakely <jwakely@redhat.com>
2880 Date: Tue, 2 Jun 2020 11:52:34 +0100
2881 Subject: [PATCH] libstdc++: Fake change for testing 2
2883 libstdc++-v3/ChangeLog:
2885 * doc/xml/faq.xml: Fake change.
2887 libstdc++-v3/doc/html/faq.html | 2 +-
2888 libstdc++-v3/doc/xml/faq.xml | 1 +
2889 2 files changed, 2 insertions(+), 1 deletion(-)
2891 diff --git a/libstdc++-v3/doc/html/faq.html b/libstdc++-v3/doc/html/faq.html
2892 index 967e5f5f348..95d21b5bf9f 100644
2893 --- a/libstdc++-v3/doc/html/faq.html
2894 +++ b/libstdc++-v3/doc/html/faq.html
2898 --- a/libstdc++-v3/doc/xml/faq.xml
2899 +++ b/libstdc++-v3/doc/xml/faq.xml
2905 === 0001-configure.patch ===
2906 From dbe341cf6a77bb28c5fdf8b32dcb0ff1c2a27348 Mon Sep 17 00:00:00 2001
2907 From: Martin Liska <mliska@suse.cz>
2908 Date: Tue, 9 Jun 2020 09:39:36 +0200
2909 Subject: [PATCH] c++: Fix --disable-bootstrap with older g++.
2911 Previously I had AX_CXX_COMPILE_STDCXX in the gcc directory configure, which
2912 added -std=c++11 to CXX if needed, but then CXX is overridden from the
2913 toplevel directory, so it didn't have the desired effect. Fixed by moving
2914 the check to the toplevel. Currently it is only used when building GCC
2915 without bootstrapping; other packages that share the toplevel directory
2916 can adjust the condition if they also want to require C++11 support.
2920 * configure.ac: Check AX_CXX_COMPILE_STDCXX if not bootstrapping.
2921 * configure: Regenerate.
2925 * aclocal.m4: Remove ax_cxx_compile_stdcxx.m4.
2926 * configure.ac: Remove AX_CXX_COMPILE_STDCXX.
2927 * configure: Regenerate.
2930 configure | 999 ++++++++++++++++++++++++++++++++++++++++++++++-
2932 gcc/aclocal.m4 | 1 -
2933 gcc/configure | 997 +---------------------------------------------
2934 gcc/configure.ac | 2 -
2935 5 files changed, 1004 insertions(+), 1001 deletions(-)
2937 diff --git a/configure b/configure
2938 index b7897446c70..a0c5aca9e8d 100755
2944 diff --git a/configure.ac b/configure.ac
2945 index 59bd92a3e53..1a53ed418e4 100644
2951 diff --git a/gcc/aclocal.m4 b/gcc/aclocal.m4
2952 index e93c1535063..1737d59d1cb 100644
2953 --- a/gcc/aclocal.m4
2954 +++ b/gcc/aclocal.m4
2958 diff --git a/gcc/configure b/gcc/configure
2959 index 46850710424..629c7c7e153 100755
2965 diff --git a/gcc/configure.ac b/gcc/configure.ac
2966 index 60d83c30771..9e7efd13ecc 100644
2967 --- a/gcc/configure.ac
2968 +++ b/gcc/configure.ac
2975 === 0001-asan-fix-RTX-emission.patch ===
2976 From e1d68582022cfa2b1dc76646724b397ba2739439 Mon Sep 17 00:00:00 2001
2977 From: Martin Liska <mliska@suse.cz>
2978 Date: Thu, 11 Jun 2020 09:34:41 +0200
2979 Subject: [PATCH] asan: fix RTX emission for ilp32
2984 * asan.c (asan_emit_stack_protection): Fix emission for ilp32
2985 by using Pmode instead of ptr_mode.
2987 Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
2988 (cherry picked from commit 8cff672cb9a132d3d3158c2edfc9a64b55292b80 (only part))
2991 1 file changed, 1 insertion(+)
2993 diff --git a/gcc/asan.c b/gcc/asan.c
2994 index 823eb539993..4ec22162c12 100644
3003 === double-cherry-pick.patch ===
3004 From e1d68582022cfa2b1dc76646724b397ba2739439 Mon Sep 17 00:00:00 2001
3005 From: Martin Liska <mliska@suse.cz>
3006 Date: Thu, 11 Jun 2020 09:34:41 +0200
3007 Subject: [PATCH] asan: fix RTX emission for ilp32
3012 * asan.c (asan_emit_stack_protection): Fix emission for ilp32
3013 by using Pmode instead of ptr_mode.
3015 Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
3016 (cherry picked from commit 8cff672cb9a132d3d3158c2edfc9a64b55292b80)
3017 (cherry picked from commit 8cff672cb9a132d3d3158c2edfc9a64b55292b80)
3020 1 file changed, 1 insertion(+)
3022 diff --git a/gcc/asan.c b/gcc/asan.c
3023 index 823eb539993..4ec22162c12 100644
3032 === 0001-Check-for-more-missing-math-decls-on-vxworks.patch ===
3033 From 0edfc1fd22405ee8e946101e44cd8edc0ee12047 Mon Sep 17 00:00:00 2001
3034 From: Douglas B Rupp <douglas.b.rupp@gmail.com>
3035 Date: Sun, 31 May 2020 13:25:28 -0700
3036 Subject: [PATCH] Check for more missing math decls on vxworks.
3038 Use the GLIBCXX_CHECK_MATH_DECL macro to check for the full list of
3041 for libstdc++-v3/ChangeLog:
3043 * crossconfig.m4 <*-vxworks>: Check for more math decls.
3044 * configure [FAKEPATCH]: Rebuild.
3046 libstdc++-v3/configure | 255 ++++++++++++++++++++++++++++++++++++++++++++
3047 libstdc++-v3/crossconfig.m4 | 3 +-
3048 2 files changed, 257 insertions(+), 1 deletion(-)
3050 diff --git a/libstdc++-v3/configure b/libstdc++-v3/configure
3051 index b5beb45..4ef678e 100755
3052 --- a/libstdc++-v3/configure
3053 +++ b/libstdc++-v3/configure
3057 diff --git a/libstdc++-v3/crossconfig.m4 b/libstdc++-v3/crossconfig.m4
3058 index fe18288..313f84d 100644
3059 --- a/libstdc++-v3/crossconfig.m4
3060 +++ b/libstdc++-v3/crossconfig.m4
3065 === 0001-tree-optimization-97633-fix-SLP-scheduling-of-single.patch ===
3066 From c0bfd9672e19caf08e45afeb4277f848488ced2b Mon Sep 17 00:00:00 2001
3067 From: Richard Biener <rguenther@suse.de>
3068 Date: Fri, 30 Oct 2020 09:57:02 +0100
3069 Subject: [PATCH] tree-optimization/97633 - fix SLP scheduling of single-node
3072 This makes sure to update backedges in single-node cycles.
3074 2020-10-30 Richard Biener <rguenther@suse.de>
3076 PR tree-optimization/97633
3077 * tree-vect-slp.c (): Update backedges in single-node cycles.
3078 Optimize processing of externals.
3080 * g++.dg/vect/slp-pr97636.cc: New testcase.
3081 * gcc.dg/vect/bb-slp-pr97633.c: Likewise.
3083 gcc/testsuite/g++.dg/vect/slp-pr97636.cc | 83 +++++++++++
3084 gcc/testsuite/gcc.dg/vect/bb-slp-pr97633.c | 27 ++++
3085 gcc/tree-vect-slp.c | 162 +++++++++++----------
3086 3 files changed, 198 insertions(+), 74 deletions(-)
3087 create mode 100644 gcc/testsuite/g++.dg/vect/slp-pr97636.cc
3088 create mode 100644 gcc/testsuite/gcc.dg/vect/bb-slp-pr97633.c
3090 diff --git a/gcc/testsuite/g++.dg/vect/slp-pr97636.cc b/gcc/testsuite/g++.dg/vect/slp-pr97636.cc
3091 new file mode 100644
3092 index 00000000000..012342004f1
3094 +++ b/gcc/testsuite/g++.dg/vect/slp-pr97636.cc
3097 diff --git a/gcc/tree-vect-slp.c b/gcc/tree-vect-slp.c
3098 index 5d69a98c2a9..714e50697bd 100644
3099 --- a/gcc/tree-vect-slp.c
3100 +++ b/gcc/tree-vect-slp.c
3107 === 0001-c-Set-CALL_FROM_NEW_OR_DELETE_P-on-more-calls.patch ===
3108 From 4f4ced28826ece7b7b76649522ee2a9601a63b90 Mon Sep 17 00:00:00 2001
3109 From: Jason Merrill <jason@redhat.com>
3110 Date: Fri, 2 Oct 2020 09:00:49 +0200
3111 Subject: [PATCH] c++: Set CALL_FROM_NEW_OR_DELETE_P on more calls.
3113 We were failing to set the flag on a delete call in a new expression, in a
3114 deleting destructor, and in a coroutine. Fixed by setting it in the
3115 function that builds the call.
3117 2020-10-02 Jason Merril <jason@redhat.com>
3120 * init.c (build_new_1, build_vec_delete_1, build_delete): Not here.
3125 1 files changed, 0 insertions(+), 1 deletions(-)
3127 diff --git a/gcc/cp/init.c b/gcc/cp/init.c
3128 index e84e985492d..00fff3f7327 100644
3131 @@ -3436,1 +3435,0 @@ build_new_1 (vec<tree, va_gc> **placement, tree type, tree nelts,
3136 === 0001-lto-fix-LTO-debug-sections-copying.patch ===
3137 From 190c04ba36d9c6c3dce41f12012aa97c6d7f22f5 Mon Sep 17 00:00:00 2001
3138 From: Martin Liska <mliska@suse.cz>
3139 Date: Mon, 5 Oct 2020 18:03:08 +0200
3140 Subject: [PATCH] lto: fix LTO debug sections copying.
3142 Content-Type: text/plain; charset=UTF-8
3143 Content-Transfer-Encoding: 8bit
3145 libiberty/ChangeLog:
3148 * simple-object-elf.c (simple_object_elf_copy_lto_debug_sections):
3149 Use sh_link of a .symtab_shndx section.
3151 libiberty/simple-object-elf.c | 1 -
3152 1 file changed, 0 insertions(+), 1 deletions(-)
3154 diff --git a/libiberty/simple-object-elf.c b/libiberty/simple-object-elf.c
3155 index 7c9d492f6a4..37e73348cb7 100644
3156 --- a/libiberty/simple-object-elf.c
3157 +++ b/libiberty/simple-object-elf.c
3158 @@ -1191,1 +1191,0 @@ simple_object_elf_copy_lto_debug_sections (simple_object_read *sobj,
3163 === 0001-Wildcard-subdirs.patch ===
3164 From b798205595426c53eb362065f6ed6c320dcc161d Mon Sep 17 00:00:00 2001
3165 From: Martin Liska <mliska@suse.cz>
3166 Date: Mon, 30 Nov 2020 13:27:51 +0100
3167 Subject: [PATCH] Fix it.
3169 libstdc++-v3/ChangeLog:
3171 * testsuite/28_regex/*: Fix them all.
3172 * testsuite/28_regex_not-existing/*: Fix them all.
3174 contrib/gcc-changelog/git_commit.py | 1 +
3175 libstdc++-v3/testsuite/28_regex/init-list.cc | 1 +
3176 2 files changed, 2 insertions(+)
3178 diff --git a/libstdc++-v3/testsuite/28_regex/init-list.cc b/libstdc++-v3/testsuite/28_regex/init-list.cc
3179 index f51453f019a..d10ecf483f4 100644
3180 --- a/libstdc++-v3/testsuite/28_regex/init-list.cc
3181 +++ b/libstdc++-v3/testsuite/28_regex/init-list.cc
3188 === 0001-Add-horse.patch ===
3189 From 2884248d07e4e2c922e137365253e2e521c425b0 Mon Sep 17 00:00:00 2001
3190 From: Martin Liska <mliska@suse.cz>
3191 Date: Mon, 21 Dec 2020 10:14:46 +0100
3192 Subject: [PATCH] Add horse.
3194 Content-Type: text/plain; charset=UTF-8
3195 Content-Transfer-Encoding: 8bit
3199 * koníček.txt: New file.
3202 1 file changed, 1 insertion(+)
3203 create mode 100644 koníček.txt
3205 diff --git a/koníček.txt b/koníček.txt
3206 new file mode 100644
3207 index 00000000000..56c67f58752
3214 === 0001-Add-horse2.patch ===
3215 From 2884248d07e4e2c922e137365253e2e521c425b0 Mon Sep 17 00:00:00 2001
3216 From: Martin Liska <mliska@suse.cz>
3217 Date: Mon, 21 Dec 2020 10:14:46 +0100
3218 Subject: [PATCH] Add horse.
3220 Content-Type: text/plain; charset=UTF-8
3221 Content-Transfer-Encoding: 8bit
3225 * koníček.txt: New file.
3227 "kon\303\255\304\215ek.txt" | 1 +
3228 1 file changed, 1 insertion(+)
3229 create mode 100644 "kon\303\255\304\215ek.txt"
3231 diff --git "a/kon\303\255\304\215ek.txt" "b/kon\303\255\304\215ek.txt"
3232 new file mode 100644
3233 index 00000000000..56c67f58752
3235 +++ "b/kon\303\255\304\215ek.txt"
3241 === 0001-fix-old-ChangeLog.patch ===
3242 From fd498465b2801203089616be9a0e3c1f4fc065a0 Mon Sep 17 00:00:00 2001
3243 From: Martin Liska <mliska@suse.cz>
3244 Date: Wed, 13 Jan 2021 11:45:37 +0100
3245 Subject: [PATCH] Fix a changelog.
3248 gcc/ChangeLog-2020 | 1 +
3249 1 file changed, 1 insertion(+)
3253 === 0001-Add-macro.patch ===
3254 From 9b7eedc932fe594547fb060b36dfd9e4178c4f9b Mon Sep 17 00:00:00 2001
3255 From: Martin Liska <mliska@suse.cz>
3256 Date: Wed, 13 Jan 2021 16:26:45 +0100
3257 Subject: [PATCH 1/2] Add macro.
3261 * config/i386/i386.md (*fix_trunc<mode>_i387_1, *add<mode>3_eq,
3262 *add<mode>3_ne, *add<mode>3_eq_0, *add<mode>3_ne_0, *add<mode>3_eq,
3263 *fist<mode>2_<rounding>_1, *<code><mode>3_1, *<code>di3_doubleword):
3264 Use ix86_pre_reload_split instead of can_create_pseudo_p in condition.
3265 * config/i386/sse.md
3266 (*fix_trunc<mode>_i387_1, *add<mode>3_eq,
3267 *add<mode>3_ne, *add<mode>3_eq_0, *add<mode>3_ne_0, *add<mode>3_eq,
3268 *fist<mode>2_<rounding>_1): This should also work.
3270 gcc/config/i386/i386.md | 1 +
3271 gcc/config/i386/sse.md | 1 +
3272 2 files changed, 2 insertions(+)
3274 diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md
3275 index b60784a2908..ac63591b33f 100644
3276 --- a/gcc/config/i386/i386.md
3277 +++ b/gcc/config/i386/i386.md
3282 diff --git a/gcc/config/i386/sse.md b/gcc/config/i386/sse.md
3283 index 7f03fc491c3..0e17997db26 100644
3284 --- a/gcc/config/i386/sse.md
3285 +++ b/gcc/config/i386/sse.md
3293 === 0002-Wrong-macro-changelog.patch ===
3294 From 3542802111d4c6752ac7233ef96655b7fb78aae4 Mon Sep 17 00:00:00 2001
3295 From: Martin Liska <mliska@suse.cz>
3296 Date: Wed, 13 Jan 2021 16:54:58 +0100
3297 Subject: [PATCH 2/2] Wrong macro changelog
3301 * config/i386/i386.md (*fix_trunc<mode>_i387_1,
3304 gcc/config/i386/i386.md | 1 +
3305 1 file changed, 1 insertion(+)
3307 diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md
3308 index ac63591b33f..ff4d61764e7 100644
3309 --- a/gcc/config/i386/i386.md
3310 +++ b/gcc/config/i386/i386.md
3317 === 0001-ChangeLog-removal.patch ===
3318 From b39fadf9df1a9510afcab0a391182da7dc68de24 Mon Sep 17 00:00:00 2001
3319 From: Martin Liska <mliska@suse.cz>
3320 Date: Fri, 12 Mar 2021 09:10:55 +0100
3321 Subject: [PATCH] Test ChangeLog removal.
3325 * ipa-icf.c (make_pass_ipa_icf): Add line.
3327 diff --git a/gcc/analyzer/ChangeLog b/gcc/analyzer/ChangeLog
3328 deleted file mode 100644
3329 index 94e87f6bcde..00000000000
3330 --- a/gcc/analyzer/ChangeLog
3334 diff --git a/gcc/ipa-icf.c b/gcc/ipa-icf.c
3335 index 5dd33a75c3a..c4ce432cb98 100644
3338 @@ -3655,3 +3655,4 @@ make_pass_ipa_icf (gcc::context *ctxt)
3340 return new ipa_icf::pass_ipa_icf (ctxt);
3346 === 0001-long-filenames ===
3347 From 0a5b3f87bdac5e61f9a626c795d30f9e93198585 Mon Sep 17 00:00:00 2001
3348 From: Martin Liska <mliska@suse.cz>
3349 Date: Mon, 12 Apr 2021 13:10:14 +0200
3350 Subject: [PATCH] libstdc++: Fix some tests that fail in C++20 mode
3352 The linear_congruential_engine negative tests fail with a different
3353 error in C++20 mode, because double is no longer an invalid type for
3354 NTTP. Adjust the expected errors.
3356 libstdc++-v3/ChangeLog:
3358 * testsuite/26_numerics/random/linear_congruential_engine/requirements/non_uint_neg.cc:
3359 Adjust expected error for C++20 mode.
3360 * testsuite/tr1/5_numerical_facilities/random/linear_congruential/requirements/non_uint_neg.cc:
3363 .../linear_congruential_engine/requirements/non_uint_neg.cc | 4 +++-
3364 .../random/linear_congruential/requirements/non_uint_neg.cc | 3 ++-
3365 2 files changed, 5 insertions(+), 2 deletions(-)
3367 diff --git a/libstdc++-v3/testsuite/26_numerics/random/linear_congruential_engine/requirements/non_uint_neg.cc b/libstdc++-v3/testsuite/26_numerics/random/linear_congruential_engine/requirements/non_uint_neg.cc
3368 index e04e8ca6972..a36d63c6c7b 100644
3369 --- a/libstdc++-v3/testsuite/26_numerics/random/linear_congruential_engine/requirements/non_uint_neg.cc
3370 +++ b/libstdc++-v3/testsuite/26_numerics/random/linear_congruential_engine/requirements/non_uint_neg.cc
3374 diff --git a/libstdc++-v3/testsuite/tr1/5_numerical_facilities/random/linear_congruential/requirements/non_uint_neg.cc b/libstdc++-v3/testsuite/tr1/5_numerical_facilities/random/linear_congruential/requirements/non_uint_neg.cc
3375 index 5ad82db1def..53b15f32516 100644
3376 --- a/libstdc++-v3/testsuite/tr1/5_numerical_facilities/random/linear_congruential/requirements/non_uint_neg.cc
3377 +++ b/libstdc++-v3/testsuite/tr1/5_numerical_facilities/random/linear_congruential/requirements/non_uint_neg.cc
3382 === 0001-OpenMP-Fix-SIMT ===
3383 From 33b647956caa977d1ae489f9baed9cef70b4f382 Mon Sep 17 00:00:00 2001
3384 From: Tobias Burnus <tobias@codesourcery.com>
3385 Date: Fri, 7 May 2021 12:11:51 +0200
3386 Subject: [PATCH] OpenMP: Fix SIMT for complex/float reduction with && and ||
3390 * testsuite/libgomp.c-c++-common/reduction-5.c: New test, testing
3391 complex/floating-point || + && reduction with 'omp target'.
3392 * testsuite/libgomp.c-c++-common/reduction-5.c: Likewise.
3394 diff --git a/libgomp/testsuite/libgomp.c-c++-common/reduction-5.c b/libgomp/testsuite/libgomp.c-c++-common/reduction-5.c
3395 new file mode 100644
3396 index 00000000000..21540512e23
3398 +++ b/libgomp/testsuite/libgomp.c-c++-common/reduction-5.c
3401 diff --git a/libgomp/testsuite/libgomp.c-c++-common/reduction-6.c b/libgomp/testsuite/libgomp.c-c++-common/reduction-6.c
3402 new file mode 100644
3403 index 00000000000..21540512e23
3405 +++ b/libgomp/testsuite/libgomp.c-c++-common/reduction-6.c
3410 === 0001-rs6000-Support-doubleword ===
3411 From f700e4b0ee3ef53b48975cf89be26b9177e3a3f3 Mon Sep 17 00:00:00 2001
3412 From: Xionghu Luo <luoxhu@linux.ibm.com>
3413 Date: Tue, 8 Jun 2021 21:48:12 -0500
3414 Subject: [PATCH] rs6000: Support doubleword swaps removal in rot64 load store
3417 gcc/testsuite/ChangeLog:
3419 * gcc.target/powerpc/pr100085.c: New test.
3421 diff --git a/gcc/testsuite/gcc.target/powerpc/pr100085.c b/gcc/testsuite/gcc.target/powerpc/pr100085.c
3422 new file mode 100644
3423 index 00000000000..7d8b147b127
3425 +++ b/gcc/testsuite/gcc.target/powerpc/pr100085.c
3430 === pr-wrong-comp.patch ===
3431 From 5194b51ed9714808d88827531e91474895b6c706 Mon Sep 17 00:00:00 2001
3432 From: Jason Merrill <jason@redhat.com>
3433 Date: Thu, 16 Jan 2020 16:55:39 -0500
3434 Subject: [PATCH 0121/2034] PR some/93286 - ICE with __is_constructible and
3437 gcc/testsuite/ChangeLog:
3440 * gcc.target/powerpc/pr100085.c: New test.
3442 diff --git a/gcc/testsuite/gcc.target/powerpc/pr100085.c b/gcc/testsuite/gcc.target/powerpc/pr100085.c
3443 new file mode 100644
3444 index 00000000000..7d8b147b127
3446 +++ b/gcc/testsuite/gcc.target/powerpc/pr100085.c
3451 ==== copyright-years.patch ===
3452 From 99dee82307f1e163e150c9c810452979994047ce Mon Sep 17 00:00:00 2001
3453 From: Jakub Jelinek <jakub@redhat.com>
3454 Date: Mon, 4 Jan 2021 10:26:59 +0100
3455 Subject: [PATCH] Update copyright years.
3458 diff --git a/lto-plugin/lto-plugin.c b/lto-plugin/lto-plugin.c
3459 new file mode 100644
3460 index 6f67552d075..32478f070e8 100644
3461 --- a/lto-plugin/lto-plugin.c
3462 +++ b/lto-plugin/lto-plugin.c
3468 === non-ascii-email.patch ===
3469 From f42e95a830ab48e59389065ce79a013a519646f1 Mon Sep 17 00:00:00 2001
3470 From: Jan-Benedict Glaw <jbglaw@ług-owl.de>
3471 Date: Mon, 13 Sep 2021 12:08:25 +0200
3472 Subject: [PATCH] Fix multi-statment macro
3474 INIT_CUMULATIVE_ARGS() expands to multiple statements, which will break right
3475 after an `if` statement. Wrap it into a block.
3479 * config/alpha/vms.h (INIT_CUMULATIVE_ARGS): Wrap multi-statment
3480 define into a block.
3482 gcc/config/alpha/vms.h | 10 +++++++---
3483 1 file changed, 7 insertions(+), 3 deletions(-)
3485 diff --git a/gcc/config/alpha/vms.h b/gcc/config/alpha/vms.h
3486 index 2a9917cde62..0033b0004b3 100644
3487 --- a/gcc/config/alpha/vms.h
3488 +++ b/gcc/config/alpha/vms.h
3493 === toplev-new-file.patch ===
3494 From 05e37b6e65027188f08e6374c7d356d75b54738e Mon Sep 17 00:00:00 2001
3495 From: Martin Liska <mliska@suse.cz>
3496 Date: Mon, 24 Jan 2022 12:46:27 +0100
3497 Subject: [PATCH] New file.
3501 * Makefile.in: Update.
3505 * ipa-icf.cc: Update.
3509 gcc/ipa-icf.cc | 1 +
3510 gcc/ipa-icf2.cc | 1 +
3511 4 files changed, 4 insertions(+)
3512 create mode 100644 Makefile.am
3513 create mode 100644 gcc/ipa-icf2.cc
3515 diff --git a/Makefile.am b/Makefile.am
3516 new file mode 100644
3517 index 00000000000..f0129caae3d
3522 diff --git a/Makefile.in b/Makefile.in
3523 index 79c77fccf0f..7a090030119 100644
3529 # Makefile.in is generated from Makefile.tpl by 'autogen Makefile.def'.
3531 # Makefile for directory with subdirs to build.
3532 diff --git a/gcc/ipa-icf.cc b/gcc/ipa-icf.cc
3533 index 765ae746745..15735b6684f 100644
3534 --- a/gcc/ipa-icf.cc
3535 +++ b/gcc/ipa-icf.cc
3538 /* Interprocedural Identical Code Folding pass
3539 Copyright (C) 2014-2023 Free Software Foundation, Inc.
3541 diff --git a/gcc/ipa-icf2.cc b/gcc/ipa-icf2.cc
3542 new file mode 100644
3543 index 00000000000..c49c556e0e4
3545 +++ b/gcc/ipa-icf2.cc
3551 From 80c9d63af350b280bfccb82adb3867c25a25e6d0 Mon Sep 17 00:00:00 2001
3552 From: Martin Liska <mliska@suse.cz>
3553 Date: Mon, 24 Jan 2022 12:17:09 +0100
3554 Subject: [PATCH] Add Makefile.am file.
3562 1 file changed, 0 insertions(+), 0 deletions(-)
3563 create mode 100644 Makefile.am
3565 diff --git a/Makefile.am b/Makefile.am
3566 new file mode 100644
3567 index 00000000000..d6459e00543
3575 === 0001-Use-Value_Range-when-applying-inferred-ranges.patch ===
3576 From 69a233610f6b27cd4283561569d8ce0f35044dc4 Mon Sep 17 00:00:00 2001
3577 From: Andrew MacLeod <amacleod@redhat.com>
3578 Date: Wed, 19 Oct 2022 09:21:22 -0400
3579 Subject: [PATCH] Use Value_Range when applying inferred ranges.
3581 Applying an inferred range is using int_range_ma as the
3582 temporary rather than the general purpose Value_Range. This causes it
3583 to trap if we have a non-integral inferred range.
3585 * gimple-range-cache.cc (ranger_cache::range_from_dom): Use
3586 Value_Range not int_range_max.
3588 gcc/gimple-range-cache.cc | 2 +-
3589 1 file changed, 1 insertion(+), 1 deletion(-)
3591 diff --git a/gcc/gimple-range-cache.cc b/gcc/gimple-range-cache.cc
3592 index 0b9aa3639c5..f279371948a 100644
3593 --- a/gcc/gimple-range-cache.cc
3594 +++ b/gcc/gimple-range-cache.cc
3595 @@ -1546,7 +1546,6 @@ ranger_cache::range_from_dom (vrange &r, tree name, basic_block start_bb,
3597 ranger_cache::apply_inferred_ranges (gimple *s)
3602 basic_block bb = gimple_bb (s);
3603 @@ -1572,6 +1571,7 @@ ranger_cache::apply_inferred_ranges (gimple *s)
3604 m_exit.add_range (name, bb, infer.range (x));
3607 + Value_Range r (TREE_TYPE (name));
3608 if (!m_on_entry.get_bb_range (r, name, bb))
3609 exit_range (r, name, bb, RFD_READ_ONLY);
3610 if (r.intersect (infer.range (x)))
3614 === 0001-Add-M-character.patch ====
3615 From 71ab4c18f279dc0fa0172ffe8cfac5fabcde953d Mon Sep 17 00:00:00 2001
3616 From: Martin Liska <mliska@suse.cz>
3617 Date: Fri, 9 Dec 2022 11:55:21 +0100
3618 Subject: [PATCH] Add ^M character
3622 1 file changed, 5 insertions(+)
3623 create mode 100644 demo.txt
3625 diff --git a/demo.txt b/demo.txt
3626 new file mode 100644
3627 index 0000000..d75da75
3633 +// { dg-error "Isolated CR" "" { target *-*-* } .+1 }
3634 + //! doc cr
\r comment
3639 === 0001-Auto-Add-File.patch ====
3640 From e205ec03f0794aeac3e8a89e947c12624d5a274e Mon Sep 17 00:00:00 2001
3641 From: Tobias Burnus <tobias@codesourcery.com>
3642 Date: Thu, 15 Dec 2022 12:25:07 +0100
3643 Subject: [PATCH] libgfortran's ISO_Fortran_binding.c: Use GCC11 version for
3644 backward-only code [PR108056]
3646 libgfortran/ChangeLog:
3648 PR libfortran/108056
3649 * runtime/ISO_Fortran_binding.c (cfi_desc_to_gfc_desc,
3650 gfc_desc_to_cfi_desc): Mostly revert to GCC 11 version for
3651 those backward-compatiblity-only functions.
3653 libgfortran/runtime/ISO_Fortran_binding.c | 151 +++---------------
3654 .../testsuite/libgomp.fortran/allocate-4.f90 | 42 +++++
3655 2 files changed, 64 insertions(+), 129 deletions(-)
3656 create mode 100644 libgomp/testsuite/libgomp.fortran/allocate-4.f90
3658 diff --git a/libgfortran/runtime/ISO_Fortran_binding.c b/libgfortran/runtime/ISO_Fortran_binding.c
3659 index 342df4275b9..e63a717a69b 100644
3660 --- a/libgfortran/runtime/ISO_Fortran_binding.c
3661 +++ b/libgfortran/runtime/ISO_Fortran_binding.c
3662 @@ -41,1 +41,1 @@ export_proto(cfi_desc_to_gfc_desc);
3665 diff --git a/libgomp/testsuite/libgomp.fortran/allocate-4.f90 b/libgomp/testsuite/libgomp.fortran/allocate-4.f90
3666 new file mode 100644
3667 index 00000000000..ddb507ba8e4
3669 +++ b/libgomp/testsuite/libgomp.fortran/allocate-4.f90
3675 === 0002-Auto-Add-File.patch ====
3676 From 1eee94d351774cdc2efc8ee508b82d065184c6ee Mon Sep 17 00:00:00 2001
3677 From: Gaius Mulley <gaiusmod2@gmail.com>
3678 Date: Wed, 14 Dec 2022 17:43:08 +0000
3679 Subject: [PATCH 363/400] Merge modula-2 front end onto gcc.
3681 This commit merges the devel/modula2 into master.
3682 The libraries reside in libgm2, the compiler in gcc/m2
3683 and the testsuite in gcc/testsuite/gm2.
3687 * configure.ac (HAVE_PYTHON): Test for Python3 added.
3688 * doc/install.texi: Add m2 as a language. (--disable-libgm2)
3690 Signed-off-by: Gaius Mulley <gaiusmod2@gmail.com>
3692 gcc/configure.ac | 15 +-
3693 gcc/doc/gm2.texi | 2838 ++
3694 gcc/doc/install.texi | 53 +-
3695 gcc/m2/COPYING.FDL | 397 +
3696 gcc/m2/COPYING.RUNTIME | 73 +
3697 diff --git a/gcc/configure.ac b/gcc/configure.ac
3698 index 7ca08726efa..5efbf11793c 100644
3699 --- a/gcc/configure.ac
3700 +++ b/gcc/configure.ac
3701 @@ -7651,3 +7665,2 @@ done
3702 [subdirs='$subdirs'])
3705 diff --git a/gcc/doc/gm2.texi b/gcc/doc/gm2.texi
3706 new file mode 100644
3707 index 00000000000..513fdd3ec7f
3709 +++ b/gcc/doc/gm2.texi
3712 diff --git a/gcc/doc/install.texi b/gcc/doc/install.texi
3713 index 89ff6a6734b..6884a74936b 100644
3714 --- a/gcc/doc/install.texi
3715 +++ b/gcc/doc/install.texi
3716 @@ -308,1 +308,2 @@ On some targets, @samp{libphobos} isn't enabled by default, but compiles
3718 +@item @anchor{GM2-prerequisite}GM2
3719 diff --git a/gcc/m2/COPYING.FDL b/gcc/m2/COPYING.FDL
3720 new file mode 100644
3721 index 00000000000..9854856fa81
3723 +++ b/gcc/m2/COPYING.FDL
3725 + GNU Free Documentation License
3726 diff --git a/gcc/m2/COPYING.RUNTIME b/gcc/m2/COPYING.RUNTIME
3727 new file mode 100644
3728 index 00000000000..649af5e573a
3730 +++ b/gcc/m2/COPYING.RUNTIME
3732 +GCC RUNTIME LIBRARY EXCEPTION
3736 === modula-PR-component.patch ===
3737 From 1052d89a0b9769453561e18da32b1558d059b320 Mon Sep 17 00:00:00 2001
3738 From: Martin Liska <mliska@suse.cz>
3739 Date: Mon, 19 Dec 2022 14:34:18 +0100
3740 Subject: [PATCH] gcc-changelog: allow digit in component name
3746 * gcc-changelog/git_commit.py: Allow digit in component name.
3748 contrib/gcc-changelog/git_commit.py | 2 +-
3749 1 file changed, 1 insertion(+), 1 deletion(-)
3751 diff --git a/contrib/gcc-changelog/git_commit.py b/contrib/gcc-changelog/git_commit.py
3752 index e82fbcacd3e..7fde02cba85 100755
3753 --- a/contrib/gcc-changelog/git_commit.py
3754 +++ b/contrib/gcc-changelog/git_commit.py
3756 + GNU Free Documentation License