]> gcc.gnu.org Git - gcc.git/blob - gcc/ChangeLog
f267a27b05753d1fc5e6d99c766eff5e8b6fb2b0
[gcc.git] / gcc / ChangeLog
1 2022-08-19 Release Manager
2
3 * GCC 12.2.0 released.
4
5 2022-08-17 Ilya Leoshkevich <iii@linux.ibm.com>
6
7 Backported from master:
8 2022-08-04 Ilya Leoshkevich <iii@linux.ibm.com>
9
10 * config/s390/vector.md (V_HW_FT): New iterator.
11 * config/s390/vx-builtins.md (vsel<mode>): Use V_HW_FT instead
12 of V_HW.
13
14 2022-08-12 Peter Bergner <bergner@linux.ibm.com>
15
16 Backported from master:
17 2022-07-26 Peter Bergner <bergner@linux.ibm.com>
18
19 PR c/106016
20 * expr.cc (count_type_elements): Handle OPAQUE_TYPE.
21
22 2022-08-11 Andre Simoes Dias Vieira <andre.simoesdiasvieira@arm.com>
23
24 Backported from master:
25 2022-07-25 Andre Vieira <andre.simoesdiasvieira@arm.com>
26
27 * config/aarch64/aarch64.md (rbit<mode>2): Rename this ...
28 (@aarch64_rbit<mode>): ... to this and change it in...
29 (ffs<mode>2,ctz<mode>2): ... here.
30 (@aarch64_rev16<mode>): New.
31 * config/aarch64/aarch64-builtins.cc: (aarch64_builtins):
32 Define the following enum AARCH64_REV16, AARCH64_REV16L,
33 AARCH64_REV16LL, AARCH64_RBIT, AARCH64_RBITL, AARCH64_RBITLL.
34 (aarch64_init_data_intrinsics): New.
35 (aarch64_general_init_builtins): Add call to
36 aarch64_init_data_intrinsics.
37 (aarch64_expand_builtin_data_intrinsic): New.
38 (aarch64_general_expand_builtin): Add call to
39 aarch64_expand_builtin_data_intrinsic.
40 * config/aarch64/arm_acle.h (__clz, __clzl, __clzll, __cls, __clsl,
41 __clsll, __rbit, __rbitl, __rbitll, __rev, __revl, __revll, __rev16,
42 __rev16l, __rev16ll, __ror, __rorl, __rorll, __revsh): New.
43
44 2022-08-10 Tobias Burnus <tobias@codesourcery.com>
45
46 Backported from master:
47 2022-08-09 Tobias Burnus <tobias@codesourcery.com>
48
49 PR middle-end/106492
50 * omp-low.cc (lower_rec_input_clauses): Add missing folding
51 to data type of linear-clause list item.
52
53 2022-08-10 Richard Biener <rguenther@suse.de>
54
55 Backported from master:
56 2022-08-10 Richard Biener <rguenther@suse.de>
57
58 PR tree-optimization/106513
59 * gimple-ssa-store-merging.cc (do_shift_rotate): Use uint64_t
60 for head_marker.
61
62 2022-08-10 Richard Biener <rguenther@suse.de>
63
64 Backported from master:
65 2022-08-08 Richard Biener <rguenther@suse.de>
66
67 PR lto/106540
68 PR lto/106334
69 * lto-streamer-in.cc (lto_read_tree_1): Use lto_input_tree_1
70 to input DECL_INITIAL, avoiding to commit drefs.
71
72 2022-08-05 Michael Meissner <meissner@linux.ibm.com>
73
74 * config/rs6000/rs6000.cc (rs6000_option_override_internal): Remove code
75 setting -mblock-ops-vector-pair. Back port patch from trunk on 8/3.
76
77 2022-08-02 Peter Bergner <bergner@linux.ibm.com>
78
79 Backported from master:
80 2022-07-25 Peter Bergner <bergner@linux.ibm.com>
81 Kewen Lin <linkw@linux.ibm.com>
82
83 PR testsuite/106345
84 * config/rs6000/rs6000.h (DRIVER_SELF_SPECS): Adjust -mdejagnu-cpu
85 to filter out all -mtune options.
86
87 2022-08-02 Kewen Lin <linkw@linux.ibm.com>
88
89 Backported from master:
90 2022-07-26 Kewen Lin <linkw@linux.ibm.com>
91
92 PR target/106091
93 * config/rs6000/rs6000-p8swap.cc (replace_swapped_aligned_store): Copy
94 REG_EH_REGION when replacing one store insn having it.
95 (replace_swapped_aligned_load): Likewise.
96
97 2022-07-30 Jakub Jelinek <jakub@redhat.com>
98
99 Backported from master:
100 2022-07-29 Jakub Jelinek <jakub@redhat.com>
101
102 PR middle-end/106449
103 * omp-expand.cc (expand_omp_simd): Fix up handling of pointer
104 iterators in non-rectangular simd loops. Unshare fd->loops[i].n2
105 or n2 before regimplifying it inside of a condition.
106
107 2022-07-30 Jakub Jelinek <jakub@redhat.com>
108
109 Backported from master:
110 2022-07-27 Jakub Jelinek <jakub@redhat.com>
111
112 PR debug/106261
113 * cgraphunit.cc (cgraph_node::assemble_thunks_and_aliases): Don't
114 output asm thunks for -dx.
115
116 2022-07-30 Jakub Jelinek <jakub@redhat.com>
117
118 Backported from master:
119 2022-07-01 Jakub Jelinek <jakub@redhat.com>
120
121 PR middle-end/106144
122 * wide-int.cc (wi::shifted_mask): If end >= prec, return right after
123 emitting element for shift or if shift is 0 first element after start.
124 (wide_int_cc_tests): Add tests for equivalency of wi::mask and
125 wi::shifted_mask with 0 start.
126
127 2022-07-27 David Malcolm <dmalcolm@redhat.com>
128
129 * json.cc (string::print): Fix escaping of '\'.
130
131 2022-07-27 David Malcolm <dmalcolm@redhat.com>
132
133 * doc/invoke.texi (-fdump-analyzer-feasibility): Mention the
134 fpath.txt output.
135
136 2022-07-27 Maciej W. Rozycki <macro@embecosm.com>
137
138 Backported from master:
139 2022-07-27 Maciej W. Rozycki <macro@embecosm.com>
140
141 * config/riscv/riscv.md (stack_protect_set_<mode>): Remove
142 duplicate backslashes.
143
144 2022-07-27 Richard Biener <rguenther@suse.de>
145
146 Backported from master:
147 2022-07-26 Richard Biener <rguenther@suse.de>
148
149 PR tree-optimization/106189
150 * gimple-array-bounds.cc (array_bounds_checker::check_mem_ref):
151 Divide using offset_ints.
152
153 2022-07-27 Joseph Myers <joseph@codesourcery.com>
154
155 Backported from master:
156 2022-06-30 Joseph Myers <joseph@codesourcery.com>
157
158 PR lto/106129
159 * lto-wrapper.cc (find_option): Add argument start.
160 (merge_and_complain): Loop over existing_opt_index and
161 existing_opt2_index for Xassembler check. Update calls to
162 find_option.
163 (find_and_merge_options): Add argument first to determine whether
164 to merge options with those passed in *opts.
165 (run_gcc): Update calls to find_and_merge_options.
166
167 2022-07-27 Andrew Pinski <apinski@marvell.com>
168
169 Backported from master:
170 2022-07-09 Andrew Pinski <apinski@marvell.com>
171
172 PR tree-optimization/106087
173 * tree-ssa-dce.cc (simple_dce_from_worklist): Check
174 to make sure the statement is only defining one operand.
175
176 2022-07-27 Tamar Christina <tamar.christina@arm.com>
177
178 Backported from master:
179 2022-07-08 Tamar Christina <tamar.christina@arm.com>
180
181 PR tree-optimization/106063
182 * match.pd: Do not apply pattern after veclower is not supported.
183
184 2022-07-27 Alexandre Oliva <oliva@adacore.com>
185
186 Backported from master:
187 2022-06-03 Alexandre Oliva <oliva@adacore.com>
188
189 PR tree-optimization/105665
190 PR tree-optimization/100810
191 * tree-ssa-loop-ivopts.cc
192 (ssa_name_maybe_undef_p, ssa_name_set_maybe_undef): New.
193 (ssa_name_any_use_dominates_bb_p, mark_ssa_maybe_undefs): New.
194 (find_ssa_undef): Check precomputed flag and intervening uses.
195 (tree_ssa_iv_optimize): Call mark_ssa_maybe_undefs.
196
197 2022-07-25 Sebastian Huber <sebastian.huber@embedded-brains.de>
198
199 Backported from master:
200 2022-07-25 Sebastian Huber <sebastian.huber@embedded-brains.de>
201
202 * config/rs6000/rtems.h (CPLUSPLUS_CPP_SPEC): Undef.
203
204 2022-07-19 Richard Biener <rguenther@suse.de>
205
206 Backported from master:
207 2022-07-19 Richard Biener <rguenther@suse.de>
208
209 PR middle-end/106331
210 * builtins.cc (get_memory_rtx): Compute alignment from
211 the original address and set MEM_OFFSET to unknown when
212 we create a MEM_EXPR from the base object of the address.
213
214 2022-07-19 Richard Biener <rguenther@suse.de>
215
216 Backported from master:
217 2022-07-01 Richard Biener <rguenther@suse.de>
218
219 PR tree-optimization/106131
220 * tree-ssa-sccvn.cc (vn_reference_lookup_3): Force alias-set
221 zero when offsetting the read looking through an aggregate
222 copy.
223
224 2022-07-19 Richard Biener <rguenther@suse.de>
225
226 Backported from master:
227 2022-06-29 Richard Biener <rguenther@suse.de>
228
229 PR tree-optimization/106112
230 * tree-ssa-sccvn.cc (valueized_wider_op): Properly extend
231 a constant operand according to its type.
232
233 2022-07-19 Richard Biener <rguenther@suse.de>
234
235 Backported from master:
236 2022-06-20 Richard Biener <rguenther@suse.de>
237
238 PR middle-end/106027
239 * fold-const.cc (fold_to_nonsharp_ineq_using_bound): Use the
240 type of the prevailing comparison for the new comparison type.
241 (fold_binary_loc): Use proper types for the A < X && A + 1 > Y
242 to A < X && A >= Y folding.
243
244 2022-07-19 Richard Biener <rguenther@suse.de>
245
246 Backported from master:
247 2022-06-15 Richard Biener <rguenther@suse.de>
248
249 PR tree-optimization/105971
250 * tree-ssa-alias.cc (refs_may_alias_p_2): Put bail-out for
251 FUNCTION_DECL and LABEL_DECL refs after decl-decl disambiguation
252 to leak less surprising alias results.
253
254 2022-07-19 Richard Biener <rguenther@suse.de>
255
256 Backported from master:
257 2022-06-15 Richard Biener <rguenther@suse.de>
258
259 PR tree-optimization/105969
260 * gimple-ssa-sprintf.cc (get_origin_and_offset_r): Avoid division
261 by zero in overflow check.
262
263 2022-07-19 Richard Biener <rguenther@suse.de>
264
265 Backported from master:
266 2022-06-14 Richard Biener <rguenther@suse.de>
267
268 PR middle-end/105965
269 * match.pd (view_convert CONSTRUCTOR): Handle single-element
270 CTOR case.
271
272 2022-07-19 Richard Biener <rguenther@suse.de>
273
274 Backported from master:
275 2022-06-14 Richard Biener <rguenther@suse.de>
276
277 PR tree-optimization/105946
278 * tree-ssa-uninit.cc (maybe_warn_pass_by_reference):
279 Do not look at arguments not specified in the function call.
280
281 2022-07-19 Richard Biener <rguenther@suse.de>
282
283 Backported from master:
284 2022-07-11 Richard Biener <rguenthert@suse.de>
285
286 PR target/105459
287 * config/i386/i386-options.cc (ix86_set_current_function):
288 Rebuild the target optimization node whenever necessary,
289 not only when the optimization node didn't change.
290
291 2022-07-14 Michael Meissner <meissner@linux.ibm.com>
292
293 * config/rs6000/rs6000.cc (rs6000_option_override_internal): Do
294 not generate block copies with vector pair instructions if we are
295 tuning for power10. Back port from master branch.
296
297 2022-07-14 Surya Kumari Jangala <jskumari@linux.vnet.ibm.com>
298
299 Backported from master:
300 2022-06-14 Surya Kumari Jangala <jskumari@linux.ibm.com>
301
302 PR rtl-optimization/105041
303 * regrename.cc (check_new_reg_p): Use nregs value from du chain.
304
305 2022-07-11 Martin Jambor <mjambor@suse.cz>
306
307 Backported from master:
308 2022-07-04 Martin Jambor <mjambor@suse.cz>
309
310 PR tree-optimization/105860
311 * tree-sra.cc (build_reconstructed_reference): Start expr
312 traversal only just below the outermost union.
313
314 2022-07-10 Xi Ruoyao <xry111@xry111.site>
315
316 Backported from master:
317 2022-07-10 Xi Ruoyao <xry111@xry111.site>
318
319 * config/loongarch/loongarch.md (mulsidi3_64bit): Use mulw.d.w
320 instead of mul.d.
321
322 2022-07-09 Roger Sayle <roger@nextmovesoftware.com>
323 Uroš Bizjak <ubizjak@gmail.com>
324
325 PR target/105930
326 * config/i386/i386.md (*<any_or>di3_doubleword): Split after
327 reload. Use rtx_equal_p to avoid creating memory-to-memory moves,
328 and emit NOTE_INSN_DELETED if operand[2] is zero (i.e. with -O0).
329
330 2022-07-08 Lulu Cheng <chenglulu@loongson.cn>
331
332 Backported from master:
333 2022-07-08 Lulu Cheng <chenglulu@loongson.cn>
334
335 * config/loongarch/loongarch.cc (loongarch_compute_frame_info):
336 Modify fp_sp_offset and gp_sp_offset's calculation method,
337 when frame->mask or frame->fmask is zero, don't minus UNITS_PER_WORD
338 or UNITS_PER_FP_REG.
339
340 2022-07-04 Andrew MacLeod <amacleod@redhat.com>
341
342 PR tree-optimization/106114
343 * gimple-range-fold.cc (fold_using_range::relation_fold_and_or): Check
344 statement operands instead of GORI cache.
345
346 2022-07-04 Roger Sayle <roger@nextmovesoftware.com>
347 Marek Polacek <polacek@redhat.com>
348 Segher Boessenkool <segher@kernel.crashing.org>
349 Kewen Lin <linkw@linux.ibm.com>
350
351 PR target/105991
352 * config/rs6000/rs6000.md (rotl<mode>3_insert_3): Check that
353 exact_log2 doesn't return -1 (or zero).
354 (plus_xor): New code iterator.
355 (*rotl<mode>3_insert_3_<code>): New define_insn_and_split.
356
357 2022-07-04 Xi Ruoyao <xry111@xry111.site>
358
359 Backported from master:
360 2022-07-03 Xi Ruoyao <xry111@xry111.site>
361 Lulu Cheng <chenglulu@loongson.cn>
362
363 * config/loongarch/loongarch.cc (loongarch_check_zero_div_p):
364 New static function.
365 (loongarch_idiv_insns): Use loongarch_check_zero_div_p instead
366 of TARGET_CHECK_ZERO_DIV.
367 (loongarch_output_division): Likewise.
368 * common/config/loongarch/loongarch-common.cc
369 (TARGET_DEFAULT_TARGET_FLAGS): Remove unneeded hook.
370 * doc/invoke.texi: Update to match the new behavior.
371
372 2022-07-03 Roger Sayle <roger@nextmovesoftware.com>
373
374 PR target/106122
375 * config/i386/i386.md (peephole2): Avoid generating pop %esp
376 when optimizing for size.
377
378 2022-07-02 Sergei Trofimovich <siarheit@google.com>
379
380 Backported from master:
381 2022-06-29 Sergei Trofimovich <siarheit@google.com>
382
383 PR c++/106102
384 * system.h: Introduce INCLUDE_PTHREAD_H macros to include <pthread.h>.
385
386 2022-07-01 Vladimir Makarov <vmakarov@gcc.gnu.org>
387
388 Backported from master:
389 2022-05-28 Vladimir Makarov <vmakarov@gcc.gnu.org>
390
391 PR target/103722
392 * config/sh/sh.cc (sh_register_move_cost): Avoid cost "2" (which
393 is special) for various scenarios.
394
395 2022-06-29 Richard Biener <rguenther@suse.de>
396
397 Backported from master:
398 2022-05-11 Richard Biener <rguenther@suse.de>
399
400 PR bootstrap/105551
401 * opts.cc (finish_options): Also disable var-tracking if
402 !DWARF2_DEBUGGING_INFO.
403
404 2022-06-29 Lulu Cheng <chenglulu@loongson.cn>
405
406 Backported from master:
407 2022-06-29 Lulu Cheng <chenglulu@loongson.cn>
408
409 PR target/106097
410 * config/loongarch/loongarch.cc (loongarch_build_integer):
411 Remove undefined behavior from code.
412
413 2022-06-28 Jakub Jelinek <jakub@redhat.com>
414
415 Backported from master:
416 2022-06-21 Jakub Jelinek <jakub@redhat.com>
417
418 PR rtl-optimization/106032
419 * ifcvt.cc (noce_try_sign_mask): Punt if !t_unconditional, and
420 t may_trap_or_fault_p, even if it is cheap.
421
422 2022-06-28 Jakub Jelinek <jakub@redhat.com>
423
424 Backported from master:
425 2022-06-21 Jakub Jelinek <jakub@redhat.com>
426
427 PR middle-end/106030
428 * expr.cc (expand_cond_expr_using_cmove): Pass NULL_RTX instead of
429 temp to expand_operands if mode has been promoted.
430
431 2022-06-28 Xi Ruoyao <xry111@xry111.site>
432
433 Backported from master:
434 2022-06-28 Xi Ruoyao <xry111@xry111.site>
435
436 PR target/106096
437 * config/loongarch/loongarch.h (REG_CLASS_CONTENTS): Exclude
438 $r13 from SIBCALL_REGS.
439 * config/loongarch/loongarch.cc (loongarch_regno_to_class):
440 Change $r13 to JIRL_REGS.
441
442 2022-06-24 Iain Buclaw <ibuclaw@gdcproject.org>
443
444 Backported from master:
445 2022-06-24 Iain Buclaw <ibuclaw@gdcproject.org>
446
447 * config/tilepro/gen-mul-tables.cc (tilegx_emit): Adjust loop
448 condition to avoid overflow.
449
450 2022-06-23 Martin Liska <mliska@suse.cz>
451
452 Backported from master:
453 2022-06-23 Martin Liska <mliska@suse.cz>
454
455 PR ipa/105600
456 * ipa-icf.cc (sem_item_optimizer::filter_removed_items):
457 Skip variables with body_removed.
458
459 2022-06-23 Siddhesh Poyarekar <siddhesh@gotplt.org>
460
461 Backported from master:
462 2022-06-21 Siddhesh Poyarekar <siddhesh@gotplt.org>
463
464 PR tree-optimization/105736
465 * tree-object-size.cc (addr_object_size): Return size_unknown
466 when object offset computation returns an error.
467
468 2022-06-23 Richard Sandiford <richard.sandiford@arm.com>
469
470 Backported from master:
471 2022-06-15 Richard Sandiford <richard.sandiford@arm.com>
472
473 PR tree-optimization/105254
474 PR tree-optimization/105940
475 Revert:
476 * config/aarch64/aarch64.cc
477 (aarch64_vector_costs::determine_suggested_unroll_factor): Take a
478 loop_vec_info as argument. Restrict the unroll factor to values
479 that divide the VF.
480 (aarch64_vector_costs::finish_cost): Update call accordingly.
481
482 2022-06-23 Kewen Lin <linkw@linux.ibm.com>
483
484 Backported from master:
485 2022-06-14 Kewen Lin <linkw@linux.ibm.com>
486
487 PR tree-optimization/105940
488 * tree-vect-loop.cc (vect_analyze_loop_2): Move the place of
489 applying suggested_unroll_factor after start_over.
490
491 2022-06-21 H.J. Lu <hjl.tools@gmail.com>
492
493 Backported from master:
494 2022-06-20 H.J. Lu <hjl.tools@gmail.com>
495
496 PR target/105960
497 * config/i386/i386.cc (ix86_function_ok_for_sibcall): Return
498 false if PIC register is used when calling ifunc functions.
499
500 2022-06-20 Uros Bizjak <ubizjak@gmail.com>
501
502 Backported from master:
503 2022-06-17 Uroš Bizjak <ubizjak@gmail.com>
504
505 PR target/105209
506 * config/alpha/alpha-protos.h (alpha_store_data_bypass_p): New.
507 * config/alpha/alpha.cc (alpha_store_data_bypass_p): New function.
508 (alpha_store_data_bypass_p_1): Ditto.
509 * config/alpha/ev4.md: Use alpha_store_data_bypass_p instead
510 of generic store_data_bypass_p.
511 (ev4_ist_c): Remove insn reservation.
512
513 2022-06-20 Uros Bizjak <ubizjak@gmail.com>
514
515 Backported from master:
516 2022-06-17 Uroš Bizjak <ubizjak@gmail.com>
517
518 PR target/105970
519 * config/i386/i386.cc (ix86_function_arg): Assert that
520 the mode of pointer argumet is equal to ptr_mode, not Pmode.
521
522 2022-06-19 Jakub Jelinek <jakub@redhat.com>
523
524 Backported from master:
525 2022-06-18 Jakub Jelinek <jakub@redhat.com>
526
527 PR middle-end/105998
528 * varasm.cc (narrowing_initializer_constant_valid_p): Check
529 SCALAR_INT_MODE_P instead of INTEGRAL_MODE_P, also break on
530 ! INTEGRAL_TYPE_P and do the same check also on op{0,1}'s type.
531
532 2022-06-19 Jakub Jelinek <jakub@redhat.com>
533
534 Backported from master:
535 2022-06-16 Jakub Jelinek <jakub@redhat.com>
536
537 PR middle-end/105951
538 * tree-ssa-ccp.cc (optimize_atomic_bit_test_and,
539 optimize_atomic_op_fetch_cmp_0): Remember gimple_call_fn (call)
540 as last argument to the internal functions.
541 * builtins.cc (expand_ifn_atomic_bit_test_and): Adjust for the
542 extra call argument to ifns. If expand_atomic_fetch_op fails for the
543 lhs == NULL_TREE case, fall through into the optab code with
544 gen_reg_rtx (mode) as target. If second expand_atomic_fetch_op
545 fails, construct a CALL_EXPR and expand that.
546 (expand_ifn_atomic_op_fetch_cmp_0): Adjust for the extra call argument
547 to ifns. If expand_atomic_fetch_op fails, construct a CALL_EXPR and
548 expand that.
549
550 2022-06-19 Jan Hubicka <jh@suse.cz>
551
552 Backported from master:
553 2022-06-14 Jan Hubicka <hubicka@ucw.cz>
554
555 PR ipa/105739
556 * ipa-prop.cc (ipa_load_from_parm_agg): Punt on volatile loads.
557
558 2022-06-16 Richard Earnshaw <rearnsha@arm.com>
559
560 Backported from master:
561 2022-06-15 Richard Earnshaw <rearnsha@arm.com>
562
563 PR target/105981
564 * config/arm/arm.cc (gen_cpymem_ldrd_strd): Rename low_reg and hi_reg
565 to first_reg and second_reg respectively. Initialize them correctly
566 when generating big-endian code.
567
568 2022-06-15 Simon Wright <simon@pushface.org>
569
570 Backported from master:
571 2022-06-12 Simon Wright <simon@pushface.org>
572
573 PR target/104871
574 * config/darwin-driver.cc (darwin_find_version_from_kernel): If the OS
575 version is darwin20 (macOS 11) or greater, truncate the version to the
576 major number.
577
578 2022-06-15 Mark Mentovai <mark@mentovai.com>
579
580 Backported from master:
581 2022-06-12 Mark Mentovai <mark@mentovai.com>
582
583 * config/darwin-c.cc: Make -mmacosx-version-min more future-proof.
584
585 2022-06-15 Iain Sandoe <iain@sandoe.co.uk>
586
587 Backported from master:
588 2022-05-29 Iain Sandoe <iain@sandoe.co.uk>
589
590 PR target/105599
591 * config/darwin.h: Move versions-specific handling of multiply_defined
592 from SUBTARGET_DRIVER_SELF_SPECS to LINK_SPEC.
593
594 2022-06-15 liuhongt <hongtao.liu@intel.com>
595
596 PR target/105953
597 * config/i386/sse.md (*avx_cmp<mode>3_ltint_not): Force_reg
598 operands[3].
599
600 2022-06-14 H.J. Lu <hjl.tools@gmail.com>
601
602 Backported from master:
603 2022-06-13 H.J. Lu <hjl.tools@gmail.com>
604
605 * common/config/i386/cpuinfo.h (get_available_features): Require
606 AVX for F16C and VAES.
607
608 2022-06-14 Philipp Tomsich <philipp.tomsich@vrull.eu>
609
610 Backported from master:
611 2022-06-02 Philipp Tomsich <philipp.tomsich@vrull.eu>
612
613 * config/riscv/riscv.cc (riscv_build_integer_1): Rewrite value as
614 (-1 << 31) for the single-bit case, when operating on (1 << 31)
615 in SImode.
616 * config/riscv/riscv.h (SINGLE_BIT_MASK_OPERAND): Allow for
617 any single-bit value, moving the special case for (1 << 31) to
618 riscv_build_integer_1 (in riscv.c).
619
620 2022-06-08 Max Filippov <jcmvbkbc@gmail.com>
621
622 Backported from master:
623 2022-06-08 Max Filippov <jcmvbkbc@gmail.com>
624
625 PR target/105879
626 * config/xtensa/xtensa.md (movdi): Rename 'first' and 'second'
627 to 'lowpart' and 'highpart' so that they match 'gen_lowpart' and
628 'gen_highpart' bitwise semantics and fix order of highpart and
629 lowpart depending on target endianness.
630
631 2022-06-08 liuhongt <hongtao.liu@intel.com>
632
633 PR target/105854
634 * config/i386/sse.md (ssse3_palignrdi): Change alternative 2
635 from Yv to Yw.
636
637 2022-06-02 Philipp Tomsich <philipp.tomsich@vrull.eu>
638
639 Backported from master:
640 2022-05-13 Philipp Tomsich <philipp.tomsich@vrull.eu>
641 Manolis Tsamis <manolis.tsamis@vrull.eu>
642
643 * config/riscv/riscv.h (CLZ_DEFINED_VALUE_AT_ZERO): Implement.
644 (CTZ_DEFINED_VALUE_AT_ZERO): Same.
645 * doc/sourcebuild.texi: add documentation for RISC-V specific
646 test target keywords
647
648 2022-06-02 Richard Biener <rguenther@suse.de>
649
650 Backported from master:
651 2022-06-01 Richard Biener <rguenther@suse.de>
652
653 PR tree-optimization/105786
654 * tree-loop-distribution.cc
655 (loop_distribution::transform_reduction_loop): Only do strlen
656 replacement for integer type reductions.
657
658 2022-06-02 Richard Biener <rguenther@suse.de>
659
660 Backported from master:
661 2022-05-27 Richard Biener <rguenther@suse.de>
662
663 PR tree-optimization/105726
664 * gimple-ssa-warn-restrict.cc (builtin_memref::set_base_and_offset):
665 Constrain array-of-flexarray case more.
666
667 2022-06-02 Richard Biener <rguenther@suse.de>
668
669 Backported from master:
670 2022-05-24 Richard Biener <rguenther@suse.de>
671
672 PR middle-end/105711
673 * expmed.cc (extract_bit_field_as_subreg): Add op0_mode parameter
674 and use it.
675 (extract_bit_field_1): Pass down the mode of op0 to
676 extract_bit_field_as_subreg.
677
678 2022-06-02 Martin Sebor <msebor@redhat.com>
679
680 Backported from master:
681 2022-05-24 Martin Sebor <msebor@redhat.com>
682 Richard Biener <rguenther@suse.de>
683
684 PR middle-end/105604
685 * gimple-ssa-sprintf.cc (set_aggregate_size_and_offset): Add comments.
686 (get_origin_and_offset_r): Remove null handling. Handle variable array
687 sizes.
688 (get_origin_and_offset): Handle null argument here. Simplify.
689 (alias_offset): Update comment.
690 * pointer-query.cc (field_at_offset): Update comment. Handle members
691 of variable-length types.
692
693 2022-06-02 Vineet Gupta <vineetg@rivosinc.com>
694
695 Backported from master:
696 2022-05-24 Vineet Gupta <vineetg@rivosinc.com>
697
698 * config/riscv/riscv.cc: (struct riscv_tune_param): Add
699 fmv_cost.
700 (rocket_tune_info): Add default fmv_cost 8.
701 (sifive_7_tune_info): Ditto.
702 (thead_c906_tune_info): Ditto.
703 (optimize_size_tune_info): Ditto.
704 (riscv_register_move_cost): Use fmv_cost for int<->fp moves.
705
706 2022-05-30 Martin Jambor <mjambor@suse.cz>
707
708 Backported from master:
709 2022-05-27 Martin Jambor <mjambor@suse.cz>
710
711 PR ipa/105639
712 * ipa-prop.cc (propagate_controlled_uses): Check type of the
713 constant before adding a LOAD reference.
714
715 2022-05-30 Jakub Jelinek <jakub@redhat.com>
716
717 Backported from master:
718 2022-05-27 Jakub Jelinek <jakub@redhat.com>
719
720 PR sanitizer/105729
721 * fold-const.cc (fold_unary_loc): Don't optimize (X &) ((Y *) z + w)
722 to (X &) z + w if -fsanitize=null during GENERIC folding.
723
724 2022-05-30 Jakub Jelinek <jakub@redhat.com>
725
726 Backported from master:
727 2022-05-25 Jakub Jelinek <jakub@redhat.com>
728
729 PR sanitizer/105714
730 * asan.cc (has_stmt_been_instrumented_p): For assignments which
731 are both stores and loads, return true only if both destination
732 and source have been instrumented.
733
734 2022-05-30 Jakub Jelinek <jakub@redhat.com>
735
736 Backported from master:
737 2022-05-19 Jakub Jelinek <jakub@redhat.com>
738
739 PR c/105635
740 * pointer-query.cc (gimple_parm_array_size): Return NULL if var
741 doesn't have pointer or reference type.
742
743 2022-05-26 Simon Cook <simon.cook@embecosm.com>
744
745 Backported from master:
746 2022-05-25 Simon Cook <simon.cook@embecosm.com>
747
748 * config/riscv/arch-canonicalize: Only add mafd extension if
749 base was rv32/rv64g.
750
751 2022-05-26 Kito Cheng <kito.cheng@sifive.com>
752
753 Backported from master:
754 2022-05-09 Kito Cheng <kito.cheng@sifive.com>
755
756 * config/riscv/arch-canonicalize: Handle g correctly.
757
758 2022-05-24 Qing Zhao <qing.zhao@oracle.com>
759
760 Backported from master:
761 2022-05-09 Qing Zhao <qing.zhao@oracle.com>
762
763 PR target/101891
764 * config/i386/i386.cc (zero_call_used_regno_mode): use V2SImode
765 as a generic MMX mode instead of V4HImode.
766 (zero_all_mm_registers): Use SET to zero instead of MOV for
767 zeroing scratch registers.
768 (ix86_zero_call_used_regs): Likewise.
769
770 2022-05-24 Bruno Haible <bruno@clisp.org>
771
772 Backported from master:
773 2022-05-24 Bruno Haible <bruno@clisp.org>
774
775 PR other/105527
776 * doc/install.texi (Configuration): Add more details about --with-zstd.
777 Document --with-zstd-include and --with-zstd-lib
778
779 2022-05-24 Martin Liska <mliska@suse.cz>
780
781 Backported from master:
782 2022-05-11 Martin Liska <mliska@suse.cz>
783
784 PR other/105527
785 * doc/install.texi: Document the configure option --with-zstd.
786
787 2022-05-20 Peter Bergner <bergner@linux.ibm.com>
788
789 Backported from master:
790 2022-05-18 Peter Bergner <bergner@linux.ibm.com>
791 Segher Boessenkool <segher@kernel.crashing.org>
792
793 PR target/105556
794 * config/rs6000/mma.md (mma_<vv>, mma_<avv>, mma_<pv>, mma_<apv>,
795 mma_<vvi4i4i8>, mma_<avvi4i4i8>, mma_<vvi4i4i2>, mma_<avvi4i4i2>,
796 mma_<vvi4i4>, mma_<avvi4i4>, mma_<pvi4i2>, mma_<apvi4i2>,
797 mma_<vvi4i4i4>, mma_<avvi4i4i4>): Replace "wa" constraints with "v,?wa".
798 Update other operands accordingly.
799
800 2022-05-20 Richard Biener <rguenther@suse.de>
801
802 Backported from master:
803 2022-05-04 Richard Biener <rguenther@suse.de>
804
805 PR tree-optimization/103116
806 * tree-vect-stmts.cc (get_group_load_store_type): Handle the
807 case we need peeling for gaps even though GROUP_GAP is zero.
808
809 2022-05-19 Richard Biener <rguenther@suse.de>
810
811 Backported from master:
812 2022-05-17 Richard Biener <rguenther@suse.de>
813
814 PR tree-optimization/105618
815 * tree-ssa-sink.cc (statement_sink_location): For virtual
816 PHI uses ignore those defining the used virtual operand.
817
818 2022-05-19 Richard Biener <rguenther@suse.de>
819
820 Backported from master:
821 2022-05-12 Richard Biener <rguenther@suse.de>
822
823 PR rtl-optimization/105577
824 * dse.cc (rest_of_handle_dse): Make sure to purge dead EH
825 edges before running fast DCE via df_analyze.
826
827 2022-05-19 Richard Biener <rguenther@suse.de>
828
829 Backported from master:
830 2022-05-12 Richard Biener <rguenther@suse.de>
831
832 PR tree-optimization/105562
833 * tree-ssa-sccvn.cc (vn_reference_lookup_3): Disambiguate
834 against all CLOBBER defs if there's not an obvious must-alias
835 and we are not doing redundant store elimination.
836 (vn_walk_cb_data::redundant_store_removal_p): New field.
837 (vn_reference_lookup_pieces): Initialize it.
838 (vn_reference_lookup): Add argument to specify if we are
839 doing redundant store removal.
840 (eliminate_dom_walker::eliminate_stmt): Specify we do.
841 * tree-ssa-sccvn.h (vn_reference_lookup): Adjust.
842
843 2022-05-19 Richard Biener <rguenther@suse.de>
844
845 Backported from master:
846 2022-05-11 Richard Biener <rguenther@suse.de>
847
848 PR rtl-optimization/105559
849 * cfgrtl.cc (delete_insn_and_edges): Only perform search to BB_END
850 for non-debug insns.
851
852 2022-05-19 Richard Biener <rguenther@suse.de>
853
854 Backported from master:
855 2022-05-10 Richard Biener <rguenther@suse.de>
856
857 PR middle-end/105537
858 * toplev.cc (process_options): Move flag_var_tracking
859 handling ...
860 * opts.cc (finish_options): ... here.
861
862 2022-05-19 Richard Biener <rguenther@suse.de>
863
864 Backported from master:
865 2022-05-10 Richard Biener <rguenther@suse.de>
866
867 * flags.h (dwarf_debuginfo_p): Add opts argument, guard
868 API with !GENERATOR_FILE.
869 * opts.cc (global_options): Poison.
870 (global_options_set): Likewise.
871 (finish_options): Refer to options via opts.
872
873 2022-05-19 Richard Biener <rguenther@suse.de>
874
875 Backported from master:
876 2022-04-29 Richard Biener <rguenther@suse.de>
877
878 PR tree-optimization/105431
879 * tree-ssa-math-opts.cc (powi_as_mults_1): Make n unsigned.
880 (powi_as_mults): Use absu_hwi.
881 (gimple_expand_builtin_powi): Remove now pointless n != -n
882 check.
883
884 2022-05-18 Andrew MacLeod <amacleod@redhat.com>
885
886 PR tree-optimization/105458
887 * value-relation.cc (path_oracle::register_relation): Merge, then check
888 for equivalence.
889
890 2022-05-16 Sebastian Pop <spop@amazon.com>
891
892 PR target/105162
893 * config/aarch64/aarch64-protos.h (atomic_ool_names): Increase dimension
894 of str array.
895 * config/aarch64/aarch64.cc (aarch64_atomic_ool_func): Call
896 memmodel_from_int and handle MEMMODEL_SYNC_*.
897 (DEF0): Add __aarch64_*_sync functions.
898
899 2022-05-16 Eric Botcazou <ebotcazou@adacore.com>
900
901 * dwarf2out.cc (loc_list_from_tree_1) <TRUTH_NOT_EXPR>: Do a logical
902 instead of a bitwise negation.
903 <COND_EXPR>: Swap the operands if the condition is TRUTH_NOT_EXPR.
904
905 2022-05-13 Eric Botcazou <ebotcazou@adacore.com>
906
907 * tree-sra.cc (sra_modify_assign): Check that scalar storage order
908 is the same on the LHS and RHS before rewriting one with the model
909 of the other.
910
911 2022-05-13 Alexandre Oliva <oliva@adacore.com>
912
913 Backported from master:
914 2022-05-13 Alexandre Oliva <oliva@adacore.com>
915
916 PR rtl-optimization/105455
917 * gimple-harden-conditionals.cc (insert_check_and_trap): Set
918 probabilities for newly-conditional edges.
919
920 2022-05-11 Martin Jambor <mjambor@suse.cz>
921
922 Backported from master:
923 2022-04-29 Martin Jambor <mjambor@suse.cz>
924
925 PR ipa/100413
926 * cgraph.cc (cgraph_node::remove): Release body of the node this
927 is clone_of if appropriate.
928
929 2022-05-10 Jakub Jelinek <jakub@redhat.com>
930
931 Backported from master:
932 2022-05-10 Jakub Jelinek <jakub@redhat.com>
933
934 PR tree-optimization/105528
935 * gimple-isel.cc (gimple_expand_vec_set_expr): After gsi_remove
936 set *gsi to gsi_for_stmt (ass_stmt). Fix up function comment.
937
938 2022-05-10 Eric Botcazou <ebotcazou@adacore.com>
939
940 PR target/105292
941 * config/sparc/sparc.cc (sparc_vectorize_vec_perm_const): Return
942 true only for 8-byte vector modes.
943
944 2022-05-06 Michael Meissner <meissner@linux.ibm.com>
945
946 Backported from master:
947 2022-05-06 Michael Meissner <meissner@linux.ibm.com>
948
949 PR target/102059
950 * config/rs6000/rs6000.cc (rs6000_can_inline_p): Ignore -mpower8-fusion
951 and -mpower10-fusion options for inlining purposes.
952
953 2022-05-06 Richard Biener <rguenther@suse.de>
954
955 Backported from master:
956 2022-04-29 Richard Biener <rguenther@suse.de>
957
958 PR middle-end/105376
959 * tree.cc (build_real): Special case dconst* arguments
960 for decimal floating point types.
961
962 2022-05-06 Richard Biener <rguenther@suse.de>
963
964 Backported from master:
965 2022-05-05 Richard Biener <rguenther@suse.de>
966
967 PR tree-optimization/105484
968 * gimple-isel.cc (gimple_expand_vec_set_expr): Clean EH, return
969 whether the CFG changed.
970 (gimple_expand_vec_exprs): When the CFG changed, clean it up.
971
972 2022-05-06 Richard Biener <rguenther@suse.de>
973
974 Backported from master:
975 2022-05-03 Richard Biener <rguenther@suse.de>
976
977 PR middle-end/105461
978 * opts.cc (finish_options): Match the condition to
979 disable flag_var_tracking to that of process_options.
980
981 2022-05-06 Richard Biener <rguenther@suse.de>
982
983 Backported from master:
984 2022-05-03 Richard Biener <rguenther@suse.de>
985
986 * opts.cc: #undef OPTIONS_SET_P.
987 (finish_options): Use opts_set instead of OPTIONS_SET_P.
988
989 2022-05-06 Richard Biener <rguenther@suse.de>
990
991 Backported from master:
992 2022-05-02 Richard Biener <rguenther@suse.de>
993
994 PR tree-optimization/105437
995 * tree-vect-slp.cc (vect_schedule_slp_node): Handle the
996 case where last_stmt alters control flow.
997
998 2022-05-06 Richard Biener <rguenther@suse.de>
999
1000 Backported from master:
1001 2022-05-03 Richard Biener <rguenther@suse.de>
1002
1003 PR tree-optimization/105394
1004 * tree-vect-generic.cc (expand_vector_condition): Adjust
1005 comp_width for non-integer mode masks as well.
1006
1007 2022-05-06 Release Manager
1008
1009 * GCC 12.1.0 released.
1010
1011 2022-05-02 Jakub Jelinek <jakub@redhat.com>
1012
1013 Backported from master:
1014 2022-05-02 Jakub Jelinek <jakub@redhat.com>
1015
1016 * system.h: Include initializer_list.
1017
1018 2022-04-28 Jakub Jelinek <jakub@redhat.com>
1019
1020 PR lto/105399
1021 * cgraph.cc (cgraph_node::verify_node): Don't verify
1022 semantic_interposition flag against
1023 opt_for_fn (decl, flag_semantic_interposition) for aliases in lto1.
1024
1025 2022-04-28 Jakub Jelinek <jakub@redhat.com>
1026
1027 PR target/105331
1028 * config/i386/i386.cc (ix86_gimplify_va_arg): Mark va_arg_tmp
1029 temporary TREE_ADDRESSABLE before trying to gimplify ADDR_EXPR
1030 of it.
1031
1032 2022-04-28 Jonathan Wakely <jwakely@redhat.com>
1033
1034 * doc/install.texi (Configuration): Remove misleading text
1035 around LE PowerPC Linux multilibs.
1036
1037 2022-04-28 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1038
1039 PR d/103528
1040 * doc/install.texi (Tools/packages necessary for building GCC)
1041 (GDC): Document libphobos requirement.
1042 (Host/target specific installation notes for GCC, *-*-solaris2*):
1043 Document libphobos and GDC specifics.
1044
1045 2022-04-28 Richard Biener <rguenther@suse.de>
1046
1047 PR tree-optimization/105219
1048 * tree-vect-loop.cc (vect_transform_loop): Disable
1049 special code narrowing the vectorized epilogue max
1050 iterations when peeling for alignment or gaps was in effect.
1051
1052 2022-04-28 Xi Ruoyao <xry111@mengyan1223.wang>
1053
1054 * config/loongarch/loongarch.cc
1055 (loongarch_flatten_aggregate_field): Ignore empty fields for
1056 RECORD_TYPE.
1057
1058 2022-04-27 Lulu Cheng <chenglulu@loongson.cn>
1059
1060 * config/loongarch/loongarch.md: Add fdiv define_expand template,
1061 then generate floating-point division and floating-point reciprocal
1062 instructions.
1063
1064 2022-04-27 Lulu Cheng <chenglulu@loongson.cn>
1065
1066 * config/loongarch/loongarch.md: Add '(clobber (mem:BLK (scratch)))'
1067 to PLV instruction templates.
1068
1069 2022-04-27 Richard Biener <rguenther@suse.de>
1070
1071 PR middle-end/104492
1072 * gimple-ssa-warn-access.cc
1073 (pass_waccess::warn_invalid_pointer): Exclude equality compare
1074 diagnostics for all kind of invalidations.
1075 (pass_waccess::check_dangling_uses): Fix post-dominator query.
1076 (pass_waccess::check_pointer_uses): Likewise.
1077
1078 2022-04-27 Andreas Krebbel <krebbel@linux.ibm.com>
1079
1080 PR target/102024
1081 * config/s390/s390-protos.h (s390_function_arg_vector): Remove
1082 prototype.
1083 * config/s390/s390.cc (s390_single_field_struct_p): New function.
1084 (s390_function_arg_vector): Invoke s390_single_field_struct_p.
1085 (s390_function_arg_float): Likewise.
1086
1087 2022-04-27 Jakub Jelinek <jakub@redhat.com>
1088
1089 PR sanitizer/105396
1090 * asan.cc (asan_redzone_buffer::emit_redzone_byte): Handle the case
1091 where offset is bigger than off but smaller than m_prev_offset + 32
1092 bits by pushing one or more 0 bytes. Sink the
1093 m_shadow_bytes.safe_push (value); flush_if_full (); statements from
1094 all cases to the end of the function.
1095
1096 2022-04-27 Kewen Lin <linkw@linux.ibm.com>
1097
1098 PR target/105271
1099 * config/rs6000/rs6000-builtins.def (NEG_V2DI): Move to [power8-vector]
1100 stanza.
1101
1102 2022-04-26 Thomas Schwinge <thomas@codesourcery.com>
1103
1104 * config/gcn/gcn.cc (gcn_print_lds_decl): Make "gang-private
1105 data-share memory exhausted" error more verbose.
1106
1107 2022-04-26 Martin Liska <mliska@suse.cz>
1108
1109 PR lto/105364
1110 * lto-wrapper.cc (print_lto_docs_link): Use global_dc.
1111 (run_gcc): Parse OPT_fdiagnostics_urls_.
1112 (main): Initialize global_dc.
1113
1114 2022-04-26 Jakub Jelinek <jakub@redhat.com>
1115
1116 PR rtl-optimization/105314
1117 * ifcvt.cc (noce_try_store_flag_mask): Don't require that the non-zero
1118 operand is equal to if_info->x, instead use the non-zero operand
1119 as one of the operands of AND with if_info->x as target.
1120
1121 2022-04-26 Jakub Jelinek <jakub@redhat.com>
1122
1123 PR tree-optimization/105374
1124 * tree-ssa-reassoc.cc (eliminate_redundant_comparison): Punt if
1125 !fold_convertible_p rather than assuming fold_convert must succeed.
1126
1127 2022-04-26 Jakub Jelinek <jakub@redhat.com>
1128
1129 PR target/105367
1130 * config/i386/i386.cc (ix86_veclibabi_svml, ix86_veclibabi_acml): Pass
1131 el_mode == DFmode ? double_type_node : float_type_node instead of
1132 TREE_TYPE (type_in) as first arguments to mathfn_built_in.
1133
1134 2022-04-25 David Malcolm <dmalcolm@redhat.com>
1135
1136 PR analyzer/104308
1137 * gimple-fold.cc (gimple_fold_builtin_memory_op): Explicitly set
1138 the location of new_stmt in all places that don't already set it,
1139 whether explicitly, or via a call to gsi_replace.
1140
1141 2022-04-25 Paul A. Clarke <pc@us.ibm.com>
1142
1143 * doc/extend.texi (Other Builtins): Correct reference to 'modff'.
1144
1145 2022-04-25 Andrew MacLeod <amacleod@redhat.com>
1146
1147 PR tree-optimization/105276
1148 * gimple-range.cc (gimple_ranger::prefill_stmt_dependencies): Include
1149 existing global range with calculated value.
1150
1151 2022-04-25 Richard Biener <rguenther@suse.de>
1152
1153 PR tree-optimization/105368
1154 * tree-ssa-math-opts.cc (powi_cost): Use absu_hwi.
1155
1156 2022-04-25 Richard Biener <rguenther@suse.de>
1157
1158 PR tree-optimization/100810
1159 * tree-ssa-loop-ivopts.cc (struct iv_cand): Add involves_undefs flag.
1160 (find_ssa_undef): New function.
1161 (add_candidate_1): Avoid adding derived candidates with
1162 undefined SSA names and mark the original ones.
1163 (determine_group_iv_cost_generic): Reject rewriting
1164 uses with a different IV when that involves undefined SSA names.
1165
1166 2022-04-25 Steven G. Kargl <kargl@gcc.gnu.org>
1167
1168 PR target/89125
1169 * config/freebsd.h: Define TARGET_LIBC_HAS_FUNCTION to be
1170 bsd_libc_has_function.
1171 * targhooks.cc (bsd_libc_has_function): New function.
1172 Expand the supported math functions to inclue C99 libm.
1173 * targhooks.h (bsd_libc_has_function): New Prototype.
1174
1175 2022-04-25 Richard Biener <rguenther@suse.de>
1176
1177 PR rtl-optimization/105231
1178 * combine.cc (distribute_notes): Assert that a REG_EH_REGION
1179 with landing pad > 0 is from i3. Put any REG_EH_REGION note
1180 on i3 or drop it if the insn can not trap.
1181 (try_combine): Ensure that we can merge REG_EH_REGION notes
1182 with non-call exceptions. Ensure we are not splitting a
1183 trapping part of an insn with non-call exceptions when there
1184 is any REG_EH_REGION note to preserve.
1185
1186 2022-04-25 Hongyu Wang <hongyu.wang@intel.com>
1187
1188 PR target/105339
1189 * config/i386/avx512fintrin.h (_mm512_scalef_round_pd):
1190 Add parentheses for parameters and djust format.
1191 (_mm512_mask_scalef_round_pd): Ditto.
1192 (_mm512_maskz_scalef_round_pd): Ditto.
1193 (_mm512_scalef_round_ps): Ditto.
1194 (_mm512_mask_scalef_round_ps): Ditto.
1195 (_mm512_maskz_scalef_round_ps): Ditto.
1196 (_mm_scalef_round_sd): Use _mm_undefined_pd.
1197 (_mm_scalef_round_ss): Use _mm_undefined_ps.
1198 (_mm_mask_scalef_round_sd): New macro.
1199 (_mm_mask_scalef_round_ss): Ditto.
1200 (_mm_maskz_scalef_round_sd): Ditto.
1201 (_mm_maskz_scalef_round_ss): Ditto.
1202
1203 2022-04-23 Jakub Jelinek <jakub@redhat.com>
1204
1205 PR target/105338
1206 * config/i386/i386-expand.cc (ix86_expand_int_movcc): Handle
1207 op0 == cst1 ? op0 : op3 like op0 == cst1 ? cst1 : op3 for the non-cmov
1208 cases.
1209
1210 2022-04-22 Segher Boessenkool <segher@kernel.crashing.org>
1211
1212 PR target/105334
1213 * config/rs6000/rs6000.md (pack<mode> for FMOVE128): New expander.
1214 (pack<mode> for FMOVE128): Rename and split the insn_and_split to...
1215 (pack<mode>_hard for FMOVE128): ... this...
1216 (pack<mode>_soft for FMOVE128): ... and this.
1217
1218 2022-04-22 Paul A. Clarke <pc@us.ibm.com>
1219
1220 * doc/extend.texi: Correct "This" to "These".
1221
1222 2022-04-22 Jakub Jelinek <jakub@redhat.com>
1223
1224 PR rtl-optimization/105333
1225 * rtlanal.cc (replace_rtx): Use simplify_subreg or
1226 simplify_unary_operation if CONST_SCALAR_INT_P rather than just
1227 CONST_INT_P.
1228
1229 2022-04-21 Segher Boessenkool <segher@kernel.crashing.org>
1230
1231 PR target/103197
1232 PR target/102146
1233 * config/rs6000/rs6000.md (zero_extendqi<mode>2 for EXTQI): Disparage
1234 the "Z" alternatives in {l,st}{f,xs}iwzx.
1235 (zero_extendhi<mode>2 for EXTHI): Ditto.
1236 (zero_extendsi<mode>2 for EXTSI): Ditto.
1237 (*movsi_internal1): Ditto.
1238 (*mov<mode>_internal1 for QHI): Ditto.
1239 (movsd_hardfloat): Ditto.
1240
1241 2022-04-21 Martin Liska <mliska@suse.cz>
1242
1243 * configure.ac: Enable compressed debug sections for mold
1244 linker.
1245 * configure: Regenerate.
1246
1247 2022-04-21 Jakub Jelinek <jakub@redhat.com>
1248
1249 PR debug/105203
1250 * emit-rtl.cc (emit_copy_of_insn_after): Don't call mark_jump_label
1251 on DEBUG_INSNs.
1252
1253 2022-04-20 Richard Biener <rguenther@suse.de>
1254
1255 PR tree-optimization/104912
1256 * tree-vect-loop-manip.cc (vect_loop_versioning): Split
1257 the cost model check to a separate BB to make sure it is
1258 checked first and not combined with other version checks.
1259
1260 2022-04-20 Richard Biener <rguenther@suse.de>
1261
1262 PR tree-optimization/105312
1263 * gimple-isel.cc (gimple_expand_vec_cond_expr): Query both
1264 VCOND and VCONDU for EQ and NE.
1265
1266 2022-04-20 Jan Hubicka <hubicka@ucw.cz>
1267
1268 PR ipa/103818
1269 * ipa-modref-tree.cc (modref_access_node::closer_pair_p): Use
1270 poly_offset_int to avoid overflow.
1271 (modref_access_node::update2): likewise.
1272
1273 2022-04-20 Jakub Jelinek <jakub@redhat.com>
1274
1275 PR ipa/105306
1276 * cgraph.cc (cgraph_node::create): Set node->semantic_interposition
1277 to opt_for_fn (decl, flag_semantic_interposition).
1278 * cgraphclones.cc (cgraph_node::create_clone): Copy over
1279 semantic_interposition flag.
1280
1281 2022-04-19 Sergei Trofimovich <siarheit@google.com>
1282
1283 PR gcov-profile/105282
1284 * value-prof.cc (stream_out_histogram_value): Allow negative counts
1285 on HIST_TYPE_INDIR_CALL.
1286
1287 2022-04-19 Jakub Jelinek <jakub@redhat.com>
1288
1289 PR target/105257
1290 * config/sparc/sparc.cc (epilogue_renumber): If ORIGINAL_REGNO,
1291 use gen_raw_REG instead of gen_rtx_REG and copy over also
1292 ORIGINAL_REGNO. Use return 0; instead of /* fallthrough */.
1293
1294 2022-04-19 Richard Biener <rguenther@suse.de>
1295
1296 PR tree-optimization/104010
1297 PR tree-optimization/103941
1298 * tree-vect-slp.cc (vect_bb_slp_scalar_cost): When
1299 we run into stmts in patterns continue walking those
1300 for uses outside of the vectorized region instead of
1301 marking the lane live.
1302
1303 2022-04-18 Hans-Peter Nilsson <hp@axis.com>
1304
1305 * doc/install.texi <CRIS>: Remove references to removed websites and
1306 adjust for cris-*-elf being the only remaining toolchain.
1307
1308 2022-04-18 Hans-Peter Nilsson <hp@axis.com>
1309
1310 * doc/invoke.texi <CRIS>: Remove references to options for removed
1311 subtarget cris-axis-linux-gnu and tweak wording accordingly.
1312
1313 2022-04-16 Gerald Pfeifer <gerald@pfeifer.com>
1314
1315 * doc/install.texi (Specific): Adjust mingw-w64 download link.
1316
1317 2022-04-15 Hongyu Wang <hongyu.wang@intel.com>
1318
1319 * config/i386/smmintrin.h: Correct target pragma from sse4.1
1320 and sse4.2 to crc32 for crc32 intrinsics.
1321
1322 2022-04-14 Indu Bhagat <indu.bhagat@oracle.com>
1323
1324 PR debug/105089
1325 * ctfc.cc (ctf_dvd_ignore_insert): New function.
1326 (ctf_dvd_ignore_lookup): Likewise.
1327 (ctf_add_variable): Keep track of non-defining decl DIEs.
1328 (new_ctf_container): Initialize the new hash-table.
1329 (ctfc_delete_container): Empty hash-table.
1330 * ctfc.h (struct ctf_container): Add new hash-table.
1331 (ctf_dvd_ignore_lookup): New declaration.
1332 (ctf_add_variable): Add additional argument.
1333 * ctfout.cc (ctf_dvd_preprocess_cb): Skip adding CTF variable
1334 record for non-defining decl for which a defining decl exists
1335 in the same TU.
1336 (ctf_preprocess): Defer updating the number of global objts
1337 until here.
1338 (output_ctf_header): Use ctfc_vars_list_count as some CTF
1339 variables may not make it to the final output.
1340 (output_ctf_vars): Likewise.
1341 * dwarf2ctf.cc (gen_ctf_variable): Skip generating CTF variable
1342 if this is known to be a non-defining decl DIE.
1343
1344 2022-04-14 Indu Bhagat <indu.bhagat@oracle.com>
1345
1346 * ctfc.h (struct ctf_container): Introduce a new member.
1347 * ctfout.cc (ctf_list_add_ctf_vars): Use it instead of static
1348 variable.
1349
1350 2022-04-14 Jakub Jelinek <jakub@redhat.com>
1351
1352 PR target/105247
1353 * simplify-rtx.cc (simplify_const_binary_operation): For shifts
1354 or rotates by VOIDmode constant integer shift count use word_mode
1355 for the operand if int_mode is narrower than word.
1356
1357 2022-04-14 Robin Dapp <rdapp@linux.ibm.com>
1358
1359 * config/s390/s390.cc (s390_get_sched_attrmask): Add z16.
1360 (s390_get_unit_mask): Likewise.
1361 (s390_is_fpd): Likewise.
1362 (s390_is_fxd): Likewise.
1363 * config/s390/s390.h (s390_tune_attr): Set max tune level to z16.
1364 * config/s390/s390.md (z900,z990,z9_109,z9_ec,z10,z196,zEC12,z13,z14,z15):
1365 Add z16.
1366 (z900,z990,z9_109,z9_ec,z10,z196,zEC12,z13,z14,z15,z16):
1367 Likewise.
1368 * config/s390/3931.md: New file.
1369
1370 2022-04-13 Richard Sandiford <richard.sandiford@arm.com>
1371
1372 PR tree-optimization/105254
1373 * config/aarch64/aarch64.cc
1374 (aarch64_vector_costs::determine_suggested_unroll_factor): Take a
1375 loop_vec_info as argument. Restrict the unroll factor to values
1376 that divide the VF.
1377 (aarch64_vector_costs::finish_cost): Update call accordingly.
1378
1379 2022-04-13 Richard Biener <rguenther@suse.de>
1380
1381 PR tree-optimization/105263
1382 * tree-ssa-reassoc.cc (try_special_add_to_ops): Do not consume
1383 negates in multiplication chains with DFP.
1384
1385 2022-04-13 Jakub Jelinek <jakub@redhat.com>
1386
1387 PR middle-end/105253
1388 * tree.cc (tree_builtin_call_types_compatible_p): If PROP_gimple,
1389 use useless_type_conversion_p checks instead of TYPE_MAIN_VARIANT
1390 comparisons or tree_nop_conversion_p checks.
1391
1392 2022-04-13 Hongyu Wang <hongyu.wang@intel.com>
1393
1394 PR target/103069
1395 * config/i386/i386-expand.cc (ix86_expand_cmpxchg_loop):
1396 Add missing set to target_val at pause label.
1397
1398 2022-04-13 Jakub Jelinek <jakub@redhat.com>
1399
1400 PR target/105234
1401 * attribs.cc (decl_attributes): Don't set
1402 DECL_FUNCTION_SPECIFIC_TARGET if target_option_default_node is
1403 NULL.
1404
1405 2022-04-13 Richard Biener <rguenther@suse.de>
1406
1407 PR tree-optimization/105250
1408 * fold-const.cc (fold_convertible_p): Revert
1409 r12-7979-geaaf77dd85c333, instead check for size equality
1410 of the vector types involved.
1411
1412 2022-04-13 Richard Biener <rguenther@suse.de>
1413
1414 Revert:
1415 2022-04-13 Richard Biener <rguenther@suse.de>
1416
1417 PR tree-optimization/104912
1418 * tree-vect-loop-manip.cc (vect_loop_versioning): Split
1419 the cost model check to a separate BB to make sure it is
1420 checked first and not combined with other version checks.
1421
1422 2022-04-13 Richard Biener <rguenther@suse.de>
1423
1424 PR tree-optimization/104912
1425 * tree-vect-loop-manip.cc (vect_loop_versioning): Split
1426 the cost model check to a separate BB to make sure it is
1427 checked first and not combined with other version checks.
1428
1429 2022-04-13 Jakub Jelinek <jakub@redhat.com>
1430
1431 * tree-scalar-evolution.cc (expression_expensive_p): Fix a comment typo.
1432
1433 2022-04-12 Antoni Boucher <bouanto@zoho.com>
1434
1435 PR jit/104072
1436 * reginfo.cc: New functions (clear_global_regs_cache,
1437 reginfo_cc_finalize) to avoid an issue where compiling the same
1438 code multiple times gives an error about assigning the same
1439 register to 2 global variables.
1440 * rtl.h: New function (reginfo_cc_finalize).
1441 * toplev.cc: Call it.
1442
1443 2022-04-12 Antoni Boucher <bouanto@zoho.com>
1444
1445 PR jit/104071
1446 * toplev.cc: Call the new function tree_cc_finalize in
1447 toplev::finalize.
1448 * tree.cc: New functions (clear_nonstandard_integer_type_cache
1449 and tree_cc_finalize) to clear the cache of non-standard integer
1450 types to avoid having issues with some optimizations of
1451 bitcast where the SSA_NAME will have a size of a cached
1452 integer type that should have been invalidated, causing a
1453 comparison of integer constant to fail.
1454 * tree.h: New function (tree_cc_finalize).
1455
1456 2022-04-12 Thomas Schwinge <thomas@codesourcery.com>
1457
1458 PR target/97348
1459 * config/nvptx/nvptx.h (ASM_SPEC): Don't set.
1460 * config/nvptx/nvptx.opt (misa): Adjust comment.
1461
1462 2022-04-12 Thomas Schwinge <thomas@codesourcery.com>
1463
1464 Revert:
1465 2022-03-03 Tom de Vries <tdevries@suse.de>
1466
1467 * config/nvptx/nvptx.h (ASM_SPEC): Add %{misa=sm_30:--no-verify}.
1468
1469 2022-04-12 Thomas Schwinge <thomas@codesourcery.com>
1470
1471 Revert:
1472 2022-03-31 Tom de Vries <tdevries@suse.de>
1473
1474 * config/nvptx/nvptx.h (ASM_SPEC): Use "-m sm_35" for -misa=sm_30.
1475
1476 2022-04-12 Richard Biener <rguenther@suse.de>
1477
1478 PR ipa/104303
1479 * tree-ssa-dce.cc (mark_stmt_if_obviously_necessary): Do not
1480 include local escaped memory as obviously necessary stores.
1481
1482 2022-04-12 Richard Biener <rguenther@suse.de>
1483
1484 PR tree-optimization/105235
1485 * tree-ssa-math-opts.cc (execute_cse_conv_1): Clean EH and
1486 return whether the CFG changed.
1487 (execute_cse_sincos_1): Adjust.
1488
1489 2022-04-12 Przemyslaw Wirkus <Przemyslaw.Wirkus@arm.com>
1490
1491 PR target/104144
1492 * config/arm/t-aprofile (MULTI_ARCH_OPTS_A): Remove Armv9-a options.
1493 (MULTI_ARCH_DIRS_A): Remove Armv9-a diretories.
1494 (MULTILIB_REQUIRED): Don't require Armv9-a libraries.
1495 (MULTILIB_MATCHES): Treat Armv9-a as equivalent to Armv8-a.
1496 (MULTILIB_REUSE): Remove remap rules for Armv9-a.
1497 * config/arm/t-multilib (v9_a_nosimd_variants): Delete.
1498 (MULTILIB_MATCHES): Remove mappings for v9_a_nosimd_variants.
1499
1500 2022-04-12 Richard Biener <rguenther@suse.de>
1501
1502 PR tree-optimization/105232
1503 * tree.cc (component_ref_size): Bail out for too large
1504 or non-constant sizes.
1505
1506 2022-04-12 Richard Biener <rguenther@suse.de>
1507
1508 PR tree-optimization/105226
1509 * tree-vect-loop-manip.cc (vect_loop_versioning): Verify
1510 we can split the exit of an outer loop we choose to version.
1511
1512 2022-04-12 Jakub Jelinek <jakub@redhat.com>
1513
1514 * config/i386/i386-expand.cc (ix86_emit_i387_sinh, ix86_emit_i387_cosh,
1515 ix86_emit_i387_tanh, ix86_emit_i387_asinh, ix86_emit_i387_acosh,
1516 ix86_emit_i387_atanh, ix86_emit_i387_log1p, ix86_emit_i387_round,
1517 ix86_emit_swdivsf, ix86_emit_swsqrtsf,
1518 ix86_expand_atomic_fetch_op_loop, ix86_expand_cmpxchg_loop):
1519 Formatting fix.
1520 * config/i386/i386.cc (warn_once_call_ms2sysv_xlogues): Likewise.
1521
1522 2022-04-12 Jakub Jelinek <jakub@redhat.com>
1523
1524 PR target/105214
1525 * config/i386/i386-expand.cc (ix86_emit_i387_log1p): Call
1526 do_pending_stack_adjust.
1527
1528 2022-04-12 Jakub Jelinek <jakub@redhat.com>
1529
1530 PR rtl-optimization/105211
1531 * builtins.cc (expand_builtin_int_roundingfn_2): If mathfn_built_in_1
1532 fails for TREE_TYPE (arg), retry it with
1533 TREE_VALUE (TYPE_ARG_TYPES (TREE_TYPE (fndecl))) and if even that
1534 fails, emit call normally.
1535
1536 2022-04-12 Andreas Krebbel <krebbel@linux.ibm.com>
1537
1538 * common/config/s390/s390-common.cc: Rename PF_ARCH14 to PF_Z16.
1539 * config.gcc: Add z16 as march/mtune switch.
1540 * config/s390/driver-native.cc (s390_host_detect_local_cpu):
1541 Recognize z16 with -march=native.
1542 * config/s390/s390-opts.h (enum processor_type): Rename
1543 PROCESSOR_ARCH14 to PROCESSOR_3931_Z16.
1544 * config/s390/s390.cc (PROCESSOR_ARCH14): Rename to ...
1545 (PROCESSOR_3931_Z16): ... throughout the file.
1546 (s390_processor processor_table): Add z16 as cpu string.
1547 * config/s390/s390.h (enum processor_flags): Rename PF_ARCH14 to
1548 PF_Z16.
1549 (TARGET_CPU_ARCH14): Rename to ...
1550 (TARGET_CPU_Z16): ... this.
1551 (TARGET_CPU_ARCH14_P): Rename to ...
1552 (TARGET_CPU_Z16_P): ... this.
1553 (TARGET_ARCH14): Rename to ...
1554 (TARGET_Z16): ... this.
1555 (TARGET_ARCH14_P): Rename to ...
1556 (TARGET_Z16_P): ... this.
1557 * config/s390/s390.md (cpu_facility): Rename arch14 to z16 and
1558 check TARGET_Z16 instead of TARGET_ARCH14.
1559 * config/s390/s390.opt: Add z16 to processor_type.
1560 * doc/invoke.texi: Document z16 and arch14.
1561
1562 2022-04-12 chenglulu <chenglulu@loongson.cn>
1563
1564 * config/loongarch/loongarch.cc: Fix bug for
1565 tmpdir-g++.dg-struct-layout-1/t033.
1566
1567 2022-04-11 Peter Bergner <bergner@linux.ibm.com>
1568
1569 PR target/104894
1570 * config/rs6000/rs6000.cc (rs6000_sibcall_aix): Handle pcrel sibcalls
1571 to longcall functions.
1572
1573 2022-04-11 Jason Merrill <jason@redhat.com>
1574
1575 * ipa-free-lang-data.cc (free_lang_data_in_decl): Fix typos.
1576
1577 2022-04-11 Segher Boessenkool <segher@kernel.crashing.org>
1578
1579 PR target/105213
1580 PR target/103623
1581 * config/rs6000/rs6000.md (unpack<mode>_nodm): Add m,r,i alternative.
1582
1583 2022-04-11 Jakub Jelinek <jakub@redhat.com>
1584
1585 PR tree-optimization/105218
1586 * tree-ssa-phiopt.cc (value_replacement): If middle_bb has
1587 more than one predecessor or phi's bb more than 2 predecessors,
1588 reset phi result uses instead of adding a debug temp.
1589
1590 2022-04-11 Kito Cheng <kito.cheng@sifive.com>
1591
1592 PR target/104853
1593 * config.gcc: Pass -misa-spec to arch-canonicalize and
1594 multilib-generator.
1595 * config/riscv/arch-canonicalize: Adding -misa-spec option.
1596 (SUPPORTED_ISA_SPEC): New.
1597 (arch_canonicalize): New argument `isa_spec`.
1598 Handle multiple ISA spec versions.
1599 * config/riscv/multilib-generator: Adding -misa-spec option.
1600
1601 2022-04-11 Kito Cheng <kito.cheng@sifive.com>
1602
1603 * config/riscv/arch-canonicalize: Add TODO item.
1604 (IMPLIED_EXT): Sync.
1605 (arch_canonicalize): Checking until no change.
1606
1607 2022-04-11 Tamar Christina <tamar.christina@arm.com>
1608
1609 PR target/105197
1610 * tree-vect-stmts.cc (vectorizable_condition): Prevent cond swap when
1611 not masked.
1612
1613 2022-04-11 Jason Merrill <jason@redhat.com>
1614
1615 PR c++/100370
1616 * pointer-query.cc (compute_objsize_r) [POINTER_PLUS_EXPR]: Require
1617 deref == -1.
1618
1619 2022-04-11 Jakub Jelinek <jakub@redhat.com>
1620
1621 PR tree-optimization/104639
1622 * tree-ssa-phiopt.cc: Include tree-ssa-propagate.h.
1623 (value_replacement): Optimize (x != cst1 ? x : cst2) != cst3
1624 into x != cst3.
1625
1626 2022-04-11 Jeff Law <jeffreyalaw@gmail.com>
1627
1628 * config/bfin/bfin.md (rol_one): Fix pattern to indicate the
1629 sign bit of the source ends up in CC.
1630
1631 2022-04-09 Jan Hubicka <hubicka@ucw.cz>
1632
1633 PR ipa/103376
1634 * cgraphunit.cc (cgraph_node::analyze): update semantic_interposition
1635 flag.
1636
1637 2022-04-09 Jan Hubicka <hubicka@ucw.cz>
1638
1639 * ipa-modref.cc (ipa_merge_modref_summary_after_inlining): Propagate
1640 nondeterministic and side_effects flags.
1641
1642 2022-04-08 Andre Vieira <andre.simoesdiasvieira@arm.com>
1643
1644 PR target/105157
1645 * config.gcc: Shift ext_mask by TARGET_CPU_NBITS.
1646 * config/aarch64/aarch64.h (TARGET_CPU_NBITS): New macro.
1647 (TARGET_CPU_MASK): Likewise.
1648 (TARGET_CPU_DEFAULT): Use TARGET_CPU_NBITS.
1649 * config/aarch64/aarch64.cc (aarch64_get_tune_cpu): Use TARGET_CPU_MASK.
1650 (aarch64_get_arch): Likewise.
1651 (aarch64_override_options): Use TARGET_CPU_NBITS.
1652
1653 2022-04-08 Richard Biener <rguenther@suse.de>
1654
1655 PR tree-optimization/105198
1656 * tree-predcom.cc (find_looparound_phi): Check whether
1657 the found memory location of the entry value is clobbered
1658 inbetween the value we want to use and loop entry.
1659
1660 2022-04-08 Jakub Jelinek <jakub@redhat.com>
1661
1662 PR tree-optimization/105189
1663 * fold-const.cc (make_range_step): Fix up handling of
1664 (unsigned) x +[low, -] ranges for signed x if low fits into
1665 typeof (x).
1666
1667 2022-04-08 Richard Biener <rguenther@suse.de>
1668
1669 PR tree-optimization/105175
1670 * tree-vect-stmts.cc (vectorizable_operation): Suppress
1671 -Wvector-operation-performance if using emulated vectors.
1672 * tree-vect-generic.cc (expand_vector_piecewise): Do not diagnose
1673 -Wvector-operation-performance when suppressed.
1674 (expand_vector_parallel): Likewise.
1675 (expand_vector_comparison): Likewise.
1676 (expand_vector_condition): Likewise.
1677 (lower_vec_perm): Likewise.
1678 (expand_vector_conversion): Likewise.
1679
1680 2022-04-07 Tamar Christina <tamar.christina@arm.com>
1681
1682 PR target/104409
1683 * config/aarch64/aarch64-builtins.cc (handle_arm_acle_h): New.
1684 (aarch64_general_init_builtins): Move LS64 code.
1685 * config/aarch64/aarch64-c.cc (aarch64_pragma_aarch64): Support
1686 arm_acle.h
1687 * config/aarch64/aarch64-protos.h (handle_arm_acle_h): New.
1688 * config/aarch64/arm_acle.h: Add pragma GCC aarch64 "arm_acle.h".
1689
1690 2022-04-07 Richard Biener <rguenther@suse.de>
1691 Jan Hubicka <hubicka@ucw.cz>
1692
1693 PR ipa/104303
1694 * tree-ssa-alias.h (ptr_deref_may_alias_global_p,
1695 ref_may_alias_global_p, ref_may_alias_global_p,
1696 stmt_may_clobber_global_p, pt_solution_includes_global): Add
1697 bool parameters indicating whether escaped locals should be
1698 considered global.
1699 * tree-ssa-structalias.cc (pt_solution_includes_global):
1700 When the new escaped_nonlocal_p flag is true also consider
1701 pt->vars_contains_escaped.
1702 * tree-ssa-alias.cc (ptr_deref_may_alias_global_p):
1703 Pass down new escaped_nonlocal_p flag.
1704 (ref_may_alias_global_p): Likewise.
1705 (stmt_may_clobber_global_p): Likewise.
1706 (ref_may_alias_global_p_1): Likewise. For decls also
1707 query the escaped solution if true.
1708 (ref_may_access_global_memory_p): Remove.
1709 (modref_may_conflict): Use ref_may_alias_global_p with
1710 escaped locals considered global.
1711 (ref_maybe_used_by_stmt_p): Adjust.
1712 * ipa-fnsummary.cc (points_to_local_or_readonly_memory_p):
1713 Likewise.
1714 * tree-ssa-dse.cc (dse_classify_store): Likewise.
1715 * trans-mem.cc (thread_private_new_memory): Likewise, but
1716 consider escaped locals global.
1717 * tree-ssa-dce.cc (mark_stmt_if_obviously_necessary): Likewise.
1718
1719 2022-04-07 Richard Biener <rguenther@suse.de>
1720
1721 PR tree-optimization/105185
1722 * tree-ssa-sccvn.cc (visit_reference_op_call): Simplify
1723 modref query again.
1724
1725 2022-04-07 Tamar Christina <tamar.christina@arm.com>
1726
1727 PR target/104049
1728 * config/aarch64/aarch64-simd.md
1729 (aarch64_reduc_plus_internal<mode>): Fix RTL and rename to...
1730 (reduc_plus_scal_<mode>): ... This.
1731 (reduc_plus_scal_v4sf): Moved.
1732 (aarch64_reduc_plus_internalv2si): Fix RTL and rename to...
1733 (reduc_plus_scal_v2si): ... This.
1734
1735 2022-04-07 Jakub Jelinek <jakub@redhat.com>
1736
1737 PR tree-optimization/102586
1738 * langhooks.h (struct lang_hooks_for_types): Add classtype_as_base
1739 langhook.
1740 * langhooks-def.h (LANG_HOOKS_CLASSTYPE_AS_BASE): Define.
1741 (LANG_HOOKS_FOR_TYPES_INITIALIZER): Add it.
1742 * gimple-fold.cc (clear_padding_type): Use ftype instead of
1743 TREE_TYPE (field) some more. For artificial FIELD_DECLs without
1744 name try the lang_hooks.types.classtype_as_base langhook and
1745 if it returns non-NULL, use that instead of ftype for recursive call.
1746
1747 2022-04-07 Jakub Jelinek <jakub@redhat.com>
1748
1749 PR tree-optimization/105150
1750 * tree.cc (tree_builtin_call_types_compatible_p): New function.
1751 (get_call_combined_fn): Use it.
1752
1753 2022-04-07 Richard Biener <rguenther@suse.de>
1754
1755 PR middle-end/105165
1756 * tree-complex.cc (expand_complex_asm): Sorry for asm goto
1757 _Complex outputs.
1758
1759 2022-04-07 liuhongt <hongtao.liu@intel.com>
1760
1761 * config/i386/sse.md (<sse2_avx2>_andnot<mode>3_mask):
1762 Removed.
1763 (<sse>_andnot<mode>3<mask_name>): Disable V*HFmode patterns
1764 for mask_applied.
1765 (<code><mode>3<mask_name>): Ditto.
1766 (*<code><mode>3<mask_name>): Ditto.
1767 (VFB_128_256): Adjust condition of V8HF/V16HFmode according to
1768 real instruction.
1769 (VFB_512): Ditto.
1770 (VFB): Ditto.
1771
1772 2022-04-06 Jakub Jelinek <jakub@redhat.com>
1773
1774 PR rtl-optimization/104985
1775 * combine.cc (struct undo): Add where.regno member.
1776 (do_SUBST_MODE): Rename to ...
1777 (subst_mode): ... this. Change first argument from rtx * into int,
1778 operate on regno_reg_rtx[regno] and save regno into where.regno.
1779 (SUBST_MODE): Remove.
1780 (try_combine): Use subst_mode instead of SUBST_MODE, change first
1781 argument from regno_reg_rtx[whatever] to whatever. For UNDO_MODE, use
1782 regno_reg_rtx[undo->where.regno] instead of *undo->where.r.
1783 (undo_to_marker): For UNDO_MODE, use regno_reg_rtx[undo->where.regno]
1784 instead of *undo->where.r.
1785 (simplify_set): Use subst_mode instead of SUBST_MODE, change first
1786 argument from regno_reg_rtx[whatever] to whatever.
1787
1788 2022-04-06 Jakub Jelinek <jakub@redhat.com>
1789
1790 PR target/105069
1791 * config/sh/sh.opt (mdiv=): Add Save.
1792
1793 2022-04-06 Martin Liska <mliska@suse.cz>
1794
1795 PR driver/105096
1796 * common.opt: Document properly based on what it does.
1797 * gcc.cc (display_help): Unify with what we have in common.opt.
1798 * opts.cc (common_handle_option): Do not print undocumented
1799 options.
1800
1801 2022-04-06 Xi Ruoyao <xry111@mengyan1223.wang>
1802
1803 * config/mips/mips.cc (mips_fpr_return_fields): Ignore
1804 cxx17_empty_base_field_p fields and set an indicator.
1805 (mips_return_in_msb): Adjust for mips_fpr_return_fields change.
1806 (mips_function_value_1): Inform psABI change about C++17 empty
1807 bases.
1808
1809 2022-04-06 Jakub Jelinek <jakub@redhat.com>
1810
1811 PR tree-optimization/105150
1812 * gimple.cc (gimple_builtin_call_types_compatible_p): Use
1813 builtin_decl_explicit here...
1814 (gimple_call_builtin_p, gimple_call_combined_fn): ... rather than
1815 here.
1816
1817 2022-04-06 Richard Biener <rguenther@suse.de>
1818
1819 PR tree-optimization/105173
1820 * tree-ssa-reassoc.cc (find_insert_point): Get extra
1821 insert_before output argument and compute it.
1822 (insert_stmt_before_use): Adjust.
1823 (rewrite_expr_tree): Likewise.
1824
1825 2022-04-06 Richard Biener <rguenther@suse.de>
1826
1827 PR ipa/105166
1828 * ipa-modref-tree.cc (modref_access_node::get_ao_ref ): Bail
1829 out for non-pointer arguments.
1830
1831 2022-04-06 Richard Biener <rguenther@suse.de>
1832
1833 PR tree-optimization/105163
1834 * tree-ssa-reassoc.cc (repropagate_negates): Avoid propagating
1835 negated abnormals.
1836
1837 2022-04-06 Jakub Jelinek <jakub@redhat.com>
1838
1839 PR tree-optimization/105150
1840 * gimple.cc (gimple_call_builtin_p, gimple_call_combined_fn):
1841 For BUILT_IN_NORMAL calls, call gimple_builtin_call_types_compatible_p
1842 preferrably on builtin_decl_explicit decl rather than fndecl.
1843 * tree-ssa-strlen.cc (valid_builtin_call): Don't call
1844 gimple_builtin_call_types_compatible_p here.
1845
1846 2022-04-06 Richard Sandiford <richard.sandiford@arm.com>
1847
1848 PR tree-optimization/103761
1849 * tree-vect-stmts.cc (check_load_store_for_partial_vectors): Replace
1850 the ncopies parameter with an slp_node parameter. Calculate the
1851 number of vectors based on it and vectype. Rename lambda to
1852 group_memory_nvectors.
1853 (vectorizable_store, vectorizable_load): Update calls accordingly.
1854
1855 2022-04-06 Martin Liska <mliska@suse.cz>
1856
1857 * doc/invoke.texi: Document it.
1858
1859 2022-04-06 Richard Biener <rguenther@suse.de>
1860
1861 PR tree-optimization/105148
1862 * tree-ssa-loop-ivopts.cc (idx_record_use): Walk raw operands
1863 2 and 3 of ARRAY_REFs.
1864
1865 2022-04-06 Roger Sayle <roger@nextmovesoftware.com>
1866
1867 * config/i386/sse.md (ANDNOT_MODE): New mode iterator for TF and V1TI.
1868 (*andnottf3): Replace with...
1869 (*andnot<mode>3): New define_insn using ANDNOT_MODE.
1870
1871 2022-04-06 Richard Biener <rguenther@suse.de>
1872
1873 PR tree-optimization/105142
1874 * gimple-fold.h (maybe_fold_and_comparisons): Add defaulted
1875 basic-block parameter.
1876 (maybe_fold_or_comparisons): Likewise.
1877 * gimple-fold.cc (follow_outer_ssa_edges): New.
1878 (maybe_fold_comparisons_from_match_pd): Use follow_outer_ssa_edges
1879 when an outer condition basic-block is specified.
1880 (and_comparisons_1, and_var_with_comparison,
1881 and_var_with_comparison_1, or_comparisons_1,
1882 or_var_with_comparison, or_var_with_comparison_1): Receive and pass
1883 down the outer condition basic-block.
1884 * tree-ssa-ifcombine.cc (ifcombine_ifandif): Pass down the
1885 basic-block of the outer condition.
1886
1887 2022-04-06 Kewen Lin <linkw@linux.ibm.com>
1888
1889 PR target/105002
1890 * config/rs6000/rs6000.cc (rs6000_maybe_emit_maxc_minc): Support more
1891 comparison codes UNLT/UNLE/UNGT/UNGE.
1892
1893 2022-04-05 David Malcolm <dmalcolm@redhat.com>
1894
1895 * doc/extend.texi (Common Function Attributes): Document that
1896 'access' does not imply 'nonnull'.
1897
1898 2022-04-05 Uroš Bizjak <ubizjak@gmail.com>
1899
1900 PR target/105139
1901 * config/i386/mmx.md (*movv2qi_internal):
1902 Change insn mode of alternative 5 to HF for TARGET_AVX512FP16.
1903
1904 2022-04-05 Richard Sandiford <richard.sandiford@arm.com>
1905
1906 * config/aarch64/aarch64.md (aarch64_cpymemdi): Turn into a
1907 define_expand and turn operands 0 and 1 from REGs to MEMs.
1908 (*aarch64_cpymemdi): New pattern.
1909 (aarch64_setmemdi): Turn into a define_expand and turn operand 0
1910 from a REG to a MEM.
1911 (*aarch64_setmemdi): New pattern.
1912 * config/aarch64/aarch64.cc (aarch64_expand_cpymem_mops): Use
1913 copy_to_mode_reg on all three registers. Replace the original
1914 MEM addresses rather than creating wild reads and writes.
1915 (aarch64_expand_setmem_mops): Likewise for the size and for the
1916 destination memory and address.
1917
1918 2022-04-05 Richard Sandiford <richard.sandiford@arm.com>
1919
1920 PR target/103147
1921 * config/aarch64/aarch64-protos.h (aarch64_simd_switcher): New class.
1922 * config/aarch64/aarch64-sve-builtins.h (sve_switcher): Inherit
1923 from aarch64_simd_switcher.
1924 * config/aarch64/aarch64-builtins.cc (aarch64_simd_tuple_modes):
1925 New variable.
1926 (aarch64_lookup_simd_builtin_type): Use it instead of TYPE_MODE.
1927 (register_tuple_type): Add more asserts. Expect the alignment
1928 of the structure to be subject to flag_pack_struct and
1929 maximum_field_alignment. Set aarch64_simd_tuple_modes.
1930 (aarch64_simd_switcher::aarch64_simd_switcher): New function.
1931 (aarch64_simd_switcher::~aarch64_simd_switcher): Likewise.
1932 (handle_arm_neon_h): Hold an aarch64_simd_switcher throughout.
1933 (aarch64_general_init_builtins): Hold an aarch64_simd_switcher
1934 while calling aarch64_init_simd_builtins.
1935 * config/aarch64/aarch64-sve-builtins.cc (sve_switcher::sve_switcher)
1936 (sve_switcher::~sve_switcher): Remove code now performed by
1937 aarch64_simd_switcher.
1938
1939 2022-04-05 Richard Sandiford <richard.sandiford@arm.com>
1940
1941 PR target/104897
1942 * config/aarch64/aarch64-sve-builtins.cc
1943 (function_resolver::infer_vector_or_tuple_type): Use error_n
1944 for "%d vectors" messages.
1945
1946 2022-04-05 Chung-Lin Tang <cltang@codesourcery.com>
1947
1948 * omp-low.cc (lower_omp_target): Use outer context looked-up 'var' as
1949 argument to lang_hooks.decls.omp_array_data, instead of 'ovar' from
1950 current clause.
1951
1952 2022-04-05 Richard Biener <rguenther@suse.de>
1953
1954 PR c/105151
1955 * passes.def (pass_walloca): Move early instance into
1956 pass_build_ssa_passes to make SSA form available.
1957
1958 2022-04-05 liuhongt <hongtao.liu@intel.com>
1959
1960 PR target/101908
1961 * config/i386/i386.cc (ix86_split_stlf_stall_load): New
1962 function
1963 (ix86_reorg): Call ix86_split_stlf_stall_load.
1964 * config/i386/i386.opt (-param=x86-stlf-window-ninsns=): New
1965 param.
1966
1967 2022-04-05 Alexandre Oliva <oliva@adacore.com>
1968
1969 * targhooks.cc (default_zero_call_used_regs): Attempt to group
1970 regs that the target refuses to use in their natural modes.
1971 (zcur_select_mode_rtx): New.
1972 * regs.h (struct target_regs): Add x_hard_regno_max_nregs.
1973 (hard_regno_max_nregs): Define.
1974 * reginfo.cc (init_reg_modes_target): Set hard_regno_max_nregs.
1975
1976 2022-04-04 Alex Coplan <alex.coplan@arm.com>
1977
1978 * doc/match-and-simplify.texi: Fix typos.
1979
1980 2022-04-04 Jakub Jelinek <jakub@redhat.com>
1981
1982 PR target/105144
1983 * config/aarch64/t-aarch64 (s-aarch64-tune-md): Do move-if-change
1984 only if configured with --enable-maintainer-mode, otherwise compare
1985 tmp-aarch64-tune.md with $(srcdir)/config/aarch64/aarch64-tune.md and
1986 if they differ, emit a message and fail.
1987
1988 2022-04-04 Jakub Jelinek <jakub@redhat.com>
1989
1990 PR target/105144
1991 * config/aarch64/t-aarch64 (s-mddeps): Depend on s-aarch64-tune-md.
1992 * config/aarch64/aarch64-tune.md: Regenerated.
1993
1994 2022-04-04 Richard Biener <rguenther@suse.de>
1995
1996 PR tree-optimization/105132
1997 * tree-vect-stmts.cc (vectorizable_operation): Check that
1998 the input vectors have the same number of elements.
1999
2000 2022-04-04 Richard Biener <rguenther@suse.de>
2001
2002 PR middle-end/105140
2003 * fold-const.cc (fold_convertible_p): Allow a TYPE_P arg.
2004
2005 2022-04-03 Jeff Law <jeffreyalaw@gmail.com>
2006
2007 PR target/104987
2008 * config/iq2000/iq2000.md (bbi): New attribute, default to no.
2009 (delay slot descripts): Use different delay slot description when
2010 the insn as the "bbi" attribute.
2011 (bbi, bbin patterns): Set the bbi attribute to yes.
2012
2013 2022-04-03 Jakub Jelinek <jakub@redhat.com>
2014
2015 PR target/105123
2016 * config/i386/i386-expand.cc (ix86_expand_vector_init_general): Avoid
2017 using word as target for expand_simple_binop when doing ASHIFT and
2018 IOR.
2019
2020 2022-04-02 Xi Ruoyao <xry111@mengyan1223.wang>
2021
2022 * config/mips/mips.cc (mips_function_arg): Check if DECL_SIZE is
2023 NULL before dereferencing it.
2024
2025 2022-04-01 Qing Zhao <qing.zhao@oracle.com>
2026
2027 * config/i386/i386.cc (zero_all_st_registers): Return the value of
2028 num_of_st.
2029 (ix86_zero_call_used_regs): Update zeroed_hardregs set according to
2030 the return value of zero_all_st_registers.
2031 * doc/tm.texi: Update the documentation of TARGET_ZERO_CALL_USED_REGS.
2032 * function.cc (gen_call_used_regs_seq): Add an assertion.
2033 * target.def: Update the documentation of TARGET_ZERO_CALL_USED_REGS.
2034
2035 2022-04-01 Xi Ruoyao <xry111@mengyan1223.wang>
2036
2037 PR target/102024
2038 * config/mips/mips.cc (mips_function_arg): Ignore zero-width
2039 fields, and inform if it causes a psABI change.
2040
2041 2022-04-01 Xi Ruoyao <xry111@mengyan1223.wang>
2042
2043 PR target/102024
2044 * config/mips/mips.cc (mips_fpr_return_fields): Detect C++
2045 zero-width bit-fields and set up an indicator.
2046 (mips_return_in_msb): Adapt for mips_fpr_return_fields change.
2047 (mips_function_value_1): Diagnose when the presense of a C++
2048 zero-width bit-field changes function returning in GCC 12.
2049
2050 2022-04-01 Jakub Jelinek <jakub@redhat.com>
2051
2052 PR tree-optimization/104645
2053 * tree-ssa-phiopt.cc (value_replacement): If assign has
2054 CONVERT_EXPR_CODE_P rhs_code, treat it like a preparation
2055 statement with constant evaluation.
2056
2057 2022-04-01 YunQiang Su <yunqiang.su@cipunited.com>
2058
2059 * config/mips/mips.cc (mips_expand_prologue):
2060 IPL is 8bit for MCU ASE.
2061
2062 2022-03-31 Bill Schmidt <wschmidt@linux.ibm.com>
2063
2064 PR target/104004
2065 * config/rs6000/rs6000-builtins.def (MFFSL): Mark nosoft.
2066 (MTFSB0): Likewise.
2067 (MTFSB1): Likewise.
2068 (SET_FPSCR_RN): Likewise.
2069 (SET_FPSCR_DRN): Mark nosoft and no32bit.
2070
2071 2022-03-31 Thomas Schwinge <thomas@codesourcery.com>
2072
2073 * doc/options.texi (Option file format): Clarifications around
2074 option definition records' help texts.
2075
2076 2022-03-31 Thomas Schwinge <thomas@codesourcery.com>
2077
2078 * optc-gen.awk <END>: Fix "Multiple different help strings" error
2079 diagnostic.
2080
2081 2022-03-31 Andre Vieira <andre.simoesdiasvieira@arm.com>
2082
2083 * config/aarch64/aarch64.cc (aarch64_vector_costs): Define
2084 determine_suggested_unroll_factor and m_has_avg.
2085 (determine_suggested_unroll_factor): New function.
2086 (aarch64_vector_costs::add_stmt_cost): Check for a qualifying pattern
2087 to set m_nosve_pattern.
2088 (aarch64_vector_costs::finish_costs): Use
2089 determine_suggested_unroll_factor.
2090 * config/aarch64/aarch64.opt (aarch64-vect-unroll-limit): New.
2091 * doc/invoke.texi: (aarch64-vect-unroll-limit): Document new option.
2092
2093 2022-03-31 Martin Jambor <mjambor@suse.cz>
2094
2095 PR ipa/103083
2096 * ipa-prop.h (ipa_ancestor_jf_data): New flag keep_null;
2097 (ipa_get_jf_ancestor_keep_null): New function.
2098 * ipa-prop.cc (ipa_set_ancestor_jf): Initialize keep_null field of the
2099 ancestor function.
2100 (compute_complex_assign_jump_func): Pass false to keep_null
2101 parameter of ipa_set_ancestor_jf.
2102 (compute_complex_ancestor_jump_func): Pass true to keep_null
2103 parameter of ipa_set_ancestor_jf.
2104 (update_jump_functions_after_inlining): Carry over keep_null from the
2105 original ancestor jump-function or merge them.
2106 (ipa_write_jump_function): Stream keep_null flag.
2107 (ipa_read_jump_function): Likewise.
2108 (ipa_print_node_jump_functions_for_edge): Print the new flag.
2109 * ipa-cp.cc (class ipcp_bits_lattice): Make various getters const. New
2110 member function known_nonzero_p.
2111 (ipcp_bits_lattice::known_nonzero_p): New.
2112 (ipcp_bits_lattice::meet_with_1): New parameter drop_all_ones,
2113 observe it.
2114 (ipcp_bits_lattice::meet_with): Likewise.
2115 (propagate_bits_across_jump_function): Simplify. Pass true in
2116 drop_all_ones when it is necessary.
2117 (propagate_aggs_across_jump_function): Take care of keep_null
2118 flag.
2119 (ipa_get_jf_ancestor_result): Propagate NULL accross keep_null
2120 jump functions.
2121
2122 2022-03-31 Martin Jambor <mjambor@suse.cz>
2123
2124 PR ipa/102513
2125 * ipa-cp.cc (decide_whether_version_node): Skip scalar values
2126 which do not fit the known value_range.
2127
2128 2022-03-31 Martin Jambor <mjambor@suse.cz>
2129
2130 PR ipa/103171
2131 * ipa-prop.cc (propagate_controlled_uses): Add a LOAD reference
2132 always when an ADDR_EXPR constant is known to reach a load because
2133 of inlining, not just when removing an ADDR reference.
2134
2135 2022-03-31 Richard Biener <rguenther@suse.de>
2136
2137 PR tree-optimization/105109
2138 * tree-ssa.cc (execute_update_addresses_taken): Suppress
2139 diagnostics on the load of the other complex component.
2140
2141 2022-03-31 Tom de Vries <tdevries@suse.de>
2142
2143 * config/nvptx/nvptx.h (ASM_SPEC): Use "-m sm_35" for -misa=sm_30.
2144
2145 2022-03-31 Richard Biener <rguenther@suse.de>
2146
2147 PR rtl-optimization/105091
2148 * gimple-expr.cc (mark_addressable): Handle TARGET_MEM_REF
2149 bases.
2150
2151 2022-03-31 Richard Biener <rguenther@suse.de>
2152
2153 Revert:
2154 2021-09-13 Richard Earnshaw <rearnsha@arm.com>
2155
2156 PR target/102125
2157 * gimple-fold.c (gimple_fold_builtin_memory_op): Allow folding
2158 memcpy if the size is not more than MOVE_MAX * MOVE_RATIO.
2159
2160 2022-03-31 Sebastian Huber <sebastian.huber@embedded-brains.de>
2161
2162 * gcov-io.cc (gcov_read_string): Reword documentation comment.
2163
2164 2022-03-30 Bill Schmidt <wschmidt@linux.ibm.com>
2165
2166 * config/rs6000/rs6000-builtins.def (NEG_V16QI): Move to [altivec]
2167 stanza.
2168 (NEG_V4SF): Likewise.
2169 (NEG_V4SI): Likewise.
2170 (NEG_V8HI): Likewise.
2171 (NEG_V2DF): Move to [vsx] stanza.
2172 (NEG_V2DI): Likewise.
2173
2174 2022-03-30 Vladimir N. Makarov <vmakarov@redhat.com>
2175
2176 PR middle-end/105032
2177 * lra-assigns.cc (find_reload_regno_insns): Modify loop condition.
2178
2179 2022-03-30 Tom de Vries <tdevries@suse.de>
2180 Tobias Burnus <tobias@codesourcery.com>
2181
2182 * doc/invoke.texi (march): Document __PTX_SM__.
2183 (mptx): Document __PTX_ISA_VERSION_MAJOR__ and
2184 __PTX_ISA_VERSION_MINOR__.
2185
2186 2022-03-30 Jakub Jelinek <jakub@redhat.com>
2187
2188 PR sanitizer/105093
2189 * ubsan.cc (instrument_object_size): If t is equal to inner and
2190 is a decl other than global var, punt. When emitting call to
2191 UBSAN_OBJECT_SIZE ifn, make sure base is addressable.
2192
2193 2022-03-30 Jakub Jelinek <jakub@redhat.com>
2194
2195 PR tree-optimization/105094
2196 * gimple-ssa-store-merging.cc (mem_valid_for_store_merging): Punt if
2197 bitsize <= 0 rather than just == 0.
2198
2199 2022-03-30 Tom de Vries <tdevries@suse.de>
2200
2201 * doc/invoke.texi (misa, mptx): Update.
2202 (march, march-map): Add.
2203
2204 2022-03-30 Thomas Schwinge <thomas@codesourcery.com>
2205
2206 * opt-functions.awk (n_args): New function.
2207 (lang_enabled_by): Merge function into...
2208 * optc-gen.awk <END>: ... sole user here.
2209 Improve diagnostics.
2210
2211 2022-03-29 Marek Polacek <polacek@redhat.com>
2212 Jakub Jelinek <jakub@redhat.com>
2213
2214 PR middle-end/103597
2215 * gimplify.cc (collect_fallthrough_labels): Don't push UNUSED_LABEL_Ps
2216 into labels. Maybe set prev to the statement preceding UNUSED_LABEL_P.
2217 (gimplify_cond_expr): Set UNUSED_LABEL_P.
2218 * tree.h (UNUSED_LABEL_P): New.
2219
2220 2022-03-29 Michael Meissner <meissner@linux.ibm.com>
2221
2222 * config/rs6000/vsx.md (vsx_extract_<mode>): Allow destination to
2223 be any VSX register.
2224
2225 2022-03-29 Richard Earnshaw <rearnsha@arm.com>
2226
2227 PR target/102024
2228 * config/aarch64/aarch64.cc (aapcs_vfp_sub_candidate): Handle
2229 zero-sized bit-fields. Detect cases where a warning may be needed.
2230 (aarch64_vfp_is_call_or_return_candidate): Emit a note if a
2231 zero-sized bit-field has caused parameter passing to change.
2232
2233 2022-03-29 Richard Earnshaw <rearnsha@arm.com>
2234
2235 PR target/102024
2236 * config/arm/arm.cc (aapcs_vfp_sub_candidate): Handle zero-sized
2237 bit-fields. Detect cases where a warning may be needed.
2238 (aapcs_vfp_is_call_or_return_candidate): Emit a note if
2239 a zero-sized bit-field has caused parameter passing to change.
2240
2241 2022-03-29 Richard Earnshaw <rearnsha@arm.com>
2242
2243 PR target/96882
2244 * config/arm/arm.cc (arm_get_pcs_model): Disable selection of
2245 ARM_PCS_AAPCS_LOCAL.
2246
2247 2022-03-29 Tom de Vries <tdevries@suse.de>
2248
2249 PR target/104857
2250 * config/nvptx/nvptx-c.cc (nvptx_cpu_cpp_builtins): Emit
2251 __PTX_ISA_VERSION_MAJOR__ and __PTX_ISA_VERSION_MINOR__.
2252 * config/nvptx/nvptx.cc (ptx_version_to_number): New function.
2253 * config/nvptx/nvptx-protos.h (ptx_version_to_number): Declare.
2254
2255 2022-03-29 Tom de Vries <tdevries@suse.de>
2256
2257 * config/nvptx/nvptx.opt (m64): Update help text to reflect that it
2258 is ignored.
2259
2260 2022-03-29 Tom de Vries <tdevries@suse.de>
2261
2262 PR target/104714
2263 * config/nvptx/nvptx.opt (march-map=*): Add aliases.
2264
2265 2022-03-29 Jan Hubicka <hubicka@ucw.cz>
2266
2267 * config/i386/i386-builtins.cc (ix86_vectorize_builtin_gather): Test
2268 TARGET_USE_GATHER_2PARTS and TARGET_USE_GATHER_4PARTS.
2269 * config/i386/i386.h (TARGET_USE_GATHER_2PARTS): New macro.
2270 (TARGET_USE_GATHER_4PARTS): New macro.
2271 * config/i386/x86-tune.def (X86_TUNE_USE_GATHER_2PARTS): New tune
2272 (X86_TUNE_USE_GATHER_4PARTS): New tune
2273
2274 2022-03-29 Tom de Vries <tdevries@suse.de>
2275
2276 * config/nvptx/nvptx.opt (march): Add alias of misa.
2277
2278 2022-03-29 Chenghua Xu <xuchenghua@loongson.cn>
2279 Lulu Cheng <chenglulu@loongson.cn>
2280
2281 * doc/install.texi: Add LoongArch options section.
2282 * doc/invoke.texi: Add LoongArch options section.
2283 * doc/md.texi: Add LoongArch options section.
2284
2285 2022-03-29 Chenghua Xu <xuchenghua@loongson.cn>
2286 Lulu Cheng <chenglulu@loongson.cn>
2287
2288 * config/loongarch/loongarch-c.cc
2289
2290 2022-03-29 Chenghua Xu <xuchenghua@loongson.cn>
2291 Lulu Cheng <chenglulu@loongson.cn>
2292
2293 * config/loongarch/larchintrin.h: New file.
2294 * config/loongarch/loongarch-builtins.cc: New file.
2295
2296 2022-03-29 Chenghua Xu <xuchenghua@loongson.cn>
2297 Lulu Cheng <chenglulu@loongson.cn>
2298
2299 * config/host-linux.cc: Add LoongArch support.
2300 * config/loongarch/loongarch-protos.h: New file.
2301 * config/loongarch/loongarch-tune.h: Likewise.
2302 * config/loongarch/loongarch.cc: Likewise.
2303 * config/loongarch/loongarch.h: Likewise.
2304
2305 2022-03-29 Chenghua Xu <xuchenghua@loongson.cn>
2306 Lulu Cheng <chenglulu@loongson.cn>
2307
2308 * config/loongarch/constraints.md: New file.
2309 * config/loongarch/generic.md: New file.
2310 * config/loongarch/la464.md: New file.
2311 * config/loongarch/loongarch-ftypes.def: New file.
2312 * config/loongarch/loongarch-modes.def: New file.
2313 * config/loongarch/loongarch.md: New file.
2314 * config/loongarch/predicates.md: New file.
2315 * config/loongarch/sync.md: New file.
2316
2317 2022-03-29 Chenghua Xu <xuchenghua@loongson.cn>
2318 Lulu Cheng <chenglulu@loongson.cn>
2319
2320 * configure: Regenerate file.
2321
2322 2022-03-29 Chenghua Xu <xuchenghua@loongson.cn>
2323 Lulu Cheng <chenglulu@loongson.cn>
2324
2325 * common/config/loongarch/loongarch-common.cc: New file.
2326 * config/loongarch/genopts/genstr.sh: New file.
2327 * config/loongarch/genopts/loongarch-strings: New file.
2328 * config/loongarch/genopts/loongarch.opt.in: New file.
2329 * config/loongarch/loongarch-str.h: New file.
2330 * config/loongarch/gnu-user.h: New file.
2331 * config/loongarch/linux.h: New file.
2332 * config/loongarch/loongarch-cpu.cc: New file.
2333 * config/loongarch/loongarch-cpu.h: New file.
2334 * config/loongarch/loongarch-def.c: New file.
2335 * config/loongarch/loongarch-def.h: New file.
2336 * config/loongarch/loongarch-driver.cc: New file.
2337 * config/loongarch/loongarch-driver.h: New file.
2338 * config/loongarch/loongarch-opts.cc: New file.
2339 * config/loongarch/loongarch-opts.h: New file.
2340 * config/loongarch/loongarch.opt: New file.
2341 * config/loongarch/t-linux: New file.
2342 * config/loongarch/t-loongarch: New file.
2343 * config.gcc: Add LoongArch support.
2344 * configure.ac: Add LoongArch support.
2345
2346 2022-03-29 Thomas Schwinge <thomas@codesourcery.com>
2347
2348 * opt-functions.awk (lang_enabled_by): Fix 'enabledby_negargs'
2349 typo.
2350
2351 2022-03-29 Richard Biener <rguenther@suse.de>
2352
2353 PR tree-optimization/105080
2354 * tree-ssa-strlen.cc (printf_strlen_execute): Always init
2355 loops and SCEV.
2356
2357 2022-03-28 Indu Bhagat <indu.bhagat@oracle.com>
2358
2359 * ctfout.cc (ctf_preprocess): Use ctfc_get_num_ctf_vars instead.
2360 (output_ctf_vars): Likewise.
2361
2362 2022-03-28 Jason Merrill <jason@redhat.com>
2363
2364 PR c++/59426
2365 * doc/extend.texi: Refer to __is_trivial instead of __is_pod.
2366
2367 2022-03-28 H.J. Lu <hjl.tools@gmail.com>
2368
2369 PR target/105068
2370 * config/i386/sse.md (*ssse3_pshufbv8qi3): Also replace "Yv" with
2371 "Yw" in clobber.
2372
2373 2022-03-28 Tom de Vries <tdevries@suse.de>
2374
2375 PR target/104818
2376 * config/nvptx/gen-opt.sh (ptx_isa): Improve help text.
2377 * config/nvptx/nvptx-gen.opt: Regenerate.
2378 * config/nvptx/nvptx.opt (misa, mptx, ptx_version): Improve help text.
2379 * config/nvptx/t-nvptx (s-nvptx-gen-opt): Add missing dependency on
2380 gen-opt.sh.
2381
2382 2022-03-28 David Malcolm <dmalcolm@redhat.com>
2383
2384 PR analyzer/104308
2385 * gimple-fold.cc (gimple_fold_builtin_memory_op): When optimizing
2386 to loads then stores, set the location of the new load stmt.
2387
2388 2022-03-28 Richard Biener <rguenther@suse.de>
2389
2390 PR tree-optimization/105070
2391 * tree-switch-conversion.h
2392 (bit_test_cluster::hoist_edge_and_branch_if_true): Add location
2393 argument.
2394 * tree-switch-conversion.cc
2395 (bit_test_cluster::hoist_edge_and_branch_if_true): Annotate
2396 cond with location.
2397 (bit_test_cluster::emit): Annotate all generated expressions
2398 with location.
2399
2400 2022-03-28 Andre Vieira <andre.simoesdiasvieira@arm.com>
2401
2402 * config/aarch64/aarch64-cores.def: Update Neoverse N2 core entry.
2403
2404 2022-03-28 liuhongt <hongtao.liu@intel.com>
2405
2406 PR target/105066
2407 * config/i386/sse.md (vec_set<mode>_0): Change attr "isa" of
2408 alternative 4 from sse4_noavx to noavx.
2409
2410 2022-03-28 Jakub Jelinek <jakub@redhat.com>
2411
2412 PR tree-optimization/105056
2413 * tree-predcom.cc (component::component): Initialize also comp_step.
2414
2415 2022-03-27 H.J. Lu <hjl.tools@gmail.com>
2416
2417 PR target/105068
2418 * config/i386/sse.md (*ssse3_pshufbv8qi3): Replace "Yv" with
2419 "Yw".
2420
2421 2022-03-26 Roger Sayle <roger@nextmovesoftware.com>
2422
2423 PR middle-end/104885
2424 * calls.cc (mark_stack_region_used): Check that the region
2425 is within the allocated size of stack_usage_map.
2426
2427 2022-03-26 Jakub Jelinek <jakub@redhat.com>
2428
2429 PR rtl-optimization/103775
2430 * recog.cc (check_invalid_inc_dec): New function.
2431 (insn_invalid_p): Return 1 if REG_INC operand overlaps
2432 any stored REGs.
2433
2434 2022-03-26 H.J. Lu <hjl.tools@gmail.com>
2435
2436 PR target/105058
2437 * config/i386/sse.md (loadiwkey): Replace "v" with "x".
2438 (aes<aesklvariant>u8): Likewise.
2439
2440 2022-03-26 H.J. Lu <hjl.tools@gmail.com>
2441
2442 PR target/105052
2443 * config/i386/sse.md (ssse3_ph<plusminus_mnemonic>wv4hi3):
2444 Replace "Yv" with "x".
2445 (ssse3_ph<plusminus_mnemonic>dv2si3): Likewise.
2446 (ssse3_psign<mode>3): Likewise.
2447
2448 2022-03-26 Hans-Peter Nilsson <hp@axis.com>
2449
2450 * reload.cc (find_reloads): Align comment with code where
2451 considering the intersection of register classes then tweaking the
2452 regclass for the current alternative or rejecting it.
2453
2454 2022-03-25 Christophe Lyon <christohe.lyon@arm.com>
2455
2456 PR target/104882
2457 Revert
2458 2021-06-11 Christophe Lyon <christophe.lyon@linaro.org>
2459
2460 * config/arm/mve.md (mve_vec_unpack<US>_lo_<mode>): Delete.
2461 (mve_vec_unpack<US>_hi_<mode>): Delete.
2462 (@mve_vec_pack_trunc_lo_<mode>): Delete.
2463 (mve_vmovntq_<supf><mode>): Remove '@' prefix.
2464 * config/arm/neon.md (vec_unpack<US>_hi_<mode>): Move back
2465 from vec-common.md.
2466 (vec_unpack<US>_lo_<mode>): Likewise.
2467 (vec_pack_trunc_<mode>): Rename from
2468 neon_quad_vec_pack_trunc_<mode>.
2469 * config/arm/vec-common.md (vec_unpack<US>_hi_<mode>): Delete.
2470 (vec_unpack<US>_lo_<mode>): Delete.
2471 (vec_pack_trunc_<mode>): Delete.
2472
2473 2022-03-25 Vladimir N. Makarov <vmakarov@redhat.com>
2474
2475 PR middle-end/104971
2476 * lra-lives.cc (process_bb_lives): Check hard_regs_live for hard
2477 regs to clear remove_p flag.
2478
2479 2022-03-25 Richard Biener <rguenther@suse.de>
2480
2481 PR tree-optimization/105053
2482 * tree-vect-loop.cc (vect_create_epilog_for_reduction): Pick
2483 the correct live-out stmt for a reduction chain.
2484
2485 2022-03-25 Richard Biener <rguenther@suse.de>
2486
2487 PR middle-end/105049
2488 * tree.cc (uniform_vector_p): Recurse for VECTOR_CST or
2489 CONSTRUCTOR first elements.
2490
2491 2022-03-25 Tobias Burnus <tobias@codesourcery.com>
2492
2493 PR analyzer/103533
2494 * doc/invoke.texi (Static Analyzer Options): Move
2495 @ignore block after @gccoptlist's '}' for 'make pdf'.
2496
2497 2022-03-25 David Malcolm <dmalcolm@redhat.com>
2498
2499 PR analyzer/104954
2500 * doc/invoke.texi (Static Analyzer Options): Add
2501 -fdump-analyzer-untracked.
2502
2503 2022-03-25 Avinash Sonawane <rootkea@gmail.com>
2504
2505 PR analyzer/103533
2506 * doc/invoke.texi: Document that enabling taint analyzer
2507 checker disables some warnings from `-fanalyzer`.
2508
2509 2022-03-24 Alexandre Oliva <oliva@adacore.com>
2510
2511 PR debug/104564
2512 * gimple-harden-conditionals.cc (detach_value): Keep temps
2513 anonymous.
2514
2515 2022-03-24 Alexandre Oliva <oliva@adacore.com>
2516
2517 PR middle-end/104975
2518 * gimple-harden-conditionals.cc
2519 (pass_harden_compares::execute): Force split in case of
2520 multiple edges.
2521
2522 2022-03-24 Jakub Jelinek <jakub@redhat.com>
2523
2524 PR c++/105035
2525 * fold-const.cc (operand_equal_p) <case COMPONENT_REF>: If either
2526 field0 or field1 is not a FIELD_DECL, return false.
2527
2528 2022-03-24 Richard Biener <rguenther@suse.de>
2529
2530 * tree-predcom.cc (chain::chain): Add CTOR.
2531 (component::component): Likewise.
2532 (pcom_worker::release_chain): Use delete.
2533 (release_components): Likewise.
2534 (pcom_worker::filter_suitable_components): Likewise.
2535 (pcom_worker::split_data_refs_to_components): Use new.
2536 (make_invariant_chain): Likewise.
2537 (make_rooted_chain): Likewise.
2538 (pcom_worker::combine_chains): Likewise.
2539 * tree-vect-loop.cc (vect_create_epilog_for_reduction):
2540 Make sure to release previously constructed scalar_results.
2541 * tree-vect-stmts.cc (vectorizable_load): Use auto_vec
2542 for vec_offsets.
2543 * vr-values.cc (simplify_using_ranges::~simplify_using_ranges):
2544 Release m_flag_set_edges.
2545
2546 2022-03-24 Siddhesh Poyarekar <siddhesh@gotplt.org>
2547
2548 PR tree-optimization/104970
2549 * tree-object-size.cc (parm_object_size): Restrict size
2550 computation scenarios to explicit access attributes.
2551
2552 2022-03-24 Kewen Lin <linkw@linux.ibm.com>
2553
2554 PR target/104967
2555 * config/rs6000/rs6000-c.cc (find_instance): Skip instances with null
2556 function types.
2557
2558 2022-03-23 Richard Biener <rguenther@suse.de>
2559
2560 PR target/102125
2561 * gimple-fold.cc (gimple_fold_builtin_memory_op): Allow the
2562 use of movmisalign when either the source or destination
2563 decl is properly aligned.
2564
2565 2022-03-23 Richard Biener <rguenther@suse.de>
2566
2567 PR rtl-optimization/105028
2568 * ira-color.cc (form_threads_from_copies): Remove unnecessary
2569 copying of the sorted_copies tail.
2570
2571 2022-03-23 Martin Liska <mliska@suse.cz>
2572
2573 * config/rs6000/rs6000-c.cc (altivec_resolve_overloaded_builtin):
2574 Use %qs in format.
2575 * config/rs6000/rs6000.cc (rs6000_option_override_internal):
2576 Reword the error message.
2577
2578 2022-03-23 liuhongt <hongtao.liu@intel.com>
2579
2580 PR target/104976
2581 * config/i386/sse.md (ssePSmodelower): New.
2582 (*avx_cmp<mode>3_ltint_not): Force_reg operand before
2583 lowpart_subreg to avoid NULL_RTX.
2584 (<avx512>_fmaddc_<mode>_mask1<round_expand_name>,
2585 <avx512>_fcmaddc_<mode>_mask1<round_expand_name>,
2586 fma_<mode>_fmaddc_bcst, fma_<mode>_fcmaddc_bcst,
2587 <avx512>_<complexopname>_<mode>_mask<round_name>,
2588 avx512fp16_fcmaddcsh_v8hf_mask1<round_expand_name>,
2589 avx512fp16_fcmaddcsh_v8hf_mask3<round_expand_name>,
2590 avx512fp16_fmaddcsh_v8hf_mask3<round_expand_name>,
2591 avx512fp16_fmaddcsh_v8hf_mask3<round_expand_name>,
2592 float<floatunssuffix><mode>v4hf2,
2593 float<floatunssuffix>v2div2hf2,
2594 fix<fixunssuffix>_truncv4hf<mode>2,
2595 fix<fixunssuffix>_truncv2hfv2di2, extendv4hf<mode>2,
2596 extendv2hfv2df2,
2597 trunc<mode>v4hf2,truncv2dfv2hf2,
2598 *avx512bw_permvar_truncv16siv16hi_1,
2599 *avx512bw_permvar_truncv16siv16hi_1_hf,
2600 *avx512f_permvar_truncv8siv8hi_1,
2601 *avx512f_permvar_truncv8siv8hi_1_hf,
2602 *avx512f_vpermvar_truncv8div8si_1,
2603 *avx512f_permvar_truncv32hiv32qi_1,
2604 *avx512f_permvar_truncv16hiv16qi_1,
2605 *avx512f_permvar_truncv4div4si_1,
2606 *avx512f_pshufb_truncv8hiv8qi_1,
2607 *avx512f_pshufb_truncv4siv4hi_1,
2608 *avx512f_pshufd_truncv2div2si_1,
2609 sdot_prod<mode>, avx2_pblend<ssemodesuffix>_1,
2610 ashrv2di3,ashrv2di3,usdot_prod<mode>): Ditto.
2611
2612 2022-03-22 Tom de Vries <tdevries@suse.de>
2613
2614 PR target/104925
2615 * config/nvptx/nvptx.md (define_insn "nvptx_uniform_warp_check"):
2616 Use % as register prefix.
2617
2618 2022-03-22 Tom de Vries <tdevries@suse.de>
2619
2620 * config/nvptx/nvptx.cc (nvptx_scalar_mode_supported_p)
2621 (nvptx_libgcc_floating_mode_supported_p): Only enable HFmode for
2622 mexperimental.
2623
2624 2022-03-22 Tom de Vries <tdevries@suse.de>
2625
2626 * config/nvptx/nvptx.opt (mexperimental): New option.
2627
2628 2022-03-22 Tom de Vries <tdevries@suse.de>
2629
2630 PR target/104957
2631 * config/nvptx/nvptx-protos.h (nvptx_asm_output_def_from_decls): Declare.
2632 * config/nvptx/nvptx.cc (write_fn_proto_1): Don't add function marker
2633 for alias.
2634 (SET_ASM_OP, NVPTX_ASM_OUTPUT_DEF): New macro def.
2635 (nvptx_asm_output_def_from_decls): New function.
2636 * config/nvptx/nvptx.h (ASM_OUTPUT_DEF): New macro def, define to
2637 gcc_unreachable ().
2638 (ASM_OUTPUT_DEF_FROM_DECLS): New macro def, define to
2639 nvptx_asm_output_def_from_decls.
2640 * config/nvptx/nvptx.opt (malias): New opt.
2641
2642 2022-03-22 Tom de Vries <tdevries@suse.de>
2643
2644 PR target/104916
2645 PR target/104783
2646 * config/nvptx/nvptx.md (define_expand "omp_simt_exit"): Emit warp
2647 sync (or uniform warp check for mptx < 6.0).
2648
2649 2022-03-22 Richard Biener <rguenther@suse.de>
2650
2651 PR tree-optimization/105012
2652 * tree-if-conv.cc (ifcvt_local_dce): Only call
2653 dse_classify_store when we have a VDEF.
2654
2655 2022-03-22 Martin Liska <mliska@suse.cz>
2656
2657 PR target/104902
2658 * config/nvptx/nvptx.cc (handle_ptx_version_option):
2659 Fix option wrapping in an error message.
2660
2661 2022-03-22 Martin Liska <mliska@suse.cz>
2662
2663 PR target/104903
2664 * config/rs6000/rs6000-c.cc (altivec_resolve_overloaded_builtin):
2665 Wrap const keyword.
2666
2667 2022-03-22 Martin Liska <mliska@suse.cz>
2668
2669 * config/v850/v850-c.cc (pop_data_area): Fix typo in pragma
2670 name.
2671
2672 2022-03-22 Martin Liska <mliska@suse.cz>
2673
2674 PR target/104898
2675 * config/rs6000/rs6000.cc (rs6000_option_override_internal):
2676 Use %qs instead of (%qs).
2677
2678 2022-03-22 Martin Liska <mliska@suse.cz>
2679
2680 PR target/104898
2681 * config/i386/i386-options.cc (ix86_option_override_internal):
2682 Use '%qs' instead of '(%qs)'.
2683
2684 2022-03-22 Martin Liska <mliska@suse.cz>
2685
2686 PR target/104898
2687 * config/aarch64/aarch64.cc (aarch64_handle_attr_arch):
2688 Use 'qs' and remove usage '(%qs)'.
2689 (aarch64_handle_attr_cpu): Likewise.
2690 (aarch64_handle_attr_tune): Likewise.
2691 (aarch64_handle_attr_isa_flags): Likewise.
2692
2693 2022-03-22 Tamar Christina <tamar.christina@arm.com>
2694 Andre Vieira <andre.simoesdiasvieira@arm.com>
2695
2696 * config/aarch64/aarch64.cc (neoversev1_regmove_cost): New tuning
2697 struct.
2698 (neoversev1_tunings): Use neoversev1_regmove_cost and update store_int
2699 cost.
2700 (neoverse512tvb_tunings): Likewise.
2701
2702 2022-03-22 Tamar Christina <tamar.christina@arm.com>
2703 Andre Vieira <andre.simoesdiasvieira@arm.com>
2704
2705 * config/aarch64/aarch64.cc (demeter_addrcost_table,
2706 demeter_regmove_cost, demeter_advsimd_vector_cost,
2707 demeter_sve_vector_cost, demeter_scalar_issue_info,
2708 demeter_advsimd_issue_info, demeter_sve_issue_info,
2709 demeter_vec_issue_info, demeter_vector_cost,
2710 demeter_tunings): New tuning structs.
2711 (aarch64_ve_op_count::rename_cycles_per_iter): Enable for demeter
2712 tuning.
2713 * config/aarch64/aarch64-cores.def: Add entry for demeter.
2714 * config/aarch64/aarch64-tune.md (tune): Add demeter to list.
2715
2716 2022-03-22 Tamar Christina <tamar.christina@arm.com>
2717 Andre Vieira <andre.simoesdiasvieira@arm.com>
2718
2719 * config/aarch64/aarch64-protos.h (struct cpu_memmov_cost): New struct.
2720 (struct tune_params): Change type of memmov_cost to use cpu_memmov_cost.
2721 * config/aarch64/aarch64.cc (aarch64_memory_move_cost): Update all
2722 tunings to use cpu_memmov_cost struct.
2723
2724 2022-03-22 Tamar Christina <tamar.christina@arm.com>
2725 Andre Vieira <andre.simoesdiasvieira@arm.com>
2726
2727 * config/aarch64/aarch64.cc (neoversen2_addrcost_table,
2728 neoversen2_regmove_cost, neoversen2_advsimd_vector_cost,
2729 neoversen2_sve_vector_cost, neoversen2_scalar_issue_info,
2730 neoversen2_advsimd_issue_info, neoversen2_sve_issue_info,
2731 neoversen2_vec_issue_info, neoversen2_tunings): New structs.
2732 (neoversen2_tunings): Use new structs and update tuning flags.
2733 (aarch64_vec_op_count::rename_cycles_per_iter): Enable for neoversen2
2734 tuning.
2735
2736 2022-03-22 Andre Vieira <andre.simoesdiasvieira@arm.com>
2737
2738 * config/aarch64/aarch64.h (AARCH64_FL_FOR_ARCH9): Add FP16 feature
2739 bit.
2740
2741 2022-03-22 liuhongt <hongtao.liu@intel.com>
2742
2743 PR target/104982
2744 * config/i386/i386.md (*jcc_bt<mode>_mask): Extend the
2745 following splitter to reversed condition.
2746
2747 2022-03-22 Jakub Jelinek <jakub@redhat.com>
2748
2749 PR rtl-optimization/104989
2750 * calls.cc (expand_call): Don't set ECF_NORETURN in flags after
2751 sorry for passing too large argument, instead set sibcall_failure
2752 for pass == 0, or a new normal_failure flag otherwise. If
2753 normal_failure is set, don't assert all stack has been deallocated
2754 at the end and throw away the whole insn sequence.
2755
2756 2022-03-22 Qian Jianhua <qianjh@cn.fujitsu.com>
2757
2758 * print-tree.cc: Change array length
2759
2760 2022-03-22 Hongyu Wang <hongyu.wang@intel.com>
2761
2762 PR target/104978
2763 * config/i386/sse.md
2764 (avx512fp16_fmaddcsh_v8hf_mask1<round_expand_name):
2765 Use avx512f_movsf_mask instead of vmovaps or vblend, and
2766 force_reg before lowpart_subreg.
2767 (avx512fp16_fcmaddcsh_v8hf_mask1<round_expand_name): Likewise.
2768
2769 2022-03-21 H.J. Lu <hjl.tools@gmail.com>
2770
2771 PR target/105000
2772 * common/config/i386/i386-common.cc
2773 (OPTION_MASK_ISA2_GENERAL_REGS_ONLY_UNSET): Replace
2774 OPTION_MASK_ISA2_AVX512F_UNSET with OPTION_MASK_ISA2_SSE_UNSET.
2775
2776 2022-03-21 H.J. Lu <hjl.tools@gmail.com>
2777
2778 PR target/104998
2779 * common/config/i386/cpuinfo.h (get_available_features): Pass
2780 0x19 to __cpuid for bit_AESKLE. Enable FEATURE_AESKLE only if
2781 bit_AESKLE is set.
2782
2783 2022-03-21 Richard Sandiford <richard.sandiford@arm.com>
2784
2785 PR middle-end/104869
2786 * rtl-ssa/accesses.h (clobber_group::prev_clobber): Declare.
2787 (clobber_group::next_clobber): Likewise.
2788 (def_lookup::prev_def): Rename to...
2789 (def_lookup::last_def_of_prev_group): ...this.
2790 (def_lookup::next_def): Rename to...
2791 (def_lookup::first_def_of_next_group): ...this.
2792 (def_lookup::matching_or_prev_def): Rename to...
2793 (def_lookup::matching_set_or_last_def_of_prev_group): ...this.
2794 (def_lookup::matching_or_next_def): Rename to...
2795 (def_lookup::matching_set_or_first_def_of_next_group): ...this.
2796 (def_lookup::prev_def): New function, taking the lookup insn as
2797 argument.
2798 (def_lookup::next_def): Likewise.
2799 * rtl-ssa/member-fns.inl (def_lookup::prev_def): Rename to...
2800 (def_lookup::last_def_of_prev_group): ...this.
2801 (def_lookup::next_def): Rename to...
2802 (def_lookup::first_def_of_next_group): ...this.
2803 (def_lookup::matching_or_prev_def): Rename to...
2804 (def_lookup::matching_set_or_last_def_of_prev_group): ...this.
2805 (def_lookup::matching_or_next_def): Rename to...
2806 (def_lookup::matching_set_or_first_def_of_next_group): ...this.
2807 * rtl-ssa/movement.h (restrict_movement_for_dead_range): Update after
2808 above renaming.
2809 * rtl-ssa/accesses.cc (clobber_group::prev_clobber): New function.
2810 (clobber_group::next_clobber): Likewise.
2811 (def_lookup::prev_def): Likewise.
2812 (def_lookup::next_def): Likewise.
2813 (function_info::make_use_available): Pass the lookup insn to
2814 def_lookup::prev_def and def_lookup::next_def.
2815
2816 2022-03-21 Martin Liska <mliska@suse.cz>
2817
2818 * doc/invoke.texi: Document min-pagesize parameter.
2819
2820 2022-03-21 Richard Biener <rguenther@suse.de>
2821
2822 * tree-ssa-loop-niter.cc (estimate_numbers_of_iterations): Dump
2823 we are estimating niter of loop.
2824
2825 2022-03-21 Kito Cheng <kito.cheng@sifive.com>
2826
2827 * common/config/riscv/riscv-common.cc (riscv_ext_flag_table):
2828 Update flag name and mask name.
2829 * config/riscv/riscv-c.cc (riscv_cpu_cpp_builtins): Define
2830 misc macro for vector extensions.
2831 * config/riscv/riscv-opts.h (MASK_VECTOR_EEW_32): Rename to ...
2832 (MASK_VECTOR_ELEN_32): ... this.
2833 (MASK_VECTOR_EEW_64): Rename to ...
2834 (MASK_VECTOR_ELEN_64): ... this.
2835 (MASK_VECTOR_EEW_FP_32): Rename to ...
2836 (MASK_VECTOR_ELEN_FP_32): ... this.
2837 (MASK_VECTOR_EEW_FP_64): Rename to ...
2838 (MASK_VECTOR_ELEN_FP_64): ... this.
2839 (TARGET_VECTOR_ELEN_32): New.
2840 (TARGET_VECTOR_ELEN_64): Ditto.
2841 (TARGET_VECTOR_ELEN_FP_32): Ditto.
2842 (TARGET_VECTOR_ELEN_FP_64): Ditto.
2843 (TARGET_MIN_VLEN): Ditto.
2844 * config/riscv/riscv.opt (riscv_vector_eew_flags): Rename to ...
2845 (riscv_vector_elen_flags): ... this.
2846
2847 2022-03-21 Hongyu Wang <hongyu.wang@intel.com>
2848
2849 PR target/104977
2850 * config/i386/sse.md
2851 (avx512fp16_fma<complexopname>sh_v8hf<mask_scalarcz_name><round_scalarcz_name>):
2852 Correct round operand for intel dialect.
2853
2854 2022-03-19 Arthur Cohen <arthur.cohen@embecosm.com>
2855
2856 * diagnostic.cc (diagnostic_cc_tests): Rename to...
2857 (c_diagnostic_cc_tests): ...this.
2858 * opt-problem.cc (opt_problem_cc_tests): Rename to...
2859 (c_opt_problem_cc_tests): ...this.
2860 * selftest-run-tests.cc (selftest::run_tests): No longer run
2861 opt_problem_cc_tests or diagnostic_cc_tests.
2862 * selftest.h (diagnostic_cc_tests): Remove declaration.
2863 (opt_problem_cc_tests): Likewise.
2864
2865 2022-03-19 Marc Nieper-Wißkirchen <marc@nieper-wisskirchen.de>
2866
2867 PR jit/63854
2868 * hash-traits.h (struct typed_const_free_remove): New.
2869 (struct free_string_hash): New.
2870 * pass_manager.h: Use free_string_hash.
2871 * passes.cc (pass_manager::register_pass_name): Use free_string_hash.
2872 (pass_manager::~pass_manager): Delete allocated m_name_to_pass_map.
2873
2874 2022-03-19 Jakub Jelinek <jakub@redhat.com>
2875
2876 PR middle-end/104971
2877 * config/i386/i386-expand.cc
2878 (ix86_expand_builtin) <case IX86_BUILTIN_READ_FLAGS>: If ignore,
2879 don't push/pop anything and just return const0_rtx.
2880
2881 2022-03-18 Vladimir N. Makarov <vmakarov@redhat.com>
2882
2883 PR rtl-optimization/104961
2884 * lra-assigns.cc (find_reload_regno_insns): Process reload pseudo clobber.
2885
2886 2022-03-18 Jason Merrill <jason@redhat.com>
2887
2888 * tree.h (IDENTIFIER_LENGTH): Add comment.
2889
2890 2022-03-18 Jakub Jelinek <jakub@redhat.com>
2891
2892 PR middle-end/99578
2893 PR middle-end/100680
2894 PR tree-optimization/100834
2895 * params.opt (--param=min-pagesize=): New parameter.
2896 * pointer-query.cc
2897 (compute_objsize_r) <case ARRAY_REF>: Formatting fix.
2898 (compute_objsize_r) <case INTEGER_CST>: Use maximum object size instead
2899 of zero for pointer constants equal or larger than min-pagesize.
2900
2901 2022-03-18 Tom de Vries <tdevries@suse.de>
2902
2903 * gimplify.cc (gimplify_omp_for): Set location using 'input_location'.
2904 Set gfor location only when dealing with a OMP_TASKLOOP.
2905
2906 2022-03-18 Tom de Vries <tdevries@suse.de>
2907
2908 * gimplify.cc (gimplify_omp_for): Set taskloop location.
2909
2910 2022-03-18 Tom de Vries <tdevries@suse.de>
2911
2912 PR target/104952
2913 * omp-low.cc (lower_rec_input_clauses): Make sure GOMP_SIMT_XCHG_BFLY
2914 is executed unconditionally.
2915
2916 2022-03-18 liuhongt <hongtao.liu@intel.com>
2917
2918 PR target/104974
2919 * config/i386/i386.md (*movhi_internal): Set attr type from HI
2920 to HF for alternative 12 under TARGET_AVX512FP16.
2921
2922 2022-03-18 Cui,Lili <lili.cui@intel.com>
2923
2924 PR target/104963
2925 * config/i386/i386.h (PTA_SAPPHIRERAPIDS): change it to base on ICX.
2926 * doc/invoke.texi: Update documents for Intel sapphirerapids.
2927
2928 2022-03-17 Roger Sayle <roger@nextmovesoftware.com>
2929
2930 PR target/86722
2931 PR tree-optimization/90356
2932 * config/i386/i386.md (*movtf_internal): Don't guard
2933 standard_sse_constant_p clause by optimize_function_for_size_p.
2934 (*movdf_internal): Likewise.
2935 (*movsf_internal): Likewise.
2936
2937 2022-03-17 Andrew MacLeod <amacleod@redhat.com>
2938
2939 PR tree-optimization/102943
2940 * gimple-range-cache.cc (ranger_cache::range_from_dom): Find range via
2941 dominators and apply intermediary outgoing edge ranges.
2942
2943 2022-03-17 Richard Biener <rguenther@suse.de>
2944
2945 PR tree-optimization/104960
2946 * passes.def: Add pass parameter to pass_sink_code, mark
2947 last one to unsplit edges.
2948 * tree-ssa-sink.cc (pass_sink_code::set_pass_param): New.
2949 (pass_sink_code::execute): Always execute TODO_cleanup_cfg
2950 when we need to unsplit edges.
2951
2952 2022-03-17 Jakub Jelinek <jakub@redhat.com>
2953
2954 PR middle-end/103984
2955 * gimplify.cc (gimplify_target_expr): Gimplify type sizes and
2956 TARGET_EXPR_INITIAL into a temporary sequence, then push clobbers
2957 and asan unpoisioning, then append the temporary sequence and
2958 finally the TARGET_EXPR_CLEANUP clobbers.
2959
2960 2022-03-16 Roger Sayle <roger@nextmovesoftware.com>
2961
2962 * config/i386/sse.md: Delete corrupt character/typo.
2963
2964 2022-03-16 Roger Sayle <roger@nextmovesoftware.com>
2965
2966 PR target/94680
2967 * config/i386/sse.md (sse2_movq128): New define_expand to
2968 preserve previous named instruction.
2969 (*sse2_movq128_<mode>): Renamed from sse2_movq128, and
2970 generalized to VI8F_128 (both V2DI and V2DF).
2971
2972 2022-03-16 Siddhesh Poyarekar <siddhesh@gotplt.org>
2973
2974 PR tree-optimization/104941
2975 * tree-object-size.cc (size_for_offset): Make useless conversion
2976 check lighter and assign result of fold_convert to OFFSET.
2977
2978 2022-03-16 H.J. Lu <hjl.tools@gmail.com>
2979
2980 PR target/104890
2981 * config/i386/x86gprintrin.h: Also check _SOFT_FLOAT before
2982 pushing target("general-regs-only").
2983
2984 2022-03-16 Kito Cheng <kito.cheng@sifive.com>
2985
2986 * common/config/riscv/riscv-common.cc (riscv_ext_version_table):
2987 Add version info for zk, zks and zkn.
2988
2989 2022-03-16 LiaoShihua <shihua@iscas.ac.cn>
2990
2991 * common/config/riscv/riscv-common.cc
2992 (riscv_combine_info): New.
2993 (riscv_subset_list::handle_combine_ext): Combine back into zk to
2994 maintain the canonical order in isa strings.
2995 (riscv_subset_list::parse): Ditto.
2996 * config/riscv/riscv-subset.h (handle_combine_ext): New.
2997
2998 2022-03-16 Richard Biener <rguenther@suse.de>
2999
3000 PR tree-optimization/102008
3001 * passes.def: Move the added code sinking pass before the
3002 preceeding phiopt pass.
3003
3004 2022-03-16 Patrick Palka <ppalka@redhat.com>
3005
3006 PR c++/96780
3007 * doc/invoke.texi (C++ Dialect Options): Document
3008 -ffold-simple-inlines.
3009
3010 2022-03-16 Siddhesh Poyarekar <siddhesh@gotplt.org>
3011
3012 PR tree-optimization/104942
3013 * tree-object-size.cc (alloc_object_size): Remove STRIP_NOPS.
3014
3015 2022-03-16 Jakub Jelinek <jakub@redhat.com>
3016
3017 PR target/104910
3018 * config/aarch64/aarch64.cc (aarch64_load_symref_appropriately): Copy
3019 imm rtx.
3020
3021 2022-03-16 Roger Sayle <roger@nextmovesoftware.com>
3022 Richard Biener <rguenther@suse.de>
3023
3024 * gimple-match-head.cc (single_use): Implement inline using a
3025 single loop.
3026
3027 2022-03-16 Roger Sayle <roger@nextmovesoftware.com>
3028
3029 * match.pd (X CMP X -> true): Test tree_expr_maybe_nan_p
3030 instead of HONOR_NANS.
3031 (X LTGT X -> false): Enable if X is not tree_expr_maybe_nan_p, as
3032 this can't trap/signal.
3033
3034 2022-03-16 liuhongt <hongtao.liu@intel.com>
3035
3036 PR target/104946
3037 * config/i386/i386-builtin.def (BDESC): Add
3038 CODE_FOR_sse4_1_blendvpd for IX86_BUILTIN_BLENDVPD.
3039 * config/i386/i386.cc (ix86_gimple_fold_builtin): Don't fold
3040 __builtin_ia32_blendvpd w/o sse4.2
3041
3042 2022-03-15 Peter Bergner <bergner@linux.ibm.com>
3043
3044 PR target/104923
3045 * config/rs6000/predicates.md (mma_disassemble_output_operand): Restrict
3046 acceptable MEM addresses.
3047
3048 2022-03-15 Jakub Jelinek <jakub@redhat.com>
3049
3050 PR target/91229
3051 * config/riscv/riscv.cc (riscv_pass_aggregate_in_fpr_pair_p,
3052 riscv_pass_aggregate_in_fpr_and_gpr_p): Pass OPT_Wpsabi instead of 0
3053 to warning calls.
3054
3055 2022-03-15 Jakub Jelinek <jakub@redhat.com>
3056
3057 PR target/104890
3058 * config/i386/i386.h (LIBGCC2_UNWIND_ATTRIBUTE): Use no-mmx,no-sse
3059 instead of general-regs-only.
3060
3061 2022-03-15 Roger Sayle <roger@nextmovesoftware.com>
3062 Marc Glisse <marc.glisse@inria.fr>
3063 Richard Biener <rguenther@suse.de>
3064
3065 PR tree-optimization/101895
3066 * match.pd (vec_same_elem_p): Handle CONSTRUCTOR_EXPR def.
3067 (plus (vec_perm (mult ...) ...) ...): New reordering simplification.
3068
3069 2022-03-15 Jakub Jelinek <jakub@redhat.com>
3070
3071 PR rtl-optimization/104814
3072 * ifcvt.cc (find_if_case_1, find_if_case_2): Punt if test_bb doesn't
3073 end with onlyjump_p. Assume BB_END (test_bb) is always non-NULL.
3074
3075 2022-03-15 Martin Sebor <msebor@redhat.com>
3076
3077 PR middle-end/104436
3078 * gimple-ssa-warn-access.cc (pass_waccess::check_dangling_stores):
3079 Check for warning suppression. Avoid by-value arguments transformed
3080 into by-transparent-reference.
3081
3082 2022-03-14 Roger Sayle <roger@nextmovesoftware.com>
3083 Uroš Bizjak <ubizjak@gmail.com>
3084
3085 * config/i386/i386.md (peephole2 xorl;movb -> movzbl): Disable
3086 transformation when *zero_extend<mode>si2 is not available.
3087
3088 2022-03-14 Xi Ruoyao <xry111@mengyan1223.wang>
3089
3090 * config/mips/mips.h (SUBTARGET_SHADOW_OFFSET): Define.
3091 * config/mips/mips.cc (mips_option_override): Make
3092 -fsanitize=address imply -fasynchronous-unwind-tables. This is
3093 needed by libasan for stack backtrace on MIPS.
3094 (mips_asan_shadow_offset): Return SUBTARGET_SHADOW_OFFSET.
3095
3096 2022-03-14 Jakub Jelinek <jakub@redhat.com>
3097
3098 PR debug/104778
3099 * lra.cc (lra_substitute_pseudo): For debug_p mode, simplify
3100 SUBREG, ZERO_EXTEND, SIGN_EXTEND, FLOAT or UNSIGNED_FLOAT if recursive
3101 call simplified the first operand into VOIDmode constant.
3102
3103 2022-03-14 Jakub Jelinek <jakub@redhat.com>
3104
3105 PR tree-optimization/102586
3106 * doc/extend.texi (__builtin_clear_padding): Clearify that for C++
3107 argument type should be pointer to trivially-copyable type unless it
3108 is address of a variable or parameter.
3109
3110 2022-03-14 Jakub Jelinek <jakub@redhat.com>
3111
3112 PR target/99754
3113 * config/i386/emmintrin.h (_mm_loadu_si32): Put loaded value into
3114 first rather than last element of the vector, use __m32_u to do
3115 a really unaligned load, use just 0 instead of (int)0.
3116 (_mm_loadu_si16): Put loaded value into first rather than last
3117 element of the vector, use __m16_u to do a really unaligned load,
3118 use just 0 instead of (short)0.
3119
3120 2022-03-14 Jakub Jelinek <jakub@redhat.com>
3121
3122 PR other/104899
3123 * config/bfin/bfin.cc (bfin_handle_longcall_attribute): Fix a typo
3124 in diagnostic message - cannott -> cannot. Use %< and %> around
3125 names of attribute. Avoid too long line.
3126 * range-op.cc (operator_logical_and::op1_range): Fix up a typo
3127 in comment - cannott -> cannot. Use 2 spaces after . instead of one.
3128
3129 2022-03-14 liuhongt <hongtao.liu@intel.com>
3130
3131 PR target/104666
3132 * config/i386/i386-expand.cc
3133 (ix86_check_builtin_isa_match): New func.
3134 (ix86_expand_builtin): Move code to
3135 ix86_check_builtin_isa_match and call it.
3136 * config/i386/i386-protos.h
3137 (ix86_check_builtin_isa_match): Declare.
3138 * config/i386/i386.cc (ix86_gimple_fold_builtin): Don't fold
3139 builtin into gimple when isa mismatches.
3140
3141 2022-03-13 Tobias Burnus <tobias@codesourcery.com>
3142
3143 * doc/invoke.texi: Fix typos.
3144 * doc/tm.texi.in: Remove duplicated word.
3145 * doc/tm.texi: Regenerate.
3146
3147 2022-03-12 Segher Boessenkool <segher@kernel.crashing.org>
3148
3149 PR target/104829
3150 * config/rs6000/rs6000.cc (rs6000_machine_from_flags): Don't output
3151 "ppc" and "ppc64" based on rs6000_cpu.
3152
3153 2022-03-12 Thomas Schwinge <thomas@codesourcery.com>
3154
3155 PR middle-end/100280
3156 PR middle-end/104892
3157 * omp-oacc-kernels-decompose.cc (omp_oacc_kernels_decompose_1):
3158 Remove special handling of 'GOMP_MAP_FORCE_TOFROM'.
3159
3160 2022-03-12 Thomas Schwinge <thomas@codesourcery.com>
3161
3162 PR middle-end/100280
3163 PR middle-end/104086
3164 * omp-oacc-kernels-decompose.cc (omp_oacc_kernels_decompose_1):
3165 Mark variables used in 'present' clauses as addressable.
3166 * omp-low.cc (scan_sharing_clauses) <OMP_CLAUSE_MAP>: Gracefully
3167 handle duplicate 'OMP_CLAUSE_MAP_DECL_MAKE_ADDRESSABLE'.
3168
3169 2022-03-12 Thomas Schwinge <thomas@codesourcery.com>
3170
3171 PR other/65095
3172 * tree-core.h (user_omp_claus_code_name): Declare function.
3173 * tree.cc (user_omp_clause_code_name): New function.
3174
3175 2022-03-12 Roger Sayle <roger@nextmovesoftware.com>
3176
3177 PR middle-end/98420
3178 * match.pd (minus @0 @0): Additional checks for -fno-rounding-math
3179 (the defaut) or -fno-signed-zeros.
3180
3181 2022-03-12 Michael Meissner <meissner@linux.ibm.com>
3182
3183 PR target/104868
3184 * config/rs6000/vsx.md (extendditi2): Use a 'b' constraint when
3185 moving from a GPR register to an Altivec register.
3186
3187 2022-03-11 Roger Sayle <roger@nextmovesoftware.com>
3188
3189 PR tree-optimization/98335
3190 * config/i386/i386.md (peephole2): Eliminate redundant insv.
3191 Combine movl followed by movb. Transform xorl followed by
3192 a suitable movb or movw into the equivalent movz[bw]l.
3193
3194 2022-03-11 Roger Sayle <roger@nextmovesoftware.com>
3195 Richard Biener <rguenther@suse.de>
3196
3197 PR tree-optimization/98335
3198 * builtins.cc (get_object_alignment_2): Export.
3199 * builtins.h (get_object_alignment_2): Likewise.
3200 * tree-ssa-alias.cc (ao_ref_alignment): New.
3201 * tree-ssa-alias.h (ao_ref_alignment): Declare.
3202 * tree-ssa-dse.cc (compute_trims): Improve logic deciding whether
3203 to align head/tail, writing more bytes but using fewer store insns.
3204
3205 2022-03-11 Richard Biener <rguenther@suse.de>
3206
3207 PR tree-optimization/104880
3208 * tree-ssa.cc (execute_update_address_taken): Remember if we
3209 optimistically made something not addressable and
3210 prepare to undo it.
3211
3212 2022-03-11 Richard Biener <rguenther@suse.de>
3213
3214 PR target/104762
3215 * config/i386/i386.cc (ix86_builtin_vectorization_cost): Do not
3216 cost the first lane of SSE pieces as inserts for vec_construct.
3217
3218 2022-03-10 Roger Sayle <roger@nextmovesoftware.com>
3219
3220 PR c++/84964
3221 * calls.cc (expand_call): Ignore stack adjustments after sorry.
3222
3223 2022-03-10 Vladimir N. Makarov <vmakarov@redhat.com>
3224
3225 PR target/103074
3226 * lra-constraints.cc (split_reg): Set up
3227 check_and_force_assignment_correctness_p when splitting hard
3228 register live range.
3229
3230 2022-03-10 Martin Jambor <mjambor@suse.cz>
3231
3232 PR ipa/104813
3233 * ipa-cp.cc (create_specialized_node): Move removal of
3234 self-recursive calls from callers vector before refrence
3235 adjustments.
3236
3237 2022-03-10 Richard Biener <rguenther@suse.de>
3238
3239 PR tree-optimization/102943
3240 * gimple-range-cache.cc (sbr_sparse_bitmap::bitvec):
3241 Make a bitmap_head.
3242 (sbr_sparse_bitmap::sbr_sparse_bitmap): Adjust and switch
3243 to tree view.
3244 (sbr_sparse_bitmap::set_bb_range): Adjust.
3245 (sbr_sparse_bitmap::get_bb_range): Likewise.
3246
3247 2022-03-10 Richard Biener <rguenther@suse.de>
3248
3249 PR tree-optimization/102943
3250 * tree-ssa-dom.cc (back_propagate_equivalences): Only
3251 populate the dominance bitmap if fast queries are not
3252 available. Use a tree view bitmap.
3253 (record_temporary_equivalences): Cache the dominance bitmap
3254 across all equivalences on the edge.
3255
3256 2022-03-10 Tom de Vries <tdevries@suse.de>
3257
3258 PR target/104840
3259 * config/nvptx/nvptx.md (define_attr "predicable"): Use no,yes instead
3260 of false,true.
3261
3262 2022-03-10 Tom de Vries <tdevries@suse.de>
3263
3264 PR target/104783
3265 * config/nvptx/nvptx.cc (nvptx_init_unisimt_predicate)
3266 (nvptx_output_unisimt_switch): Handle unisimt_outside_simt_predicate.
3267 (nvptx_get_unisimt_outside_simt_predicate): New function.
3268 (predicate_insn): New function, factored out of ...
3269 (nvptx_reorg_uniform_simt): ... here. Predicate all emitted insns.
3270 * config/nvptx/nvptx.h (struct machine_function): Add
3271 unisimt_outside_simt_predicate field.
3272 * config/nvptx/nvptx.md (define_insn "nvptx_warpsync")
3273 (define_insn "nvptx_uniform_warp_check"): Make predicable.
3274
3275 2022-03-10 Tom de Vries <tdevries@suse.de>
3276
3277 * config/nvptx/nvptx.cc (nvptx_unisimt_handle_set): Handle unused
3278 result.
3279
3280 2022-03-10 Tom de Vries <tdevries@suse.de>
3281
3282 PR target/104815
3283 * config/nvptx/nvptx.cc (nvptx_print_operand): Handle 'x' operand
3284 modifier.
3285 * config/nvptx/nvptx.md: Use %x0 destination operand in atom insns.
3286
3287 2022-03-10 Tom de Vries <tdevries@suse.de>
3288
3289 * config/nvptx/nvptx.md (define_insn "atomic_fetch_<logic><mode>"):
3290 Emit atom.and.b64 instead of atom.b64.and.
3291
3292 2022-03-10 Tom de Vries <tdevries@suse.de>
3293
3294 * config/nvptx/t-nvptx (MULTILIB_EXTRA_OPTS): Move mptx=3.1 ...
3295 (MULTILIB_OPTIONS): ... here.
3296
3297 2022-03-10 Tom de Vries <tdevries@suse.de>
3298
3299 PR target/104758
3300 * config/nvptx/nvptx.opt (misa): Set default to sm_30.
3301 * config/nvptx/t-nvptx (MULTILIB_EXTRA_OPTS): Remove misa=sm_30.
3302
3303 2022-03-10 Thomas Schwinge <thomas@codesourcery.com>
3304
3305 PR middle-end/90115
3306 PR middle-end/102330
3307 PR middle-end/104774
3308 * omp-low.cc (oacc_privatization_candidate_p)
3309 (oacc_privatization_scan_clause_chain)
3310 (oacc_privatization_scan_decl_chain, lower_oacc_private_marker):
3311 Analyze 'lookup_decl'-translated DECL.
3312
3313 2022-03-10 Jakub Jelinek <jakub@redhat.com>
3314
3315 PR target/99708
3316 * config/rs6000/rs6000.h (enum rs6000_builtin_type_index): Remove
3317 RS6000_BTI_ptr_ieee128_float and RS6000_BTI_ptr_ibm128_float.
3318 (ptr_ieee128_float_type_node, ptr_ibm128_float_type_node): Remove.
3319 * config/rs6000/rs6000-builtin.cc (rs6000_type_string): Return
3320 "**NULL**" if type_node is NULL first. Handle
3321 ieee128_float_type_node.
3322 (rs6000_init_builtins): Don't initialize ptr_ieee128_float_type_node
3323 and ptr_ibm128_float_type_node. Set ibm128_float_type_node and
3324 ieee128_float_type_node to NULL rather than long_double_type_node if
3325 they aren't supported. Do support __ibm128 even if
3326 !TARGET_FLOAT128_TYPE when long double is double double.
3327 (rs6000_expand_builtin): Error if bif_is_ibm128 and
3328 !ibm128_float_type_node. Remap RS6000_BIF_{,UN}PACK_IF to
3329 RS6000_BIF_{,UN}PACK_TF much earlier and only use bif_is_ibm128 check
3330 for it.
3331 * config/rs6000/rs6000-c.cc (rs6000_target_modify_macros): Define
3332 __SIZEOF_FLOAT128__ here and only iff __float128 macro is defined.
3333 (rs6000_cpu_cpp_builtins): Don't define __SIZEOF_FLOAT128__ here.
3334 Define __SIZEOF_IBM128__=16 if ieee128_float_type_node is non-NULL.
3335 Formatting fix.
3336 * config/rs6000/rs6000-gen-builtins.cc: Document ibm128 attribute.
3337 (struct attrinfo): Add isibm128 member.
3338 (TYPE_MAP_SIZE): Remove.
3339 (type_map): Use [] instead of [TYPE_MAP_SIZE]. For "if" use
3340 ibm128_float_type_node only if it is non-NULL, otherwise fall back
3341 to long_double_type_node. Remove "pif" entry.
3342 (parse_bif_attrs): Handle ibm128 attribute and print it for debugging.
3343 (write_decls): Output bif_ibm128_bit and bif_is_ibm128.
3344 (write_type_node): Use sizeof type_map / sizeof type_map[0]
3345 instead of TYPE_MAP_SIZE.
3346 (write_bif_static_init): Handle isibm128.
3347 * config/rs6000/rs6000-builtins.def: Document ibm128 attribute.
3348 (__builtin_pack_ibm128, __builtin_unpack_ibm128): Add ibm128
3349 attribute.
3350
3351 2022-03-09 Richard Biener <rguenther@suse.de>
3352
3353 * cfgexpand.cc (expand_gimple_asm): Special-case MEM_REF
3354 with non-decl operand, avoiding a copy.
3355
3356 2022-03-09 Jakub Jelinek <jakub@redhat.com>
3357
3358 PR target/104781
3359 * config/i386/i386.h (LIBGCC2_UNWIND_ATTRIBUTE): Define for ia32.
3360
3361 2022-03-09 Richard Biener <rguenther@suse.de>
3362
3363 PR middle-end/104786
3364 * cfgexpand.cc (expand_asm_stmt): Do not generate a copy
3365 for VLAs without an upper size bound.
3366
3367 2022-03-09 Xi Ruoyao <xry111@mengyan1223.wang>
3368
3369 PR tree-optimization/104851
3370 * optabs-query.cc (supports_vec_convert_optab_p): Fix off-by-one
3371 error.
3372
3373 2022-03-09 Jakub Jelinek <jakub@redhat.com>
3374
3375 PR c/104711
3376 * doc/invoke.texi (-Wextra): Document that -Wshift-negative-value
3377 is enabled by it only for C++11 to C++17 rather than for C++03 or
3378 later.
3379 (-Wshift-negative-value): Similarly (except here we stated
3380 that it is enabled for C++11 or later).
3381
3382 2022-03-09 Jakub Jelinek <jakub@redhat.com>
3383
3384 PR rtl-optimization/104839
3385 * simplify-rtx.cc (simplify_unary_operation_1) <case SIGN_EXTEND>:
3386 Use SRP_SIGNED instead of incorrect 1 in SUBREG_PROMOTED_SET.
3387 (simplify_unary_operation_1) <case ZERO_EXTEND>: Use SRP_UNSIGNED
3388 instead of incorrect 0 in SUBREG_PROMOTED_SET.
3389
3390 2022-03-09 Xi Ruoyao <xry111@mengyan1223.wang>
3391
3392 PR target/104842
3393 * config/mips/mips.h (LUI_OPERAND): Cast the input to an unsigned
3394 value before adding an offset.
3395
3396 2022-03-08 Christophe Lyon <christophe.lyon@arm.com>
3397
3398 * config/arm/arm-builtins.cc
3399 (arm_binop_none_none_unone_qualifiers): Delete.
3400 (BINOP_NONE_NONE_UNONE_QUALIFIERS): Delete.
3401
3402 2022-03-08 Iain Sandoe <iain@sandoe.co.uk>
3403
3404 PR translation/104552
3405 * config/host-darwin.cc (darwin_gt_pch_get_address): Amend
3406 the PCH out of memory error message punctuation and wording.
3407
3408 2022-03-08 Marek Polacek <polacek@redhat.com>
3409
3410 PR rtl-optimization/104777
3411 * rtl.cc (classify_insn): For ASM_OPERANDS, return JUMP_INSN only if
3412 ASM_OPERANDS_LABEL_VEC has at least one element.
3413
3414 2022-03-08 H.J. Lu <hjl.tools@gmail.com>
3415
3416 PR target/104781
3417 * config/i386/i386.cc (ix86_expand_epilogue): Sorry if there is
3418 stack realignment or regparm nested function with EH return.
3419
3420 2022-03-08 Andre Vieira <andre.simoesdiasvieira@arm.com>
3421
3422 PR target/104790
3423 * config/arm/arm.h (MVE_STN_LDW_MODE): New MACRO.
3424 * config/arm/arm.cc (mve_vector_mem_operand): Relax constraint on base
3425 register for non widening loads or narrowing stores.
3426
3427 2022-03-08 Eric Gallager <egallager@gcc.gnu.org>
3428
3429 PR translation/104552
3430 * params.opt: Fix typo.
3431
3432 2022-03-08 Richard Biener <rguenther@suse.de>
3433
3434 PR tree-optimization/84201
3435 * params.opt (-param=vect-induction-float): Add.
3436 * doc/invoke.texi (vect-induction-float): Document.
3437 * tree-vect-loop.cc (vectorizable_induction): Honor
3438 param_vect_induction_float.
3439
3440 2022-03-08 Martin Jambor <mjambor@suse.cz>
3441
3442 PR translation/104552
3443 * params.opt (ipa-cp-recursive-freq-factor): Remove repeated word
3444 "that" in the description.
3445
3446 2022-03-08 Richard Biener <rguenther@suse.de>
3447
3448 PR tree-optimization/104825
3449 * tree-ssa-sccvn.cc (visit_reference_op_call): Properly
3450 guard modref get_ao_ref on a pointer typed argument.
3451
3452 2022-03-08 liuhongt <hongtao.liu@intel.com>
3453
3454 * config/i386/sse.md (*vec_dupv4si): Disable memory operand
3455 for !TARGET_INTER_UNIT_MOVES_TO_VEC when prefer_for_speed.
3456
3457 2022-03-07 Jonathan Wakely <jwakely@redhat.com>
3458
3459 * doc/invoke.texi (C++ Modules): Remove anachronism.
3460
3461 2022-03-07 Martin Liska <mliska@suse.cz>
3462
3463 PR middle-end/104381
3464 * opts.cc (finish_options): If debug info is disabled
3465 (debug_info_level) and -fvar-tracking is unset, disable it.
3466
3467 2022-03-07 Jakub Jelinek <jakub@redhat.com>
3468
3469 * tree-ssa-propagate.cc: Fix up duplicated word issue in a comment.
3470 * config/riscv/riscv.cc: Likewise.
3471 * config/darwin.h: Likewise.
3472 * config/i386/i386.cc: Likewise.
3473 * config/aarch64/thunderx3t110.md: Likewise.
3474 * config/aarch64/fractional-cost.h: Likewise.
3475 * config/vax/vax.cc: Likewise.
3476 * config/rs6000/pcrel-opt.md: Likewise.
3477 * config/rs6000/predicates.md: Likewise.
3478 * ctfc.h: Likewise.
3479 * tree-ssa-uninit.cc: Likewise.
3480 * value-relation.h: Likewise.
3481 * gimple-range-gori.cc: Likewise.
3482 * ipa-polymorphic-call.cc: Likewise.
3483 * pointer-query.cc: Likewise.
3484 * ipa-sra.cc: Likewise.
3485 * internal-fn.cc: Likewise.
3486 * varasm.cc: Likewise.
3487 * gimple-ssa-warn-access.cc: Likewise.
3488
3489 2022-03-07 Martin Liska <mliska@suse.cz>
3490
3491 PR target/104794
3492 * config/arm/arm.cc (arm_option_override_internal): Add missing
3493 space.
3494
3495 2022-03-07 Richard Biener <rguenther@suse.de>
3496
3497 PR tree-optimization/104782
3498 * tree-vect-slp.cc (vectorize_slp_instance_root_stmt):
3499 Re-instantiate r10-5979 fix, add comment.
3500
3501 2022-03-07 Martin Liska <mliska@suse.cz>
3502
3503 PR target/104797
3504 * config/msp430/msp430.cc (msp430_expand_delay_cycles): Remove
3505 parenthesis from built-in name.
3506
3507 2022-03-07 Martin Liska <mliska@suse.cz>
3508
3509 PR target/104794
3510 * config/arm/arm.cc (arm_option_override_internal): Fix quoting
3511 of options in error messages.
3512 (arm_option_reconfigure_globals): Likewise.
3513
3514 2022-03-07 Martin Liska <mliska@suse.cz>
3515
3516 PR target/104794
3517 * config/arm/arm-builtins.cc (arm_expand_builtin): Reuse error
3518 message. Fix ARM_BUILTIN_WRORHI and ARM_BUILTIN_WRORH that can
3519 have only range [0,32].
3520
3521 2022-03-07 Jakub Jelinek <jakub@redhat.com>
3522
3523 PR target/104775
3524 * config/s390/s390.md (*cmp_and_trap_unsigned_int<mode>): Use
3525 S constraint instead of T in the last alternative.
3526
3527 2022-03-07 Martin Liska <mliska@suse.cz>
3528
3529 * plugin.cc (default_plugin_dir_name): Remove <dir> from error
3530 message.
3531
3532 2022-03-07 Martin Liska <mliska@suse.cz>
3533
3534 PR translation/90148
3535 * config/rs6000/rs6000.cc (rs6000_linux64_override_options): Put
3536 quote to a proper place.
3537 * plugin.cc (default_plugin_dir_name): Likewise.
3538
3539 2022-03-07 Martin Liska <mliska@suse.cz>
3540
3541 PR target/99297
3542 * config/rx/rx.cc (rx_expand_builtin_mvtc): Fix translation
3543 string.
3544
3545 2022-03-07 Jakub Jelinek <jakub@redhat.com>
3546
3547 PR target/104779
3548 * config/i386/sse.md (avx512dq_mul<mode>3<mask_name>): New
3549 define_expand pattern. Rename define_insn to ...
3550 (*avx512dq_mul<mode>3<mask_name>): ... this.
3551 (<code><mode>3_mask): New any_logic define_expand pattern.
3552 (<mask_codefor><code><mode>3<mask_name>): Rename to ...
3553 (*<code><mode>3<mask_name>): ... this.
3554
3555 2022-03-05 Jakub Jelinek <jakub@redhat.com>
3556
3557 * gimple-ssa-warn-access.cc (pass_waccess::use_after_inval_p): Remove
3558 visited bitmap and its use. Also punt on EDGE_ABNORMAL edges.
3559
3560 2022-03-05 Roger Sayle <roger@nextmovesoftware.com>
3561 Uroš Bizjak <ubizjak@gmail.com>
3562
3563 PR testsuite/104732
3564 * config/i386/i386.md (SWIM1248x): Renamed from SWIM1248s.
3565 Include DI mode unconditionally.
3566 (*anddi3_doubleword): Remove && TARGET_STV && TARGET_SSE2 condition,
3567 i.e. always split on !TARGET_64BIT.
3568 (*<any_or>di3_doubleword): Likewise.
3569 (*one_cmpldi2_doubleword): Likewise.
3570 (and<mode>3 expander): Update to use SWIM1248x from SWIM1248s.
3571 (<any_or><mode>3 expander): Likewise.
3572 (one_cmpl<mode>2 expander): Likewise.
3573
3574 2022-03-05 Michael Meissner <meissner@linux.ibm.com>
3575
3576 PR target/104698
3577 * config/rs6000/vsx.md (UNSPEC_MTVSRD_DITI_W1): Delete.
3578 (mtvsrdd_diti_w1): Delete.
3579 (extendditi2): Convert from define_expand to
3580 define_insn_and_split. Replace with code to deal with both GPR
3581 registers and with altivec registers.
3582
3583 2022-03-04 Segher Boessenkool <segher@kernel.crashing.org>
3584
3585 * config/rs6000/rs6000.cc (rs6000_machine_from_flags): Restructure a
3586 bit. Handle most older CPUs.
3587
3588 2022-03-04 Iain Sandoe <iain@sandoe.co.uk>
3589
3590 * config/darwin.cc (darwin_fold_builtin): Make fcode an int to
3591 avoid a mismatch with DECL_MD_FUNCTION_CODE().
3592
3593 2022-03-04 Iain Sandoe <iain@sandoe.co.uk>
3594
3595 PR target/104117
3596 * config/rs6000/darwin.md (@machopic_high_<mode>): New.
3597 (@machopic_low_<mode>): New.
3598 * config/rs6000/predicates.md (macho_pic_address): New.
3599 * config/rs6000/rs6000.cc (rs6000_legitimize_address): Do not
3600 apply the TLS processing to Darwin.
3601 * lra-constraints.cc (process_address_1): Revert the changes
3602 in r12-7209.
3603
3604 2022-03-04 Peter Bergner <bergner@linux.ibm.com>
3605
3606 PR target/87496
3607 PR target/104208
3608 * config/rs6000/rs6000.cc (rs6000_option_override_internal): Make the
3609 ISA 2.06 requirement for -mabi=ieeelongdouble conditional on
3610 -mlong-double-128.
3611 Move the -mabi=ieeelongdouble and -mabi=ibmlongdouble error checking
3612 from here...
3613 * common/config/rs6000/rs6000-common.cc (rs6000_handle_option):
3614 ... to here.
3615
3616 2022-03-04 Jakub Jelinek <jakub@redhat.com>
3617
3618 PR middle-end/104529
3619 * gimplify.cc (gimplify_init_constructor): Clear TREE_READONLY
3620 on automatic objects which will be runtime initialized.
3621
3622 2022-03-04 Thomas Schwinge <thomas@codesourcery.com>
3623
3624 PR middle-end/100280
3625 PR middle-end/104132
3626 PR middle-end/104133
3627 * omp-low.cc (task_shared_vars): Rename to
3628 'make_addressable_vars'. Adjust all users.
3629 (scan_sharing_clauses) <OMP_CLAUSE_MAP> Use it for
3630 'OMP_CLAUSE_MAP_DECL_MAKE_ADDRESSABLE' DECLs, too.
3631
3632 2022-03-04 Thomas Schwinge <thomas@codesourcery.com>
3633
3634 PR middle-end/100280
3635 * tree.h (OMP_CLAUSE_MAP_DECL_MAKE_ADDRESSABLE): New.
3636 * tree-core.h: Document it.
3637 * omp-low.cc (scan_sharing_clauses) <OMP_CLAUSE_MAP>: Handle
3638 'OMP_CLAUSE_MAP_DECL_MAKE_ADDRESSABLE'.
3639 * omp-oacc-kernels-decompose.cc (maybe_build_inner_data_region):
3640 Set 'OMP_CLAUSE_MAP_DECL_MAKE_ADDRESSABLE' instead of
3641 'TREE_ADDRESSABLE'.
3642
3643 2022-03-04 Thomas Schwinge <thomas@codesourcery.com>
3644
3645 PR middle-end/100280
3646 * omp-oacc-kernels-decompose.cc (maybe_build_inner_data_region):
3647 Add diagnostic: "note: OpenACC 'kernels' decomposition: variable
3648 '[...]' declared in block made addressable".
3649
3650 2022-03-04 Thomas Schwinge <thomas@codesourcery.com>
3651
3652 PR middle-end/100400
3653 PR middle-end/103836
3654 PR middle-end/104061
3655 * omp-oacc-kernels-decompose.cc (decompose_kernels_region_body):
3656 Catch 'GIMPLE_DEBUG'.
3657
3658 2022-03-04 Jakub Jelinek <jakub@redhat.com>
3659
3660 PR c/104627
3661 * tree.cc (warn_deprecated_use): For types prefer to use node
3662 and only use TYPE_MAIN_VARIANT (node) if TYPE_STUB_DECL (node) is
3663 NULL.
3664
3665 2022-03-04 H.J. Lu <hjl.tools@gmail.com>
3666
3667 PR target/104704
3668 * config/i386/i386.cc (ix86_gen_scratch_sse_rtx): Always return
3669 a pseudo register.
3670
3671 2022-03-03 Martin Sebor <msebor@redhat.com>
3672
3673 PR middle-end/104761
3674 * gimple-ssa-warn-access.cc (pass_waccess::execute): Call
3675 mark_dfs_back_edges.
3676
3677 2022-03-03 Martin Liska <mliska@suse.cz>
3678
3679 * configure.ac: Use linker plug-in by default.
3680 * configure: Regenerate.
3681
3682 2022-03-03 Martin Liska <mliska@suse.cz>
3683
3684 * configure.ac: Now ld.mold support LTO plugin API, use it.
3685 * configure: Regenerate.
3686
3687 2022-03-03 Tom de Vries <tdevries@suse.de>
3688
3689 * config/nvptx/t-nvptx (MULTILIB_EXTRA_OPTS): Add mptx=3.1.
3690
3691 2022-03-03 Tom de Vries <tdevries@suse.de>
3692
3693 PR target/104758
3694 * config/nvptx/t-nvptx (MULTILIB_EXTRA_OPTS): Add misa=sm_30.
3695
3696 2022-03-03 Tom de Vries <tdevries@suse.de>
3697
3698 * config/nvptx/nvptx.h (ASM_SPEC): Add %{misa=sm_30:--no-verify}.
3699
3700 2022-03-03 Jakub Jelinek <jakub@redhat.com>
3701
3702 PR middle-end/104757
3703 * gimplify.cc (gimplify_omp_loop): Call gimplify_expr rather than
3704 gimplify_omp_for.
3705 (gimplify_expr) <case OMP_SIMD>: Temporarily disable
3706 gimplify_ctxp->into_ssa around call to gimplify_omp_for.
3707
3708 2022-03-03 Jakub Jelinek <jakub@redhat.com>
3709
3710 PR middle-end/104558
3711 * calls.cc (store_one_arg): When not calling emit_push_insn
3712 because size_rtx is const0_rtx, call at least anti_adjust_stack
3713 on arg->locate.alignment_pad if !argblock and the alignment might
3714 be non-zero.
3715
3716 2022-03-02 Alexandre Oliva <oliva@adacore.com>
3717
3718 * lra-constraints.cc (undo_optional_reloads): Recognize and
3719 drop insns of multi-word move sequences, tolerate removal
3720 iteration on an already-removed clobber, and refuse to
3721 substitute original pseudos into clobbers.
3722
3723 2022-03-02 Qing Zhao <qing.zhao@oracle.com>
3724
3725 PR middle-end/102276
3726 * common.opt (-Wtrivial-auto-var-init): New option.
3727 * doc/invoke.texi (-Wtrivial-auto-var-init): Document new option.
3728 (-ftrivial-auto-var-init): Update option;
3729 * gimplify.cc (emit_warn_switch_unreachable): New function.
3730 (warn_switch_unreachable_r): Rename to ...
3731 (warn_switch_unreachable_and_auto_init_r): This.
3732 (maybe_warn_switch_unreachable): Rename to ...
3733 (maybe_warn_switch_unreachable_and_auto_init): This.
3734 (gimplify_switch_expr): Update calls to renamed function.
3735
3736 2022-03-02 Richard Biener <rguenther@suse.de>
3737
3738 PR rtl-optimization/104686
3739 * ira-color.cc (object_conflicts_with_allocno_p): New function
3740 using a bitvector test instead of iterating when possible.
3741 (allocnos_conflict_p): Choose the best allocno to iterate over
3742 object conflicts.
3743 (update_conflict_hard_regno_costs): Do allocnos_conflict_p test
3744 last.
3745
3746 2022-03-02 Jakub Jelinek <jakub@redhat.com>
3747
3748 * cfg.cc (dump_edge_info): Dump goto_locus if present.
3749
3750 2022-03-02 Jakub Jelinek <jakub@redhat.com>
3751
3752 PR rtl-optimization/104589
3753 * cfgrtl.cc (fixup_reorder_chain): Use loc_equal instead of direct
3754 INSN_LOCATION comparison with goto_locus.
3755
3756 2022-03-02 Jakub Jelinek <jakub@redhat.com>
3757
3758 * tree-ssa-strlen.cc (strlen_pass::handle_assign,
3759 strlen_pass::before_dom_children): Comment spelling fixes.
3760
3761 2022-03-02 Jakub Jelinek <jakub@redhat.com>
3762
3763 * ipa-modref-tree.cc (modref_access_node::contains,
3764 modref_access_node::closer_pair_p, modref_access_node::insert,
3765 modref_access_node::insert_kill): Comment spelling fixes.
3766 * ipa-modref.cc: Likewise.
3767 (modref_summary::finalize, ignore_nondeterminism_p,
3768 class modref_access_analysis,
3769 modref_access_analysis::set_side_effects,
3770 modref_access_analysis::set_nondeterministic,
3771 modref_access_analysis::record_global_memory_load,
3772 modref_access_analysis::propagate, modref_access_analysis::analyze,
3773 struct escape_point, class modref_lattice, modref_lattice::merge,
3774 modref_lattice::merge_deref, class modref_eaf_analysis,
3775 modref_eaf_analysis::merge_call_lhs_flags,
3776 modref_eaf_analysis::analyze_ssa_name, modref_eaf_analysis::propagate,
3777 modref_eaf_analysis::record_escape_points, remap_kills,
3778 update_escape_summary, remove_useless_summaries,
3779 ipa_merge_modref_summary_after_inlining, pass_ipa_modref::execute):
3780 Likewise.
3781 * ipa-modref.h (struct modref_summary, interposable_eaf_flags):
3782 Likewise.
3783 * ipa-modref-tree.h (enum modref_special_parms,
3784 struct modref_access_node): Likewise.
3785
3786 2022-03-01 Jakub Jelinek <jakub@redhat.com>
3787
3788 PR tree-optimization/104715
3789 * gimple-ssa-warn-access.cc (pass_waccess::check_pointer_uses): Don't
3790 unnecessarily test if ptr is a SSA_NAME, it has to be. Only push lhs
3791 of a call if gimple_call_return_arg is equal to ptr, not just when it
3792 is non-NULL.
3793
3794 2022-03-01 Jakub Jelinek <jakub@redhat.com>
3795
3796 * gimple-ssa-warn-access.cc (warn_string_no_nul,
3797 maybe_warn_nonstring_arg, fndecl_alloc_p, new_delete_mismatch_p,
3798 matching_alloc_calls_p, maybe_warn_alloc_args_overflow,
3799 pass_waccess::check_alloca, pass_waccess::check_strcat,
3800 memmodel_to_uhwi, fntype_argno_type,
3801 pass_waccess::maybe_check_access_sizes,
3802 pass_waccess::check_call_access,
3803 pass_waccess::maybe_check_dealloc_call, pass_waccess::check_stmt):
3804 Comment spelling fixes.
3805
3806 2022-03-01 Richard Biener <rguenther@suse.de>
3807
3808 PR tree-optimization/104716
3809 * tree-loop-distribution.cc (find_seed_stmts_for_distribution):
3810 Check if we can copy the loop.
3811
3812 2022-03-01 H.J. Lu <hjl.tools@gmail.com>
3813
3814 PR middle-end/104721
3815 * cfgexpand.cc (expand_gimple_basic_block): Clear
3816 currently_expanding_gimple_stmt when returning inside the loop.
3817
3818 2022-03-01 Martin Liska <mliska@suse.cz>
3819
3820 PR ipa/104533
3821 * multiple_target.cc (get_attr_len): Move to tree.c.
3822 (expand_target_clones): Remove single value checking.
3823 * tree.cc (get_target_clone_attr_len): New fn.
3824 * tree.h (get_target_clone_attr_len): Likewise.
3825
3826 2022-03-01 Martin Liska <mliska@suse.cz>
3827
3828 PR gcov-profile/104677
3829 * doc/invoke.texi: Document more .gcda file name generation.
3830
3831 2022-03-01 Tom de Vries <tdevries@suse.de>
3832
3833 PR target/102429
3834 * config/nvptx/nvptx.cc (nvptx_gen_shuffle): Handle DCmode and CDImode.
3835 * config/nvptx/nvptx.md
3836 (define_predicate "nvptx_register_or_complex_di_df_register_operand"):
3837 New predicate.
3838 (define_expand "omp_simt_xchg_bfly", define_expand "omp_simt_xchg_idx"):
3839 Use nvptx_register_or_complex_di_df_register_operand.
3840
3841 2022-03-01 Tom de Vries <tdevries@suse.de>
3842
3843 * config.gcc (nvptx*-*-*): Add nvptx/nvptx-gen.opt to extra_options.
3844 * config/nvptx/gen-copyright.sh: New file.
3845 * config/nvptx/gen-h.sh: New file.
3846 * config/nvptx/gen-opt.sh: New file.
3847 * config/nvptx/nvptx.h (TARGET_SM35, TARGET_SM53, TARGET_SM70)
3848 (TARGET_SM75, TARGET_SM80): Move ...
3849 * config/nvptx/nvptx-gen.h: ... here. New file, generate.
3850 * config/nvptx/nvptx.opt (Enum ptx_isa): Move ...
3851 * config/nvptx/nvptx-gen.opt: ... here. New file, generate.
3852 * config/nvptx/t-nvptx ($(srcdir)/config/nvptx/nvptx-gen.h)
3853 ($(srcdir)/config/nvptx/nvptx-gen.opt): New make target.
3854
3855 2022-03-01 Tom de Vries <tdevries@suse.de>
3856
3857 * config/nvptx/gen-omp-device-properties.sh: New file.
3858 * config/nvptx/t-omp-device: Use gen-omp-device-properties.sh.
3859
3860 2022-03-01 Tom de Vries <tdevries@suse.de>
3861
3862 * config/nvptx/nvptx-sm.def: New file.
3863 * config/nvptx/nvptx-c.cc (nvptx_cpu_cpp_builtins): Use nvptx-sm.def.
3864 * config/nvptx/nvptx-opts.h (enum ptx_isa): Same.
3865 * config/nvptx/nvptx.cc (sm_version_to_string)
3866 (nvptx_omp_device_kind_arch_isa): Same.
3867
3868 2022-03-01 Robin Dapp <rdapp@linux.ibm.com>
3869
3870 PR rtl-optimization/104154
3871 * config/arc/arc.cc (gen_compare_reg): Return the CC-mode
3872 comparison ifcvt passed us.
3873
3874 2022-03-01 Hongyu Wang <hongyu.wang@intel.com>
3875
3876 PR target/104664
3877 * config/i386/i386-expand.cc (ix86_expand_vector_init_duplicate):
3878 Use vec_setv8hf_0 for HF to V8HFmode move instead of subreg.
3879
3880 2022-02-28 Roger Sayle <roger@nextmovesoftware.com>
3881
3882 PR tree-optimization/91384
3883 * config/i386/i386.md (peephole2): Eliminate final testl insn
3884 from the sequence *movsi_internal, *negsi_1, *cmpsi_ccno_1 by
3885 transforming using *negsi_2 for the negation.
3886
3887 2022-02-28 Roger Sayle <roger@nextmovesoftware.com>
3888 Eric Botcazou <ebotcazou@adacore.com>
3889
3890 PR middle-end/80270
3891 * expmed.cc (extract_integral_bit_field): If OP0 is a hard
3892 register, copy it to a pseudo before calling simplify_gen_subreg.
3893
3894 2022-02-28 Vladimir N. Makarov <vmakarov@redhat.com>
3895
3896 PR rtl-optimization/104637
3897 * lra-assigns.cc (lra_split_hard_reg_for): Split hard regs as many
3898 as possible on one subpass.
3899
3900 2022-02-28 Qing Zhao <qing.zhao@oracle.com>
3901
3902 PR middle-end/104550
3903 * gimple-fold.cc (clear_padding_flush): Suppress warnings for new
3904 created uses.
3905
3906 2022-02-28 Martin Liska <mliska@suse.cz>
3907
3908 PR ipa/104648
3909 * main.cc (main): Use flag_checking instead of CHECKING_P
3910 and run toplev::finalize only if there is not error seen.
3911
3912 2022-02-28 Richard Biener <rguenther@suse.de>
3913
3914 * tree-ssa-pre.cc (compute_avail): Revert part of last change.
3915
3916 2022-02-28 Richard Biener <rguenther@suse.de>
3917
3918 PR tree-optimization/104700
3919 * tree-ssa-pre.cc (get_or_alloc_expr_for): Remove and inline
3920 into ...
3921 (find_or_generate_expression): ... here, simplifying code.
3922
3923 2022-02-28 Tom de Vries <tdevries@suse.de>
3924
3925 * config/nvptx/nvptx-opts.h (enum ptx_version): Add
3926 PTX_VERSION_default.
3927 * config/nvptx/nvptx.cc (handle_ptx_version_option): Handle
3928 PTX_VERSION_default.
3929 * config/nvptx/nvptx.opt: Add EnumValue "_" / PTX_VERSION_default.
3930
3931 2022-02-28 Richard Biener <rguenther@suse.de>
3932
3933 PR rtl-optimization/104686
3934 * ira-int.h (minmax_set_iter_cond): Use ctz_hwi to elide loop
3935 skipping bits that are zero.
3936 (ira_object_conflict_iter_cond): Likewise.
3937
3938 2022-02-28 Hongyu Wang <hongyu.wang@intel.com>
3939
3940 * config/i386/avx512fintrin.h (_MM_TERNLOG_ENUM): New enum.
3941 (_mm512_ternarylogic_epi64): Truncate imm to unsigned
3942 char to avoid error when using ~enum as parameter.
3943 (_mm512_mask_ternarylogic_epi64): Likewise.
3944 (_mm512_maskz_ternarylogic_epi64): Likewise.
3945 (_mm512_ternarylogic_epi32): Likewise.
3946 (_mm512_mask_ternarylogic_epi32): Likewise.
3947 (_mm512_maskz_ternarylogic_epi32): Likewise.
3948 * config/i386/avx512vlintrin.h (_mm256_ternarylogic_epi64):
3949 Adjust imm param type to unsigned char.
3950 (_mm256_mask_ternarylogic_epi64): Likewise.
3951 (_mm256_maskz_ternarylogic_epi64): Likewise.
3952 (_mm256_ternarylogic_epi32): Likewise.
3953 (_mm256_mask_ternarylogic_epi32): Likewise.
3954 (_mm256_maskz_ternarylogic_epi32): Likewise.
3955 (_mm_ternarylogic_epi64): Likewise.
3956 (_mm_mask_ternarylogic_epi64): Likewise.
3957 (_mm_maskz_ternarylogic_epi64): Likewise.
3958 (_mm_ternarylogic_epi32): Likewise.
3959 (_mm_mask_ternarylogic_epi32): Likewise.
3960 (_mm_maskz_ternarylogic_epi32): Likewise.
3961
3962 2022-02-25 Jakub Jelinek <jakub@redhat.com>
3963 Marc Glisse <marc.glisse@inria.fr>
3964
3965 PR tree-optimization/104675
3966 * match.pd (t * 2U / 2 -> t & (~0 / 2), t / 2U * 2 -> t & ~1):
3967 Restrict simplifications to INTEGRAL_TYPE_P.
3968
3969 2022-02-25 Jakub Jelinek <jakub@redhat.com>
3970
3971 PR target/104681
3972 * config/rs6000/vector.md (movmisalign<mode>): Use rs6000_emit_move.
3973
3974 2022-02-25 Claudiu Zissulescu <claziss@synopsys.com>
3975
3976 * config/arc/arc.cc (gen_compare_reg): Return NULL_RTX if the
3977 comparison is not valid.
3978 * config/arc/arc.md (movsicc): Fail if comparison is not valid.
3979 (movdicc): Likewise.
3980 (movsfcc): Likewise.
3981 (movdfcc): Likewise.
3982
3983 2022-02-25 Richard Biener <rguenther@suse.de>
3984
3985 PR tree-optimization/103037
3986 * tree-ssa-sccvn.h (alloc_vn_nary_op_noinit): Declare.
3987 (vn_nary_length_from_stmt): Likewise.
3988 (init_vn_nary_op_from_stmt): Likewise.
3989 (vn_nary_op_compute_hash): Likewise.
3990 * tree-ssa-sccvn.cc (alloc_vn_nary_op_noinit): Export.
3991 (vn_nary_length_from_stmt): Likewise.
3992 (init_vn_nary_op_from_stmt): Likewise.
3993 (vn_nary_op_compute_hash): Likewise.
3994 * tree-ssa-pre.cc (pre_expr_obstack): New obstack.
3995 (get_or_alloc_expr_for_nary): Pass in the value-id to use,
3996 (re-)compute the hash value and if the expression is not
3997 found allocate it from pre_expr_obstack.
3998 (phi_translate_1): Do not insert the NARY found in the
3999 VN tables but build a PRE expression from the valueized
4000 NARY with the value-id we eventually found.
4001 (find_or_generate_expression): Assert we have an entry
4002 for constant values.
4003 (compute_avail): Insert not valueized expressions into
4004 EXP_GEN using the value-id from the VN tables.
4005 (init_pre): Allocate pre_expr_obstack.
4006 (fini_pre): Free pre_expr_obstack.
4007
4008 2022-02-25 Jakub Jelinek <jakub@redhat.com>
4009
4010 PR target/104674
4011 * config/i386/i386.h (enum ix86_stack_slot): Add SLOT_FLOATxFDI_387.
4012 * config/i386/i386.md (splitter to floatdi<mode>2_i387_with_xmm): Use
4013 SLOT_FLOATxFDI_387 rather than SLOT_TEMP.
4014
4015 2022-02-25 Jakub Jelinek <jakub@redhat.com>
4016
4017 * warning-control.cc (get_nowarn_spec): Comment spelling fix.
4018
4019 2022-02-25 Jakub Jelinek <jakub@redhat.com>
4020
4021 PR middle-end/104679
4022 * internal-fn.cc (expand_SPACESHIP): Call do_pending_stack_adjust.
4023
4024 2022-02-25 Jakub Jelinek <jakub@redhat.com>
4025
4026 PR tree-optimization/104675
4027 * match.pd (-A - 1 -> ~A, -1 - A -> ~A): Don't simplify for
4028 COMPLEX_TYPE.
4029
4030 2022-02-25 Alexandre Oliva <oliva@adacore.com>
4031
4032 PR target/104121
4033 PR target/103302
4034 * expr.cc (emit_move_multi_word): Restore clobbers during LRA.
4035
4036 2022-02-25 Alexandre Oliva <oliva@adacore.com>
4037
4038 PR middle-end/104540
4039 * dwarf2cfi.cc (cfi_oprnd_equal_p): Cope with NULL
4040 dw_cfi_cfa_loc.
4041
4042 2022-02-25 Alexandre Oliva <oliva@adacore.com>
4043
4044 PR tree-optimization/103856
4045 * gimple-harden-conditionals.cc (non_eh_succ_edge): Enable the
4046 eh edge to be requested through an extra parameter.
4047 (pass_harden_compares::execute): Copy PHI args in the EH dest
4048 block for the new EH edge added for the inverted compare.
4049
4050 2022-02-24 Palmer Dabbelt <palmer@rivosinc.com>
4051
4052 * doc/invoke.texi (RISC-V -mcmodel=medany): Document the degree
4053 of position independence that -mcmodel=medany affords.
4054
4055 2022-02-24 Jose E. Marchesi <jose.marchesi@oracle.com>
4056
4057 PR target/104656
4058 * configure.ac: --disable-gcov if targetting bpf-*.
4059 * configure: Regenerate.
4060
4061 2022-02-24 Richard Biener <rguenther@suse.de>
4062
4063 PR tree-optimization/104676
4064 * tree-loop-distribution.cc (loop_distribution::execute):
4065 Do a full scev_reset.
4066
4067 2022-02-24 Jakub Jelinek <jakub@redhat.com>
4068
4069 PR tree-optimization/104601
4070 * tree-ssa-sccvn.cc (visit_reference_op_call): For calls with
4071 non-SSA_NAME lhs value number vdef to itself instead of e.g. the
4072 vuse value number.
4073
4074 2022-02-24 Tom de Vries <tdevries@suse.de>
4075 Tobias Burnus <tobias@codesourcery.com>
4076
4077 * config/nvptx/nvptx.cc (nvptx_omp_device_kind_arch_isa): Handle
4078 sm_70, sm_75 and sm_80.
4079 * config/nvptx/t-omp-device: Add sm_53, sm_70, sm_75 and sm_80.
4080
4081 2022-02-24 Tom de Vries <tdevries@suse.de>
4082
4083 * config/nvptx/nvptx.md (define_insn "rotlsi3", define_insn
4084 "rotrsi3"): New define_insn.
4085
4086 2022-02-24 Tom de Vries <tdevries@suse.de>
4087
4088 * config/nvptx/nvptx.cc (gen_comment): Use
4089 DECL_SOURCE_LOCATION (cfun->decl) instead of cfun->function_start_locus.
4090
4091 2022-02-24 liuhongt <hongtao.liu@intel.com>
4092
4093 * config/i386/sse.md (<code>v1ti3): Add suffix and replace
4094 isa attr of alternative 2 from avx to avx512vl.
4095
4096 2022-02-23 Richard Biener <rguenther@suse.de>
4097 Jakub Jelinek <jakub@redhat.com>
4098
4099 PR tree-optimization/104644
4100 * doc/match-and-simplify.texi: Amend ! documentation.
4101 * genmatch.cc (expr::gen_transform): Code-generate ! support
4102 for GENERIC.
4103 (parser::parse_expr): Allow ! for GENERIC.
4104 * match.pd (cmp (bswap @0) INTEGER_CST@1): Use ! modifier on
4105 bswap.
4106
4107 2022-02-23 Richard Biener <rguenther@suse.de>
4108
4109 PR tree-optimization/101636
4110 * tree-vect-slp.cc (vect_print_slp_tree): Dump the
4111 vector type of the node.
4112 (vect_slp_analyze_operations): Make sure the CTOR
4113 is vectorized with an expected type.
4114 (vectorize_slp_instance_root_stmt): Revert r10-5979 fix.
4115
4116 2022-02-23 Jakub Jelinek <jakub@redhat.com>
4117
4118 PR c/104633
4119 * gimple-warn-recursion.cc (pass_warn_recursion::find_function_exit):
4120 Don't warn about calls to corresponding builtin from extern inline
4121 gnu_inline wrappers.
4122
4123 2022-02-23 Roger Sayle <roger@nextmovesoftware.com>
4124
4125 PR target/104489
4126 * config/nvptx/nvptx.md (*movhf_insn): Add subregs_ok attribute.
4127
4128 2022-02-23 Christophe Lyon <christophe.lyon@arm.com>
4129
4130 PR target/100757
4131 PR target/101325
4132 * config/arm/vfp.md (thumb2_movhi_vfp, thumb2_movhi_fp16): Fix
4133 typo.
4134
4135 2022-02-23 Cui,Lili <lili.cui@intel.com>
4136
4137 * doc/invoke.texi: Update documents for Intel architectures.
4138
4139 2022-02-22 Roger Sayle <roger@nextmovesoftware.com>
4140
4141 * config/i386/i386-expand.cc (ix86_expand_cmpxchg_loop): Restore
4142 bootstrap.
4143
4144 2022-02-22 Thomas Schwinge <thomas@codesourcery.com>
4145
4146 * omp-low.cc (omp_build_component_ref): Move function...
4147 * omp-general.cc (omp_build_component_ref): ... here. Remove
4148 'static'.
4149 * omp-general.h (omp_build_component_ref): Declare function.
4150 * omp-oacc-neuter-broadcast.cc (oacc_build_component_ref): Remove
4151 function.
4152 (build_receiver_ref, build_sender_ref): Call
4153 'omp_build_component_ref' instead.
4154
4155 2022-02-22 Thomas Schwinge <thomas@codesourcery.com>
4156
4157 * omp-oacc-neuter-broadcast.cc (record_field_map_t): Further
4158 simplify. Adjust all users.
4159
4160 2022-02-22 Segher Boessenkool <segher@kernel.crashing.org>
4161
4162 PR target/88134
4163 * config/rs6000/rs6000.cc (atomic_hold_decl, atomic_clear_decl,
4164 atomic_update_decl): Add GTY markup.
4165
4166 2022-02-22 Christophe Lyon <christophe.lyon@arm.com>
4167
4168 * config/arm/arm.h (REG_CLASS_CONTENTS): Add VPR_REG to ALL_REGS.
4169
4170 2022-02-22 Christophe Lyon <christophe.lyon@arm.com>
4171
4172 PR target/100757
4173 PR target/101325
4174 * config/arm/arm-builtins.cc (CX_UNARY_UNONE_QUALIFIERS): Use
4175 predicate.
4176 (CX_BINARY_UNONE_QUALIFIERS): Likewise.
4177 (CX_TERNARY_UNONE_QUALIFIERS): Likewise.
4178 (TERNOP_NONE_NONE_NONE_UNONE_QUALIFIERS): Delete.
4179 (QUADOP_NONE_NONE_NONE_NONE_UNONE_QUALIFIERS): Delete.
4180 (QUADOP_UNONE_UNONE_UNONE_UNONE_UNONE_QUALIFIERS): Delete.
4181 * config/arm/arm_mve_builtins.def: Use predicated qualifiers.
4182 * config/arm/mve.md: Use VxBI instead of HI.
4183
4184 2022-02-22 Christophe Lyon <christophe.lyon@arm.com>
4185
4186 PR target/100757
4187 PR target/101325
4188 * config/arm/arm-builtins.cc (STRSBS_P_QUALIFIERS): Use predicate
4189 qualifier.
4190 (STRSBU_P_QUALIFIERS): Likewise.
4191 (LDRGBS_Z_QUALIFIERS): Likewise.
4192 (LDRGBU_Z_QUALIFIERS): Likewise.
4193 (LDRGBWBXU_Z_QUALIFIERS): Likewise.
4194 (LDRGBWBS_Z_QUALIFIERS): Likewise.
4195 (LDRGBWBU_Z_QUALIFIERS): Likewise.
4196 (STRSBWBS_P_QUALIFIERS): Likewise.
4197 (STRSBWBU_P_QUALIFIERS): Likewise.
4198 * config/arm/mve.md: Use VxBI instead of HI.
4199
4200 2022-02-22 Christophe Lyon <christophe.lyon@arm.com>
4201
4202 PR target/100757
4203 PR target/101325
4204 * config/arm/arm-builtins.cc (TERNOP_UNONE_UNONE_NONE_UNONE_QUALIFIERS): Change to ...
4205 (TERNOP_UNONE_UNONE_NONE_PRED_QUALIFIERS): ... this.
4206 (TERNOP_UNONE_UNONE_IMM_UNONE_QUALIFIERS): Change to ...
4207 (TERNOP_UNONE_UNONE_IMM_PRED_QUALIFIERS): ... this.
4208 (TERNOP_NONE_NONE_IMM_UNONE_QUALIFIERS): Change to ...
4209 (TERNOP_NONE_NONE_IMM_PRED_QUALIFIERS): ... this.
4210 (TERNOP_NONE_NONE_UNONE_UNONE_QUALIFIERS): Change to ...
4211 (TERNOP_NONE_NONE_UNONE_PRED_QUALIFIERS): ... this.
4212 (QUADOP_UNONE_UNONE_NONE_NONE_UNONE_QUALIFIERS): Change to ...
4213 (QUADOP_UNONE_UNONE_NONE_NONE_PRED_QUALIFIERS): ... this.
4214 (QUADOP_NONE_NONE_NONE_NONE_PRED_QUALIFIERS): New.
4215 (QUADOP_NONE_NONE_NONE_IMM_UNONE_QUALIFIERS): Change to ...
4216 (QUADOP_NONE_NONE_NONE_IMM_PRED_QUALIFIERS): ... this.
4217 (QUADOP_UNONE_UNONE_UNONE_UNONE_PRED_QUALIFIERS): New.
4218 (QUADOP_UNONE_UNONE_NONE_IMM_UNONE_QUALIFIERS): Change to ...
4219 (QUADOP_UNONE_UNONE_NONE_IMM_PRED_QUALIFIERS): ... this.
4220 (QUADOP_NONE_NONE_UNONE_IMM_UNONE_QUALIFIERS): Change to ...
4221 (QUADOP_NONE_NONE_UNONE_IMM_PRED_QUALIFIERS): ... this.
4222 (QUADOP_UNONE_UNONE_UNONE_IMM_UNONE_QUALIFIERS): Change to ...
4223 (QUADOP_UNONE_UNONE_UNONE_IMM_PRED_QUALIFIERS): ... this.
4224 (QUADOP_UNONE_UNONE_UNONE_NONE_UNONE_QUALIFIERS): Change to ...
4225 (QUADOP_UNONE_UNONE_UNONE_NONE_PRED_QUALIFIERS): ... this.
4226 (STRS_P_QUALIFIERS): Use predicate qualifier.
4227 (STRU_P_QUALIFIERS): Likewise.
4228 (STRSU_P_QUALIFIERS): Likewise.
4229 (STRSS_P_QUALIFIERS): Likewise.
4230 (LDRGS_Z_QUALIFIERS): Likewise.
4231 (LDRGU_Z_QUALIFIERS): Likewise.
4232 (LDRS_Z_QUALIFIERS): Likewise.
4233 (LDRU_Z_QUALIFIERS): Likewise.
4234 (QUINOP_UNONE_UNONE_UNONE_UNONE_IMM_UNONE_QUALIFIERS): Change to ...
4235 (QUINOP_UNONE_UNONE_UNONE_UNONE_IMM_PRED_QUALIFIERS): ... this.
4236 (BINOP_NONE_NONE_PRED_QUALIFIERS): New.
4237 (BINOP_UNONE_UNONE_PRED_QUALIFIERS): New.
4238 * config/arm/arm_mve_builtins.def: Use new predicated qualifiers.
4239 * config/arm/mve.md: Use MVE_VPRED instead of HI.
4240
4241 2022-02-22 Christophe Lyon <christophe.lyon@arm.com>
4242
4243 PR target/100757
4244 PR target/101325
4245 * config/arm/arm-builtins.cc (BINOP_UNONE_NONE_NONE_QUALIFIERS):
4246 Delete.
4247 (TERNOP_UNONE_NONE_NONE_UNONE_QUALIFIERS): Change to ...
4248 (TERNOP_PRED_NONE_NONE_PRED_QUALIFIERS): ... this.
4249 (TERNOP_PRED_UNONE_UNONE_PRED_QUALIFIERS): New.
4250 * config/arm/arm_mve_builtins.def (vcmp*q_n_, vcmp*q_m_f): Use new
4251 predicated qualifiers.
4252 * config/arm/mve.md (mve_vcmp<mve_cmp_op>q_n_<mode>)
4253 (mve_vcmp*q_m_f<mode>): Use MVE_VPRED instead of HI.
4254
4255 2022-02-22 Christophe Lyon <christophe.lyon@arm.com>
4256
4257 PR target/100757
4258 * config/arm/arm-protos.h (arm_get_mask_mode): New prototype.
4259 (arm_expand_vector_compare): Update prototype.
4260 * config/arm/arm.cc (TARGET_VECTORIZE_GET_MASK_MODE): New.
4261 (arm_vector_mode_supported_p): Add support for VxBI modes.
4262 (arm_expand_vector_compare): Remove useless generation of vpsel.
4263 (arm_expand_vcond): Fix select operands.
4264 (arm_get_mask_mode): New.
4265 * config/arm/mve.md (vec_cmp<mode><MVE_vpred>): New.
4266 (vec_cmpu<mode><MVE_vpred>): New.
4267 (vcond_mask_<mode><MVE_vpred>): New.
4268 * config/arm/vec-common.md (vec_cmp<mode><v_cmp_result>)
4269 (vec_cmpu<mode><mode, vcond_mask_<mode><v_cmp_result>): Move to ...
4270 * config/arm/neon.md (vec_cmp<mode><v_cmp_result>)
4271 (vec_cmpu<mode><mode, vcond_mask_<mode><v_cmp_result>): ... here
4272 and disable for MVE.
4273 * doc/sourcebuild.texi (arm_mve): Document new effective-target.
4274
4275 2022-02-22 Christophe Lyon <christophe.lyon@arm.com>
4276
4277 PR target/100757
4278 PR target/101325
4279 * config/arm/arm-builtins.cc (BINOP_PRED_UNONE_UNONE_QUALIFIERS)
4280 (BINOP_PRED_NONE_NONE_QUALIFIERS)
4281 (TERNOP_NONE_NONE_NONE_PRED_QUALIFIERS)
4282 (TERNOP_UNONE_UNONE_UNONE_PRED_QUALIFIERS): New.
4283 * config/arm/arm-protos.h (mve_bool_vec_to_const): New.
4284 * config/arm/arm.cc (arm_hard_regno_mode_ok): Handle new VxBI
4285 modes.
4286 (arm_mode_to_pred_mode): New.
4287 (arm_expand_vector_compare): Use the right VxBI mode instead of
4288 HI.
4289 (arm_expand_vcond): Likewise.
4290 (simd_valid_immediate): Handle MODE_VECTOR_BOOL.
4291 (mve_bool_vec_to_const): New.
4292 (neon_make_constant): Call mve_bool_vec_to_const when needed.
4293 * config/arm/arm_mve_builtins.def (vcmpneq_, vcmphiq_, vcmpcsq_)
4294 (vcmpltq_, vcmpleq_, vcmpgtq_, vcmpgeq_, vcmpeqq_, vcmpneq_f)
4295 (vcmpltq_f, vcmpleq_f, vcmpgtq_f, vcmpgeq_f, vcmpeqq_f, vpselq_u)
4296 (vpselq_s, vpselq_f): Use new predicated qualifiers.
4297 * config/arm/constraints.md (DB): New.
4298 * config/arm/iterators.md (MVE_7, MVE_7_HI): New mode iterators.
4299 (MVE_VPRED, MVE_vpred): New attribute iterators.
4300 * config/arm/mve.md (@mve_vcmp<mve_cmp_op>q_<mode>)
4301 (@mve_vcmp<mve_cmp_op>q_f<mode>, @mve_vpselq_<supf><mode>)
4302 (@mve_vpselq_f<mode>): Use MVE_VPRED instead of HI.
4303 (@mve_vpselq_<supf>v2di): Define separately.
4304 (mov<mode>): New expander for VxBI modes.
4305 * config/arm/vfp.md (thumb2_movhi_vfp, thumb2_movhi_fp16): Use
4306 MVE_7_HI iterator and add support for DB constraint.
4307
4308 2022-02-22 Christophe Lyon <christophe.lyon@arm.com>
4309 Richard Sandiford <richard.sandiford@arm.com>
4310
4311 PR target/100757
4312 PR target/101325
4313 * config/aarch64/aarch64-modes.def (VNx16BI, VNx8BI, VNx4BI,
4314 VNx2BI): Update definition.
4315 * config/arm/arm-builtins.cc (arm_init_simd_builtin_types): Add new
4316 simd types.
4317 (arm_init_builtin): Map predicate vectors arguments to HImode.
4318 (arm_expand_builtin_args): Move HImode predicate arguments to VxBI
4319 rtx. Move return value to HImode rtx.
4320 * config/arm/arm-builtins.h (arm_type_qualifiers): Add qualifier_predicate.
4321 * config/arm/arm-modes.def (B2I, B4I, V16BI, V8BI, V4BI): New modes.
4322 * config/arm/arm-simd-builtin-types.def (Pred1x16_t,
4323 Pred2x8_t,Pred4x4_t): New.
4324 * emit-rtl.cc (init_emit_once): Handle all boolean modes.
4325 * genmodes.cc (mode_data): Add boolean field.
4326 (blank_mode): Initialize it.
4327 (make_complex_modes): Fix handling of boolean modes.
4328 (make_vector_modes): Likewise.
4329 (VECTOR_BOOL_MODE): Use new COMPONENT parameter.
4330 (make_vector_bool_mode): Likewise.
4331 (BOOL_MODE): New.
4332 (make_bool_mode): New.
4333 (emit_insn_modes_h): Fix generation of boolean modes.
4334 (emit_class_narrowest_mode): Likewise.
4335 * machmode.def: (VECTOR_BOOL_MODE): Document new COMPONENT
4336 parameter. Use new BOOL_MODE instead of FRACTIONAL_INT_MODE to
4337 define BImode.
4338 * rtx-vector-builder.cc (rtx_vector_builder::find_cached_value):
4339 Fix handling of constm1_rtx for VECTOR_BOOL.
4340 * simplify-rtx.cc (native_encode_rtx): Fix support for VECTOR_BOOL.
4341 (native_decode_vector_rtx): Likewise.
4342 (test_vector_ops_duplicate): Skip vec_merge test
4343 with vectors of booleans.
4344 * varasm.cc (output_constant_pool_2): Likewise.
4345
4346 2022-02-22 Christophe Lyon <christophe.lyon@arm.com>
4347
4348 * config/arm/mve.md (mve_vmvnq_n_<supf><mode>): Use V_elem mode
4349 for operand 1.
4350
4351 2022-02-22 Christophe Lyon <christophe.lyon@arm.com>
4352
4353 * config/arm/arm.cc (arm_class_likely_spilled_p): Handle VPR_REG.
4354
4355 2022-02-22 Christophe Lyon <christophe.lyon@arm.com>
4356
4357 * config/arm/arm.h (reg_class): Add GENERAL_AND_VPR_REGS.
4358 (REG_CLASS_NAMES): Likewise.
4359 (REG_CLASS_CONTENTS): Likewise.
4360 (CLASS_MAX_NREGS): Handle VPR.
4361 * config/arm/arm.cc (arm_hard_regno_nregs): Handle VPR.
4362
4363 2022-02-22 Tobias Burnus <tobias@codesourcery.com>
4364 Tom de Vries <tdevries@suse.de>
4365
4366 * config/nvptx/nvptx-c.cc (nvptx_cpu_cpp_builtins): Handle SM70.
4367 * config/nvptx/nvptx.cc (first_ptx_version_supporting_sm):
4368 Likewise.
4369 * config/nvptx/nvptx.opt (misa): Add sm_70 alias PTX_ISA_SM70.
4370
4371 2022-02-22 Tobias Burnus <tobias@codesourcery.com>
4372 Tom de Vries <tdevries@suse.de>
4373
4374 * config/nvptx/nvptx.opt (mptx): Add 6.0 alias PTX_VERSION_6_0.
4375 * doc/invoke.texi (-mptx): Update for new values and defaults.
4376
4377 2022-02-22 Tom de Vries <tdevries@suse.de>
4378
4379 * config/nvptx/nvptx.cc (gen_comment): New function.
4380 (workaround_uninit_method_1, workaround_uninit_method_2)
4381 (workaround_uninit_method_3): : Use gen_comment.
4382 * config/nvptx/nvptx.opt (mptx-comment): New option.
4383
4384 2022-02-22 Richard Biener <rguenther@suse.de>
4385
4386 * tree-vect-slp.cc (vect_build_slp_tree_2): Dump the def used
4387 for a splat.
4388
4389 2022-02-22 Roger Sayle <roger@nextmovesoftware.com>
4390 Richard Biener <rguenther@suse.de>
4391
4392 * fold-const.cc (ctor_single_nonzero_element): New function to
4393 return the single non-zero element of a (vector) constructor.
4394 * fold-const.h (ctor_single_nonzero_element): Prototype here.
4395 * match.pd (reduc (constructor@0)): Simplify reductions of a
4396 constructor containing a single non-zero element.
4397 (reduc (@0 op VECTOR_CST) -> (reduc @0) op CONST): Simplify
4398 reductions of vector operations of the same operator with
4399 constant vector operands.
4400
4401 2022-02-22 Jakub Jelinek <jakub@redhat.com>
4402
4403 PR tree-optimization/104604
4404 * gimple-range-fold.cc (adjust_imagpart_expr, adjust_realpart_expr):
4405 Only check if gimple_assign_rhs1 is COMPLEX_CST if
4406 gimple_assign_rhs_code is COMPLEX_CST.
4407
4408 2022-02-22 Jakub Jelinek <jakub@redhat.com>
4409
4410 PR target/104612
4411 * config/i386/i386-expand.cc (ix86_expand_copysign): Call force_reg
4412 on input operands before calling lowpart_subreg on it. For output
4413 operand, use a vmode pseudo as destination and then move its lowpart
4414 subreg into operands[0] if lowpart_subreg fails on dest.
4415 (ix86_expand_xorsign): Likewise.
4416
4417 2022-02-22 Richard Biener <rguenther@suse.de>
4418
4419 PR tree-optimization/104582
4420 PR target/99881
4421 * config/i386/i386.cc (ix86_vector_costs::add_stmt_cost):
4422 Cost GPR to vector register moves for integer vector construction.
4423
4424 2022-02-22 Richard Biener <rguenther@suse.de>
4425
4426 PR tree-optimization/104582
4427 * tree-vectorizer.h (stmt_info_for_cost::node): New field.
4428 (vector_costs::add_stmt_cost): Add SLP node parameter.
4429 (dump_stmt_cost): Likewise.
4430 (add_stmt_cost): Likewise, new overload and adjust.
4431 (add_stmt_costs): Adjust.
4432 (record_stmt_cost): New overload.
4433 * tree-vectorizer.cc (dump_stmt_cost): Dump the SLP node.
4434 (vector_costs::add_stmt_cost): Adjust.
4435 * tree-vect-loop.cc (vect_estimate_min_profitable_iters):
4436 Adjust.
4437 * tree-vect-slp.cc (vect_prologue_cost_for_slp): Record
4438 the SLP node for costing.
4439 (vectorizable_slp_permutation): Likewise.
4440 * tree-vect-stmts.cc (record_stmt_cost): Adjust and add
4441 new overloads.
4442 * config/i386/i386.cc (ix86_vector_costs::add_stmt_cost):
4443 Adjust.
4444 * config/aarch64/aarch64.cc (aarch64_vector_costs::add_stmt_cost):
4445 Adjust.
4446 * config/rs6000/rs6000.cc (rs6000_vector_costs::add_stmt_cost):
4447 Adjust.
4448 (rs6000_cost_data::adjust_vect_cost_per_loop): Likewise.
4449
4450 2022-02-22 Richard Biener <rguenther@suse.de>
4451
4452 PR tree-optimization/104582
4453 * tree-vectorizer.h (add_stmt_cost): New overload.
4454 (record_stmt_cost): Likewise.
4455 * tree-vect-loop.cc (vect_compute_single_scalar_iteration_cost):
4456 Use add_stmt_costs.
4457 (vect_get_known_peeling_cost): Use new overloads.
4458 (vect_estimate_min_profitable_iters): Likewise. Consistently
4459 use scalar_stmt for costing versioning checks.
4460 * tree-vect-stmts.cc (record_stmt_cost): New overload.
4461
4462 2022-02-22 Hongyu Wang <hongyu.wang@intel.com>
4463
4464 PR target/103069
4465 * config/i386/i386-expand.cc (ix86_expand_atomic_fetch_op_loop):
4466 Split atomic fetch and loop part.
4467 (ix86_expand_cmpxchg_loop): New expander for cmpxchg loop.
4468 * config/i386/i386-protos.h (ix86_expand_cmpxchg_loop): New
4469 prototype.
4470 * config/i386/sync.md (atomic_compare_and_swap<mode>): Call new
4471 expander under TARGET_RELAX_CMPXCHG_LOOP.
4472 (atomic_compare_and_swap<mode>): Likewise for doubleword modes.
4473
4474 2022-02-21 Dan Li <ashimida@linux.alibaba.com>
4475
4476 * config/aarch64/aarch64.cc (SLOT_REQUIRED):
4477 Change wb_candidate[12] to wb_push_candidate[12].
4478 (aarch64_layout_frame): Likewise, and
4479 change callee_adjust when scs is enabled.
4480 (aarch64_save_callee_saves):
4481 Change wb_candidate[12] to wb_push_candidate[12].
4482 (aarch64_restore_callee_saves):
4483 Change wb_candidate[12] to wb_pop_candidate[12].
4484 (aarch64_get_separate_components):
4485 Change wb_candidate[12] to wb_push_candidate[12].
4486 (aarch64_expand_prologue): Push x30 onto SCS before it's
4487 pushed onto stack.
4488 (aarch64_expand_epilogue): Pop x30 frome SCS, while
4489 preventing it from being popped from the regular stack again.
4490 (aarch64_override_options_internal): Add SCS compile option check.
4491 (TARGET_HAVE_SHADOW_CALL_STACK): New hook.
4492 * config/aarch64/aarch64.h (struct GTY): Add is_scs_enabled,
4493 wb_pop_candidate[12], and rename wb_candidate[12] to
4494 wb_push_candidate[12].
4495 * config/aarch64/aarch64.md (scs_push): New template.
4496 (scs_pop): Likewise.
4497 * doc/invoke.texi: Document -fsanitize=shadow-call-stack.
4498 * doc/tm.texi: Regenerate.
4499 * doc/tm.texi.in: Add hook have_shadow_call_stack.
4500 * flag-types.h (enum sanitize_code):
4501 Add SANITIZE_SHADOW_CALL_STACK.
4502 * opts.cc (parse_sanitizer_options): Add shadow-call-stack
4503 and exclude SANITIZE_SHADOW_CALL_STACK.
4504 * target.def: New hook.
4505 * toplev.cc (process_options): Add SCS compile option check.
4506 * ubsan.cc (ubsan_expand_null_ifn): Enum type conversion.
4507
4508 2022-02-21 Tom de Vries <tdevries@suse.de>
4509
4510 PR target/104440
4511 * config/nvptx/nvptx.cc (workaround_uninit_method_1)
4512 (workaround_uninit_method_2, workaround_uninit_method_3)
4513 (workaround_uninit): New function.
4514 (nvptx_reorg): Use workaround_uninit.
4515 * config/nvptx/nvptx.opt (minit-regs): New option.
4516
4517 2022-02-21 Andre Vieira <andre.simoesdiasvieira@arm.com>
4518
4519 PR rtl-optimization/104498
4520 * alias.cc (compare_base_symbol_refs): Correct distance computation
4521 when swapping x and y.
4522
4523 2022-02-21 Andrew Pinski <apinski@marvell.com>
4524
4525 PR c/104506
4526 * tree-ssa.cc (tree_ssa_useless_type_conversion):
4527 Check the inner type before calling useless_type_conversion_p.
4528
4529 2022-02-19 Tom de Vries <tdevries@suse.de>
4530
4531 * config/nvptx/nvptx.cc (nvptx_reorg_uniform_simt): Handle SET insn.
4532 * config/nvptx/nvptx.md
4533 (define_insn "nvptx_atomic_store<mode>"): Rename to ...
4534 (define_insn "nvptx_atomic_store_sm70<mode>"): This.
4535 (define_insn "nvptx_atomic_store<mode>"): New define_insn.
4536 (define_expand "atomic_store<mode>"): Handle rename. Use
4537 nvptx_atomic_store instead of atomic_exchange.
4538
4539 2022-02-19 Tom de Vries <tdevries@suse.de>
4540
4541 * config/nvptx/nvptx.cc (nvptx_reorg_uniform_simt): Handle all
4542 insns with atomic attribute. Assert that all handled insns are
4543 PARALLELs.
4544 * config/nvptx/nvptx.md (define_insn "nvptx_atomic_store<mode>"):
4545 Set atomic attribute to false.
4546
4547 2022-02-19 Tom de Vries <tdevries@suse.de>
4548
4549 * config/nvptx/nvptx.cc (nvptx_unisimt_handle_set): Change return
4550 type to bool.
4551 (nvptx_reorg_uniform_simt): Insert nvptx_uniform_warp_check or
4552 nvptx_warpsync, if necessary.
4553
4554 2022-02-19 Jakub Jelinek <jakub@redhat.com>
4555
4556 PR sanitizer/102656
4557 * asan.cc (instrument_derefs): If inner is a RESULT_DECL and access is
4558 known to be within bounds, treat it like automatic variables.
4559 If instrumenting access and inner is {VAR,PARM,RESULT}_DECL from
4560 current function and !TREE_STATIC which is not TREE_ADDRESSABLE, mark
4561 it addressable.
4562
4563 2022-02-18 Pat Haugen <pthaugen@linux.ibm.com>
4564
4565 * config/rs6000/rs6000.opt (mpower10-fusion): Mark Undocumented.
4566 (mpower10-fusion-ld-cmpi, mpower10-fusion-2logical,
4567 mpower10-fusion-logical-add, mpower10-fusion-add-logical,
4568 mpower10-fusion-2add, mpower10-fusion-2store): Remove.
4569 * config/rs6000/rs6000-cpus.def (ISA_3_1_MASKS_SERVER,
4570 OTHER_P9_VECTOR_MASKS): Remove Power10 fusion sub-options.
4571 * config/rs6000/rs6000.cc (rs6000_option_override_internal,
4572 power10_sched_reorder): Likewise.
4573 * config/rs6000/genfusion.pl (gen_ld_cmpi_p10, gen_logical_addsubf,
4574 gen_addadd): Likewise
4575 * config/rs6000/fusion.md: Regenerate.
4576
4577 2022-02-18 Jakub Jelinek <jakub@redhat.com>
4578
4579 PR target/104257
4580 PR target/104598
4581 * config/rs6000/mm_malloc.h (_mm_malloc): Call posix_memalign
4582 rather than __posix_memalign.
4583
4584 2022-02-18 Richard Biener <rguenther@suse.de>
4585
4586 PR target/104581
4587 * config/i386/i386.cc (ix86_avx_u128_mode_source): Remove.
4588 (ix86_avx_u128_mode_needed): Return AVX_U128_DIRTY instead
4589 of calling ix86_avx_u128_mode_source which would eventually
4590 have returned AVX_U128_ANY in some very special case.
4591
4592 2022-02-18 Richard Biener <rguenther@suse.de>
4593
4594 PR tree-optimization/96881
4595 * tree-ssa-dce.cc (mark_stmt_if_obviously_necessary): Comment
4596 CLOBBER handling.
4597 (control_parents_preserved_p): New function.
4598 (eliminate_unnecessary_stmts): Check that we preserved control
4599 parents before retaining a CLOBBER.
4600 (perform_tree_ssa_dce): Pass down aggressive flag
4601 to eliminate_unnecessary_stmts.
4602
4603 2022-02-17 Jason Merrill <jason@redhat.com>
4604
4605 * tree.cc (warn_deprecated_use): Look for TYPE_STUB_DECL
4606 on TYPE_MAIN_VARIANT.
4607
4608 2022-02-17 Paul A. Clarke <pc@us.ibm.com>
4609
4610 PR target/104257
4611 * config/rs6000/bmi2intrin.h: Uglify local variables.
4612 * config/rs6000/emmintrin.h: Likewise.
4613 * config/rs6000/mm_malloc.h: Likewise.
4614 * config/rs6000/mmintrin.h: Likewise.
4615 * config/rs6000/pmmintrin.h: Likewise.
4616 * config/rs6000/smmintrin.h: Likewise.
4617 * config/rs6000/tmmintrin.h: Likewise.
4618 * config/rs6000/xmmintrin.h: Likewise.
4619
4620 2022-02-17 Robin Dapp <rdapp@linux.ibm.com>
4621
4622 PR target/104335
4623 * config/rs6000/rs6000.cc (rs6000_emit_int_cmove): Return false
4624 if the expected comparison's first operand is of mode MODE_CC.
4625
4626 2022-02-17 Vladimir N. Makarov <vmakarov@redhat.com>
4627
4628 PR rtl-optimization/104447
4629 * lra-constraints.cc (spill_hard_reg_in_range): Initiate ignore
4630 hard reg set by lra_no_alloc_regs.
4631
4632 2022-02-17 liuhongt <hongtao.liu@intel.com>
4633
4634 PR tree-optimization/104551
4635 PR tree-optimization/103771
4636 * match.pd (cond_expr_convert_p): Add types_match check when
4637 convert is extension.
4638 * tree-vect-patterns.cc
4639 (gimple_cond_expr_convert_p): Adjust comments.
4640 (vect_recog_cond_expr_convert_pattern): Ditto.
4641
4642 2022-02-17 Jakub Jelinek <jakub@redhat.com>
4643
4644 PR debug/104557
4645 * valtrack.cc (debug_lowpart_subreg): Don't call gen_rtx_raw_SUBREG
4646 if expr has VOIDmode.
4647
4648 2022-02-17 liuhongt <hongtao.liu@intel.com>
4649
4650 * config/i386/cpuid.h (bit_MPX): Removed.
4651 (bit_BNDREGS): Ditto.
4652 (bit_BNDCSR): Ditto.
4653
4654 2022-02-17 Michael Meissner <meissner@the-meissners.org>
4655
4656 PR target/99708
4657 * config/rs6000/rs6000-c.cc (rs6000_cpu_cpp_builtins): Define
4658 __SIZEOF_IBM128__ if the IBM 128-bit long double type is created.
4659 Define __SIZEOF_FLOAT128__ if the IEEE 128-bit floating point type
4660 is created.
4661
4662 2022-02-16 Andrew MacLeod <amacleod@redhat.com>
4663
4664 * gimple-range-gori.cc (gori_compute::condexpr_adjust): Use
4665 range_compatible_p instead of direct type comparison.
4666
4667 2022-02-16 Jakub Jelinek <jakub@redhat.com>
4668
4669 PR rtl-optimization/104544
4670 * combine.cc (try_combine): When looking for insn whose links
4671 should be updated from i3 to i2, don't stop on debug insns, instead
4672 skip over them.
4673
4674 2022-02-16 Richard Sandiford <richard.sandiford@arm.com>
4675
4676 PR target/100056
4677 * config/aarch64/iterators.md (LOGICAL_OR_PLUS): New iterator.
4678 * config/aarch64/aarch64.md: Extend the PR100056 patterns
4679 to handle plus in the same way as ior, if the operands have
4680 no set bits in common.
4681
4682 2022-02-15 Andrew MacLeod <amacleod@redhat.com>
4683
4684 PR tree-optimization/104526
4685 * gimple-range-fold.cc (fold_using_range::range_of_cond_expr): Call
4686 new routine.
4687 * gimple-range-gori.cc (range_def_chain::get_def_chain): Force a build
4688 of dependency chain if there isn't one.
4689 (gori_compute::condexpr_adjust): New.
4690 * gimple-range-gori.h (class gori_compute): New prototype.
4691
4692 2022-02-15 Richard Sandiford <richard.sandiford@arm.com>
4693
4694 PR target/100874
4695 * config/aarch64/aarch64-protos.h (aarch64_maxmin_plus_const):
4696 Declare.
4697 * config/aarch64/aarch64.cc (aarch64_maxmin_plus_const): New function.
4698 * config/aarch64/aarch64.md (*aarch64_minmax_plus): New pattern.
4699
4700 2022-02-15 Richard Sandiford <richard.sandiford@arm.com>
4701
4702 * tree-vectorizer.h (vect_scalar_ops_slice): New struct.
4703 (vect_scalar_ops_slice_hash): Likewise.
4704 (vect_scalar_ops_slice::op): New function.
4705 * tree-vect-slp.cc (vect_scalar_ops_slice::all_same_p): New function.
4706 (vect_scalar_ops_slice_hash::hash): Likewise.
4707 (vect_scalar_ops_slice_hash::equal): Likewise.
4708 (vect_prologue_cost_for_slp): Check for duplicate vectors.
4709 * config/aarch64/aarch64.cc
4710 (aarch64_vector_costs::m_stp_sequence_cost): New member variable.
4711 (aarch64_aligned_constant_offset_p): New function.
4712 (aarch64_stp_sequence_cost): Likewise.
4713 (aarch64_vector_costs::add_stmt_cost): Handle new STP heuristic.
4714 (aarch64_vector_costs::finish_cost): Likewise.
4715
4716 2022-02-15 Richard Sandiford <richard.sandiford@arm.com>
4717
4718 * tree-vect-slp.cc (vect_bb_vectorization_profitable_p): Fix
4719 use after free.
4720
4721 2022-02-15 Richard Biener <rguenther@suse.de>
4722
4723 PR tree-optimization/104543
4724 * gimple-loop-jam.cc (unroll_jam_possible_p): Check outer loop exits
4725 come after the inner loop.
4726
4727 2022-02-15 Jakub Jelinek <jakub@redhat.com>
4728
4729 PR target/104536
4730 * config/i386/host-cygwin.cc (cygwin_gt_pch_get_address): Use
4731 cannot instead of can%'t in diagnostics. Formatting fixes.
4732
4733 2022-02-15 Jakub Jelinek <jakub@redhat.com>
4734
4735 PR middle-end/104522
4736 * fold-const.h (native_interpret_real): Declare.
4737 * fold-const.cc (native_interpret_real): No longer static. Don't
4738 perform MODE_COMPOSITE_P verification here.
4739 (native_interpret_expr) <case REAL_TYPE>: But perform it here instead
4740 for all modes.
4741 * gimple-fold.cc (clear_padding_type): Call native_interpret_real
4742 instead of native_interpret_expr.
4743 * simplify-rtx.cc (simplify_immed_subreg): Perform the native_encode_rtx
4744 and comparison verification for all FLOAT_MODE_P modes, not just
4745 MODE_COMPOSITE_P.
4746
4747 2022-02-15 Richard Biener <rguenther@suse.de>
4748
4749 PR tree-optimization/104519
4750 * fold-const.cc (multiple_of_p): Remove never true condition.
4751 * tree-ssa-loop-niter.cc (number_of_iterations_ne): Use
4752 the appropriate types for determining whether the difference
4753 of final and base is a multiple of the step.
4754
4755 2022-02-15 Jakub Jelinek <jakub@redhat.com>
4756
4757 PR debug/104517
4758 * omp-low.cc (task_cpyfns): New variable.
4759 (delete_omp_context): Don't call finalize_task_copyfn from here.
4760 (create_task_copyfn): Push task_stmt into task_cpyfns.
4761 (execute_lower_omp): Call finalize_task_copyfn here on entries from
4762 task_cpyfns vector and release the vector.
4763
4764 2022-02-14 Martin Sebor <msebor@redhat.com>
4765
4766 PR middle-end/104355
4767 * doc/invoke.texi (-Warray-bounds): Update documentation.
4768
4769 2022-02-14 Michael Meissner <meissner@the-meissners.org>
4770
4771 PR target/104253
4772 * config/rs6000/rs6000.cc (init_float128_ibm): Update the
4773 conversion functions used to convert IFmode types.
4774
4775 2022-02-14 Andrew Stubbs <ams@codesourcery.com>
4776
4777 * config/gcn/gcn.cc (gcn_expand_reduc_scalar): Use force_reg.
4778
4779 2022-02-14 Richard Biener <rguenther@suse.de>
4780
4781 PR tree-optimization/104528
4782 * tree-ssa.h (find_released_ssa_name): Declare.
4783 * tree-ssa.cc (find_released_ssa_name): Export.
4784 * cfgloop.cc (verify_loop_structure): Look for released
4785 SSA names in loops nb_iterations.
4786 * tree-ssa-dse.cc (pass_dse::execute): Release number of iteration
4787 estimates.
4788
4789 2022-02-14 Richard Biener <rguenther@suse.de>
4790
4791 PR tree-optimization/104511
4792 * tree-ssa-forwprop.cc (simplify_vector_constructor): Avoid
4793 touching DFP <-> FP conversions.
4794
4795 2022-02-14 Richard Biener <rguenther@suse.de>
4796
4797 PR middle-end/104497
4798 * gimplify.cc (gimplify_compound_lval): Make sure the
4799 base is a non-register if needed and possible.
4800
4801 2022-02-13 liuhongt <hongtao.liu@intel.com>
4802
4803 PR target/103771
4804 * match.pd (cond_expr_convert_p): New match.
4805 * tree-vect-patterns.cc (gimple_cond_expr_convert_p): Declare.
4806 (vect_recog_cond_expr_convert_pattern): New.
4807
4808 2022-02-12 Jakub Jelinek <jakub@redhat.com>
4809
4810 PR sanitizer/104449
4811 * asan.cc: Include tree-eh.h.
4812 (handle_builtin_alloca): Handle the case when __builtin_alloca or
4813 __builtin_alloca_with_align can throw.
4814
4815 2022-02-12 Jakub Jelinek <jakub@redhat.com>
4816
4817 PR target/104502
4818 * config/i386/i386.md (cvtsd2ss splitter): If operands[1] is xmm16+
4819 and AVX512VL isn't available, move operands[1] to operands[0] first.
4820
4821 2022-02-12 Uroš Bizjak <ubizjak@gmail.com>
4822
4823 PR target/79754
4824 * config/i386/i386.cc (type_natural_mode):
4825 Skip decimal float vector modes.
4826
4827 2022-02-11 Iain Sandoe <iain@sandoe.co.uk>
4828 Vladimir Makarov <vmakarov@redhat.com>
4829
4830 PR target/104117
4831 * config/rs6000/rs6000.cc (darwin_rs6000_legitimate_lo_sum_const_p):
4832 Check for UNSPEC_MACHOPIC_OFFSET wrappers on symbolic addresses when
4833 emitting PIC code.
4834 (legitimate_lo_sum_address_p): Likewise.
4835 * lra-constraints.cc (process_address_1): Do not attempt to emit a reg
4836 load from an invalid lo_sum address.
4837
4838 2022-02-11 Jakub Jelinek <jakub@redhat.com>
4839
4840 PR tree-optimization/104499
4841 * match.pd ((X & Y) CMP 0 -> X CMP2 ~Y): Use view_convert instead
4842 of convert.
4843
4844 2022-02-11 Jakub Jelinek <jakub@redhat.com>
4845
4846 * tree.cc (build_common_builtin_nodes): Fix up formatting in
4847 __builtin_clear_padding decl creation.
4848 * gimplify.cc (gimple_add_padding_init_for_auto_var): Encode
4849 for_auto_init in the value of 2nd BUILT_IN_CLEAR_PADDING
4850 argument rather than in 3rd argument.
4851 (gimplify_call_expr): Likewise. Fix up comment formatting.
4852 * gimple-fold.cc (gimple_fold_builtin_clear_padding): Expect
4853 2 arguments instead of 3, take for_auto_init from the value
4854 of 2nd argument.
4855
4856 2022-02-11 Vladimir N. Makarov <vmakarov@redhat.com>
4857
4858 PR rtl-optimization/104400
4859 * lra-constraints.cc (process_alt_operands): Don't make union of
4860 this_alternative_exclude_start_hard_regs when reg class in insn
4861 alternative covers other reg classes in the same alternative.
4862
4863 2022-02-11 Jakub Jelinek <jakub@redhat.com>
4864
4865 PR middle-end/104446
4866 * combine.cc (subst): Don't substitute CONST_INTs into RTX_AUTOINC
4867 operands.
4868
4869 2022-02-11 Richard Biener <rguenther@suse.de>
4870
4871 PR middle-end/104496
4872 * internal-fn.cc (vectorized_internal_fn_supported_p):
4873 Bail out for integer mode vector types.
4874
4875 2022-02-11 Jakub Jelinek <jakub@redhat.com>
4876
4877 PR rtl-optimization/104459
4878 * df-scan.cc (df_insn_change_bb): Don't call df_set_bb_dirty when
4879 moving DEBUG_INSNs between bbs.
4880
4881 2022-02-11 liuhongt <hongtao.liu@intel.com>
4882
4883 PR tree-optimization/104479
4884 * match.pd (uncond_op + vec_cond -> cond_op): Add single_use
4885 for the dest of uncond_op.
4886
4887 2022-02-11 Tom de Vries <tdevries@suse.de>
4888
4889 PR target/104456
4890 * config/nvptx/nvptx.cc (prevent_branch_around_nothing): Handle asm
4891 insn.
4892
4893 2022-02-10 Qing Zhao <qing.zhao@oracle.com>
4894
4895 PR middle-end/100775
4896 * function.cc (gen_call_used_regs_seq): Call
4897 df_update_exit_block_uses when updating df.
4898
4899 2022-02-10 Uroš Bizjak <ubizjak@gmail.com>
4900
4901 PR target/104469
4902 * config/i386/sse.md (vec_unpacks_float_lo_v4si):
4903 Change operand 1 constraint to register_operand.
4904
4905 2022-02-10 Richard Biener <rguenther@suse.de>
4906
4907 PR tree-optimization/104373
4908 * tree-ssa-sccvn.h (do_rpo_vn): New export exposing the
4909 walk kind.
4910 * tree-ssa-sccvn.cc (do_rpo_vn): Export, get the default
4911 walk kind as argument.
4912 (run_rpo_vn): Adjust.
4913 (pass_fre::execute): Likewise.
4914 * tree-ssa-uninit.cc (warn_uninitialized_vars): Skip
4915 blocks not reachable.
4916 (execute_late_warn_uninitialized): Mark all edges as
4917 executable.
4918 (execute_early_warn_uninitialized): Use VN to compute
4919 executable edges.
4920 (pass_data_early_warn_uninitialized): Enable a dump file,
4921 change dump name to warn_uninit.
4922
4923 2022-02-10 Richard Biener <rguenther@suse.de>
4924
4925 PR middle-end/104467
4926 * match.pd (vector extract simplification): Multiply the
4927 number of CTOR elements with the number of element elements.
4928
4929 2022-02-10 Richard Biener <rguenther@suse.de>
4930
4931 PR tree-optimization/104466
4932 * tree-ssa-alias.cc (refs_may_alias_p_2): Use rbase1/rbase2
4933 for the MR_DEPENDENCE checks as intended.
4934
4935 2022-02-10 Tom de Vries <tdevries@suse.de>
4936
4937 * config/nvptx/nvptx.md (define_insn "nvptx_atomic_store<mode>"): New
4938 define_insn.
4939 (define_expand "atomic_store<mode>"): Use nvptx_atomic_store<mode> for
4940 TARGET_SM70.
4941 (define_c_enum "unspecv"): Add UNSPECV_ST.
4942
4943 2022-02-10 Tom de Vries <tdevries@suse.de>
4944
4945 * config/nvptx/nvptx-protos.h (nvptx_mem_maybe_shared_p): Declare.
4946 * config/nvptx/nvptx.cc (nvptx_mem_data_area): New static function.
4947 (nvptx_mem_maybe_shared_p): New function.
4948 * config/nvptx/nvptx.md (define_expand "atomic_store<mode>"): New
4949 define_expand.
4950
4951 2022-02-10 Tom de Vries <tdevries@suse.de>
4952
4953 PR target/97005
4954 * config/nvptx/nvptx.md (define_insn "sub<mode>3"): Workaround
4955 driver JIT bug by using sub.s16 instead of sub.u16.
4956
4957 2022-02-10 Roger Sayle <roger@nextmovesoftware.com>
4958
4959 * config/nvptx/nvptx.md (copysign<mode>3): Allow immediate
4960 floating point constants as operands 1 and/or 2.
4961
4962 2022-02-10 Roger Sayle <roger@nextmovesoftware.com>
4963
4964 PR target/104345
4965 * config/nvptx/nvptx.md (sel_true<mode>): Fix indentation.
4966 (sel_false<mode>): Likewise.
4967 (define_code_iterator eqne): New code iterator for EQ and NE.
4968 (*selp<mode>_neg_<code>): New define_insn_and_split to optimize
4969 the negation of a selp instruction.
4970 (*selp<mode>_not_<code>): New define_insn_and_split to optimize
4971 the bitwise not of a selp instruction.
4972 (*setcc_int<mode>): Use set instruction for neg:SI of a selp.
4973
4974 2022-02-10 Roger Sayle <roger@nextmovesoftware.com>
4975
4976 * config/nvptx/nvptx.md (any_logic): Move code iterator earlier
4977 in machine description.
4978 (logic): Move code attribute earlier in machine description.
4979 (ilogic): New code attribute, like logic but "ior" for IOR.
4980 (and<mode>3, ior<mode>3, xor<mode>3): Delete. Replace with...
4981 (<ilogic><mode>3): New define_insn for HSDIM logic operations.
4982 (<ilogic>bi3): New define_insn for BI mode logic operations.
4983 (define_split): Lower logic operations from integer modes to
4984 BI mode predicate operations.
4985
4986 2022-02-10 Roger Sayle <roger@nextmovesoftware.com>
4987
4988 * config/nvptx/nvptx.md (UNSPEC_ISINF): New UNSPEC.
4989 (one_cmplbi2): New define_insn for not.pred.
4990 (mulditi3): New define_expand for signed widening multiply.
4991 (umulditi3): New define_expand for unsigned widening multiply.
4992 (smul<mode>3_highpart): New define_insn for signed highpart mult.
4993 (umul<mode>3_highpart): New define_insn for unsigned highpart mult.
4994 (*smulhi3_highpart_2): Renamed from smulhi3_highpart.
4995 (*smulsi3_highpart_2): Renamed from smulsi3_highpart.
4996 (*umulhi3_highpart_2): Renamed from umulhi3_highpart.
4997 (*umulsi3_highpart_2): Renamed from umulsi3_highpart.
4998 (*setcc<mode>_from_not_bi): New define_insn.
4999 (*setcc_isinf<mode>): New define_insn for testp.infinite.
5000 (isinf<mode>2): New define_expand.
5001
5002 2022-02-10 Roger Sayle <roger@nextmovesoftware.com>
5003
5004 * config/nvptx/nvptx.md (cmp<mode>): Renamed from *cmp<mode>.
5005 (setcc<mode>_from_bi): Additionally support QImode.
5006 (extendbi<mode>2): Additionally support QImode.
5007 (zero_extendbi<mode>2): Additionally support QImode.
5008 (any_sbinary, any_ubinary, any_sunary, any_uunary): New code
5009 iterators for signed and unsigned, binary and unary operations.
5010 (<sbinary>qi3, <ubinary>qi3, <sunary>qi2, <uunary>qi2): New
5011 expanders to perform QImode operations using SImode instructions.
5012 (cstoreqi4): New define_expand.
5013 (*ext_truncsi2_qi): New define_insn.
5014 (*zext_truncsi2_qi): New define_insn.
5015
5016 2022-02-10 Roger Sayle <roger@nextmovesoftware.com>
5017
5018 * config/nvptx/nvptx.md (*cmpf): New define_insn.
5019 (cstorehf4): New define_expand.
5020 (fmahf4): New define_insn.
5021 (neghf2): New define_insn.
5022 (abshf2): New define_insn.
5023
5024 2022-02-10 Gerald Pfeifer <gerald@pfeifer.com>
5025
5026 * doc/install.texi (Specific): Change the www.bitwizard.nl
5027 reference to use https.
5028
5029 2022-02-10 Marcel Vollweiler <marcel@codesourcery.com>
5030
5031 * gimplify.cc (gimplify_scan_omp_clauses): Added cases for
5032 OMP_CLAUSE_HAS_DEVICE_ADDR
5033 and handle array sections.
5034 (gimplify_adjust_omp_clauses): Added OMP_CLAUSE_HAS_DEVICE_ADDR case.
5035 * omp-low.cc (scan_sharing_clauses): Handle OMP_CLAUSE_HAS_DEVICE_ADDR.
5036 (lower_omp_target): Same.
5037 * tree-core.h (enum omp_clause_code): Same.
5038 * tree-nested.cc (convert_nonlocal_omp_clauses): Same.
5039 (convert_local_omp_clauses): Same.
5040 * tree-pretty-print.cc (dump_omp_clause): Same.
5041 * tree.cc: Same.
5042
5043 2022-02-10 Eugene Rozenfeld <erozen@microsoft.com>
5044
5045 * auto-profile.cc (afdo_indirect_call): Don't attempt to promote indirect calls
5046 that will result in direct recursive calls.
5047
5048 2022-02-10 Andrew Pinski <apinski@marvell.com>
5049
5050 PR target/104474
5051 * config/aarch64/aarch64.cc
5052 (aarch64_sve_expand_vector_init_handle_trailing_constants):
5053 Use CONST0_RTX instead of const0_rtx for the non-constant elements.
5054
5055 2022-02-09 Uroš Bizjak <ubizjak@gmail.com>
5056
5057 PR target/104462
5058 * common/config/i386/i386-common.cc (OPTION_MASK_ISA2_XSAVE_UNSET):
5059 Also include OPTION_MASK_ISA2_AVX2_UNSET.
5060
5061 2022-02-09 Uroš Bizjak <ubizjak@gmail.com>
5062
5063 PR target/104458
5064 * config/i386/i386-expand.cc (ix86_split_idivmod):
5065 Force operands[2] and operands[3] into a register..
5066
5067 2022-02-09 Jeff Law <jeffreyalaw@gmail.com>
5068
5069 PR target/97040
5070 * config/v850/v850.md (*v850_fnmasf4): Renamed from fnmasf4.
5071 (*v850_fnmssf4): Renamed from fnmssf4
5072
5073 2022-02-09 Ian Lance Taylor <iant@golang.org>
5074
5075 * godump.cc (go_force_record_alignment): Really name the alignment
5076 field "_" (complete 2021-12-29 change).
5077
5078 2022-02-09 Bill Schmidt <wschmidt@linux.ibm.com>
5079
5080 * config/rs6000/rs6000-builtins.def (VREPLACE_UN_UV2DI): Change
5081 function prototype.
5082 (VREPLACE_UN_UV4SI): Likewise.
5083 (VREPLACE_UN_V2DF): Likewise.
5084 (VREPLACE_UN_V2DI): Likewise.
5085 (VREPLACE_UN_V4SF): Likewise.
5086 (VREPLACE_UN_V4SI): Likewise.
5087 * config/rs6000/rs6000-overload.def (VEC_REPLACE_UN): Change all
5088 function prototypes.
5089 * config/rs6000/vsx.md (vreplace_un_<mode>): Remove define_expand.
5090 (vreplace_un_<mode>): New define_insn.
5091
5092 2022-02-09 Richard Sandiford <richard.sandiford@arm.com>
5093
5094 * config/aarch64/iterators.md (VDCSIF): New mode iterator.
5095 (VDBL): Handle SF.
5096 (single_wx, single_type, single_dtype, dblq): New mode attributes.
5097 * config/aarch64/aarch64-simd.md (load_pair_lanes<mode>): Extend
5098 from VDC to VDCSIF.
5099 (store_pair_lanes<mode>): Likewise.
5100 (*aarch64_combine_internal<mode>): Likewise.
5101 (*aarch64_combine_internal_be<mode>): Likewise.
5102 (*aarch64_combinez<mode>): Likewise.
5103 (*aarch64_combinez_be<mode>): Likewise.
5104 * config/aarch64/aarch64.cc (aarch64_classify_address): Handle
5105 8-byte modes for ADDR_QUERY_LDP_STP_N.
5106 (aarch64_print_operand): Likewise for %y.
5107
5108 2022-02-09 Richard Sandiford <richard.sandiford@arm.com>
5109
5110 * config/aarch64/aarch64-simd.md (@aarch64_split_simd_mov<mode>):
5111 Use aarch64_combine instead of move_lo/hi_quad. Tabify.
5112 (move_lo_quad_<mode>, aarch64_simd_move_hi_quad_<mode>): Delete.
5113 (aarch64_simd_move_hi_quad_be_<mode>, move_hi_quad_<mode>): Delete.
5114 (vec_pack_trunc_<mode>): Take general_operand elements and use
5115 aarch64_combine rather than move_lo/hi_quad to combine them.
5116 (vec_pack_trunc_df): Likewise.
5117
5118 2022-02-09 Richard Sandiford <richard.sandiford@arm.com>
5119
5120 * config/aarch64/aarch64-protos.h (aarch64_split_simd_combine):
5121 Delete.
5122 * config/aarch64/aarch64-simd.md (@aarch64_combinez<mode>): Rename
5123 to...
5124 (*aarch64_combinez<mode>): ...this.
5125 (@aarch64_combinez_be<mode>): Rename to...
5126 (*aarch64_combinez_be<mode>): ...this.
5127 (@aarch64_vec_concat<mode>): New expander.
5128 (aarch64_combine<mode>): Use it.
5129 (@aarch64_simd_combine<mode>): Delete.
5130 * config/aarch64/aarch64.cc (aarch64_split_simd_combine): Delete.
5131 (aarch64_expand_vector_init): Use aarch64_vec_concat.
5132
5133 2022-02-09 Richard Sandiford <richard.sandiford@arm.com>
5134
5135 * config/aarch64/predicates.md (aarch64_reg_or_mem_pair_operand):
5136 New predicate.
5137 * config/aarch64/aarch64-simd.md (*aarch64_combine_internal<mode>)
5138 (*aarch64_combine_internal_be<mode>): New patterns.
5139
5140 2022-02-09 Richard Sandiford <richard.sandiford@arm.com>
5141
5142 * config/aarch64/aarch64-simd.md (move_lo_quad_internal_<mode>)
5143 (move_lo_quad_internal_be_<mode>): Delete.
5144 (move_lo_quad_<mode>): Use aarch64_combine<Vhalf> instead of the above.
5145
5146 2022-02-09 Richard Sandiford <richard.sandiford@arm.com>
5147
5148 * config/aarch64/aarch64-protos.h (aarch64_mergeable_load_pair_p):
5149 Declare.
5150 * config/aarch64/aarch64-simd.md (load_pair_lanes<mode>): Use
5151 aarch64_mergeable_load_pair_p instead of inline check.
5152 * config/aarch64/aarch64.cc (aarch64_expand_vector_init): Likewise.
5153 (aarch64_check_consecutive_mems): Allow the reversed parameter
5154 to be null.
5155 (aarch64_mergeable_load_pair_p): New function.
5156
5157 2022-02-09 Richard Sandiford <richard.sandiford@arm.com>
5158
5159 * config/aarch64/aarch64-simd.md (vec_set<mode>): Allow the
5160 element to be an aarch64_simd_nonimmediate_operand.
5161
5162 2022-02-09 Richard Sandiford <richard.sandiford@arm.com>
5163
5164 * config/aarch64/aarch64-simd.md (aarch64_simd_vec_set<mode>): Use
5165 aarch64_simd_nonimmediate_operand instead of
5166 aarch64_simd_general_operand.
5167 (@aarch64_combinez<mode>): Use nonimmediate_operand instead of
5168 general_operand.
5169 (@aarch64_combinez_be<mode>): Likewise.
5170
5171 2022-02-09 Richard Biener <rguenther@suse.de>
5172
5173 PR middle-end/104464
5174 * gimple-isel.cc (gimple_expand_vec_cond_expr): Postpone
5175 throwing check to after unproblematic replacement.
5176
5177 2022-02-09 Roger Sayle <roger@nextmovesoftware.com>
5178
5179 PR tree-optimization/104420
5180 * match.pd (mult @0 real_zerop): Tweak conditions for constant
5181 folding X*0.0 (or X*-0.0) to HONOR_SIGNED_ZEROS when appropriate.
5182
5183 2022-02-09 Jakub Jelinek <jakub@redhat.com>
5184
5185 PR debug/104407
5186 * dwarf2out.cc (mangle_referenced_decls): New function.
5187 (tree_add_const_value_attribute): Don't call rtl_for_decl_init if
5188 early_dwarf. Instead walk the initializer and try to mangle vars or
5189 functions referenced from it.
5190
5191 2022-02-09 Andrew MacLeod <amacleod@redhat.com>
5192
5193 PR tree-optimization/104288
5194 * gimple-range-cache.cc (non_null_ref::set_nonnull): New.
5195 (non_null_ref::adjust_range): Move to header.
5196 (ranger_cache::range_of_def): Don't check non-null.
5197 (ranger_cache::entry_range): Don't check non-null.
5198 (ranger_cache::range_on_edge): Check for nonnull on normal edges.
5199 (ranger_cache::update_to_nonnull): New.
5200 (non_null_loadstore): New.
5201 (ranger_cache::block_apply_nonnull): New.
5202 * gimple-range-cache.h (class non_null_ref): Update prototypes.
5203 (non_null_ref::adjust_range): Move to here and inline.
5204 (class ranger_cache): Update prototypes.
5205 * gimple-range-path.cc (path_range_query::range_defined_in_block): Do
5206 not search dominators.
5207 (path_range_query::adjust_for_non_null_uses): Ditto.
5208 * gimple-range.cc (gimple_ranger::range_of_expr): Check on-entry for
5209 def overrides. Do not check nonnull.
5210 (gimple_ranger::range_on_entry): Check dominators for nonnull.
5211 (gimple_ranger::range_on_edge): Check for nonnull on normal edges..
5212 (gimple_ranger::register_side_effects): New.
5213 * gimple-range.h (gimple_ranger::register_side_effects): New.
5214 * tree-vrp.cc (rvrp_folder::fold_stmt): Call register_side_effects.
5215
5216 2022-02-09 Richard Biener <rguenther@suse.de>
5217
5218 PR tree-optimization/104445
5219 PR tree-optimization/102832
5220 * optabs-query.h (can_vec_extract): New.
5221 * optabs-query.cc (can_vec_extract): Likewise.
5222 * tree-vect-loop.cc (vect_find_reusable_accumulator): Check
5223 we can extract a hi/lo part from the larger vector, rework
5224 check iteration from larger to smaller sizes.
5225
5226 2022-02-09 H.J. Lu <hjl.tools@gmail.com>
5227
5228 PR target/35513
5229 PR target/100593
5230 * config/i386/gnu-property.cc: Include "i386-protos.h".
5231 (file_end_indicate_exec_stack_and_gnu_property): Generate
5232 a GNU_PROPERTY_1_NEEDED note for -mno-direct-extern-access or
5233 nodirect_extern_access attribute.
5234 * config/i386/i386-options.cc
5235 (handle_nodirect_extern_access_attribute): New function.
5236 (ix86_attribute_table): Add nodirect_extern_access attribute.
5237 * config/i386/i386-protos.h (ix86_force_load_from_GOT_p): Add a
5238 bool argument.
5239 (ix86_has_no_direct_extern_access): New.
5240 * config/i386/i386.cc (ix86_has_no_direct_extern_access): New.
5241 (ix86_force_load_from_GOT_p): Add a bool argument to indicate
5242 call operand. Force non-call load from GOT for
5243 -mno-direct-extern-access or nodirect_extern_access attribute.
5244 (legitimate_pic_address_disp_p): Avoid copy relocation in PIE
5245 for -mno-direct-extern-access or nodirect_extern_access attribute.
5246 (ix86_print_operand): Pass true to ix86_force_load_from_GOT_p
5247 for call operand.
5248 (asm_preferred_eh_data_format): Use PC-relative format for
5249 -mno-direct-extern-access to avoid copy relocation. Check
5250 ptr_mode instead of TARGET_64BIT when selecting DW_EH_PE_sdata4.
5251 (ix86_binds_local_p): Set ix86_has_no_direct_extern_access to
5252 true for -mno-direct-extern-access or nodirect_extern_access
5253 attribute. Don't treat protected data as extern and avoid copy
5254 relocation on common symbol with -mno-direct-extern-access or
5255 nodirect_extern_access attribute.
5256 (ix86_reloc_rw_mask): New to avoid copy relocation for
5257 -mno-direct-extern-access.
5258 (TARGET_ASM_RELOC_RW_MASK): New.
5259 * config/i386/i386.opt: Add -mdirect-extern-access.
5260 * doc/extend.texi: Document nodirect_extern_access attribute.
5261 * doc/invoke.texi: Document -m[no-]direct-extern-access.
5262
5263 2022-02-09 H.J. Lu <hjl.tools@gmail.com>
5264
5265 PR target/104441
5266 * config/i386/i386.cc (ix86_avx_u128_mode_source): New function.
5267 (ix86_avx_u128_mode_needed): Return AVX_U128_ANY for debug INSN.
5268 Call ix86_avx_u128_mode_source to check mode for each component
5269 of source operand.
5270
5271 2022-02-09 liuhongt <hongtao.liu@intel.com>
5272
5273 PR target/104451
5274 * config/i386/sse.md (<insn><mode>3): lowpart_subreg
5275 operands[2] from SImode to QImode.
5276
5277 2022-02-09 Richard Biener <rguenther@suse.de>
5278
5279 PR middle-end/104450
5280 * gimple-isel.cc: Pass cfun around.
5281 (+gimple_expand_vec_cond_expr): Do not combine a throwing
5282 comparison with the select.
5283
5284 2022-02-09 Richard Biener <rguenther@suse.de>
5285
5286 PR target/104453
5287 * config/i386/i386.cc (ix86_gimple_fold_builtin): Guard shift
5288 folding for NULL LHS.
5289
5290 2022-02-08 Robin Dapp <rdapp@linux.ibm.com>
5291
5292 PR rtl-optimization/104198
5293 PR rtl-optimization/104153
5294 * ifcvt.cc (noce_convert_multiple_sets_1): Copy rtx instead of
5295 using it directly. Rework comparison handling and always
5296 perform a second pass.
5297
5298 2022-02-08 Jakub Jelinek <jakub@redhat.com>
5299
5300 PR target/102140
5301 * config/rs6000/rs6000.cc (vspltis_shifted): Return false also if
5302 split1 pass has finished already.
5303
5304 2022-02-08 Bill Schmidt <wschmidt@linux.ibm.com>
5305
5306 * config/rs6000/rs6000-builtins.def (VMSUMCUD): New.
5307 * config/rs6000/rs6000-overload.def (VEC_MSUMC): New.
5308 * config/rs6000/vsx.md (UNSPEC_VMSUMCUD): New constant.
5309 (vmsumcud): New define_insn.
5310
5311 2022-02-08 Tom de Vries <tdevries@suse.de>
5312
5313 * config/nvptx/nvptx-opts.h (enum ptx_isa): Add PTX_ISA_SM70.
5314 * config/nvptx/nvptx.h (TARGET_SM70): Define.
5315
5316 2022-02-08 Robin Dapp <rdapp@linux.ibm.com>
5317
5318 * config/s390/s390.cc (s390_rtx_costs): Increase costs for load
5319 on condition.
5320 * config/s390/s390.md: Use paradoxical subreg.
5321
5322 2022-02-08 Robin Dapp <rdapp@linux.ibm.com>
5323
5324 * combine.cc (reg_subword_p): Check for paradoxical subreg.
5325
5326 2022-02-08 Tom de Vries <tdevries@suse.de>
5327
5328 PR target/104283
5329 * config/nvptx/nvptx-opts.h (enum ptx_version): Add PTX_VERSION_3_0
5330 and PTX_VERSION_4_2.
5331 * config/nvptx/nvptx.cc (first_ptx_version_supporting_sm)
5332 (default_ptx_version_option, ptx_version_to_string)
5333 (sm_version_to_string, handle_ptx_version_option): New function.
5334 (nvptx_option_override): Call handle_ptx_version_option.
5335 (nvptx_file_start): Use ptx_version_to_string and sm_version_to_string.
5336 * config/nvptx/nvptx.md (define_insn "nvptx_shuffle<mode>")
5337 (define_insn "nvptx_vote_ballot"): Use TARGET_PTX_6_0.
5338 * config/nvptx/nvptx.opt (mptx): Remove 'Init'.
5339
5340 2022-02-08 Maciej W. Rozycki <macro@embecosm.com>
5341
5342 * doc/install.texi (Configuration): Document `--with-isa-spec='
5343 RISC-V option.
5344 * doc/invoke.texi (Option Summary): List `-misa-spec=' RISC-V
5345 option.
5346 (RISC-V Options): Document it.
5347
5348 2022-02-08 Maciej W. Rozycki <macro@embecosm.com>
5349
5350 * config/riscv/t-riscv (riscv-sr.o): Add $(TM_H) dependency.
5351
5352 2022-02-08 Tom de Vries <tdevries@suse.de>
5353
5354 * config/nvptx/nvptx.cc (write_fn_proto_1): Handle 'main (int)'.
5355
5356 2022-02-08 Tom de Vries <tdevries@suse.de>
5357
5358 PR target/104364
5359 * config/nvptx/nvptx-protos.h (nvptx_mem_local_p): Declare.
5360 * config/nvptx/nvptx.cc (nvptx_reorg_uniform_simt): Assert that
5361 change is validated.
5362 (nvptx_mem_local_p): New function.
5363 * config/nvptx/nvptx.md: Use nvptx_mem_local_p.
5364 (define_c_enum "unspecv"): Add UNSPECV_CAS_LOCAL.
5365 (define_insn "atomic_compare_and_swap<mode>_1_local"): New
5366 non-atomic, non-predicable define_insn, factored out of ...
5367 (define_insn "atomic_compare_and_swap<mode>_1"): ... here.
5368 Make predicable again.
5369 (define_expand "atomic_compare_and_swap<mode>"): Use
5370 atomic_compare_and_swap<mode>_1_local.
5371
5372 2022-02-08 liuhongt <hongtao.liu@intel.com>
5373
5374 PR rtl-optimization/104059
5375 * regcprop.cc (copyprop_hardreg_forward_1): Don't propagate
5376 for a more expensive reg-reg move.
5377
5378 2022-02-07 Tamar Christina <tamar.christina@arm.com>
5379
5380 * config/arm/arm_neon.h (vusdotq_s32, vusdot_laneq_s32,
5381 vusdotq_laneq_s32, vsudot_laneq_s32, vsudotq_laneq_s32): New
5382 * config/arm/arm_neon_builtins.def (usdot): Add V16QI.
5383 (usdot_laneq, sudot_laneq): New.
5384 * config/arm/neon.md (neon_<sup>dot_laneq<vsi2qi>): New.
5385 (neon_<sup>dot_lane<vsi2qi>): Remote unneeded code.
5386
5387 2022-02-07 Tamar Christina <tamar.christina@arm.com>
5388
5389 * config/arm/arm_neon.h (vdot_laneq_u32, vdotq_laneq_u32,
5390 vdot_laneq_s32, vdotq_laneq_s32): New.
5391 * config/arm/arm_neon_builtins.def (sdot_laneq, udot_laneq): New.
5392 * config/arm/neon.md (neon_<sup>dot<vsi2qi>): New.
5393 (<sup>dot_prod<vsi2qi>): Re-order rtl.
5394 (neon_<sup>dot_lane<vsi2qi>): Fix rtl order and endiannes.
5395 (neon_<sup>dot_laneq<vsi2qi>): New.
5396
5397 2022-02-07 Andreas Krebbel <krebbel@linux.ibm.com>
5398
5399 PR target/104327
5400 * config/s390/s390.cc (s390_can_inline_p): Accept a few more flags
5401 if always_inline is set. Don't inline when tune differs without
5402 always_inline.
5403
5404 2022-02-07 Richard Biener <rguenther@suse.de>
5405
5406 PR middle-end/104402
5407 * gimple-expr.cc (is_gimple_condexpr): _Complex typed
5408 compares are not valid.
5409 * tree-cfg.cc (verify_gimple_assign_ternary): For COND_EXPR
5410 check is_gimple_condexpr.
5411
5412 2022-02-07 Kewen Lin <linkw@linux.ibm.com>
5413
5414 PR target/103627
5415 * config/rs6000/rs6000.cc (rs6000_option_override_internal): Move the
5416 hunk affecting VSX and ALTIVEC to appropriate place.
5417
5418 2022-02-07 Kewen Lin <linkw@linux.ibm.com>
5419
5420 PR target/103627
5421 * config/rs6000/rs6000.cc (rs6000_option_override_internal): Disable
5422 MMA if !TARGET_VSX.
5423
5424 2022-02-06 Jakub Jelinek <jakub@redhat.com>
5425
5426 PR c++/89074
5427 PR c++/104033
5428 * fold-const.h (folding_initializer): Adjust comment.
5429 (folding_cxx_constexpr): Declare.
5430 * fold-const.cc (folding_initializer): Adjust comment.
5431 (folding_cxx_constexpr): New variable.
5432 (address_compare): Restrict the decl vs. STRING_CST
5433 or vice versa or STRING_CST vs. STRING_CST or
5434 is_global_var != is_global_var optimizations to !folding_cxx_constexpr.
5435 Punt for FUNCTION_DECLs with non-zero offsets. If folding_initializer,
5436 assume non-aliased functions have non-zero size and have different
5437 addresses. For folding_cxx_constexpr, punt on comparisons of start
5438 of some object and end of another one, regardless whether it is a decl
5439 or string literal. Also punt for folding_cxx_constexpr on
5440 STRING_CST vs. STRING_CST comparisons if the two literals could be
5441 overlapping.
5442
5443 2022-02-05 Jakub Jelinek <jakub@redhat.com>
5444
5445 PR tree-optimization/104389
5446 * match.pd (x * 0 -> 0): Punt if x maybe infinite and NaNs are
5447 honored.
5448
5449 2022-02-05 Kito Cheng <kito.cheng@sifive.com>
5450
5451 * configure.ac: Fix detection for zifencei support.
5452 * configure: Regenerate.
5453
5454 2022-02-05 Kito Cheng <kito.cheng@sifive.com>
5455
5456 PR target/104219
5457 * config.gcc (riscv*-*-*): Normalize the with_isa_spec value.
5458 (all_defaults): Add isa_spec.
5459 * config/riscv/riscv.h (OPTION_DEFAULT_SPECS): Add isa_spec.
5460
5461 2022-02-04 Bill Schmidt <wschmidt@linux.ibm.com>
5462
5463 * config/rs6000/rs6000-c.cc (resolve_vec_mul): Accept args and types
5464 parameters instead of arglist and nargs. Simplify accordingly. Remove
5465 unnecessary test for argument count mismatch.
5466 (resolve_vec_cmpne): Likewise.
5467 (resolve_vec_adde_sube): Likewise.
5468 (resolve_vec_addec_subec): Likewise.
5469 (altivec_resolve_overloaded_builtin): Move overload special handling
5470 after the gathering of arguments into args[] and types[] and the test
5471 for correct number of arguments. Don't perform the test for correct
5472 number of arguments for certain special cases. Call the other special
5473 cases with args and types instead of arglist and nargs.
5474
5475 2022-02-04 Bill Schmidt <wschmidt@linux.ibm.com>
5476
5477 PR target/100808
5478 * doc/extend.texi (Basic PowerPC Built-in Functions Available on ISA
5479 3.1): Provide consistent type names. Remove unnecessary semicolons.
5480 Fix bad line breaks.
5481
5482 2022-02-04 Jakub Jelinek <jakub@redhat.com>
5483
5484 PR target/104380
5485 * config/rs6000/rs6000.cc (rs6000_mangle_decl_assembler_name): Also
5486 adjust mangling of __builtin*printf_chk.
5487
5488 2022-02-04 Jonathan Wakely <jwakely@redhat.com>
5489
5490 * doc/cpp.texi (Variadic Macros): Replace C++2a with C++20.
5491
5492 2022-02-04 Richard Biener <rguenther@suse.de>
5493 Bin Cheng <bin.cheng@linux.alibaba.com>
5494
5495 PR tree-optimization/100499
5496 * fold-const.h (multiple_of_p): Add nowrap parameter, defaulted
5497 to true.
5498 * fold-const.cc (multiple_of_p): Likewise. Honor it for
5499 MULT_EXPR, PLUS_EXPR and MINUS_EXPR and pass it along,
5500 switching to false for conversions.
5501 * tree-ssa-loop-niter.cc (number_of_iterations_ne): Do not
5502 claim the outermost expression does not wrap when calling
5503 multiple_of_p. Refactor the check done to check the
5504 original IV, avoiding a bias that might wrap.
5505
5506 2022-02-04 Richard Biener <rguenther@suse.de>
5507
5508 * fold-const.cc (multiple_of_p): Re-write and move LSHIFT_EXPR
5509 handling.
5510
5511 2022-02-04 Eric Botcazou <ebotcazou@adacore.com>
5512
5513 PR debug/104366
5514 * dwarf2out.cc (dwarf2out_finish): Empty base_types.
5515 (dwarf2out_early_finish): Likewise.
5516
5517 2022-02-04 Eric Botcazou <ebotcazou@adacore.com>
5518
5519 PR tree-optimization/104356
5520 * match.pd (X / bool_range_Y is X): Add guard.
5521 (X / X is one): Likewise.
5522 (X / abs (X) is X < 0 ? -1 : 1): Likewise.
5523 (X / -X is -1): Likewise.
5524 (1 / X -> X == 1): Likewise.
5525
5526 2022-02-04 Richard Biener <rguenther@suse.de>
5527
5528 PR tree-optimization/103641
5529 * tree-vect-patterns.cc (vect_synth_mult_by_constant):
5530 Pass the vector mode to choose_mult_variant.
5531
5532 2022-02-04 Roger Sayle <roger@nextmovesoftware.com>
5533
5534 PR rtl-optimization/101885
5535 * combine.cc (try_combine): When splitting a parallel into two
5536 sequential sets, check not only that the first doesn't clobber
5537 the second but also that the second doesn't clobber the first.
5538
5539 2022-02-04 Richard Biener <rguenther@suse.de>
5540
5541 PR middle-end/90348
5542 PR middle-end/104092
5543 * tree-core.h (clobber_kind): New enum.
5544 (tree_base::u::bits::address_space): Document use in CONSTRUCTORs.
5545 * tree.h (CLOBBER_KIND): Add.
5546 (build_clobber): Add clobber kind argument, defaulted to
5547 CLOBBER_UNDEF.
5548 * tree.cc (build_clobber): Likewise.
5549 * gimple.h (gimple_clobber_p): New overload with specified kind.
5550 * tree-streamer-in.cc (streamer_read_tree_bitfields): Stream
5551 CLOBBER_KIND.
5552 * tree-streamer-out.cc (streamer_write_tree_bitfields):
5553 Likewise.
5554 * tree-pretty-print.cc (dump_generic_node): Mark EOL CLOBBERs.
5555 * gimplify.cc (gimplify_bind_expr): Build storage end-of-life clobbers
5556 with CLOBBER_EOL.
5557 (gimplify_target_expr): Likewise.
5558 * tree-inline.cc (expand_call_inline): Likewise.
5559 * tree-ssa-ccp.cc (insert_clobber_before_stack_restore): Likewise.
5560 * gimple-ssa-warn-access.cc (pass_waccess::check_stmt): Only treat
5561 CLOBBER_EOL clobbers as ending lifetime of storage.
5562
5563 2022-02-04 Martin Sebor <msebor@redhat.com>
5564
5565 * pointer-query.h (pointer_query::cache_type): Use auto_vec for auto
5566 cleanup.
5567
5568 2022-02-03 Martin Sebor <msebor@redhat.com>
5569
5570 PR middle-end/104260
5571 * passes.def (pass_warn_access): Adjust pass placement.
5572
5573 2022-02-03 Uroš Bizjak <ubizjak@gmail.com>
5574
5575 PR target/104362
5576 * config/i386/i386.cc (find_drap_reg): For 32bit targets
5577 return DI_REG if function uses __builtin_eh_return.
5578
5579 2022-02-03 Martin Sebor <msebor@redhat.com>
5580
5581 * gimple-ssa-warn-restrict.cc (class pass_wrestrict): Outline ctor.
5582 (pass_wrestrict::m_ptr_qry): New member.
5583 (wrestrict_walk): Rename...
5584 (pass_wrestrict::check_block): ...to this.
5585 (pass_wrestrict::execute): Set up and tear down pointer_query and
5586 ranger.
5587 (builtin_memref::builtin_memref): Change ctor argument. Simplify.
5588 (builtin_access::builtin_access): Same.
5589 (builtin_access::m_ptr_qry): New member.
5590 (check_call): Rename...
5591 (pass_wrestrict::check_call): ...to this.
5592 (check_bounds_or_overlap): Change argument.
5593 * gimple-ssa-warn-restrict.h (check_bounds_or_overlap): Same.
5594
5595 2022-02-03 Martin Sebor <msebor@redhat.com>
5596
5597 * gimple-array-bounds.cc (array_bounds_checker::array_bounds_checker):
5598 Define ctor.
5599 (array_bounds_checker::get_value_range): Use new member.
5600 (array_bounds_checker::check_mem_ref): Same.
5601 * gimple-array-bounds.h (array_bounds_checker::array_bounds_checker):
5602 Outline ctor.
5603 (array_bounds_checker::m_ptr_query): New member.
5604
5605 2022-02-03 Martin Sebor <msebor@redhat.com>
5606
5607 * gimple-ssa-warn-access.cc (pass_waccess::pass_waccess): Remove
5608 pointer_query cache.
5609 * pointer-query.cc (pointer_query::pointer_query): Remove cache
5610 argument. Zero-initialize new cache member.
5611 (pointer_query::get_ref): Replace cache pointer with direct access.
5612 (pointer_query::put_ref): Same.
5613 (pointer_query::flush_cache): Same.
5614 (pointer_query::dump): Same.
5615 * pointer-query.h (class pointer_query): Remove cache argument from
5616 ctor. Change cache pointer to cache subobject member.
5617 * tree-ssa-strlen.cc: Remove pointer_query cache.
5618
5619 2022-02-03 Martin Sebor <msebor@redhat.com>
5620
5621 PR tree-optimization/104119
5622 * gimple-ssa-sprintf.cc (struct directive): Change argument type.
5623 (format_none): Same.
5624 (format_percent): Same.
5625 (format_integer): Same.
5626 (format_floating): Same.
5627 (get_string_length): Same.
5628 (format_character): Same.
5629 (format_string): Same.
5630 (format_plain): Same.
5631 (format_directive): Same.
5632 (compute_format_length): Same.
5633 (handle_printf_call): Same.
5634 * tree-ssa-strlen.cc (get_range_strlen_dynamic): Same. Call
5635 get_maxbound.
5636 (get_range_strlen_phi): Same.
5637 (get_maxbound): New function.
5638 (strlen_pass::get_len_or_size): Adjust to parameter change.
5639 * tree-ssa-strlen.h (get_range_strlen_dynamic): Change argument type.
5640
5641 2022-02-03 Bill Schmidt <wschmidt@linux.ibm.com>
5642
5643 PR target/103686
5644 * config/rs6000/rs6000-builtin.cc (rs6000_gimple_fold_builtin): Remove
5645 test for !rs6000_fold_gimple.
5646 * config/rs6000/rs6000.cc (rs6000_option_override_internal): Likewise.
5647 * config/rs6000/rs6000.opt (mfold-gimple): Remove.
5648
5649 2022-02-03 Bill Schmidt <wschmidt@linux.ibm.com>
5650
5651 PR target/95082
5652 * config/rs6000/rs6000-builtin.cc (rs6000_expand_builtin): Handle
5653 endianness for vclzlsbb and vctzlsbb.
5654 * config/rs6000/rs6000-builtins.def (VCLZLSBB_V16QI): Change
5655 default pattern and indicate a different pattern will be used for
5656 big endian.
5657 (VCLZLSBB_V4SI): Likewise.
5658 (VCLZLSBB_V8HI): Likewise.
5659 (VCTZLSBB_V16QI): Likewise.
5660 (VCTZLSBB_V4SI): Likewise.
5661 (VCTZLSBB_V8HI): Likewise.
5662
5663 2022-02-03 Bill Schmidt <wschmidt@linux.ibm.com>
5664
5665 * config.gcc (powerpc*-*-*): Add rs6000-builtin.o to extra_objs.
5666 * config/rs6000/rs6000-builtin.cc: New file, containing code moved
5667 from other files.
5668 * config/rs6000/rs6000-call.cc (cpu_is_info): Move to
5669 rs6000-builtin.cc.
5670 (cpu_supports_info): Likewise.
5671 (rs6000_type_string): Likewise.
5672 (altivec_expand_predicate_builtin): Likewise.
5673 (rs6000_htm_spr_icode): Likewise.
5674 (altivec_expand_vec_init_builtin): Likewise.
5675 (get_element_number): Likewise.
5676 (altivec_expand_vec_set_builtin): Likewise.
5677 (altivec_expand_vec_ext_builtin): Likewise.
5678 (rs6000_invalid_builtin): Likewise.
5679 (rs6000_fold_builtin): Likewise.
5680 (fold_build_vec_cmp): Likewise.
5681 (fold_compare_helper): Likewise.
5682 (map_to_integral_tree_type): Likewise.
5683 (fold_mergehl_helper): Likewise.
5684 (fold_mergeeo_helper): Likewise.
5685 (rs6000_builtin_valid_without_lhs): Likewise.
5686 (rs6000_builtin_is_supported): Likewise.
5687 (rs6000_gimple_fold_mma_builtin): Likewise.
5688 (rs6000_gimple_fold_builtin): Likewise.
5689 (rs6000_expand_ldst_mask): Likewise.
5690 (cpu_expand_builtin): Likewise.
5691 (elemrev_icode): Likewise.
5692 (ldv_expand_builtin): Likewise.
5693 (lxvrse_expand_builtin): Likewise.
5694 (lxvrze_expand_builtin): Likewise.
5695 (stv_expand_builtin): Likewise.
5696 (mma_expand_builtin): Likewise.
5697 (htm_spr_num): Likewise.
5698 (htm_expand_builtin): Likewise.
5699 (rs6000_expand_builtin): Likewise.
5700 (rs6000_vector_type): Likewise.
5701 (rs6000_init_builtins): Likewise. Remove initialization of
5702 builtin_mode_to_type entries.
5703 (rs6000_builtin_decl): Move to rs6000-builtin.cc.
5704 * config/rs6000/rs6000.cc (rs6000_builtin_mask_for_load): New
5705 external declaration.
5706 (rs6000_builtin_md_vectorized_function): Likewise.
5707 (rs6000_builtin_reciprocal): Likewise.
5708 (altivec_builtin_mask_for_load): Move to rs6000-builtin.cc.
5709 (rs6000_builtin_types): Likewise.
5710 (builtin_mode_to_type): Remove.
5711 (rs6000_builtin_mask_for_load): Move to rs6000-builtin.cc. Remove
5712 static qualifier.
5713 (rs6000_builtin_md_vectorized_function): Likewise.
5714 (rs6000_builtin_reciprocal): Likewise.
5715 * config/rs6000/rs6000.h (builtin_mode_to_type): Remove.
5716 * config/rs6000/t-rs6000 (rs6000-builtin.o): New target.
5717
5718 2022-02-03 Richard Biener <rguenther@suse.de>
5719
5720 PR debug/104337
5721 * tree-nrv.cc (pass_nrv::execute): Remove tieing result and found
5722 together via DECL_ABSTRACT_ORIGIN.
5723
5724 2022-02-03 Bill Schmidt <wschmidt@linux.ibm.com>
5725
5726 * config/rs6000/rs6000-call.cc (rs6000_expand_builtin): Revise error
5727 message for RES_BITS case.
5728
5729 2022-02-03 Aldy Hernandez <aldyh@redhat.com>
5730
5731 * gimple-range-fold.cc (fur_list::fur_list): Set m_local[1] correctly.
5732
5733 2022-02-03 Jakub Jelinek <jakub@redhat.com>
5734
5735 * config/arm/arm.opt (mfix-cortex-a57-aes-1742098,
5736 mfix-cortex-a72-aes-1655431): Ensure description ends with full stop.
5737
5738 2022-02-03 Aldy Hernandez <aldyh@redhat.com>
5739
5740 * cfganal.cc (verify_marked_backedges): New.
5741 * cfganal.h (verify_marked_backedges): New.
5742 * gimple-range-path.cc (path_range_query::path_range_query):
5743 Verify freshness of back edges.
5744 * tree-ssa-loop-ch.cc (ch_base::copy_headers): Call
5745 mark_dfs_back_edges.
5746 * tree-ssa-threadbackward.cc (back_threader::back_threader): Move
5747 path_range_query construction after backedges have been
5748 updated.
5749
5750 2022-02-03 Richard Sandiford <richard.sandiford@arm.com>
5751
5752 * config/aarch64/aarch64-simd.md (movmisalign<mode>): Extend from
5753 VALL to VALL_F16.
5754
5755 2022-02-03 Richard Sandiford <richard.sandiford@arm.com>
5756
5757 * config/aarch64/iterators.md (VALL_F16MOV): Delete.
5758 * config/aarch64/aarch64-simd.md (mov<mode>): Use VALL_F16 instead
5759 of VALL_F16MOV.
5760
5761 2022-02-03 Martin Liska <mliska@suse.cz>
5762
5763 * config/i386/i386-options.cc (ix86_valid_target_attribute_inner_p):
5764 Change subject and object in the error message.
5765 * config/s390/s390.cc (s390_valid_target_attribute_inner_p):
5766 Likewise.
5767
5768 2022-02-03 Martin Liska <mliska@suse.cz>
5769
5770 * config/s390/s390.cc (s390_valid_target_attribute_inner_p):
5771 Use the error message for i386 target.
5772
5773 2022-02-03 Jakub Jelinek <jakub@redhat.com>
5774
5775 PR tree-optimization/104334
5776 * range-op.cc (range_operator::wi_fold_in_parts): Change lh_range
5777 and rh_range type to widest_int and subtract in widest_int. Remove
5778 ov_rh, ov_lh and sign vars, always perform comparisons as signed
5779 and use >, < and == operators for it.
5780
5781 2022-02-03 Martin Sebor <msebor@redhat.com>
5782
5783 * common.opt (-Wuse-after-free): Correct typos.
5784
5785 2022-02-02 David Malcolm <dmalcolm@redhat.com>
5786
5787 PR analyzer/104270
5788 * doc/invoke.texi (-ftrivial-auto-var-init=): Add reference to
5789 -Wanalyzer-use-of-uninitialized-value to paragraph documenting that
5790 -ftrivial-auto-var-init= doesn't suppress warnings.
5791
5792 2022-02-02 Martin Liska <mliska@suse.cz>
5793
5794 * dwarf2out.cc (TEXT_SECTION_NAME): Remove unused macro.
5795
5796 2022-02-02 Bernd Kuhls <bernd.kuhls@t-online.de>
5797
5798 PR target/94372
5799 * config/or1k/linux.h (CPP_SPEC): Define.
5800
5801 2022-02-02 Tamar Christina <tamar.christina@arm.com>
5802
5803 PR tree-optimization/102819
5804 PR tree-optimization/103169
5805 * config/arm/vec-common.md (cml<fcmac1><conj_op><mode>4): Use
5806 canonical order.
5807
5808 2022-02-02 Tamar Christina <tamar.christina@arm.com>
5809
5810 PR tree-optimization/102819
5811 PR tree-optimization/103169
5812 * config/aarch64/aarch64-simd.md (cml<fcmac1><conj_op><mode>4): Use
5813 canonical order.
5814 * config/aarch64/aarch64-sve.md (cml<fcmac1><conj_op><mode>4): Likewise.
5815
5816 2022-02-02 Tamar Christina <tamar.christina@arm.com>
5817
5818 PR tree-optimization/102819
5819 PR tree-optimization/103169
5820 * doc/md.texi: Update docs for cfms, cfma.
5821 * tree-data-ref.h (same_data_refs): Accept optional offset.
5822 * tree-vect-slp-patterns.cc (is_linear_load_p): Fix issue with repeating
5823 patterns.
5824 (vect_normalize_conj_loc): Remove.
5825 (is_eq_or_top): Change to take two nodes.
5826 (enum _conj_status, compatible_complex_nodes_p,
5827 vect_validate_multiplication): New.
5828 (class complex_add_pattern, complex_add_pattern::matches,
5829 complex_add_pattern::recognize, class complex_mul_pattern,
5830 complex_mul_pattern::recognize, class complex_fms_pattern,
5831 complex_fms_pattern::recognize, class complex_operations_pattern,
5832 complex_operations_pattern::recognize, addsub_pattern::recognize): Pass
5833 new cache.
5834 (complex_fms_pattern::matches, complex_mul_pattern::matches): Pass new
5835 cache and use new validation code.
5836 * tree-vect-slp.cc (vect_match_slp_patterns_2, vect_match_slp_patterns,
5837 vect_analyze_slp): Pass along cache.
5838 (compatible_calls_p): Expose.
5839 * tree-vectorizer.h (compatible_calls_p, slp_node_hash,
5840 slp_compat_nodes_map_t): New.
5841 (class vect_pattern): Update signatures include new cache.
5842
5843 2022-02-02 Hans-Peter Nilsson <hp@axis.com>
5844
5845 * config/cris/cris.cc (cris_preferred_reload_class): Reject
5846 "eliminated" registers and small-enough constants unless
5847 reloaded into a class that is a subset of GENERAL_REGS.
5848 * config/cris/cris.md (attribute "cpu_variant"): New.
5849 (attribute "enabled"): Conditionalize on a matching attribute
5850 cpu_variant, if specified.
5851 ("*movsi_internal<setcc><setnz><setnzvc>"): For moves to and from
5852 memory, add cpu-variant-enabled variants for "r" alternatives on
5853 the far side of the "x" alternatives, preferring the "x" ones
5854 only for variants where MOF is present (in addition to SRP).
5855
5856 2022-02-02 Hans-Peter Nilsson <hp@axis.com>
5857
5858 * config/cris/cris.cc (cris_register_move_cost): Remove special pre-ira
5859 extra cost for ALL_REGS.
5860
5861 2022-02-02 Hans-Peter Nilsson <hp@axis.com>
5862
5863 * config/cris/constraints.md (define_register_constraint "b"): Now
5864 GENERAL_REGS.
5865 * config/cris/cris.md (CRIS_ACR_REGNUM): Remove.
5866 * config/cris/cris.h: (reg_class, REG_CLASS_NAMES)
5867 (REG_CLASS_CONTENTS): Remove ACR_REGS, SPEC_ACR_REGS, GENNONACR_REGS,
5868 and SPEC_GENNONACR_REGS.
5869 * config/cris/cris.cc (cris_preferred_reload_class): Don't mention
5870 ACR_REGS and return GENERAL_REGS instead of GENNONACR_REGS.
5871
5872 2022-02-02 Hans-Peter Nilsson <hp@axis.com>
5873
5874 * config/cris/cris.md ("*movsi_internal<setcc><setnz><setnzvc>"):
5875 Conditionalize on (sub-)register operands or operand 1 being 0.
5876
5877 2022-02-02 Hans-Peter Nilsson <hp@axis.com>
5878
5879 * config/cris/cris.h (TARGET_DEFAULT): Don't include MASK_MUL_BUG.
5880 (MUL_BUG_ASM_DEFAULT): New macro.
5881 (MAYBE_AS_NO_MUL_BUG_ABORT): Define in terms of MUL_BUG_ASM_DEFAULT.
5882 * doc/invoke.texi (CRIS Options, -mmul-bug-workaround): Adjust
5883 accordingly.
5884
5885 2022-02-01 Eugene Rozenfeld <erozen@microsoft.com>
5886
5887 * opts.cc (common_handle_option): Don't set param_early_inliner_max_iterations
5888 to 10 for AutoFDO.
5889
5890 2022-02-01 Eugene Rozenfeld <erozen@microsoft.com>
5891
5892 * auto-profile.cc (auto_profile): Hard-code the number of iterations (10).
5893
5894 2022-02-01 Andrew Pinski <apinski@marvell.com>
5895
5896 * doc/install.texi:
5897
5898 2022-02-01 Ilya Leoshkevich <iii@linux.ibm.com>
5899
5900 * config/s390/s390.cc (s390_code_end): Do not switch back to
5901 code section.
5902
5903 2022-02-01 Jakub Jelinek <jakub@redhat.com>
5904
5905 PR target/104323
5906 * config/rs6000/t-rs6000 (EXTRA_GTYPE_DEPS): Append rs6000-builtins.h
5907 rather than $(srcdir)/config/rs6000/rs6000-builtins.def.
5908 * config/rs6000/rs6000-gen-builtins.cc (write_decls): Don't use
5909 GTY((user)) for struct bifdata and struct ovlddata. Instead add
5910 GTY((skip(""))) to members with pointer and enum types that don't need
5911 to be tracked. Add GTY(()) to rs6000_builtin_info and rs6000_instance_info
5912 declarations. Don't emit gt_ggc_mx and gt_pch_nx declarations.
5913 (write_extern_fntype, write_fntype): Remove.
5914 (write_fntype_init): Emit the fntype vars as automatic vars instead
5915 of file scope ones.
5916 (write_header_file): Don't iterate with write_extern_fntype.
5917 (write_init_file): Don't iterate with write_fntype. Don't emit
5918 gt_ggc_mx and gt_pch_nx definitions.
5919
5920 2022-02-01 Jason Merrill <jason@redhat.com>
5921
5922 * tree.h (struct tree_vec_map_cache_hasher): Move from...
5923 * tree.cc (struct tree_vec_map_cache_hasher): ...here.
5924
5925 2022-02-01 Tom de Vries <tdevries@suse.de>
5926
5927 * config/nvptx/nvptx.cc (nvptx_single): Use nvptx_uniform_warp_check.
5928 * config/nvptx/nvptx.md (define_c_enum "unspecv"): Add
5929 UNSPECV_UNIFORM_WARP_CHECK.
5930 (define_insn "nvptx_uniform_warp_check"): New define_insn.
5931
5932 2022-02-01 Tom de Vries <tdevries@suse.de>
5933
5934 * config/nvptx/nvptx.cc (nvptx_single): Use nvptx_warpsync.
5935 * config/nvptx/nvptx.md (define_c_enum "unspecv"): Add
5936 UNSPECV_WARPSYNC.
5937 (define_insn "nvptx_warpsync"): New define_insn.
5938
5939 2022-02-01 Tom de Vries <tdevries@suse.de>
5940
5941 * config/nvptx/nvptx.opt (mptx): Set to PTX_VERSION_6_3 by default.
5942
5943 2022-02-01 Tom de Vries <tdevries@suse.de>
5944
5945 * config/nvptx/nvptx-opts.h (enum ptx_version): Add PTX_VERSION_6_0.
5946 * config/nvptx/nvptx.h (TARGET_PTX_6_0): New macro.
5947 * config/nvptx/nvptx.md (define_insn "nvptx_barsync"): Use barrier
5948 insn for TARGET_PTX_6_0.
5949
5950 2022-02-01 Tom de Vries <tdevries@suse.de>
5951
5952 PR target/100428
5953 * config/nvptx/nvptx.cc (prevent_branch_around_nothing): Handle nop
5954 insn.
5955
5956 2022-02-01 Tom de Vries <tdevries@suse.de>
5957
5958 * config/nvptx/nvptx.md (define_insn "atomic_compare_and_swap<mode>_1")
5959 (define_insn "atomic_exchange<mode>")
5960 (define_insn "atomic_fetch_add<mode>")
5961 (define_insn "atomic_fetch_addsf")
5962 (define_insn "atomic_fetch_<logic><mode>"): Output non-atomic version
5963 if memory operands is frame-relative.
5964
5965 2022-02-01 Tom de Vries <tdevries@suse.de>
5966
5967 * config/nvptx/nvptx.cc (enum nvptx_builtins): Add
5968 NVPTX_BUILTIN_MEMBAR_GL and NVPTX_BUILTIN_MEMBAR_CTA.
5969 (VOID): New macro.
5970 (nvptx_init_builtins): Add MEMBAR_GL and MEMBAR_CTA.
5971 (nvptx_expand_builtin): Handle NVPTX_BUILTIN_MEMBAR_GL and
5972 NVPTX_BUILTIN_MEMBAR_CTA.
5973 (nvptx_lockfull_update): Add level parameter. Emit barriers.
5974 (nvptx_reduction_update, nvptx_goacc_reduction_fini): Update call to
5975 nvptx_lockfull_update.
5976 * config/nvptx/nvptx.md (define_c_enum "unspecv"): Add
5977 UNSPECV_MEMBAR_GL.
5978 (define_expand "nvptx_membar_gl"): New expand.
5979 (define_insn "*nvptx_membar_gl"): New insn.
5980
5981 2022-02-01 Martin Liska <mliska@suse.cz>
5982
5983 * doc/install.texi: Remove option for GCC < 4.8.
5984
5985 2022-02-01 Jakub Jelinek <jakub@redhat.com>
5986
5987 PR middle-end/104307
5988 * tree-vect-generic.cc (expand_vector_comparison): Don't push debug
5989 stmts to uses vector, just set vec_cond_expr_only to false for
5990 non-VEC_COND_EXPRs instead of pushing them into uses. Treat
5991 VEC_COND_EXPRs that use lhs not just in rhs1, but rhs2 or rhs3 too
5992 like non-VEC_COND_EXPRs.
5993
5994 2022-02-01 Bill Schmidt <wschmidt@linux.ibm.com>
5995
5996 * config/rs6000/rs6000-overload.def (VEC_ABSD): Remove #ifdef token.
5997 (VEC_BLENDV): Likewise.
5998 (VEC_BPERM): Likewise.
5999 (VEC_CFUGE): Likewise.
6000 (VEC_CIPHER_BE): Likewise.
6001 (VEC_CIPHERLAST_BE): Likewise.
6002 (VEC_CLRL): Likewise.
6003 (VEC_CLRR): Likewise.
6004 (VEC_CMPNEZ): Likewise.
6005 (VEC_CNTLZ): Likewise.
6006 (VEC_CNTLZM): Likewise.
6007 (VEC_CNTTZM): Likewise.
6008 (VEC_CNTLZ_LSBB): Likewise.
6009 (VEC_CNTM): Likewise.
6010 (VEC_CNTTZ): Likewise.
6011 (VEC_CNTTZ_LSBB): Likewise.
6012 (VEC_CONVERT_4F32_8F16): Likewise.
6013 (VEC_DIV): Likewise.
6014 (VEC_DIVE): Likewise.
6015 (VEC_EQV): Likewise.
6016 (VEC_EXPANDM): Likewise.
6017 (VEC_EXTRACT_FP_FROM_SHORTH): Likewise.
6018 (VEC_EXTRACT_FP_FROM_SHORTL): Likewise.
6019 (VEC_EXTRACTH): Likewise.
6020 (VEC_EXTRACTL): Likewise.
6021 (VEC_EXTRACTM): Likewise.
6022 (VEC_EXTRACT4B): Likewise.
6023 (VEC_EXTULX): Likewise.
6024 (VEC_EXTURX): Likewise.
6025 (VEC_FIRSTMATCHINDEX): Likewise.
6026 (VEC_FIRSTMACHOREOSINDEX): Likewise.
6027 (VEC_FIRSTMISMATCHINDEX): Likewise.
6028 (VEC_FIRSTMISMATCHOREOSINDEX): Likewise.
6029 (VEC_GB): Likewise.
6030 (VEC_GENBM): Likewise.
6031 (VEC_GENHM): Likewise.
6032 (VEC_GENWM): Likewise.
6033 (VEC_GENDM): Likewise.
6034 (VEC_GENQM): Likewise.
6035 (VEC_GENPCVM): Likewise.
6036 (VEC_GNB): Likewise.
6037 (VEC_INSERTH): Likewise.
6038 (VEC_INSERTL): Likewise.
6039 (VEC_INSERT4B): Likewise.
6040 (VEC_LXVL): Likewise.
6041 (VEC_MERGEE): Likewise.
6042 (VEC_MERGEO): Likewise.
6043 (VEC_MOD): Likewise.
6044 (VEC_MSUB): Likewise.
6045 (VEC_MULH): Likewise.
6046 (VEC_NAND): Likewise.
6047 (VEC_NCIPHER_BE): Likewise.
6048 (VEC_NCIPHERLAST_BE): Likewise.
6049 (VEC_NEARBYINT): Likewise.
6050 (VEC_NMADD): Likewise.
6051 (VEC_ORC): Likewise.
6052 (VEC_PDEP): Likewise.
6053 (VEC_PERMX): Likewise.
6054 (VEC_PEXT): Likewise.
6055 (VEC_POPCNT): Likewise.
6056 (VEC_PARITY_LSBB): Likewise.
6057 (VEC_REPLACE_ELT): Likewise.
6058 (VEC_REPLACE_UN): Likewise.
6059 (VEC_REVB): Likewise.
6060 (VEC_RINT): Likewise.
6061 (VEC_RLMI): Likewise.
6062 (VEC_RLNM): Likewise.
6063 (VEC_SBOX_BE): Likewise.
6064 (VEC_SIGNEXTI): Likewise.
6065 (VEC_SIGNEXTLL): Likewise.
6066 (VEC_SIGNEXTQ): Likewise.
6067 (VEC_SLDB): Likewise.
6068 (VEC_SLV): Likewise.
6069 (VEC_SPLATI): Likewise.
6070 (VEC_SPLATID): Likewise.
6071 (VEC_SPLATI_INS): Likewise.
6072 (VEC_SQRT): Likewise.
6073 (VEC_SRDB): Likewise.
6074 (VEC_SRV): Likewise.
6075 (VEC_STRIL): Likewise.
6076 (VEC_STRIL_P): Likewise.
6077 (VEC_STRIR): Likewise.
6078 (VEC_STRIR_P): Likewise.
6079 (VEC_STXVL): Likewise.
6080 (VEC_TERNARYLOGIC): Likewise.
6081 (VEC_TEST_LSBB_ALL_ONES): Likewise.
6082 (VEC_TEST_LSBB_ALL_ZEROS): Likewise.
6083 (VEC_VEE): Likewise.
6084 (VEC_VES): Likewise.
6085 (VEC_VIE): Likewise.
6086 (VEC_VPRTYB): Likewise.
6087 (VEC_VSCEEQ): Likewise.
6088 (VEC_VSCEGT): Likewise.
6089 (VEC_VSCELT): Likewise.
6090 (VEC_VSCEUO): Likewise.
6091 (VEC_VSEE): Likewise.
6092 (VEC_VSES): Likewise.
6093 (VEC_VSIE): Likewise.
6094 (VEC_VSTDC): Likewise.
6095 (VEC_VSTDCN): Likewise.
6096 (VEC_VTDC): Likewise.
6097 (VEC_XL): Likewise.
6098 (VEC_XL_BE): Likewise.
6099 (VEC_XL_LEN_R): Likewise.
6100 (VEC_XL_SEXT): Likewise.
6101 (VEC_XL_ZEXT): Likewise.
6102 (VEC_XST): Likewise.
6103 (VEC_XST_BE): Likewise.
6104 (VEC_XST_LEN_R): Likewise.
6105 (VEC_XST_TRUNC): Likewise.
6106 (VEC_XXPERMDI): Likewise.
6107 (VEC_XXSLDWI): Likewise.
6108 (VEC_TSTSFI_EQ_DD): Likewise.
6109 (VEC_TSTSFI_EQ_TD): Likewise.
6110 (VEC_TSTSFI_GT_DD): Likewise.
6111 (VEC_TSTSFI_GT_TD): Likewise.
6112 (VEC_TSTSFI_LT_DD): Likewise.
6113 (VEC_TSTSFI_LT_TD): Likewise.
6114 (VEC_TSTSFI_OV_DD): Likewise.
6115 (VEC_TSTSFI_OV_TD): Likewise.
6116 (VEC_VADDCUQ): Likewise.
6117 (VEC_VADDECUQ): Likewise.
6118 (VEC_VADDEUQM): Likewise.
6119 (VEC_VADDUDM): Likewise.
6120 (VEC_VADDUQM): Likewise.
6121 (VEC_VBPERMQ): Likewise.
6122 (VEC_VCLZB): Likewise.
6123 (VEC_VCLZD): Likewise.
6124 (VEC_VCLZH): Likewise.
6125 (VEC_VCLZW): Likewise.
6126 (VEC_VCTZB): Likewise.
6127 (VEC_VCTZD): Likewise.
6128 (VEC_VCTZH): Likewise.
6129 (VEC_VCTZW): Likewise.
6130 (VEC_VEEDP): Likewise.
6131 (VEC_VEESP): Likewise.
6132 (VEC_VESDP): Likewise.
6133 (VEC_VESSP): Likewise.
6134 (VEC_VIEDP): Likewise.
6135 (VEC_VIESP): Likewise.
6136 (VEC_VPKSDSS): Likewise.
6137 (VEC_VPKSDUS): Likewise.
6138 (VEC_VPKUDUM): Likewise.
6139 (VEC_VPKUDUS): Likewise.
6140 (VEC_VPOPCNT): Likewise.
6141 (VEC_VPOPCNTB): Likewise.
6142 (VEC_VPOPCNTD): Likewise.
6143 (VEC_VPOPCNTH): Likewise.
6144 (VEC_VPOPCNTW): Likewise.
6145 (VEC_VPRTYBD): Likewise.
6146 (VEC_VPRTYBQ): Likewise.
6147 (VEC_VPRTYBW): Likewise.
6148 (VEC_VRLD): Likewise.
6149 (VEC_VSLD): Likewise.
6150 (VEC_VSRAD): Likewise.
6151 (VEC_VSRD): Likewise.
6152 (VEC_VSTDCDP): Likewise.
6153 (VEC_VSTDCNDP): Likewise.
6154 (VEC_VSTDCNQP): Likewise.
6155 (VEC_VSTDCNSP): Likewise.
6156 (VEC_VSTDCQP): Likewise.
6157 (VEC_VSTDCSP): Likewise.
6158 (VEC_VSUBECUQ): Likewise.
6159 (VEC_VSUBEUQM): Likewise.
6160 (VEC_VSUBUDM): Likewise.
6161 (VEC_VSUBUQM): Likewise.
6162 (VEC_VTDCDP): Likewise.
6163 (VEC_VTDCSP): Likewise.
6164 (VEC_VUPKHSW): Likewise.
6165 (VEC_VUPKLSW): Likewise.
6166
6167 2022-02-01 Andreas Krebbel <krebbel@linux.ibm.com>
6168
6169 PR rtl-optimization/101260
6170 * regcprop.cc (maybe_mode_change): Invoke mode_change_ok also for
6171 copy_regno.
6172
6173 2022-02-01 Xi Ruoyao <xry111@mengyan1223.wang>
6174
6175 PR middle-end/95115
6176 * fold-const.cc (const_binop): Do not fold NaN result from
6177 non-NaN operands.
6178
6179 2022-02-01 Tom de Vries <tdevries@suse.de>
6180
6181 * tree-loop-distribution.cc (generate_reduction_builtin_1): Check for
6182 -ftree-loop-distribute-patterns.
6183 (loop_distribution::execute): Don't call transform_reduction_loop for
6184 -fno-tree-loop-distribute-patterns.
6185
6186 2022-01-31 Andrew Pinski <apinski@marvell.com>
6187
6188 * fold-const.h (operand_compare::operand_equal_p):
6189 Fix comment about OEP_* flags.
6190
6191 2022-01-31 Jakub Jelinek <jakub@redhat.com>
6192
6193 PR target/104298
6194 * config/rs6000/aix.h (OPTION_GLIBC): Remove.
6195 * config/rs6000/darwin.h (OPTION_GLIBC): Likewise.
6196 * config/rs6000/option-defaults.h (OPTION_GLIBC): Define to 0
6197 if not already defined.
6198
6199 2022-01-31 Martin Sebor <msebor@redhat.com>
6200
6201 PR middle-end/104232
6202 * gimple-ssa-warn-access.cc (pointers_related_p): Add argument.
6203 Handle PHIs. Add a synonymous overload.
6204 (pass_waccess::check_pointer_uses): Call pointers_related_p.
6205
6206 2022-01-31 Richard Biener <rguenther@suse.de>
6207
6208 PR tree-optimization/100499
6209 * fold-const.cc (multiple_of_p): Pass the correct type of
6210 the expression to the recursive invocation of multiple_of_p
6211 for conversions and use CASE_CONVERT.
6212
6213 2022-01-31 Eric Botcazou <ebotcazou@adacore.com>
6214
6215 PR target/104189
6216 * config/sparc/linux64.h (TARGET_DEFAULT): Add MASK_V8PLUS.
6217
6218 2022-01-31 Richard Biener <rguenther@suse.de>
6219
6220 PR tree-optimization/100499
6221 * tree-cfg.cc (verify_gimple_assign_ternary): Use multiple_p
6222 on poly-ints instead of multiple_of_p.
6223 * tree-ssa.cc (maybe_rewrite_mem_ref_base): Likewise.
6224 (non_rewritable_mem_ref_base): Likewise.
6225 (non_rewritable_lvalue_p): Likewise.
6226 (execute_update_addresses_taken): Likewise.
6227
6228 2022-01-29 Jakub Jelinek <jakub@redhat.com>
6229 Andrew Pinski <apinski@marvell.com>
6230
6231 PR tree-optimization/104279
6232 PR tree-optimization/104280
6233 PR tree-optimization/104281
6234 * match.pd (1 / X -> X == 1 for unsigned X): Build eq with
6235 boolean_type_node and convert to type. Formatting fixes.
6236
6237 2022-01-28 Yoshinori Sato <yo-satoh@sios.com>
6238
6239 * config/sh/t-linux (MULTILIB_EXCEPTIONS): Add m1, mb/m1 and m2a.
6240
6241 2022-01-28 Navid Rahimi <navidrahimi@microsoft.com>
6242
6243 PR tree-optimization/103514
6244 * match.pd (a & b) ^ (a == b) -> !(a | b): New optimization.
6245 (a & b) == (a ^ b) -> !(a | b): New optimization.
6246
6247 2022-01-28 Marek Polacek <polacek@redhat.com>
6248
6249 * doc/invoke.texi: Update -Wbidi-chars documentation.
6250
6251 2022-01-28 Iain Sandoe <iain@sandoe.co.uk>
6252
6253 * config/rs6000/darwin.h (OPTION_GLIBC): Define to 0.
6254
6255 2022-01-28 Zhao Wei Liew <zhaoweiliew@gmail.com>
6256
6257 PR tree-optimization/95424
6258 * match.pd: Simplify 1 / X where X is an integer.
6259
6260 2022-01-28 Jakub Jelinek <jakub@redhat.com>
6261
6262 PR tree-optimization/104263
6263 * gimple-ssa-store-merging.cc (get_status_for_store_merging): For
6264 cfun->can_throw_non_call_exceptions && cfun->eh test whether
6265 last non-debug stmt in the bb is store_valid_for_store_merging_p
6266 rather than last stmt.
6267
6268 2022-01-28 Martin Liska <mliska@suse.cz>
6269
6270 * diagnostic.cc (diagnostic_action_after_output): Remove extra
6271 newline.
6272
6273 2022-01-28 Martin Liska <mliska@suse.cz>
6274
6275 * config/rs6000/host-darwin.cc (segv_crash_handler):
6276 Do not use leading capital letter.
6277 (segv_handler): Likewise.
6278 * ipa-sra.cc (verify_splitting_accesses): Likewise.
6279 * varasm.cc (get_section): Likewise.
6280
6281 2022-01-28 Richard Biener <rguenther@suse.de>
6282
6283 PR tree-optimization/104267
6284 * tree-vect-stmts.cc (vectorizable_call): Properly use the
6285 per-argument determined vector type for externals and
6286 invariants.
6287
6288 2022-01-28 Richard Biener <rguenther@suse.de>
6289
6290 PR tree-optimization/104263
6291 * tree-cfg.cc (gimple_purge_dead_abnormal_call_edges):
6292 Purge edges also when !cfun->has_nonlocal_label
6293 and !cfun->calls_setjmp.
6294
6295 2022-01-28 Maciej W. Rozycki <macro@embecosm.com>
6296
6297 * config/riscv/riscv.md: Document `auipc' and `bitmanip' `type'
6298 attributes.
6299
6300 2022-01-28 Jakub Jelinek <jakub@redhat.com>
6301
6302 PR lto/104237
6303 * cfgrtl.cc (loc_equal): New function.
6304 (unique_locus_on_edge_between_p): Use it.
6305
6306 2022-01-28 Richard Biener <rguenther@suse.de>
6307
6308 * cfganal.h (mark_dfs_back_edges): Provide API with struct
6309 function argument.
6310 * cfganal.cc (mark_dfs_back_edges): Take a struct function
6311 to work on, add a wrapper passing cfun.
6312 * graph.cc (draw_cfg_nodes_no_loops): Replace stray cfun
6313 uses with fun which is already passed.
6314 (draw_cfg_edges): Likewise.
6315 (draw_cfg_nodes_for_loop): Do not use draw_cfg_nodes_for_loop
6316 for fun != cfun.
6317
6318 2022-01-27 Patrick Palka <ppalka@redhat.com>
6319
6320 PR c++/99895
6321 * tree.cc (build_call_vec): Add const to second parameter.
6322 * tree.h (build_call_vec): Likewise.
6323
6324 2022-01-27 Martin Liska <mliska@suse.cz>
6325
6326 PR web/104254
6327 * diagnostic.cc (diagnostic_initialize):
6328 Initialize report_bug flag.
6329 (diagnostic_action_after_output):
6330 Explain that -freport-bug option can be used for pre-processed
6331 file creation. Make the message shorter.
6332 (error_recursion): Rename Internal to internal.
6333 * diagnostic.h (struct diagnostic_context): New field.
6334 * opts.cc (common_handle_option): Init the field here.
6335
6336 2022-01-27 Kewen Lin <linkw@linux.ibm.com>
6337
6338 PR target/103702
6339 * config/rs6000/rs6000.cc
6340 (rs6000_cost_data::update_target_cost_per_stmt): Fix one wrong
6341 assertion with early return.
6342
6343 2022-01-27 Chung-Lin Tang <cltang@codesourcery.com>
6344
6345 PR middle-end/103642
6346 * gimplify.cc (gimplify_scan_omp_clauses): Do not do indir_p handling
6347 for non-pointer or non-reference-to-pointer cases.
6348
6349 2022-01-27 Jakub Jelinek <jakub@redhat.com>
6350
6351 PR tree-optimization/104196
6352 * gimple-fold.h (rewrite_to_defined_overflow): Add IN_PLACE argument.
6353 * gimple-fold.cc (rewrite_to_defined_overflow): Likewise. If true,
6354 return NULL and emit needed stmts before and after stmt.
6355 * tree-ssa-reassoc.cc (update_range_test): For inter-bb range opt
6356 pick as operand_entry that will hold the merged test the one feeding
6357 earliest condition, ensure that by swapping range->idx with some
6358 other range's idx if needed. If seq is non-NULL, don't actually swap
6359 it but instead rewrite stmts with undefined overflow in between
6360 the two locations.
6361 (maybe_optimize_range_tests): Set ops[]->id to bb->index with the
6362 corresponding condition even if they have non-NULL ops[]->op.
6363 Formatting fix.
6364
6365 2022-01-26 Jakub Jelinek <jakub@redhat.com>
6366
6367 PR target/104239
6368 * config/rs6000/emmintrin.h (_mm_sad_epu8): Use __asm__ instead of
6369 asm.
6370 * config/rs6000/smmintrin.h (_mm_minpos_epu16): Declare iterator
6371 before for loop instead of for init clause.
6372 * config/rs6000/bmi2intrin.h (_pext_u64): Likewise.
6373
6374 2022-01-26 Jakub Jelinek <jakub@redhat.com>
6375
6376 PR target/104239
6377 * config/rs6000/bmiintrin.h: Test _X86GPRINTRIN_H_INCLUDED instead of
6378 _X86INTRIN_H_INCLUDED and adjust #error wording.
6379 * config/rs6000/bmi2intrin.h: Likewise.
6380
6381 2022-01-26 Jakub Jelinek <jakub@redhat.com>
6382
6383 PR debug/104194
6384 * dwarf2out.cc (long_double_as_float128): New function.
6385 (modified_type_die): For powerpc64le IEEE 754 quad long double
6386 and complex long double emit those as DW_TAG_typedef to
6387 _Float128 or complex _Float128 base type.
6388
6389 2022-01-26 Marek Polacek <polacek@redhat.com>
6390
6391 PR target/104213
6392 * gimple-ssa-warn-access.cc (pass_waccess::warn_invalid_pointer): Don't
6393 warn when the SSA_NAME_VAR of REF has supressed -Wuse-after-free.
6394
6395 2022-01-26 Martin Liska <mliska@suse.cz>
6396
6397 * ipa-modref-tree.cc (modref_access_node::update):
6398 Remove "--param param=foo" with "--param foo".
6399 (modref_access_node::insert): Likewise.
6400 (modref_access_node::insert_kill): Likewise.
6401 * ipa-modref-tree.h (struct modref_ref_node): Likewise.
6402 (struct modref_base_node): Likewise.
6403 (struct modref_tree): Likewise.
6404
6405 2022-01-26 Raoni Fassina Firmino <raoni@linux.ibm.com>
6406
6407 PR target/94193
6408 * builtins.cc (expand_builtin_feclear_feraise_except): Add op0
6409 predicate check.
6410
6411 2022-01-25 Martin Sebor <msebor@redhat.com>
6412
6413 PR tree-optimization/104203
6414 * gimple-ssa-warn-access.cc (pass_data pass_data_waccess): Use
6415 TV_WARN_ACCESS.
6416 * pointer-query.cc (access_ref::merge_ref): Change return type.
6417 Convert failure to a conservative success.
6418 (access_ref::get_ref): Adjust to the change above. Short-circuit
6419 PHI evaluation after first failure turned into conservative success.
6420 * pointer-query.h (access_ref::merge_ref): Change return type.
6421 * timevar.def (TV_WARN_ACCESS): New timer variable.
6422
6423 2022-01-25 David Edelsohn <dje.gcc@gmail.com>
6424
6425 * config/rs6000/aix.h (OPTION_GLIBC): Define as 0.
6426
6427 2022-01-25 Richard Biener <rguenther@suse.de>
6428
6429 PR tree-optimization/104214
6430 * tree-ssa-loop-niter.cc (number_of_iterations_cond): Use
6431 stronger guarantees for relational pointer compares when
6432 rewriting BASE0 + STEP0 cmp BASE1 + STEP1 as
6433 BASE0 + STEP0 - STEP1 cmp BASE1.
6434
6435 2022-01-25 Jakub Jelinek <jakub@redhat.com>
6436
6437 PR target/104172
6438 * config/rs6000/rs6000-internal.h (rs6000_passes_ieee128): Don't
6439 declare.
6440 * config/rs6000/rs6000.cc (rs6000_passes_ieee128,
6441 ieee128_mangling_gcc_8_1): Remove.
6442 (TARGET_ASM_GLOBALIZE_DECL_NAME): Don't redefine.
6443 (rs6000_mangle_type): Return "u9__ieee128" instead of
6444 ieee128_mangling_gcc_8_1 ? "U10__float128" : "u9__ieee128".
6445 (rs6000_globalize_decl_name): Remove.
6446 * config/rs6000/rs6000-call.cc (init_cumulative_args,
6447 rs6000_function_arg_advance_1): Don't set rs6000_passes_ieee128.
6448
6449 2022-01-24 Martin Sebor <msebor@redhat.com>
6450
6451 * pointer-query.cc (pointer_query::dump): Remove duplicate
6452 block.
6453
6454 2022-01-24 Marek Polacek <polacek@redhat.com>
6455
6456 PR preprocessor/104030
6457 * doc/invoke.texi: Update documentation for -Wbidi-chars.
6458
6459 2022-01-24 Raoni Fassina Firmino <raoni@linux.ibm.com>
6460
6461 PR target/94193
6462 * builtins.cc (expand_builtin_fegetround): New function.
6463 (expand_builtin_feclear_feraise_except): New function.
6464 (expand_builtin): Add cases for BUILT_IN_FEGETROUND,
6465 BUILT_IN_FECLEAREXCEPT and BUILT_IN_FERAISEEXCEPT.
6466 * config/rs6000/rs6000.md (fegetroundsi): New pattern.
6467 (feclearexceptsi): New Pattern.
6468 (feraiseexceptsi): New Pattern.
6469 * doc/extend.texi: Add a new introductory paragraph about the
6470 new builtins.
6471 * doc/md.texi: (fegetround@var{m}): Document new optab.
6472 (feclearexcept@var{m}): Document new optab.
6473 (feraiseexcept@var{m}): Document new optab.
6474 * optabs.def (fegetround_optab): New optab.
6475 (feclearexcept_optab): New optab.
6476 (feraiseexcept_optab): New optab.
6477
6478 2022-01-24 Richard Biener <rguenther@suse.de>
6479 Jiufu Guo <guojiufu@linux.ibm.com>
6480
6481 PR tree-optimization/100740
6482 PR tree-optimization/101508
6483 PR tree-optimization/101972
6484 PR tree-optimization/102131
6485 * tree-ssa-loop-niter.cc (number_of_iterations_cond): Properly
6486 constrain BASE0 + STEP0 cmp BASE1 + STEP1 to
6487 BASE0 + STEP0 - STEP1 cmp BASE1 transform.
6488
6489 2022-01-24 Jakub Jelinek <jakub@redhat.com>
6490
6491 PR sanitizer/104158
6492 * opt-functions.awk (var_set): Handle EnumBitSet property.
6493 * optc-gen.awk: Don't disallow RejectNegative if EnumBitSet is
6494 specified.
6495 * opts.h (enum cl_enum_var_value): New type.
6496 * opts-common.cc (decode_cmdline_option): Use CLEV_* values.
6497 Handle CLEV_BITSET.
6498 (cmdline_handle_error): Handle CLEV_BITSET.
6499 * opts.cc (test_enum_sets): Also test EnumBitSet requirements.
6500 * doc/options.texi (EnumBitSet): Document.
6501 * common.opt (fsanitize-coverage=): Use EnumBitSet instead of
6502 EnumSet.
6503 (trace-pc, trace-cmp): Drop Set properties.
6504
6505 2022-01-24 Jakub Jelinek <jakub@redhat.com>
6506
6507 PR sanitizer/104158
6508 * common.opt (flag_sanitize_coverage): Remove Variable entry.
6509 (fsanitize-coverage=): Remove RejectNegative property, add
6510 Var(flag_sanitize_coverage) and EnumSet properties.
6511 (trace-pc): Add Set(1) property.
6512 (trace-cmp): Add Set(2) property.
6513 * opts.cc (common_handle_option): Don't handle
6514 OPT_fsanitize_coverage_.
6515
6516 2022-01-24 Jakub Jelinek <jakub@redhat.com>
6517
6518 PR sanitizer/104158
6519 * opt-functions.awk (var_set): Handle EnumSet property.
6520 * optc-gen.awk: Don't disallow RejectNegative if EnumSet is
6521 specified.
6522 * opt-read.awk: Handle Set property.
6523 * opts.h (CL_ENUM_SET_SHIFT, CL_ERR_ENUM_SET_ARG): Define.
6524 (struct cl_decoded_option): Mention enum in value description.
6525 Add mask member.
6526 (set_option): Add mask argument defaulted to 0.
6527 * opts.cc (test_enum_sets): New function.
6528 (opts_cc_tests): Call it.
6529 * opts-common.cc (enum_arg_to_value): Change return argument
6530 from bool to int, on success return index into the cl_enum_arg
6531 array, on failure -1. Add len argument, if non-0, use strncmp
6532 instead of strcmp.
6533 (opt_enum_arg_to_value): Adjust caller.
6534 (decode_cmdline_option): Handle EnumSet represented as
6535 CLVC_ENUM with non-zero var_value. Initialize decoded->mask.
6536 (decode_cmdline_options_to_array): CLear opt_array[0].mask.
6537 (handle_option): Pass decoded->mask to set_options last argument.
6538 (generate_option): Clear decoded->mask.
6539 (generate_option_input_file): Likewise.
6540 (cmdline_handle_error): Handle CL_ERR_ENUM_SET_ARG.
6541 (set_option): Add mask argument, use it for CLVC_ENUM.
6542 (control_warning_option): Adjust enum_arg_to_value caller.
6543 * doc/options.texi: Document Set and EnumSet properties.
6544
6545 2022-01-24 Jakub Jelinek <jakub@redhat.com>
6546
6547 PR bootstrap/104170
6548 * config/linux.h (OPTION_GLIBC_P, OPTION_UCLIBC_P,
6549 OPTION_BIONIC_P, OPTION_MUSL_P): Define.
6550 (OPTION_GLIBC, OPTION_UCLIBC, OPTION_BIONIC, OPTION_MUSL): Redefine
6551 using OPTION_*_P macros.
6552 * config/alpha/linux.h (OPTION_GLIBC_P, OPTION_UCLIBC_P,
6553 OPTION_BIONIC_P, OPTION_MUSL_P): Define.
6554 (OPTION_GLIBC, OPTION_UCLIBC, OPTION_BIONIC, OPTION_MUSL): Redefine
6555 using OPTION_*_P macros.
6556 * config/rs6000/linux.h (OPTION_GLIBC_P, OPTION_UCLIBC_P,
6557 OPTION_BIONIC_P, OPTION_MUSL_P): Define.
6558 (OPTION_GLIBC, OPTION_UCLIBC, OPTION_BIONIC, OPTION_MUSL): Redefine
6559 using OPTION_*_P macros.
6560 * config/rs6000/linux64.h (OPTION_GLIBC_P, OPTION_UCLIBC_P,
6561 OPTION_BIONIC_P, OPTION_MUSL_P): Define.
6562 (OPTION_GLIBC, OPTION_UCLIBC, OPTION_BIONIC, OPTION_MUSL): Redefine
6563 using OPTION_*_P macros.
6564 * config/fuchsia.h (OPTION_MUSL_P): Redefine.
6565 * config/glibc-stdint.h (OPTION_MUSL_P): Define if not defined.
6566 * common/config/s390/s390-common.cc (s390_supports_split_stack): Re-add
6567 ATTRIBUTE_UNUSED to opts parameter. If OPTION_GLIBC_P is defined, use
6568 OPTION_GLIBC_P (opts) as condition, otherwise assume if (false).
6569 * common/config/i386/i386-common.cc (ix86_supports_split_stack): If
6570 OPTION_GLIBC_P is defined use !OPTION_GLIBC_P (opts) as condition,
6571 otherwise assume if (true).
6572
6573 2022-01-24 Kito Cheng <kito.cheng@sifive.com>
6574
6575 * common/config/riscv/riscv-common.cc (riscv_subset_list::to_string):
6576 Skip zicsr and zifencei if I-ext is 2.0.
6577
6578 2022-01-24 Jia-Wei Chen <jiawei@iscas.ac.cn>
6579
6580 * config.gcc: Modify default isa_spec version.
6581
6582 2022-01-24 Jiufu Guo <guojiufu@linux.ibm.com>
6583
6584 PR tree-optimization/102087
6585 * tree-ssa-loop-niter.cc (number_of_iterations_until_wrap):
6586 Correct PLUS result type.
6587
6588 2022-01-24 H.J. Lu <hjl.tools@gmail.com>
6589
6590 PR target/104188
6591 * config/i386/predicates.md (bcst_mem_operand): Also check mode
6592 of memory broadcast.
6593
6594 2022-01-23 Andrew Pinski <apinski@marvell.com>
6595
6596 PR target/64821
6597 * config/aarch64/aarch64-builtins.cc
6598 (aarch64_general_gimple_fold_builtin): Handle
6599 __builtin_aarch64_sqrt* and simplify into SQRT internal
6600 function.
6601
6602 2022-01-22 Jakub Jelinek <jakub@redhat.com>
6603
6604 PR other/104176
6605 * opts-global.cc (handle_common_deferred_options): Quote
6606 --enable-plugin in diagnostics to avoid -Werror=format-diag.
6607
6608 2022-01-21 Michael Meissner <meissner@the-meissners.org>
6609
6610 PR target/104136
6611 * config/rs6000/rs6000-protos.h (prefixed_xxsplti_p): Delete.
6612 * config/rs6000/rs6000.cc (prefixed_xxsplti_p): Delete.
6613 * config/rs6000/rs6000.md (prefixed attribute): Delete section
6614 that sets the prefixed attribute for xxspltiw, xxspltidp, and
6615 xxsplti32dx instructions.
6616 (movsf_hardfloat): Explicitly set the prefixed attribute
6617 when xxspltiw and xxspltidp instructions are generated.
6618 (mov<mode>_hardfloat32): Likewise.
6619 (mov<mode>_hardfloat64): Likewise.
6620 * config/rs6000/vsx.md (vsx_mov<mode>_64bit): Explicitly set the
6621 prefixed attribute for xxspltiw and xxspltidp instructions.
6622 (vsx_mov<mode>_32bit): Likewise.
6623
6624 2022-01-21 H.J. Lu <hjl.tools@gmail.com>
6625
6626 PR bootstrap/104170
6627 * common/config/i386/i386-common.cc (ix86_supports_split_stack):
6628 Return true only on glibc.
6629 * config/i386/gnu-user-common.h (STACK_CHECK_STATIC_BUILTIN):
6630 Revert commit c163647ffbc.
6631 * config/i386/gnu.h (TARGET_LIBC_PROVIDES_SSP): Likewise.
6632
6633 2022-01-21 Sören Tempel <soeren@soeren-tempel.net>
6634
6635 * common/config/s390/s390-common.cc (s390_supports_split_stack):
6636 Only support split-stack on glibc targets.
6637 * config/i386/gnu-user-common.h (STACK_CHECK_STATIC_BUILTIN): Ditto.
6638 * config/i386/gnu.h (defined): Ditto.
6639
6640 2022-01-21 Bill Schmidt <wschmidt@linux.ibm.com>
6641
6642 * config/rs6000/rs6000-overload.def (VEC_SLDW): Add instances for
6643 vector float and vector double.
6644
6645 2022-01-21 Bill Seurer <seurer@gcc.gnu.org>
6646
6647 * config/rs6000/rs6000.cc (rs6000_get_function_versions_dispatcher):
6648 Fix mention of ifunc in string.
6649
6650 2022-01-21 Roger Sayle <roger@nextmovesoftware.com>
6651
6652 PR middle-end/104140
6653 * tree-ssa-math-opts.cc (convert_mult_to_highpart): Check that the
6654 operands of the widening multiplication are either both signed or
6655 both unsigned, and abort the conversion if mismatched.
6656 * doc/generic.texi (WIDEN_MULT_EXPR): Describe expression node.
6657 (MULT_HIGHPART_EXPR): Clarify that operands must have the same
6658 signedness.
6659 * tree.def (MULT_HIGHPART_EXPR): Document both operands must have
6660 integer types with the same precision and signedness.
6661 (WIDEN_MULT_EXPR): Document that operands must have integer types
6662 with the same precision, but possibly differing signedness.
6663 * config/riscv/riscv-c.cc (riscv_cpu_cpp_builtins): Defend against
6664 riscv_current_subset_list returning a NULL pointer (empty list).
6665
6666 2022-01-21 Vladimir N. Makarov <vmakarov@redhat.com>
6667
6668 PR target/103676
6669 * ira.h (struct target_ira): Add member
6670 x_ira_exclude_class_mode_regs.
6671 (ira_exclude_class_mode_regs): New macro.
6672 * lra.h (lra_create_new_reg): Add arg exclude_start_hard_regs and
6673 move from here ...
6674 * lra-int.h: ... to here.
6675 (lra_create_new_reg_with_unique_value): Add arg
6676 exclude_start_hard_regs.
6677 (class lra_reg): Add member exclude_start_hard_regs.
6678 * lra-assigns.cc (find_hard_regno_for_1): Setup
6679 impossible_start_hard_regs from exclude_start_hard_regs.
6680 * lra-constraints.cc (get_reload_reg): Add arg exclude_start_hard_regs and pass
6681 it lra_create_new_reg[_with_unique_value].
6682 (match_reload): Ditto.
6683 (check_and_process_move): Pass NULL
6684 exclude_start_hard_regs to lra_create_new_reg_with_unique_value.
6685 (goal_alt_exclude_start_hard_regs): New static variable.
6686 (process_addr_reg, simplify_operand_subreg): Pass NULL
6687 exclude_start_hard_regs to lra_create_new_reg_with_unique_value
6688 and get_reload_reg.
6689 (process_alt_operands): Setup goal_alt_exclude_start_hard_regs.
6690 Use this_alternative_exclude_start_hard_regs additionally to find
6691 winning operand alternative.
6692 (base_to_reg, base_plus_disp_to_reg, index_part_to_reg): Pass NULL
6693 exclude_start_hard_regs to lra_create_new_reg.
6694 (process_address_1, emit_inc): Ditto.
6695 (curr_insn_transform): Pass exclude_start_hard_regs value to
6696 lra_create_new_reg, get_reload_reg, match_reload.
6697 (inherit_reload_reg, split_reg): Pass NULL exclude_start_hard_regs
6698 to lra_create_new_reg.
6699 (process_invariant_for_inheritance): Ditto.
6700 * lra-remat.cc (update_scratch_ops): Ditto.
6701 * lra.cc (lra_create_new_reg_with_unique_value): Add arg
6702 exclude_start_hard_regs. Setup the corresponding member of
6703 lra reg info.
6704 (lra_create_new_reg): Add arg exclude_start_hard_regs and pass it
6705 to lra_create_new_reg_with_unique_value.
6706 (initialize_lra_reg_info_element): Initialize member
6707 exclude_start_hard_regs.
6708 (get_scratch_reg): Pass NULL to lra_create_new_reg.
6709 * ira.cc (setup_prohibited_class_mode_regs): Rename to
6710 setup_prohibited_and_exclude_class_mode_regs and calculate
6711 ira_exclude_class_mode_regs.
6712
6713 2022-01-21 Martin Liska <mliska@suse.cz>
6714
6715 * configure.ac: Detect ld_is_mold and use it for
6716 comdat_group=yes and gcc_cv_ld_hidden=yes.
6717 * configure: Regenerate.
6718
6719 2022-01-21 Richard Biener <rguenther@suse.de>
6720
6721 PR tree-optimization/100089
6722 * tree-vect-slp.cc (vect_slp_region): Reject BB vectorization
6723 of if-converted loops with unvectorized COND_EXPRs for
6724 all but the unlimited cost models.
6725
6726 2022-01-21 Ard Biesheuvel <ardb@kernel.org>
6727
6728 * config/arm/arm-opts.h (enum stack_protector_guard): New.
6729 * config/arm/arm-protos.h (arm_stack_protect_tls_canary_mem):
6730 New.
6731 * config/arm/arm.cc (TARGET_STACK_PROTECT_GUARD): Define.
6732 (arm_option_override_internal): Handle and put in error checks.
6733 for stack protector guard options.
6734 (arm_option_reconfigure_globals): Likewise.
6735 (arm_stack_protect_tls_canary_mem): New.
6736 (arm_stack_protect_guard): New.
6737 * config/arm/arm.md (stack_protect_set): New.
6738 (stack_protect_set_tls): Likewise.
6739 (stack_protect_test): Likewise.
6740 (stack_protect_test_tls): Likewise.
6741 (reload_tp_hard): Likewise.
6742 * config/arm/arm.opt (-mstack-protector-guard): New
6743 (-mstack-protector-guard-offset): New.
6744 * doc/invoke.texi: Document new options.
6745
6746 2022-01-21 Richard Biener <rguenther@suse.de>
6747
6748 PR tree-optimization/104156
6749 * tree-ssa-loop-unswitch.cc (tree_unswitch_outer_loop):
6750 Collect and reset debug stmts with out-of-loop uses when
6751 hoisting guards.
6752 (find_loop_guard): Adjust.
6753 (empty_bb_without_guard_p): Likewise. Ignore debug stmts.
6754 (used_outside_loop_p): Push debug uses to a vector of
6755 debug stmts to reset.
6756 (hoist_guard): Adjust -fopt-info category.
6757
6758 2022-01-21 Richard Biener <rguenther@suse.de>
6759
6760 PR tree-optimization/104152
6761 * tree-vect-slp.cc (vect_build_slp_tree_2): Add missing
6762 can_duplicate_and_interleave_p check.
6763
6764 2022-01-21 Jakub Jelinek <jakub@redhat.com>
6765
6766 * gimple-ssa-warn-access.cc (pass_waccess::warn_invalid_pointer):
6767 Avoid passing var to warning_at when the format string doesn't
6768 refer to it.
6769
6770 2022-01-21 Aldy Hernandez <aldyh@redhat.com>
6771
6772 PR tree-optimization/103721
6773 * gimple-range-path.cc
6774 (path_range_query::relations_may_be_invalidated): New.
6775 (path_range_query::compute_ranges_in_block): Reset relations if
6776 they may be invalidated.
6777 (path_range_query::maybe_register_phi_relation): Exit if relations
6778 may be invalidated on incoming edge.
6779 (path_range_query::compute_phi_relations): Pass incoming PHI edge
6780 to maybe_register_phi_relation.
6781 * gimple-range-path.h (relations_may_be_invalidated): New.
6782 (maybe_register_phi_relation): Pass edge instead of tree.
6783 * tree-ssa-threadbackward.cc (back_threader::back_threader):
6784 Mark DFS edges.
6785 * value-relation.cc (path_oracle::path_oracle): Call
6786 mark_dfs_back_edges.
6787 (path_oracle::register_relation): Add SSA names to m_registered
6788 bitmap.
6789 (path_oracle::reset_path): Clear m_registered bitmap.
6790 * value-relation.h (path_oracle::set_root_oracle): New.
6791
6792 2022-01-21 Jakub Jelinek <jakub@redhat.com>
6793
6794 PR rtl-optimization/102478
6795 * optabs.cc (prepare_cmp_insn): If !can_create_pseudo_p (), don't
6796 force_reg constants and for -fnon-call-exceptions fail if copy_to_reg
6797 would be needed.
6798
6799 2022-01-20 Richard Biener <rguenther@suse.de>
6800
6801 PR middle-end/100786
6802 * gimple-fold.cc (get_symbol_constant_value): Only return
6803 values of compatible type to the symbol.
6804
6805 2022-01-20 Andrew MacLeod <amacleod@redhat.com>
6806
6807 * value-relation.cc (relation_oracle::valid_equivs): Query and add
6808 if valid members of a set.
6809 (equiv_oracle::register_equiv): Call valid_equivs rather than
6810 bitmap direct operations.
6811 (path_oracle::register_equiv): Ditto.
6812 * value-relation.h (relation_oracle::valid_equivs): New prototype.
6813
6814 2022-01-20 Richard Biener <rguenther@suse.de>
6815
6816 PR target/100784
6817 * config/i386/i386.cc (ix86_gimple_fold_builtin): Check for
6818 LHS before folding __builtin_ia32_shufpd and friends.
6819
6820 2022-01-20 Richard Earnshaw <rearnsha@arm.com>
6821
6822 * config/arm/crypto.md (aes_op_protect): Allow moves from core
6823 registers and from memory.
6824 (aes_op_protect_misalign_load): New pattern.
6825 (aes_op_protect_neon_vld1v16qi): New pattern.
6826
6827 2022-01-20 Richard Earnshaw <rearnsha@arm.com>
6828
6829 * config/arm/crypto.md (crypto_<CRYPTO_AESMC:crypto_pattern>_protected):
6830 New pattern.
6831 (aarch32_crypto_aese_fused_protected): Likewise.
6832 (aarch32_crypto_aesd_fused_protected): Likewise.
6833
6834 2022-01-20 Richard Earnshaw <rearnsha@arm.com>
6835
6836 * config/arm/crypto.md (crypto_<CRYPTO_AES:crypto_pattern>): Convert
6837 to define_expand. Add mitigation for the Cortex-A AES erratum
6838 when enabled.
6839 (*crypto_<CRYPTO_AES:crypto_pattern>_insn): New pattern, based
6840 on original crypto_<CRYPTO_AES:crypto_pattern> insn.
6841 (aes_op_protect): New pattern.
6842 * config/arm/unspecs.md (unspec): Add UNSPEC_AES_PROTECT.
6843
6844 2022-01-20 Richard Earnshaw <rearnsha@arm.com>
6845
6846 * config/arm/arm-cpus.in (quirk_aes_1742098): New quirk feature
6847 (ALL_QUIRKS): Add it.
6848 (cortex-a57, cortex-a72): Enable it.
6849 (cortex-a57.cortex-a53, cortex-a72.cortex-a53): Likewise.
6850 * config/arm/arm.opt (mfix-cortex-a57-aes-1742098): New command-line
6851 option.
6852 (mfix-cortex-a72-aes-1655431): New option alias.
6853 * config/arm/arm.cc (arm_option_override): Handle default settings
6854 for AES erratum switch.
6855 * doc/invoke.texi (Arm Options): Document new options.
6856
6857 2022-01-20 Richard Earnshaw <rearnsha@arm.com>
6858
6859 * config/arm/crypto.md (crypto_<CYRPTO_AES:crypto_pattern>): Use
6860 <crypto_mode> rather than hard-coding the mode.
6861 (crypto_<CRYPTO_AESMC:crypto_pattern>): Fix white space.
6862 (crypto_<CRYPTO_AES:crypto_pattern>): Likewise.
6863 (*aarch32_crypto_aese_fused): Likewise.
6864 (*aarch32_crypto_aesd_fused): Likewise.
6865 (crypto_<CRYPTO_BINARY:crypto_pattern>): Likewise.
6866 (crypto_<CRYPTO_TERNARY:crypto_pattern>): Likewise.
6867 (crypto_sha1h_lb): Likewise.
6868 (crypto_vmullp64): Likewise.
6869 (crypto_<CRYPTO_SELECTING:crypto_pattern>): Likewise.
6870 (crypto_<CRYPTO_SELECTING:crypto_pattern>_lb): Likewise.
6871
6872 2022-01-20 Richard Earnshaw <rearnsha@arm.com>
6873
6874 * config/arm/crypto.md (crypto_<CRYPTO_AESMC:crypto_pattern>): Add
6875 iterator to pattern name to disambiguate.
6876 (crypto_<CRYPTO_AES:crypto_pattern>): Likewise.
6877 (crypto_<CRYPTO_BINARY:crypto_pattern>): Likewise.
6878 (crypto_<CRYPTO_TERNARY:crypto_pattern>): Likewise.
6879 (crypto_<CRYPTO_SELECTING:crypto_pattern>): Likewise.
6880 (crypto_<CRYPTO_SELECTING:crypto_pattern>_lb): Likewise.
6881
6882 2022-01-20 Martin Liska <mliska@suse.cz>
6883
6884 PR bootstrap/104135
6885 * emit-rtl.cc (make_insn_raw): Fix -Wformat-diag warnings.
6886 * rtl.cc: Partially disable -Wformat-diag for RTL checking
6887 error messages.
6888
6889 2022-01-20 Jakub Jelinek <jakub@redhat.com>
6890
6891 PR debug/103874
6892 * dwarf2out.cc (index_rnglists): For !HAVE_AS_LEB128 and
6893 block_num > 0, index entry even if !have_multiple_function_sections.
6894
6895 2022-01-20 liuhongt <hongtao.liu@intel.com>
6896
6897 PR target/103771
6898 * tree-vect-stmts.cc (supportable_narrowing_operation): Enhance
6899 integral mode mask pack by multi steps which takes
6900 vec_pack_sbool_trunc_optab as start when elements number is
6901 less than BITS_PER_UNITS.
6902
6903 2022-01-20 Richard Biener <rguenther@suse.de>
6904
6905 PR tree-optimization/104114
6906 * tree-vect-generic.cc (expand_vector_piecewise): Do not diagnose
6907 single element vector decomposition.
6908
6909 2022-01-19 Robin Dapp <rdapp@linux.ibm.com>
6910
6911 * ifcvt.cc (noce_convert_multiple_sets_1): New function.
6912 (noce_convert_multiple_sets): Call function a second time if we can
6913 improve the first try.
6914
6915 2022-01-19 Robin Dapp <rdapp@linux.ibm.com>
6916
6917 * ifcvt.cc (cond_exec_get_condition): New parameter to allow getting the
6918 reversed comparison.
6919 (try_emit_cmove_seq): New function to facilitate creating a cmov
6920 sequence.
6921 (noce_convert_multiple_sets): Create two sequences and use the less
6922 expensive one.
6923
6924 2022-01-19 Robin Dapp <rdapp@linux.ibm.com>
6925
6926 * rtl.h (struct rtx_comparison): New struct that holds an rtx
6927 comparison.
6928 * config/rs6000/rs6000.cc (rs6000_emit_minmax): Use struct instead of
6929 single parameters.
6930 (rs6000_emit_swsqrt): Likewise.
6931 * expmed.cc (expand_sdiv_pow2): Likewise.
6932 (emit_store_flag): Likewise.
6933 * expr.cc (expand_cond_expr_using_cmove): Likewise.
6934 (expand_expr_real_2): Likewise.
6935 * ifcvt.cc (noce_emit_cmove): Add compare and reversed compare
6936 parameters.
6937 * optabs.cc (emit_conditional_move_1): New function.
6938 (expand_doubleword_shift_condmove): Use struct.
6939 (emit_conditional_move): Use struct and allow to call directly
6940 without going through preparation steps.
6941 * optabs.h (emit_conditional_move): Use struct.
6942
6943 2022-01-19 Robin Dapp <rdapp@linux.ibm.com>
6944
6945 * ifcvt.cc (bb_ok_for_noce_convert_multiple_sets): Estimate insns costs.
6946 (noce_process_if_block): Use potential costs.
6947
6948 2022-01-19 Robin Dapp <rdapp@linux.ibm.com>
6949
6950 * ifcvt.cc (noce_convert_multiple_sets): Allow constants.
6951 (bb_ok_for_noce_convert_multiple_sets): Likewise.
6952
6953 2022-01-19 Robin Dapp <rdapp@linux.ibm.com>
6954
6955 * ifcvt.cc (need_cmov_or_rewire): New function.
6956 (noce_convert_multiple_sets): Call it.
6957
6958 2022-01-19 David Malcolm <dmalcolm@redhat.com>
6959
6960 * attribs.cc (attribute_c_tests): Rename to...
6961 (attribs_cc_tests): ...this.
6962 * bitmap.cc (bitmap_c_tests): Rename to...
6963 (bitmap_cc_tests): ...this.
6964 * cgraph.cc (cgraph_c_finalize): Rename to...
6965 (cgraph_cc_finalize): ...this.
6966 (cgraph_c_tests): Rename to...
6967 (cgraph_cc_tests): ...this.
6968 * cgraph.h (cgraph_c_finalize): Rename to...
6969 (cgraph_cc_finalize): ...this.
6970 (cgraphunit_c_finalize): Rename to...
6971 (cgraphunit_cc_finalize): ...this.
6972 * cgraphunit.cc (cgraphunit_c_finalize): Rename to...
6973 (cgraphunit_cc_finalize): ...this.
6974 * convert.cc (convert_c_tests): Rename to...
6975 (convert_cc_tests): ...this.
6976 * dbgcnt.cc (dbgcnt_c_tests): Rename to...
6977 (dbgcnt_cc_tests): ...this.
6978 * diagnostic-show-locus.cc (diagnostic_show_locus_c_tests): Rename to...
6979 (diagnostic_show_locus_cc_tests): ...this.
6980 * diagnostic.cc (diagnostic_c_tests): Rename to...
6981 (diagnostic_cc_tests): ...this.
6982 * dumpfile.cc (dumpfile_c_tests): Rename to...
6983 (dumpfile_cc_tests): ...this.
6984 * dwarf2out.cc (dwarf2out_c_finalize): Rename to...
6985 (dwarf2out_cc_finalize): ...this.
6986 * dwarf2out.h (dwarf2out_c_finalize): Rename to...
6987 (dwarf2out_cc_finalize): ...this.
6988 * edit-context.cc (edit_context_c_tests): Rename to...
6989 (edit_context_cc_tests): ...this.
6990 * et-forest.cc (et_forest_c_tests): Rename to...
6991 (et_forest_cc_tests): ...this.
6992 * fibonacci_heap.cc (fibonacci_heap_c_tests): Rename to...
6993 (fibonacci_heap_cc_tests): ...this.
6994 * fold-const.cc (fold_const_c_tests): Rename to...
6995 (fold_const_cc_tests): ...this.
6996 * function-tests.cc (function_tests_c_tests): Rename to...
6997 (function_tests_cc_tests): ...this.
6998 * gcse.cc (gcse_c_finalize): Rename to...
6999 (gcse_cc_finalize): ...this.
7000 * gcse.h (gcse_c_finalize): Rename to...
7001 (gcse_cc_finalize): ...this.
7002 * ggc-tests.cc (ggc_tests_c_tests): Rename to...
7003 (ggc_tests_cc_tests): ...this.
7004 * gimple-ssa-store-merging.cc (store_merging_c_tests): Rename to...
7005 (store_merging_cc_tests): ...this.
7006 * gimple.cc (gimple_c_tests): Rename to...
7007 (gimple_cc_tests): ...this.
7008 * hash-map-tests.cc (hash_map_tests_c_tests): Rename to...
7009 (hash_map_tests_cc_tests): ...this.
7010 * hash-set-tests.cc (hash_set_tests_c_tests): Rename to...
7011 (hash_set_tests_cc_tests): ...this.
7012 * input.cc (input_c_tests): Rename to...
7013 (input_cc_tests): ...this.
7014 * ipa-cp.cc (ipa_cp_c_finalize): Rename to...
7015 (ipa_cp_cc_finalize): ...this.
7016 * ipa-fnsummary.cc (ipa_fnsummary_c_finalize): Rename to...
7017 (ipa_fnsummary_cc_finalize): ...this.
7018 * ipa-fnsummary.h (ipa_fnsummary_c_finalize): Rename to...
7019 (ipa_fnsummary_cc_finalize): ...this.
7020 * ipa-modref-tree.cc (ipa_modref_tree_c_tests): Rename to...
7021 (ipa_modref_tree_cc_tests): ...this.
7022 * ipa-modref-tree.h (modref_c_tests): Delete bogus decl.
7023 * ipa-modref.cc (ipa_modref_c_finalize): Rename to...
7024 (ipa_modref_cc_finalize): ...this.
7025 * ipa-modref.h (ipa_modref_c_finalize): Rename to...
7026 (ipa_modref_cc_finalize): ...this.
7027 * ipa-prop.h (ipa_cp_c_finalize): Rename to...
7028 (ipa_cp_cc_finalize): ...this.
7029 * ipa-reference.cc (ipa_reference_c_finalize): Rename to...
7030 (ipa_reference_cc_finalize): ...this.
7031 * ipa-reference.h (ipa_reference_c_finalize): Rename to...
7032 (ipa_reference_cc_finalize): ...this.
7033 * ira-costs.cc (ira_costs_c_finalize): Rename to...
7034 (ira_costs_cc_finalize): ...this.
7035 * ira.h (ira_costs_c_finalize): Rename to...
7036 (ira_costs_cc_finalize): ...this.
7037 * opt-suggestions.cc (opt_proposer_c_tests): Rename to...
7038 (opt_suggestions_cc_tests): ...this.
7039 * opts.cc (opts_c_tests): Rename to...
7040 (opts_cc_tests): ...this.
7041 * predict.cc (predict_c_tests): Rename to...
7042 (predict_cc_tests): ...this.
7043 * pretty-print.cc (pretty_print_c_tests): Rename to...
7044 (pretty_print_cc_tests): ...this.
7045 * read-rtl-function.cc (read_rtl_function_c_tests): Rename to...
7046 (read_rtl_function_cc_tests): ...this.
7047 * rtl-tests.cc (rtl_tests_c_tests): Rename to...
7048 (rtl_tests_cc_tests): ...this.
7049 * sbitmap.cc (sbitmap_c_tests): Rename to...
7050 (sbitmap_cc_tests): ...this.
7051 * selftest-run-tests.cc (selftest::run_tests): Update calls for
7052 _c_ to _cc_ function renamings; fix names of attribs and
7053 opt-suggestions tests.
7054 * selftest.cc (selftest_c_tests): Rename to...
7055 (selftest_cc_tests): ...this.
7056 * selftest.h (attribute_c_tests): Rename to...
7057 (attribs_cc_tests): ...this.
7058 (bitmap_c_tests): Rename to...
7059 (bitmap_cc_tests): ...this.
7060 (cgraph_c_tests): Rename to...
7061 (cgraph_cc_tests): ...this.
7062 (convert_c_tests): Rename to...
7063 (convert_cc_tests): ...this.
7064 (diagnostic_c_tests): Rename to...
7065 (diagnostic_cc_tests): ...this.
7066 (diagnostic_show_locus_c_tests): Rename to...
7067 (diagnostic_show_locus_cc_tests): ...this.
7068 (dumpfile_c_tests): Rename to...
7069 (dumpfile_cc_tests): ...this.
7070 (edit_context_c_tests): Rename to...
7071 (edit_context_cc_tests): ...this.
7072 (et_forest_c_tests): Rename to...
7073 (et_forest_cc_tests): ...this.
7074 (fibonacci_heap_c_tests): Rename to...
7075 (fibonacci_heap_cc_tests): ...this.
7076 (fold_const_c_tests): Rename to...
7077 (fold_const_cc_tests): ...this.
7078 (function_tests_c_tests): Rename to...
7079 (function_tests_cc_tests): ...this.
7080 (ggc_tests_c_tests): Rename to...
7081 (ggc_tests_cc_tests): ...this.
7082 (gimple_c_tests): Rename to...
7083 (gimple_cc_tests): ...this.
7084 (hash_map_tests_c_tests): Rename to...
7085 (hash_map_tests_cc_tests): ...this.
7086 (hash_set_tests_c_tests): Rename to...
7087 (hash_set_tests_cc_tests): ...this.
7088 (input_c_tests): Rename to...
7089 (input_cc_tests): ...this.
7090 (opts_c_tests): Rename to...
7091 (opts_cc_tests): ...this.
7092 (predict_c_tests): Rename to...
7093 (predict_cc_tests): ...this.
7094 (pretty_print_c_tests): Rename to...
7095 (pretty_print_cc_tests): ...this.
7096 (read_rtl_function_c_tests): Rename to...
7097 (read_rtl_function_cc_tests): ...this.
7098 (rtl_tests_c_tests): Rename to...
7099 (rtl_tests_cc_tests): ...this.
7100 (sbitmap_c_tests): Rename to...
7101 (sbitmap_cc_tests): ...this.
7102 (selftest_c_tests): Rename to...
7103 (selftest_cc_tests): ...this.
7104 (simplify_rtx_c_tests): Rename to...
7105 (simplify_rtx_cc_tests): ...this.
7106 (spellcheck_c_tests): Rename to...
7107 (spellcheck_cc_tests): ...this.
7108 (spellcheck_tree_c_tests): Rename to...
7109 (spellcheck_tree_cc_tests): ...this.
7110 (sreal_c_tests): Rename to...
7111 (sreal_cc_tests): ...this.
7112 (store_merging_c_tests): Rename to...
7113 (store_merging_cc_tests): ...this.
7114 (tree_c_tests): Rename to...
7115 (tree_cc_tests): ...this.
7116 (tree_cfg_c_tests): Rename to...
7117 (tree_cfg_cc_tests): ...this.
7118 (typed_splay_tree_c_tests): Rename to...
7119 (typed_splay_tree_cc_tests): ...this.
7120 (vec_c_tests): Rename to...
7121 (vec_cc_tests): ...this.
7122 (vec_perm_indices_c_tests): Rename to...
7123 (vec_perm_indices_cc_tests): ..this.
7124 (opt_proposer_c_tests): Rename to...
7125 (opt_suggestions_cc_tests): ...this.
7126 (dbgcnt_c_tests): Rename to...
7127 (dbgcnt_cc_tests): ...this.
7128 (ipa_modref_tree_c_tests): Rename to...
7129 (ipa_modref_tree_cc_tests): ...this.
7130 * simplify-rtx.cc (simplify_rtx_c_tests): Rename to...
7131 (simplify_rtx_cc_tests): ...this.
7132 * spellcheck-tree.cc (spellcheck_tree_c_tests): Rename to...
7133 (spellcheck_tree_cc_tests): ...this.
7134 * spellcheck.cc (spellcheck_c_tests): Rename to...
7135 (spellcheck_cc_tests): ...this.
7136 * sreal.cc (sreal_c_tests): Rename to...
7137 (sreal_cc_tests): ...this.
7138 * toplev.cc (toplev::finalize): Update calls for _c_ to _cc_
7139 function renamings.
7140 * tree-cfg.cc (tree_cfg_c_tests): Rename to...
7141 (tree_cfg_cc_tests): ...this.
7142 * tree.cc (tree_c_tests): Rename to...
7143 (tree_cc_tests): ...this.
7144 * typed-splay-tree.cc (typed_splay_tree_c_tests): Rename to...
7145 (typed_splay_tree_cc_tests): ...this.
7146 * vec-perm-indices.cc (vec_perm_indices_c_tests): Rename to...
7147 (vec_perm_indices_cc_tests): ...this.
7148 * vec.cc (vec_c_tests): Rename to...
7149 (vec_cc_tests): ...this.
7150
7151 2022-01-19 Andre Vieira <andre.simoesdiasvieira@arm.com>
7152
7153 PR tree-optimization/103997
7154 * tree-vect-loop.cc (vect_analyze_loop): Fix mode skipping for epilogue
7155 vectorization.
7156
7157 2022-01-19 Jakub Jelinek <jakub@redhat.com>
7158
7159 PR middle-end/102860
7160 * match.pd (x %[fl] y -> x % y): New simplification for
7161 unsigned integral types.
7162 * optabs-tree.cc (optab_for_tree_code): Return unknown_optab
7163 for {CEIL,FLOOR,ROUND}_{DIV,MOD}_EXPR with VECTOR_TYPE.
7164
7165 2022-01-19 Richard Biener <rguenther@suse.de>
7166
7167 PR tree-optimization/104112
7168 * tree-vect-loop.cc (vect_find_reusable_accumulator): Check
7169 for required intermediate vector types.
7170
7171 2022-01-19 Jakub Jelinek <jakub@redhat.com>
7172
7173 * config/rs6000/rs6000.cc (rs6000_machine_from_flags): Add default:.
7174
7175 2022-01-19 Martin Liska <mliska@suse.cz>
7176
7177 * configure.ac: Remove -Wno-error=format-diag.
7178 * configure: Regenerate.
7179
7180 2022-01-19 Martin Liska <mliska@suse.cz>
7181
7182 * config/riscv/riscv.cc (riscv_handle_type_attribute):
7183 Update one -Wformat-diag string in warning message.
7184
7185 2022-01-19 Jakub Jelinek <jakub@redhat.com>
7186
7187 PR middle-end/104103
7188 * gimple-ssa-warn-access.cc (pass_waccess::check_call): Don't check
7189 .ASAN_MARK calls.
7190
7191 2022-01-19 Jakub Jelinek <jakub@redhat.com>
7192
7193 PR c++/89074
7194 * fold-const.cc (address_compare): Consider different STRING_CSTs
7195 with the same lengths that memcmp the same as equal, not different.
7196
7197 2022-01-19 Jakub Jelinek <jakub@redhat.com>
7198
7199 * config/i386/sse.md (*aes<aeswideklvariant>u*): Use %0 instead of
7200 {%0}.
7201
7202 2022-01-19 Martin Liska <mliska@suse.cz>
7203 Thomas Schwinge <thomas@codesourcery.com>
7204
7205 * config/nvptx/nvptx.cc (nvptx_goacc_validate_dims_1): Update
7206 warning messages.
7207
7208 2022-01-19 Sebastian Huber <sebastian.huber@embedded-brains.de>
7209
7210 PR target/104090
7211 * config/rs6000/rs6000.cc (rs6000_machine_from_flags): Use also
7212 rs6000_cpu.
7213
7214 2022-01-19 Jakub Jelinek <jakub@redhat.com>
7215
7216 PR target/104104
7217 * config/i386/sse.md
7218 (<avx512>_<complexopname>_<mode><maskc_name><round_name>,
7219 avx512fp16_<complexopname>sh_v8hf<mask_scalarc_name><round_scalarcz_name>,
7220 avx512dq_mul<mode>3<mask_name>, <avx2_avx512>_permvar<mode><mask_name>,
7221 avx2_perm<mode>_1<mask_name>, avx512f_perm<mode>_1<mask_name>,
7222 avx512dq_rangep<mode><mask_name><round_saeonly_name>,
7223 avx512dq_ranges<mode><mask_scalar_name><round_saeonly_scalar_name>,
7224 <avx512>_getmant<mode><mask_name><round_saeonly_name>,
7225 avx512f_vgetmant<mode><mask_scalar_name><round_saeonly_scalar_name>):
7226 Use vxorps\t%x0, %x0, %x0 instead of vxorps\t{%x0, %x0, %x0}.
7227
7228 2022-01-19 Martin Sebor <msebor@redhat.com>
7229
7230 PR middle-end/104069
7231 * gimple-ssa-warn-access.cc (pointers_related_p): Return false for
7232 an unknown result as documented.
7233
7234 2022-01-18 Andrew Pinski <apinski@marvell.com>
7235
7236 * ipa-split.cc (visit_bb): Fix comment before the
7237 warning/error attribute checking code.
7238
7239 2022-01-18 David Faust <david.faust@oracle.com>
7240
7241 * config/bpf/coreout.cc (bpf_core_reloc_add): Do not account
7242 for base strtab offset yet as it may change.
7243 (output_asm_btfext_core_reloc): Do so here instead.
7244 (output_btfext_core_sections): Likewise.
7245
7246 2022-01-18 David Faust <david.faust@oracle.com>
7247
7248 * config/bpf/coreout.cc (output_btfext_header): Account for
7249 4-byte record size in core_relo_len.
7250 (output_btfext_core_sections): Only write record size once.
7251 * config/bpf/coreout.h (btf_ext_section_header): Delete unused
7252 member.
7253
7254 2022-01-18 Maciej W. Rozycki <macro@embecosm.com>
7255
7256 * common/config/riscv/riscv-common.cc
7257 (riscv_subset_list::parse_multiletter_ext): Move pointer
7258 arithmetic ahead of `free'.
7259
7260 2022-01-18 Jason Merrill <jason@redhat.com>
7261
7262 PR c++/104007
7263 * gimplify.cc (gimple_push_cleanup): Handle eh_only in conditional
7264 context.
7265
7266 2022-01-18 Sandra Loosemore <sandra@codesourcery.com>
7267
7268 PR middle-end/103163
7269 * emit-rtl.cc (init_emit_regs): Initialize stack_limit_rtx here...
7270 (init_emit_once): ...not here.
7271
7272 2022-01-18 Martin Liska <mliska@suse.cz>
7273
7274 * collect2.cc (scan_libraries): Fix -Wformat-diag issues.
7275 * config/aarch64/aarch64-builtins.cc (aarch64_simd_expand_builtin): Likewise.
7276 * config/arc/arc.md: Likewise.
7277 * config/avr/avr.cc (avr_section_type_flags): Likewise.
7278 * config/bfin/bfin.cc (bfin_option_override): Likewise.
7279 (bfin_handle_longcall_attribute): Likewise.
7280 * config/cris/cris.h (FUNCTION_PROFILER): Likewise.
7281 * config/frv/frv.cc (frv_expand_builtin): Likewise.
7282 * config/ia64/ia64-c.cc (ia64_hpux_handle_builtin_pragma): Likewise.
7283 * config/iq2000/iq2000.cc (save_restore_insns): Likewise.
7284 (iq2000_print_operand_address): Likewise.
7285 (iq2000_print_operand): Likewise.
7286 * config/m32c/m32c-pragma.cc (m32c_pragma_memregs): Likewise.
7287 (m32c_pragma_address): Likewise.
7288 * config/m68k/m68k.cc (m68k_handle_fndecl_attribute): Likewise.
7289 * config/mips/mips.cc (mips_handle_interrupt_attr): Likewise.
7290 (mips_set_compression_mode): Likewise.
7291 * config/mmix/mmix.cc (mmix_function_profiler): Likewise.
7292 (mmix_print_operand): Likewise.
7293 (mmix_output_shiftvalue_op_from_str): Likewise.
7294 (mmix_output_shifted_value): Likewise.
7295 * config/msp430/driver-msp430.cc (msp430_select_hwmult_lib): Likewise.
7296 * config/msp430/msp430.cc (msp430_option_override): Likewise.
7297 (msp430_attr): Likewise.
7298 (msp430_expand_delay_cycles): Likewise.
7299 (msp430_expand_builtin): Likewise.
7300 * config/rs6000/aix73.h: Likewise.
7301 * config/rs6000/rtems.h (INVALID_64BIT): Likewise.
7302 * config/rx/rx.cc (rx_expand_builtin_mvtc): Likewise.
7303 (valid_psw_flag): Likewise.
7304 * config/sh/sh.cc (parse_validate_atomic_model_option): Likewise.
7305 * config/stormy16/stormy16.cc (xstormy16_function_profiler): Likewise.
7306 (xstormy16_expand_builtin_va_start): Likewise.
7307 (xstormy16_handle_below100_attribute): Likewise.
7308
7309 2022-01-18 Martin Liska <mliska@suse.cz>
7310
7311 * config/vms/vms-c.cc (vms_pragma_nostandard): Fix -Wformat-diag
7312 warning.
7313 (vms_pragma_standard): Likewise.
7314 (vms_pragma_extern_prefix): Likewise.
7315
7316 2022-01-18 Martin Liska <mliska@suse.cz>
7317
7318 * config/xtensa/xtensa.cc (print_operand): Fix warnings.
7319 (print_operand_address): Likewise.
7320 (xtensa_multibss_section_type_flags): Likewise.
7321
7322 2022-01-18 Martin Liska <mliska@suse.cz>
7323
7324 * config/rs6000/rs6000-call.cc (rs6000_invalid_builtin): Change
7325 wording of an error message.
7326
7327 2022-01-18 Martin Liska <mliska@suse.cz>
7328
7329 * config/v850/v850-c.cc (pop_data_area): Fix -Wformat-diag
7330 warning.
7331 (ghs_pragma_section): Likewise.
7332 (ghs_pragma_interrupt): Likewise.
7333 (ghs_pragma_starttda): Likewise.
7334 (ghs_pragma_startsda): Likewise.
7335 (ghs_pragma_startzda): Likewise.
7336 (ghs_pragma_endtda): Likewise.
7337 (ghs_pragma_endsda): Likewise.
7338 (ghs_pragma_endzda): Likewise.
7339
7340 2022-01-18 Martin Liska <mliska@suse.cz>
7341
7342 * config/nds32/nds32-intrinsic.cc (nds32_expand_builtin_impl):
7343 Fix warnings.
7344 * config/nds32/nds32-intrinsic.md: Likewise.
7345 * config/nds32/nds32-isr.cc (nds32_check_isr_attrs_conflict): Likewise.
7346 * config/nds32/nds32.cc (nds32_print_operand): Likewise.
7347 (nds32_insert_attributes): Likewise.
7348
7349 2022-01-18 Martin Liska <mliska@suse.cz>
7350
7351 * config/nvptx/nvptx.cc (nvptx_goacc_validate_dims_1): Wrap
7352 keyword.
7353 * config/nvptx/nvptx.md: Remove trailing dot.
7354
7355 2022-01-18 Martin Liska <mliska@suse.cz>
7356
7357 * common/config/riscv/riscv-common.cc (riscv_subset_list::add):
7358 Wrap keywords with quotes and remove trailing dots.
7359 (riscv_subset_list::parsing_subset_version): Likewise.
7360 (riscv_subset_list::parse_std_ext): Likewise.
7361 (riscv_subset_list::parse_multiletter_ext): Likewise.
7362 * config/riscv/riscv.cc (riscv_handle_type_attribute): Likewise.
7363
7364 2022-01-18 Andre Vieira <andre.simoesdiasvieira@arm.com>
7365
7366 * tree-vect-loop.cc (vect_estimate_min_profitable_iters): Pass new
7367 argument suggested_unroll_factor.
7368 (vect_analyze_loop_costing): Likewise.
7369 (_loop_vec_info::_loop_vec_info): Initialize new member
7370 suggested_unroll_factor.
7371 (vect_determine_partial_vectors_and_peeling): Make epilogue of unrolled
7372 main loop use partial vectors.
7373 (vect_analyze_loop_2): Pass and use new argument
7374 suggested_unroll_factor.
7375 (vect_analyze_loop_1): Change to intialize local
7376 suggested_unroll_factor and use it.
7377 (vectorizable_reduction): Don't use single_defuse_cycle when unrolling.
7378 * tree-vectorizer.h (_loop_vec_info::_loop_vec_info): Add new member
7379 suggested_unroll_factor.
7380 (vector_costs::vector_costs): Add new member m_suggested_unroll_factor.
7381 (vector_costs::suggested_unroll_factor): New getter function.
7382 (finish_cost): Set return argument suggested_unroll_factor.
7383
7384 2022-01-18 Andrew MacLeod <amacleod@redhat.com>
7385
7386 PR tree-optimization/104038
7387 * doc/invoke.texi (relation-block-limit): New.
7388 * params.opt (relation-block-limit): New.
7389 * value-relation.cc (dom_oracle::register_relation): Check for NULL
7390 record before invoking transitive registery.
7391 (dom_oracle::set_one_relation): Check limit before creating record.
7392 (dom_oracle::register_transitives): Stop when no record created.
7393 * value-relation.h (relation_chain_head::m_num_relations): New.
7394
7395 2022-01-18 Richard Biener <rguenther@suse.de>
7396
7397 PR ipa/103989
7398 * ipa-inline.cc (inline_small_functions): Do not enqueue call
7399 edges originating in functions compiled with -Og.
7400
7401 2022-01-18 Richard Biener <rguenther@suse.de>
7402
7403 PR ipa/103989
7404 * passes.def (pass_all_optimizations_g): Remove pass_modref
7405 and pass_local_pure_const.
7406
7407 2022-01-18 Martin Liska <mliska@suse.cz>
7408
7409 * config/s390/s390.cc: Fix -Wformat-diag warnings.
7410
7411 2022-01-18 Martin Liska <mliska@suse.cz>
7412
7413 * config/s390/s390-c.cc (s390_expand_overloaded_builtin): Wrap
7414 keyword in quotes.
7415 (s390_resolve_overloaded_builtin): Remove trailing dot.
7416 * config/s390/s390.cc (s390_const_operand_ok): Use - for range.
7417 (s390_expand_builtin): Remove trailing dot.
7418 (s390_emit_prologue): Likewise, use semicolon.
7419 (s390_option_override_internal): Update keyword.
7420 * varasm.cc (do_assemble_alias): Wrap keyword in quotes.
7421
7422 2022-01-18 Martin Liska <mliska@suse.cz>
7423
7424 * config/rs6000/rs6000-call.cc (rs6000_expand_builtin): Wrap
7425 keywords and use %qs instead of %<%s%>.
7426
7427 2022-01-18 Richard Biener <rguenther@suse.de>
7428
7429 PR tree-optimization/103987
7430 * tree-ssa-dse.cc (dse_optimize_call): Properly guard modref
7431 query with a pointer check.
7432
7433 2022-01-18 Richard Sandiford <richard.sandiford@arm.com>
7434
7435 PR target/104005
7436 * config/aarch64/aarch64.cc (aarch64_check_consecutive_mems):
7437 When using MEM_EXPR, require the base to be a decl.
7438
7439 2022-01-18 Richard Biener <rguenther@suse.de>
7440
7441 * cgraph.h (struct cgraph_simd_clone_arg): Re-arrange fields to
7442 avoid padding.
7443 * function.h (struct function): Likewise.
7444
7445 2022-01-18 Arnaud Charlet <charlet@adacore.com>
7446
7447 * doc/install.texi: Update prerequisites for GNAT
7448
7449 2022-01-18 Andrew Pinski <apinski@marvell.com>
7450
7451 PR tree-optimization/101941
7452 * ipa-split.cc (visit_bb): Disallow function calls where
7453 the function has either error or warning attribute.
7454
7455 2022-01-18 Richard Biener <rguenther@suse.de>
7456
7457 PR tree-optimization/104064
7458 * tree-vect-data-refs.cc (vect_analyze_data_ref_accesses): Check
7459 DR_INIT fits in a signed HWI, represent the difference from the
7460 first DR in unsigned.
7461
7462 2022-01-17 Martin Liska <mliska@suse.cz>
7463
7464 * Makefile.in: Rename .c names to .cc.
7465 * config.gcc: Likewise.
7466 * configure: Regenerate. Likewise.
7467 * configure.ac: Likewise.
7468 * gengtype.cc (set_gc_used): Likewise.
7469 (source_dot_c_frul): Likewise.
7470 (source_dot_cc_frul): Likewise.
7471 (struct file_rule_st): Likewise.
7472 (close_output_files): Likewise.
7473 * config/avr/t-avr: Use CXXFLAGS_* and CXX_FOR_BUILD.
7474
7475 2022-01-17 Martin Liska <mliska@suse.cz>
7476
7477 * Makefile.in: Rename .c names to .cc.
7478 * alias.h: Likewise.
7479 * asan.cc: Likewise.
7480 * auto-profile.h: Likewise.
7481 * basic-block.h (struct basic_block_d): Likewise.
7482 * btfout.cc: Likewise.
7483 * builtins.cc (expand_builtin_longjmp): Likewise.
7484 (validate_arg): Likewise.
7485 (access_ref::offset_bounded): Likewise.
7486 * caller-save.cc (reg_restore_code): Likewise.
7487 (setup_save_areas): Likewise.
7488 * calls.cc (initialize_argument_information): Likewise.
7489 (expand_call): Likewise.
7490 (emit_library_call_value_1): Likewise.
7491 * cfg-flags.def (RTL): Likewise.
7492 (SIBCALL): Likewise.
7493 (CAN_FALLTHRU): Likewise.
7494 * cfganal.cc (post_order_compute): Likewise.
7495 * cfgcleanup.cc (try_simplify_condjump): Likewise.
7496 (merge_blocks_move_predecessor_nojumps): Likewise.
7497 (merge_blocks_move_successor_nojumps): Likewise.
7498 (merge_blocks_move): Likewise.
7499 (old_insns_match_p): Likewise.
7500 (try_crossjump_bb): Likewise.
7501 * cfgexpand.cc (expand_gimple_stmt): Likewise.
7502 * cfghooks.cc (split_block_before_cond_jump): Likewise.
7503 (profile_record_check_consistency): Likewise.
7504 * cfghooks.h: Likewise.
7505 * cfgrtl.cc (pass_free_cfg::execute): Likewise.
7506 (rtl_can_merge_blocks): Likewise.
7507 (try_redirect_by_replacing_jump): Likewise.
7508 (make_pass_outof_cfg_layout_mode): Likewise.
7509 (cfg_layout_can_merge_blocks_p): Likewise.
7510 * cgraph.cc (release_function_body): Likewise.
7511 (cgraph_node::get_fun): Likewise.
7512 * cgraph.h (struct cgraph_node): Likewise.
7513 (asmname_hasher::equal): Likewise.
7514 (cgraph_inline_failed_type): Likewise.
7515 (thunk_adjust): Likewise.
7516 (dump_callgraph_transformation): Likewise.
7517 (record_references_in_initializer): Likewise.
7518 (ipa_discover_variable_flags): Likewise.
7519 * cgraphclones.cc (GTY): Likewise.
7520 * cgraphunit.cc (symbol_table::finalize_compilation_unit): Likewise.
7521 * collect-utils.h (GCC_COLLECT_UTILS_H): Likewise.
7522 * collect2-aix.h (GCC_COLLECT2_AIX_H): Likewise.
7523 * collect2.cc (maybe_run_lto_and_relink): Likewise.
7524 * combine-stack-adj.cc: Likewise.
7525 * combine.cc (setup_incoming_promotions): Likewise.
7526 (combine_simplify_rtx): Likewise.
7527 (count_rtxs): Likewise.
7528 * common.opt: Likewise.
7529 * common/config/aarch64/aarch64-common.cc: Likewise.
7530 * common/config/arm/arm-common.cc (arm_asm_auto_mfpu): Likewise.
7531 * common/config/avr/avr-common.cc: Likewise.
7532 * common/config/i386/i386-isas.h (struct _isa_names_table): Likewise.
7533 * conditions.h: Likewise.
7534 * config.gcc: Likewise.
7535 * config/aarch64/aarch64-builtins.cc (aarch64_resolve_overloaded_memtag): Likewise.
7536 * config/aarch64/aarch64-protos.h (aarch64_classify_address): Likewise.
7537 (aarch64_get_extension_string_for_isa_flags): Likewise.
7538 * config/aarch64/aarch64-sve-builtins.cc (function_builder::add_function): Likewise.
7539 * config/aarch64/aarch64.cc (aarch64_regmode_natural_size): Likewise.
7540 (aarch64_sched_first_cycle_multipass_dfa_lookahead): Likewise.
7541 (aarch64_option_valid_attribute_p): Likewise.
7542 (aarch64_short_vector_p): Likewise.
7543 (aarch64_float_const_representable_p): Likewise.
7544 * config/aarch64/aarch64.h (DBX_REGISTER_NUMBER): Likewise.
7545 (ASM_OUTPUT_POOL_EPILOGUE): Likewise.
7546 (GTY): Likewise.
7547 * config/aarch64/cortex-a57-fma-steering.cc: Likewise.
7548 * config/aarch64/driver-aarch64.cc (contains_core_p): Likewise.
7549 * config/aarch64/t-aarch64: Likewise.
7550 * config/aarch64/x-aarch64: Likewise.
7551 * config/aarch64/x-darwin: Likewise.
7552 * config/alpha/alpha-protos.h: Likewise.
7553 * config/alpha/alpha.cc (alpha_scalar_mode_supported_p): Likewise.
7554 * config/alpha/alpha.h (LONG_DOUBLE_TYPE_SIZE): Likewise.
7555 (enum reg_class): Likewise.
7556 * config/alpha/alpha.md: Likewise.
7557 * config/alpha/driver-alpha.cc (AMASK_LOCKPFTCHOK): Likewise.
7558 * config/alpha/x-alpha: Likewise.
7559 * config/arc/arc-protos.h (arc_eh_uses): Likewise.
7560 * config/arc/arc.cc (ARC_OPT): Likewise.
7561 (arc_ccfsm_advance): Likewise.
7562 (arc_arg_partial_bytes): Likewise.
7563 (conditionalize_nonjump): Likewise.
7564 * config/arc/arc.md: Likewise.
7565 * config/arc/builtins.def: Likewise.
7566 * config/arc/t-arc: Likewise.
7567 * config/arm/arm-c.cc (arm_resolve_overloaded_builtin): Likewise.
7568 (arm_pragma_target_parse): Likewise.
7569 * config/arm/arm-protos.h (save_restore_target_globals): Likewise.
7570 (arm_cpu_cpp_builtins): Likewise.
7571 * config/arm/arm.cc (vfp3_const_double_index): Likewise.
7572 (shift_op): Likewise.
7573 (thumb2_final_prescan_insn): Likewise.
7574 (arm_final_prescan_insn): Likewise.
7575 (arm_asm_output_labelref): Likewise.
7576 (arm_small_register_classes_for_mode_p): Likewise.
7577 * config/arm/arm.h: Likewise.
7578 * config/arm/arm.md: Likewise.
7579 * config/arm/driver-arm.cc: Likewise.
7580 * config/arm/symbian.h: Likewise.
7581 * config/arm/t-arm: Likewise.
7582 * config/arm/thumb1.md: Likewise.
7583 * config/arm/x-arm: Likewise.
7584 * config/avr/avr-c.cc (avr_register_target_pragmas): Likewise.
7585 * config/avr/avr-fixed.md: Likewise.
7586 * config/avr/avr-log.cc (avr_log_vadump): Likewise.
7587 * config/avr/avr-mcus.def: Likewise.
7588 * config/avr/avr-modes.def (FRACTIONAL_INT_MODE): Likewise.
7589 * config/avr/avr-passes.def (INSERT_PASS_BEFORE): Likewise.
7590 * config/avr/avr-protos.h (make_avr_pass_casesi): Likewise.
7591 * config/avr/avr.cc (avr_option_override): Likewise.
7592 (avr_build_builtin_va_list): Likewise.
7593 (avr_mode_dependent_address_p): Likewise.
7594 (avr_function_arg_advance): Likewise.
7595 (avr_asm_output_aligned_decl_common): Likewise.
7596 * config/avr/avr.h (RETURN_ADDR_RTX): Likewise.
7597 (SUPPORTS_INIT_PRIORITY): Likewise.
7598 * config/avr/avr.md: Likewise.
7599 * config/avr/builtins.def: Likewise.
7600 * config/avr/gen-avr-mmcu-specs.cc (IN_GEN_AVR_MMCU_TEXI): Likewise.
7601 * config/avr/gen-avr-mmcu-texi.cc (IN_GEN_AVR_MMCU_TEXI): Likewise.
7602 (main): Likewise.
7603 * config/avr/t-avr: Likewise.
7604 * config/bfin/bfin.cc (frame_related_constant_load): Likewise.
7605 * config/bpf/bpf-protos.h (GCC_BPF_PROTOS_H): Likewise.
7606 * config/bpf/bpf.h (enum reg_class): Likewise.
7607 * config/bpf/t-bpf: Likewise.
7608 * config/c6x/c6x-protos.h (GCC_C6X_PROTOS_H): Likewise.
7609 * config/cr16/cr16-protos.h: Likewise.
7610 * config/cris/cris.cc (cris_address_cost): Likewise.
7611 (cris_side_effect_mode_ok): Likewise.
7612 (cris_init_machine_status): Likewise.
7613 (cris_emit_movem_store): Likewise.
7614 * config/cris/cris.h (INDEX_REG_CLASS): Likewise.
7615 (enum reg_class): Likewise.
7616 (struct cum_args): Likewise.
7617 * config/cris/cris.opt: Likewise.
7618 * config/cris/sync.md: Likewise.
7619 * config/csky/csky.cc (csky_expand_prologue): Likewise.
7620 * config/darwin-c.cc: Likewise.
7621 * config/darwin-f.cc: Likewise.
7622 * config/darwin-sections.def (zobj_const_section): Likewise.
7623 * config/darwin.cc (output_objc_section_asm_op): Likewise.
7624 (fprintf): Likewise.
7625 * config/darwin.h (GTY): Likewise.
7626 * config/elfos.h: Likewise.
7627 * config/epiphany/epiphany-sched.md: Likewise.
7628 * config/epiphany/epiphany.cc (epiphany_function_value): Likewise.
7629 * config/epiphany/epiphany.h (GTY): Likewise.
7630 (NO_FUNCTION_CSE): Likewise.
7631 * config/epiphany/mode-switch-use.cc: Likewise.
7632 * config/epiphany/predicates.md: Likewise.
7633 * config/epiphany/t-epiphany: Likewise.
7634 * config/fr30/fr30-protos.h: Likewise.
7635 * config/frv/frv-protos.h: Likewise.
7636 * config/frv/frv.cc (TLS_BIAS): Likewise.
7637 * config/frv/frv.h (ASM_OUTPUT_ALIGNED_LOCAL): Likewise.
7638 * config/ft32/ft32-protos.h: Likewise.
7639 * config/gcn/gcn-hsa.h (ASM_APP_OFF): Likewise.
7640 * config/gcn/gcn.cc (gcn_init_libfuncs): Likewise.
7641 * config/gcn/mkoffload.cc (copy_early_debug_info): Likewise.
7642 * config/gcn/t-gcn-hsa: Likewise.
7643 * config/gcn/t-omp-device: Likewise.
7644 * config/h8300/h8300-protos.h (GCC_H8300_PROTOS_H): Likewise.
7645 (same_cmp_following_p): Likewise.
7646 * config/h8300/h8300.cc (F): Likewise.
7647 * config/h8300/h8300.h (struct cum_arg): Likewise.
7648 (BRANCH_COST): Likewise.
7649 * config/i386/cygming.h (DEFAULT_PCC_STRUCT_RETURN): Likewise.
7650 * config/i386/djgpp.h (TARGET_ASM_LTO_END): Likewise.
7651 * config/i386/dragonfly.h (NO_PROFILE_COUNTERS): Likewise.
7652 * config/i386/driver-i386.cc (detect_caches_intel): Likewise.
7653 * config/i386/freebsd.h (NO_PROFILE_COUNTERS): Likewise.
7654 * config/i386/i386-c.cc (ix86_target_macros): Likewise.
7655 * config/i386/i386-expand.cc (get_mode_wider_vector): Likewise.
7656 * config/i386/i386-options.cc (ix86_set_func_type): Likewise.
7657 * config/i386/i386-protos.h (ix86_extract_perm_from_pool_constant): Likewise.
7658 (ix86_register_pragmas): Likewise.
7659 (ix86_d_has_stdcall_convention): Likewise.
7660 (i386_pe_seh_init_sections): Likewise.
7661 * config/i386/i386.cc (ix86_function_arg_regno_p): Likewise.
7662 (ix86_function_value_regno_p): Likewise.
7663 (ix86_compute_frame_layout): Likewise.
7664 (legitimize_pe_coff_symbol): Likewise.
7665 (output_pic_addr_const): Likewise.
7666 * config/i386/i386.h (defined): Likewise.
7667 (host_detect_local_cpu): Likewise.
7668 (CONSTANT_ADDRESS_P): Likewise.
7669 (DEFAULT_LARGE_SECTION_THRESHOLD): Likewise.
7670 (struct machine_frame_state): Likewise.
7671 * config/i386/i386.md: Likewise.
7672 * config/i386/lynx.h (ASM_OUTPUT_ALIGN): Likewise.
7673 * config/i386/mmx.md: Likewise.
7674 * config/i386/sse.md: Likewise.
7675 * config/i386/t-cygming: Likewise.
7676 * config/i386/t-djgpp: Likewise.
7677 * config/i386/t-gnu-property: Likewise.
7678 * config/i386/t-i386: Likewise.
7679 * config/i386/t-intelmic: Likewise.
7680 * config/i386/t-omp-device: Likewise.
7681 * config/i386/winnt-cxx.cc (i386_pe_type_dllimport_p): Likewise.
7682 (i386_pe_adjust_class_at_definition): Likewise.
7683 * config/i386/winnt.cc (gen_stdcall_or_fastcall_suffix): Likewise.
7684 (i386_pe_mangle_decl_assembler_name): Likewise.
7685 (i386_pe_encode_section_info): Likewise.
7686 * config/i386/x-cygwin: Likewise.
7687 * config/i386/x-darwin: Likewise.
7688 * config/i386/x-i386: Likewise.
7689 * config/i386/x-mingw32: Likewise.
7690 * config/i386/x86-tune-sched-core.cc: Likewise.
7691 * config/i386/x86-tune.def: Likewise.
7692 * config/i386/xm-djgpp.h (STANDARD_STARTFILE_PREFIX_1): Likewise.
7693 * config/ia64/freebsd.h: Likewise.
7694 * config/ia64/hpux.h (REGISTER_TARGET_PRAGMAS): Likewise.
7695 * config/ia64/ia64-protos.h (ia64_except_unwind_info): Likewise.
7696 * config/ia64/ia64.cc (ia64_function_value_regno_p): Likewise.
7697 (ia64_secondary_reload_class): Likewise.
7698 (bundling): Likewise.
7699 * config/ia64/ia64.h: Likewise.
7700 * config/ia64/ia64.md: Likewise.
7701 * config/ia64/predicates.md: Likewise.
7702 * config/ia64/sysv4.h: Likewise.
7703 * config/ia64/t-ia64: Likewise.
7704 * config/iq2000/iq2000.h (FUNCTION_MODE): Likewise.
7705 * config/iq2000/iq2000.md: Likewise.
7706 * config/linux.h (TARGET_HAS_BIONIC): Likewise.
7707 (if): Likewise.
7708 * config/m32c/m32c.cc (m32c_function_needs_enter): Likewise.
7709 * config/m32c/m32c.h (MAX_REGS_PER_ADDRESS): Likewise.
7710 * config/m32c/t-m32c: Likewise.
7711 * config/m32r/m32r-protos.h: Likewise.
7712 * config/m32r/m32r.cc (m32r_print_operand): Likewise.
7713 * config/m32r/m32r.h: Likewise.
7714 * config/m32r/m32r.md: Likewise.
7715 * config/m68k/m68k-isas.def: Likewise.
7716 * config/m68k/m68k-microarchs.def: Likewise.
7717 * config/m68k/m68k-protos.h (strict_low_part_peephole_ok): Likewise.
7718 (m68k_epilogue_uses): Likewise.
7719 * config/m68k/m68k.cc (m68k_call_tls_get_addr): Likewise.
7720 (m68k_sched_adjust_cost): Likewise.
7721 (m68k_sched_md_init): Likewise.
7722 * config/m68k/m68k.h (__transfer_from_trampoline): Likewise.
7723 (enum m68k_function_kind): Likewise.
7724 * config/m68k/m68k.md: Likewise.
7725 * config/m68k/m68kemb.h: Likewise.
7726 * config/m68k/uclinux.h (ENDFILE_SPEC): Likewise.
7727 * config/mcore/mcore-protos.h: Likewise.
7728 * config/mcore/mcore.cc (mcore_expand_insv): Likewise.
7729 (mcore_expand_prolog): Likewise.
7730 * config/mcore/mcore.h (TARGET_MCORE): Likewise.
7731 * config/mcore/mcore.md: Likewise.
7732 * config/microblaze/microblaze-protos.h: Likewise.
7733 * config/microblaze/microblaze.cc (microblaze_legitimate_pic_operand): Likewise.
7734 (microblaze_function_prologue): Likewise.
7735 (microblaze_function_epilogue): Likewise.
7736 (microblaze_select_section): Likewise.
7737 (microblaze_asm_output_mi_thunk): Likewise.
7738 (microblaze_eh_return): Likewise.
7739 * config/microblaze/microblaze.h: Likewise.
7740 * config/microblaze/microblaze.md: Likewise.
7741 * config/microblaze/t-microblaze: Likewise.
7742 * config/mips/driver-native.cc: Likewise.
7743 * config/mips/loongson2ef.md: Likewise.
7744 * config/mips/mips-protos.h (mips_expand_vec_cmp_expr): Likewise.
7745 * config/mips/mips.cc (mips_rtx_costs): Likewise.
7746 (mips_output_filename): Likewise.
7747 (mips_output_function_prologue): Likewise.
7748 (mips_output_function_epilogue): Likewise.
7749 (mips_output_mi_thunk): Likewise.
7750 * config/mips/mips.h: Likewise.
7751 * config/mips/mips.md: Likewise.
7752 * config/mips/t-mips: Likewise.
7753 * config/mips/x-native: Likewise.
7754 * config/mmix/mmix-protos.h: Likewise.
7755 * config/mmix/mmix.cc (mmix_option_override): Likewise.
7756 (mmix_dbx_register_number): Likewise.
7757 (mmix_expand_prologue): Likewise.
7758 * config/mmix/mmix.h: Likewise.
7759 * config/mmix/mmix.md: Likewise.
7760 * config/mmix/predicates.md: Likewise.
7761 * config/mn10300/mn10300.cc (mn10300_symbolic_operand): Likewise.
7762 (mn10300_legitimate_pic_operand_p): Likewise.
7763 * config/mn10300/mn10300.h (enum reg_class): Likewise.
7764 (NO_FUNCTION_CSE): Likewise.
7765 * config/moxie/moxie-protos.h: Likewise.
7766 * config/moxie/uclinux.h (TARGET_LIBC_HAS_FUNCTION): Likewise.
7767 * config/msp430/msp430-devices.cc (extract_devices_dir_from_exec_prefix): Likewise.
7768 * config/msp430/msp430.cc (msp430_gimplify_va_arg_expr): Likewise.
7769 (msp430_incoming_return_addr_rtx): Likewise.
7770 * config/msp430/msp430.h (msp430_get_linker_devices_include_path): Likewise.
7771 * config/msp430/t-msp430: Likewise.
7772 * config/nds32/nds32-cost.cc (nds32_rtx_costs_speed_prefer): Likewise.
7773 (nds32_rtx_costs_size_prefer): Likewise.
7774 (nds32_init_rtx_costs): Likewise.
7775 * config/nds32/nds32-doubleword.md: Likewise.
7776 * config/nds32/nds32.cc (nds32_memory_move_cost): Likewise.
7777 (nds32_builtin_decl): Likewise.
7778 * config/nds32/nds32.h (enum nds32_16bit_address_type): Likewise.
7779 (enum nds32_isr_nested_type): Likewise.
7780 (enum reg_class): Likewise.
7781 * config/nds32/predicates.md: Likewise.
7782 * config/nds32/t-nds32: Likewise.
7783 * config/nios2/nios2.cc (nios2_pragma_target_parse): Likewise.
7784 * config/nvptx/nvptx-protos.h: Likewise.
7785 * config/nvptx/nvptx.cc (nvptx_goacc_expand_var_decl): Likewise.
7786 * config/nvptx/nvptx.h (TARGET_CPU_CPP_BUILTINS): Likewise.
7787 * config/nvptx/t-nvptx: Likewise.
7788 * config/nvptx/t-omp-device: Likewise.
7789 * config/pa/elf.h: Likewise.
7790 * config/pa/pa-linux.h (GLOBAL_ASM_OP): Likewise.
7791 * config/pa/pa-netbsd.h (GLOBAL_ASM_OP): Likewise.
7792 * config/pa/pa-openbsd.h (TARGET_ASM_GLOBALIZE_LABEL): Likewise.
7793 * config/pa/pa-protos.h (pa_eh_return_handler_rtx): Likewise.
7794 (pa_legitimize_reload_address): Likewise.
7795 (pa_can_use_return_insn): Likewise.
7796 * config/pa/pa.cc (mem_shadd_or_shadd_rtx_p): Likewise.
7797 (som_output_text_section_asm_op): Likewise.
7798 * config/pa/pa.h (PROFILE_BEFORE_PROLOGUE): Likewise.
7799 * config/pa/pa.md: Likewise.
7800 * config/pa/som.h: Likewise.
7801 * config/pa/t-pa: Likewise.
7802 * config/pdp11/pdp11.cc (decode_pdp11_d): Likewise.
7803 * config/pdp11/pdp11.h: Likewise.
7804 * config/pdp11/pdp11.md: Likewise.
7805 * config/pdp11/t-pdp11: Likewise.
7806 * config/pru/pru.md: Likewise.
7807 * config/pru/t-pru: Likewise.
7808 * config/riscv/riscv-protos.h (NUM_SYMBOL_TYPES): Likewise.
7809 (riscv_gpr_save_operation_p): Likewise.
7810 (riscv_d_register_target_info): Likewise.
7811 (riscv_init_builtins): Likewise.
7812 * config/riscv/riscv.cc (riscv_output_mi_thunk): Likewise.
7813 * config/riscv/riscv.h (CSW_MAX_OFFSET): Likewise.
7814 * config/riscv/t-riscv: Likewise.
7815 * config/rl78/rl78.cc (rl78_asm_ctor_dtor): Likewise.
7816 * config/rl78/t-rl78: Likewise.
7817 * config/rs6000/aix.h: Likewise.
7818 * config/rs6000/aix71.h (ASM_SPEC_COMMON): Likewise.
7819 * config/rs6000/aix72.h (ASM_SPEC_COMMON): Likewise.
7820 * config/rs6000/aix73.h (ASM_SPEC_COMMON): Likewise.
7821 * config/rs6000/darwin.h (TARGET_ASM_GLOBALIZE_LABEL): Likewise.
7822 * config/rs6000/driver-rs6000.cc: Likewise.
7823 * config/rs6000/freebsd.h: Likewise.
7824 * config/rs6000/freebsd64.h: Likewise.
7825 * config/rs6000/lynx.h (ASM_OUTPUT_ALIGN): Likewise.
7826 * config/rs6000/rbtree.cc: Likewise.
7827 * config/rs6000/rbtree.h: Likewise.
7828 * config/rs6000/rs6000-c.cc (rs6000_target_modify_macros): Likewise.
7829 * config/rs6000/rs6000-call.cc (rs6000_invalid_builtin): Likewise.
7830 (rs6000_expand_builtin): Likewise.
7831 (rs6000_init_builtins): Likewise.
7832 * config/rs6000/rs6000-cpus.def: Likewise.
7833 * config/rs6000/rs6000-gen-builtins.cc (write_init_ovld_table): Likewise.
7834 * config/rs6000/rs6000-internal.h (ALTIVEC_REG_BIT): Likewise.
7835 (quad_address_offset_p): Likewise.
7836 * config/rs6000/rs6000-logue.cc (interesting_frame_related_regno): Likewise.
7837 (rs6000_emit_epilogue): Likewise.
7838 * config/rs6000/rs6000-overload.def: Likewise.
7839 * config/rs6000/rs6000-p8swap.cc: Likewise.
7840 * config/rs6000/rs6000-protos.h (GCC_RS6000_PROTOS_H): Likewise.
7841 (rs6000_const_f32_to_i32): Likewise.
7842 * config/rs6000/rs6000.cc (legitimate_lo_sum_address_p): Likewise.
7843 (rs6000_debug_legitimize_address): Likewise.
7844 (rs6000_mode_dependent_address): Likewise.
7845 (rs6000_adjust_priority): Likewise.
7846 (rs6000_c_mode_for_suffix): Likewise.
7847 * config/rs6000/rs6000.h (defined): Likewise.
7848 (LONG_DOUBLE_TYPE_SIZE): Likewise.
7849 * config/rs6000/rs6000.md: Likewise.
7850 * config/rs6000/sysv4.h: Likewise.
7851 * config/rs6000/t-linux: Likewise.
7852 * config/rs6000/t-linux64: Likewise.
7853 * config/rs6000/t-rs6000: Likewise.
7854 * config/rs6000/x-darwin: Likewise.
7855 * config/rs6000/x-darwin64: Likewise.
7856 * config/rs6000/x-rs6000: Likewise.
7857 * config/rs6000/xcoff.h (ASM_OUTPUT_LABELREF): Likewise.
7858 * config/rx/rx.cc (rx_expand_builtin): Likewise.
7859 * config/s390/constraints.md: Likewise.
7860 * config/s390/driver-native.cc: Likewise.
7861 * config/s390/htmxlintrin.h: Likewise.
7862 * config/s390/s390-builtins.def (B_DEF): Likewise.
7863 (OB_DEF_VAR): Likewise.
7864 * config/s390/s390-builtins.h: Likewise.
7865 * config/s390/s390-c.cc: Likewise.
7866 * config/s390/s390-opts.h: Likewise.
7867 * config/s390/s390-protos.h (s390_check_symref_alignment): Likewise.
7868 (s390_register_target_pragmas): Likewise.
7869 * config/s390/s390.cc (s390_init_builtins): Likewise.
7870 (s390_expand_plus_operand): Likewise.
7871 (s390_expand_atomic): Likewise.
7872 (s390_valid_target_attribute_inner_p): Likewise.
7873 * config/s390/s390.h (LONG_DOUBLE_TYPE_SIZE): Likewise.
7874 * config/s390/s390.md: Likewise.
7875 * config/s390/t-s390: Likewise.
7876 * config/s390/vx-builtins.md: Likewise.
7877 * config/s390/x-native: Likewise.
7878 * config/sh/divtab-sh4-300.cc (main): Likewise.
7879 * config/sh/divtab-sh4.cc (main): Likewise.
7880 * config/sh/divtab.cc (main): Likewise.
7881 * config/sh/elf.h: Likewise.
7882 * config/sh/sh-protos.h (sh_fsca_int2sf): Likewise.
7883 * config/sh/sh.cc (SYMBOL_FLAG_FUNCVEC_FUNCTION): Likewise.
7884 (sh_struct_value_rtx): Likewise.
7885 (sh_remove_reg_dead_or_unused_notes): Likewise.
7886 * config/sh/sh.h (MIN_UNITS_PER_WORD): Likewise.
7887 * config/sh/t-sh: Likewise.
7888 * config/sol2-protos.h (solaris_override_options): Likewise.
7889 * config/sol2.h: Likewise.
7890 * config/sparc/driver-sparc.cc: Likewise.
7891 * config/sparc/freebsd.h: Likewise.
7892 * config/sparc/sparc-protos.h (make_pass_work_around_errata): Likewise.
7893 * config/sparc/sparc.cc (sparc_output_mi_thunk): Likewise.
7894 (sparc_asan_shadow_offset): Likewise.
7895 * config/sparc/sparc.h: Likewise.
7896 * config/sparc/sparc.md: Likewise.
7897 * config/sparc/t-sparc: Likewise.
7898 * config/sparc/x-sparc: Likewise.
7899 * config/stormy16/stormy16.cc (xstormy16_mode_dependent_address_p): Likewise.
7900 * config/t-darwin: Likewise.
7901 * config/t-dragonfly: Likewise.
7902 * config/t-freebsd: Likewise.
7903 * config/t-glibc: Likewise.
7904 * config/t-linux: Likewise.
7905 * config/t-netbsd: Likewise.
7906 * config/t-openbsd: Likewise.
7907 * config/t-pnt16-warn: Likewise.
7908 * config/t-sol2: Likewise.
7909 * config/t-vxworks: Likewise.
7910 * config/t-winnt: Likewise.
7911 * config/tilegx/t-tilegx: Likewise.
7912 * config/tilegx/tilegx-c.cc: Likewise.
7913 * config/tilegx/tilegx-protos.h (tilegx_function_profiler): Likewise.
7914 * config/tilegx/tilegx.md: Likewise.
7915 * config/tilepro/t-tilepro: Likewise.
7916 * config/tilepro/tilepro-c.cc: Likewise.
7917 * config/v850/t-v850: Likewise.
7918 * config/v850/v850-protos.h: Likewise.
7919 * config/v850/v850.cc (F): Likewise.
7920 * config/v850/v850.h (enum reg_class): Likewise.
7921 (SLOW_BYTE_ACCESS): Likewise.
7922 * config/vax/vax.cc (vax_mode_dependent_address_p): Likewise.
7923 * config/vax/vax.h (enum reg_class): Likewise.
7924 * config/vax/vax.md: Likewise.
7925 * config/visium/visium.cc (visium_legitimate_address_p): Likewise.
7926 * config/visium/visium.h: Likewise.
7927 * config/vms/t-vms: Likewise.
7928 * config/vms/vms-crtlmap.map: Likewise.
7929 * config/vms/vms-protos.h (vms_c_get_vms_ver): Likewise.
7930 * config/vx-common.h: Likewise.
7931 * config/x-darwin: Likewise.
7932 * config/x-hpux: Likewise.
7933 * config/x-linux: Likewise.
7934 * config/x-netbsd: Likewise.
7935 * config/x-openbsd: Likewise.
7936 * config/x-solaris: Likewise.
7937 * config/xtensa/xtensa-protos.h (xtensa_mem_offset): Likewise.
7938 * config/xtensa/xtensa.cc (xtensa_option_override): Likewise.
7939 * config/xtensa/xtensa.h: Likewise.
7940 * configure.ac: Likewise.
7941 * context.cc: Likewise.
7942 * convert.h: Likewise.
7943 * coretypes.h: Likewise.
7944 * coverage.cc: Likewise.
7945 * coverage.h: Likewise.
7946 * cppdefault.h (struct default_include): Likewise.
7947 * cprop.cc (local_cprop_pass): Likewise.
7948 (one_cprop_pass): Likewise.
7949 * cse.cc (hash_rtx_cb): Likewise.
7950 (fold_rtx): Likewise.
7951 * ctfc.h (ctfc_get_num_vlen_bytes): Likewise.
7952 * data-streamer.h (bp_unpack_var_len_int): Likewise.
7953 (streamer_write_widest_int): Likewise.
7954 * dbgcnt.def: Likewise.
7955 * dbxout.cc (dbxout_early_global_decl): Likewise.
7956 (dbxout_common_check): Likewise.
7957 * dbxout.h: Likewise.
7958 * debug.h (struct gcc_debug_hooks): Likewise.
7959 (dump_go_spec_init): Likewise.
7960 * df-core.cc: Likewise.
7961 * df-scan.cc (df_insn_info_delete): Likewise.
7962 (df_insn_delete): Likewise.
7963 * df.h (debug_df_chain): Likewise.
7964 (can_move_insns_across): Likewise.
7965 * dfp.cc (decimal_from_binary): Likewise.
7966 * diagnostic-color.cc: Likewise.
7967 * diagnostic-event-id.h: Likewise.
7968 * diagnostic-show-locus.cc (test_one_liner_labels): Likewise.
7969 * diagnostic.cc (bt_callback): Likewise.
7970 (num_digits): Likewise.
7971 * doc/avr-mmcu.texi: Likewise.
7972 * doc/cfg.texi: Likewise.
7973 * doc/contrib.texi: Likewise.
7974 * doc/cppinternals.texi: Likewise.
7975 * doc/extend.texi: Likewise.
7976 * doc/generic.texi: Likewise.
7977 * doc/gimple.texi: Likewise.
7978 * doc/gty.texi: Likewise.
7979 * doc/invoke.texi: Likewise.
7980 * doc/loop.texi: Likewise.
7981 * doc/lto.texi: Likewise.
7982 * doc/match-and-simplify.texi: Likewise.
7983 * doc/md.texi: Likewise.
7984 * doc/optinfo.texi: Likewise.
7985 * doc/options.texi: Likewise.
7986 * doc/passes.texi: Likewise.
7987 * doc/plugins.texi: Likewise.
7988 * doc/rtl.texi: Likewise.
7989 * doc/sourcebuild.texi: Likewise.
7990 * doc/tm.texi: Likewise.
7991 * doc/tm.texi.in: Likewise.
7992 * doc/tree-ssa.texi: Likewise.
7993 * dojump.cc (do_jump): Likewise.
7994 * dojump.h: Likewise.
7995 * dumpfile.cc (test_impl_location): Likewise.
7996 (test_capture_of_dump_calls): Likewise.
7997 * dumpfile.h (enum dump_kind): Likewise.
7998 (class dump_location_t): Likewise.
7999 (dump_enabled_p): Likewise.
8000 (enable_rtl_dump_file): Likewise.
8001 (dump_combine_total_stats): Likewise.
8002 * dwarf2asm.cc (dw2_asm_output_delta_uleb128): Likewise.
8003 * dwarf2ctf.h (ctf_debug_finish): Likewise.
8004 * dwarf2out.cc (dwarf2out_begin_prologue): Likewise.
8005 (struct loc_descr_context): Likewise.
8006 (rtl_for_decl_location): Likewise.
8007 (gen_subprogram_die): Likewise.
8008 (gen_label_die): Likewise.
8009 (is_trivial_indirect_ref): Likewise.
8010 (dwarf2out_late_global_decl): Likewise.
8011 (dwarf_file_hasher::hash): Likewise.
8012 (dwarf2out_end_source_file): Likewise.
8013 (dwarf2out_define): Likewise.
8014 (dwarf2out_early_finish): Likewise.
8015 * dwarf2out.h (struct dw_fde_node): Likewise.
8016 (struct dw_discr_list_node): Likewise.
8017 (output_loc_sequence_raw): Likewise.
8018 * emit-rtl.cc (gen_raw_REG): Likewise.
8019 (maybe_set_max_label_num): Likewise.
8020 * emit-rtl.h (struct rtl_data): Likewise.
8021 * errors.cc (internal_error): Likewise.
8022 (trim_filename): Likewise.
8023 * et-forest.cc: Likewise.
8024 * except.cc (init_eh_for_function): Likewise.
8025 * explow.cc (promote_ssa_mode): Likewise.
8026 (get_dynamic_stack_size): Likewise.
8027 * explow.h: Likewise.
8028 * expmed.h: Likewise.
8029 * expr.cc (safe_from_p): Likewise.
8030 (expand_expr_real_2): Likewise.
8031 (expand_expr_real_1): Likewise.
8032 * file-prefix-map.cc (remap_filename): Likewise.
8033 * final.cc (app_enable): Likewise.
8034 (make_pass_compute_alignments): Likewise.
8035 (final_scan_insn_1): Likewise.
8036 (final_scan_insn): Likewise.
8037 * fixed-value.h (fixed_from_string): Likewise.
8038 * flag-types.h (NO_DEBUG): Likewise.
8039 (DWARF2_DEBUG): Likewise.
8040 (VMS_DEBUG): Likewise.
8041 (BTF_DEBUG): Likewise.
8042 (enum ctf_debug_info_levels): Likewise.
8043 * fold-const.cc (const_binop): Likewise.
8044 (fold_binary_loc): Likewise.
8045 (fold_checksum_tree): Likewise.
8046 * fp-test.cc: Likewise.
8047 * function.cc (expand_function_end): Likewise.
8048 * function.h (struct function): Likewise.
8049 * fwprop.cc (should_replace_address): Likewise.
8050 * gcc-main.cc: Likewise.
8051 * gcc-rich-location.h (class gcc_rich_location): Likewise.
8052 * gcc-symtab.h: Likewise.
8053 * gcc.cc (MIN_FATAL_STATUS): Likewise.
8054 (driver_handle_option): Likewise.
8055 (quote_spec_arg): Likewise.
8056 (driver::finalize): Likewise.
8057 * gcc.h (set_input): Likewise.
8058 * gcov-dump.cc: Likewise.
8059 * gcov.cc (solve_flow_graph): Likewise.
8060 * gcse-common.cc: Likewise.
8061 * gcse.cc (make_pass_rtl_hoist): Likewise.
8062 * genattr-common.cc: Likewise.
8063 * genattrtab.cc (min_fn): Likewise.
8064 (write_const_num_delay_slots): Likewise.
8065 * genautomata.cc: Likewise.
8066 * genconditions.cc (write_one_condition): Likewise.
8067 * genconstants.cc: Likewise.
8068 * genemit.cc (gen_exp): Likewise.
8069 * generic-match-head.cc: Likewise.
8070 * genextract.cc: Likewise.
8071 * gengenrtl.cc (always_void_p): Likewise.
8072 * gengtype-parse.cc (gtymarker_opt): Likewise.
8073 * gengtype-state.cc (state_writer::state_writer): Likewise.
8074 (write_state_trailer): Likewise.
8075 (equals_type_number): Likewise.
8076 (read_state): Likewise.
8077 * gengtype.cc (open_base_files): Likewise.
8078 (struct file_rule_st): Likewise.
8079 (header_dot_h_frul): Likewise.
8080 * gengtype.h: Likewise.
8081 * genmatch.cc (main): Likewise.
8082 * genmddeps.cc: Likewise.
8083 * genmodes.cc (emit_mode_inner): Likewise.
8084 (emit_mode_unit_size): Likewise.
8085 * genpeep.cc (gen_peephole): Likewise.
8086 * genpreds.cc (write_tm_preds_h): Likewise.
8087 * genrecog.cc (validate_pattern): Likewise.
8088 (write_header): Likewise.
8089 (main): Likewise.
8090 * gensupport.cc (change_subst_attribute): Likewise.
8091 (traverse_c_tests): Likewise.
8092 (add_predicate): Likewise.
8093 (init_predicate_table): Likewise.
8094 * gensupport.h (struct optab_pattern): Likewise.
8095 (get_num_insn_codes): Likewise.
8096 (maybe_eval_c_test): Likewise.
8097 (struct pred_data): Likewise.
8098 * ggc-internal.h: Likewise.
8099 * gimple-fold.cc (maybe_fold_reference): Likewise.
8100 (get_range_strlen_tree): Likewise.
8101 * gimple-fold.h (gimple_stmt_integer_valued_real_p): Likewise.
8102 * gimple-low.cc: Likewise.
8103 * gimple-match-head.cc (directly_supported_p): Likewise.
8104 * gimple-pretty-print.h: Likewise.
8105 * gimple-ssa-sprintf.cc (format_percent): Likewise.
8106 (adjust_range_for_overflow): Likewise.
8107 * gimple-streamer.h: Likewise.
8108 * gimple.h (struct GTY): Likewise.
8109 (is_gimple_resx): Likewise.
8110 * gimplify.cc (gimplify_expr): Likewise.
8111 (gimplify_init_constructor): Likewise.
8112 (omp_construct_selector_matches): Likewise.
8113 (gimplify_omp_target_update): Likewise.
8114 (gimplify_omp_ordered): Likewise.
8115 (gimplify_va_arg_expr): Likewise.
8116 * graphite-isl-ast-to-gimple.cc (should_copy_to_new_region): Likewise.
8117 * haifa-sched.cc (increase_insn_priority): Likewise.
8118 (try_ready): Likewise.
8119 (sched_create_recovery_edges): Likewise.
8120 * ifcvt.cc (find_if_case_1): Likewise.
8121 (find_if_case_2): Likewise.
8122 * inchash.h: Likewise.
8123 * incpath.cc (add_env_var_paths): Likewise.
8124 * input.cc (dump_location_info): Likewise.
8125 (assert_loceq): Likewise.
8126 (test_lexer_string_locations_concatenation_1): Likewise.
8127 (test_lexer_string_locations_concatenation_2): Likewise.
8128 (test_lexer_string_locations_concatenation_3): Likewise.
8129 * input.h (BUILTINS_LOCATION): Likewise.
8130 (class string_concat_db): Likewise.
8131 * internal-fn.cc (expand_MUL_OVERFLOW): Likewise.
8132 (expand_LOOP_VECTORIZED): Likewise.
8133 * ipa-cp.cc (make_pass_ipa_cp): Likewise.
8134 * ipa-fnsummary.cc (remap_freqcounting_preds_after_dup): Likewise.
8135 (ipa_fn_summary_t::duplicate): Likewise.
8136 (make_pass_ipa_fn_summary): Likewise.
8137 * ipa-fnsummary.h (enum ipa_hints_vals): Likewise.
8138 * ipa-free-lang-data.cc (fld_simplified_type): Likewise.
8139 (free_lang_data_in_decl): Likewise.
8140 * ipa-inline.cc (compute_inlined_call_time): Likewise.
8141 (inline_always_inline_functions): Likewise.
8142 * ipa-inline.h (free_growth_caches): Likewise.
8143 (inline_account_function_p): Likewise.
8144 * ipa-modref.cc (modref_access_analysis::analyze_stmt): Likewise.
8145 (modref_eaf_analysis::analyze_ssa_name): Likewise.
8146 * ipa-param-manipulation.cc (ipa_param_body_adjustments::mark_dead_statements): Likewise.
8147 (ipa_param_body_adjustments::remap_with_debug_expressions): Likewise.
8148 * ipa-prop.cc (ipa_set_node_agg_value_chain): Likewise.
8149 * ipa-prop.h (IPA_UNDESCRIBED_USE): Likewise.
8150 (unadjusted_ptr_and_unit_offset): Likewise.
8151 * ipa-reference.cc (make_pass_ipa_reference): Likewise.
8152 * ipa-reference.h (GCC_IPA_REFERENCE_H): Likewise.
8153 * ipa-split.cc (consider_split): Likewise.
8154 * ipa-sra.cc (isra_read_node_info): Likewise.
8155 * ipa-utils.h (struct ipa_dfs_info): Likewise.
8156 (recursive_call_p): Likewise.
8157 (ipa_make_function_pure): Likewise.
8158 * ira-build.cc (ira_create_allocno): Likewise.
8159 (ira_flattening): Likewise.
8160 * ira-color.cc (do_coloring): Likewise.
8161 (update_curr_costs): Likewise.
8162 * ira-conflicts.cc (process_regs_for_copy): Likewise.
8163 * ira-int.h (struct ira_emit_data): Likewise.
8164 (ira_prohibited_mode_move_regs): Likewise.
8165 (ira_get_dup_out_num): Likewise.
8166 (ira_destroy): Likewise.
8167 (ira_tune_allocno_costs): Likewise.
8168 (ira_implicitly_set_insn_hard_regs): Likewise.
8169 (ira_build_conflicts): Likewise.
8170 (ira_color): Likewise.
8171 * ira-lives.cc (process_bb_node_lives): Likewise.
8172 * ira.cc (class ira_spilled_reg_stack_slot): Likewise.
8173 (setup_uniform_class_p): Likewise.
8174 (def_dominates_uses): Likewise.
8175 * ira.h (ira_nullify_asm_goto): Likewise.
8176 * langhooks.cc (lhd_post_options): Likewise.
8177 * langhooks.h (class substring_loc): Likewise.
8178 (struct lang_hooks_for_tree_inlining): Likewise.
8179 (struct lang_hooks_for_types): Likewise.
8180 (struct lang_hooks): Likewise.
8181 * libfuncs.h (synchronize_libfunc): Likewise.
8182 * loop-doloop.cc (doloop_condition_get): Likewise.
8183 * loop-init.cc (fix_loop_structure): Likewise.
8184 * loop-invariant.cc: Likewise.
8185 * lower-subreg.h: Likewise.
8186 * lra-constraints.cc (curr_insn_transform): Likewise.
8187 * lra-int.h (struct lra_insn_reg): Likewise.
8188 (lra_undo_inheritance): Likewise.
8189 (lra_setup_reload_pseudo_preferenced_hard_reg): Likewise.
8190 (lra_split_hard_reg_for): Likewise.
8191 (lra_coalesce): Likewise.
8192 (lra_final_code_change): Likewise.
8193 * lra-spills.cc (lra_final_code_change): Likewise.
8194 * lra.cc (lra_process_new_insns): Likewise.
8195 * lto-compress.h (struct lto_compression_stream): Likewise.
8196 * lto-streamer-out.cc (DFS::DFS_write_tree_body): Likewise.
8197 (write_symbol): Likewise.
8198 * lto-streamer.h (enum LTO_tags): Likewise.
8199 (lto_value_range_error): Likewise.
8200 (lto_append_block): Likewise.
8201 (lto_streamer_hooks_init): Likewise.
8202 (stream_read_tree_ref): Likewise.
8203 (lto_prepare_function_for_streaming): Likewise.
8204 (select_what_to_stream): Likewise.
8205 (omp_lto_input_declare_variant_alt): Likewise.
8206 (cl_optimization_stream_in): Likewise.
8207 * lto-wrapper.cc (append_compiler_options): Likewise.
8208 * machmode.def: Likewise.
8209 * machmode.h (struct int_n_data_t): Likewise.
8210 * main.cc (main): Likewise.
8211 * match.pd: Likewise.
8212 * omp-builtins.def (BUILT_IN_GOMP_CRITICAL_NAME_END): Likewise.
8213 (BUILT_IN_GOMP_LOOP_ULL_ORDERED_RUNTIME_NEXT): Likewise.
8214 * omp-expand.cc (expand_omp_atomic_fetch_op): Likewise.
8215 (make_pass_expand_omp_ssa): Likewise.
8216 * omp-low.cc (struct omp_context): Likewise.
8217 (struct omp_taskcopy_context): Likewise.
8218 (lower_omp): Likewise.
8219 * omp-oacc-neuter-broadcast.cc (omp_sese_active_worker_call): Likewise.
8220 (mask_name): Likewise.
8221 (omp_sese_dump_pars): Likewise.
8222 (worker_single_simple): Likewise.
8223 * omp-offload.cc (omp_finish_file): Likewise.
8224 (execute_oacc_loop_designation): Likewise.
8225 * optabs-query.cc (lshift_cheap_p): Likewise.
8226 * optc-gen.awk: Likewise.
8227 * optc-save-gen.awk: Likewise.
8228 * optinfo-emit-json.cc (optrecord_json_writer::optrecord_json_writer): Likewise.
8229 * opts-common.cc: Likewise.
8230 * output.h (app_enable): Likewise.
8231 (output_operand_lossage): Likewise.
8232 (insn_current_reference_address): Likewise.
8233 (get_insn_template): Likewise.
8234 (output_quoted_string): Likewise.
8235 * pass_manager.h (struct register_pass_info): Likewise.
8236 * plugin.cc: Likewise.
8237 * plugin.def (PLUGIN_ANALYZER_INIT): Likewise.
8238 * plugin.h (invoke_plugin_callbacks): Likewise.
8239 * pointer-query.cc (handle_mem_ref): Likewise.
8240 * postreload-gcse.cc (alloc_mem): Likewise.
8241 * predict.h (enum prediction): Likewise.
8242 (add_reg_br_prob_note): Likewise.
8243 * prefix.h: Likewise.
8244 * profile.h (get_working_sets): Likewise.
8245 * read-md.cc: Likewise.
8246 * read-md.h (struct mapping): Likewise.
8247 (class md_reader): Likewise.
8248 (class noop_reader): Likewise.
8249 * read-rtl-function.cc (function_reader::create_function): Likewise.
8250 (function_reader::extra_parsing_for_operand_code_0): Likewise.
8251 * read-rtl.cc (initialize_iterators): Likewise.
8252 * real.cc: Likewise.
8253 * real.h (struct real_value): Likewise.
8254 (format_helper::format_helper): Likewise.
8255 (real_hash): Likewise.
8256 (real_can_shorten_arithmetic): Likewise.
8257 * recog.cc (struct target_recog): Likewise.
8258 (offsettable_nonstrict_memref_p): Likewise.
8259 (constrain_operands): Likewise.
8260 * recog.h (MAX_RECOG_ALTERNATIVES): Likewise.
8261 (which_op_alt): Likewise.
8262 (struct insn_gen_fn): Likewise.
8263 * reg-notes.def (REG_NOTE): Likewise.
8264 * reg-stack.cc: Likewise.
8265 * regs.h (reg_is_parm_p): Likewise.
8266 * regset.h: Likewise.
8267 * reload.cc (push_reload): Likewise.
8268 (find_reloads): Likewise.
8269 (find_reloads_address_1): Likewise.
8270 (find_replacement): Likewise.
8271 (refers_to_regno_for_reload_p): Likewise.
8272 (refers_to_mem_for_reload_p): Likewise.
8273 * reload.h (push_reload): Likewise.
8274 (deallocate_reload_reg): Likewise.
8275 * reload1.cc (emit_input_reload_insns): Likewise.
8276 * reorg.cc (relax_delay_slots): Likewise.
8277 * rtl.def (UNKNOWN): Likewise.
8278 (SEQUENCE): Likewise.
8279 (BARRIER): Likewise.
8280 (ASM_OPERANDS): Likewise.
8281 (EQ_ATTR_ALT): Likewise.
8282 * rtl.h (struct GTY): Likewise.
8283 (LABEL_NAME): Likewise.
8284 (LABEL_ALT_ENTRY_P): Likewise.
8285 (SUBREG_BYTE): Likewise.
8286 (get_stack_check_protect): Likewise.
8287 (dump_rtx_statistics): Likewise.
8288 (unwrap_const_vec_duplicate): Likewise.
8289 (subreg_promoted_mode): Likewise.
8290 (gen_lowpart_common): Likewise.
8291 (operand_subword): Likewise.
8292 (immed_wide_int_const): Likewise.
8293 (decide_function_section): Likewise.
8294 (active_insn_p): Likewise.
8295 (delete_related_insns): Likewise.
8296 (try_split): Likewise.
8297 (val_signbit_known_clear_p): Likewise.
8298 (simplifiable_subregs): Likewise.
8299 (set_insn_deleted): Likewise.
8300 (subreg_get_info): Likewise.
8301 (remove_free_EXPR_LIST_node): Likewise.
8302 (finish_subregs_of_mode): Likewise.
8303 (get_mem_attrs): Likewise.
8304 (lookup_constant_def): Likewise.
8305 (rtx_to_tree_code): Likewise.
8306 (hash_rtx): Likewise.
8307 (condjump_in_parallel_p): Likewise.
8308 (validate_subreg): Likewise.
8309 (make_compound_operation): Likewise.
8310 (schedule_ebbs): Likewise.
8311 (print_inline_rtx): Likewise.
8312 (fixup_args_size_notes): Likewise.
8313 (expand_dec): Likewise.
8314 (prepare_copy_insn): Likewise.
8315 (mark_elimination): Likewise.
8316 (valid_mode_changes_for_regno): Likewise.
8317 (make_debug_expr_from_rtl): Likewise.
8318 (delete_vta_debug_insns): Likewise.
8319 (simplify_using_condition): Likewise.
8320 (set_insn_locations): Likewise.
8321 (fatal_insn_not_found): Likewise.
8322 (word_register_operation_p): Likewise.
8323 * rtlanal.cc (get_call_fndecl): Likewise.
8324 (side_effects_p): Likewise.
8325 (subreg_nregs): Likewise.
8326 (rtx_cost): Likewise.
8327 (canonicalize_condition): Likewise.
8328 * rtlanal.h (rtx_properties::try_to_add_note): Likewise.
8329 * run-rtl-passes.cc (run_rtl_passes): Likewise.
8330 * sanitizer.def (BUILT_IN_ASAN_VERSION_MISMATCH_CHECK): Likewise.
8331 * sched-deps.cc (add_dependence_1): Likewise.
8332 * sched-ebb.cc (begin_move_insn): Likewise.
8333 (add_deps_for_risky_insns): Likewise.
8334 (advance_target_bb): Likewise.
8335 * sched-int.h (reemit_notes): Likewise.
8336 (struct _haifa_insn_data): Likewise.
8337 (HID): Likewise.
8338 (DEP_CANCELLED): Likewise.
8339 (debug_ds): Likewise.
8340 (number_in_ready): Likewise.
8341 (schedule_ebbs_finish): Likewise.
8342 (find_modifiable_mems): Likewise.
8343 * sched-rgn.cc (debug_rgn_dependencies): Likewise.
8344 * sel-sched-dump.cc (dump_lv_set): Likewise.
8345 * sel-sched-dump.h: Likewise.
8346 * sel-sched-ir.cc (sel_insn_rtx_cost): Likewise.
8347 (setup_id_reg_sets): Likewise.
8348 (has_dependence_p): Likewise.
8349 (sel_num_cfg_preds_gt_1): Likewise.
8350 (bb_ends_ebb_p): Likewise.
8351 * sel-sched-ir.h (struct _list_node): Likewise.
8352 (struct idata_def): Likewise.
8353 (bb_next_bb): Likewise.
8354 * sel-sched.cc (vinsn_writes_one_of_regs_p): Likewise.
8355 (choose_best_pseudo_reg): Likewise.
8356 (verify_target_availability): Likewise.
8357 (can_speculate_dep_p): Likewise.
8358 (sel_rank_for_schedule): Likewise.
8359 * selftest-run-tests.cc (selftest::run_tests): Likewise.
8360 * selftest.h (class auto_fix_quotes): Likewise.
8361 * shrink-wrap.cc (handle_simple_exit): Likewise.
8362 * shrink-wrap.h: Likewise.
8363 * simplify-rtx.cc (simplify_context::simplify_associative_operation): Likewise.
8364 (simplify_context::simplify_gen_vec_select): Likewise.
8365 * spellcheck-tree.h: Likewise.
8366 * spellcheck.h: Likewise.
8367 * statistics.h (struct function): Likewise.
8368 * stmt.cc (conditional_probability): Likewise.
8369 * stmt.h: Likewise.
8370 * stor-layout.h: Likewise.
8371 * streamer-hooks.h: Likewise.
8372 * stringpool.h: Likewise.
8373 * symtab.cc (symbol_table::change_decl_assembler_name): Likewise.
8374 * target.def (HOOK_VECTOR_END): Likewise.
8375 (type.): Likewise.
8376 * target.h (union cumulative_args_t): Likewise.
8377 (by_pieces_ninsns): Likewise.
8378 (class predefined_function_abi): Likewise.
8379 * targhooks.cc (default_translate_mode_attribute): Likewise.
8380 * timevar.def: Likewise.
8381 * timevar.h (class timer): Likewise.
8382 * toplev.h (enable_rtl_dump_file): Likewise.
8383 * trans-mem.cc (collect_bb2reg): Likewise.
8384 * tree-call-cdce.cc (gen_conditions_for_pow): Likewise.
8385 * tree-cfg.cc (remove_bb): Likewise.
8386 (verify_gimple_debug): Likewise.
8387 (remove_edge_and_dominated_blocks): Likewise.
8388 (push_fndecl): Likewise.
8389 * tree-cfgcleanup.h (GCC_TREE_CFGCLEANUP_H): Likewise.
8390 * tree-complex.cc (expand_complex_multiplication): Likewise.
8391 (expand_complex_div_straight): Likewise.
8392 * tree-core.h (enum tree_index): Likewise.
8393 (enum operand_equal_flag): Likewise.
8394 * tree-eh.cc (honor_protect_cleanup_actions): Likewise.
8395 * tree-if-conv.cc (if_convertible_gimple_assign_stmt_p): Likewise.
8396 * tree-inline.cc (initialize_inlined_parameters): Likewise.
8397 * tree-inline.h (force_value_to_type): Likewise.
8398 * tree-nested.cc (get_chain_decl): Likewise.
8399 (walk_all_functions): Likewise.
8400 * tree-object-size.h: Likewise.
8401 * tree-outof-ssa.cc: Likewise.
8402 * tree-parloops.cc (create_parallel_loop): Likewise.
8403 * tree-pretty-print.cc (print_generic_expr_to_str): Likewise.
8404 (dump_generic_node): Likewise.
8405 * tree-profile.cc (tree_profiling): Likewise.
8406 * tree-sra.cc (maybe_add_sra_candidate): Likewise.
8407 * tree-ssa-address.cc: Likewise.
8408 * tree-ssa-alias.cc: Likewise.
8409 * tree-ssa-alias.h (ao_ref::max_size_known_p): Likewise.
8410 (dump_alias_stats): Likewise.
8411 * tree-ssa-ccp.cc: Likewise.
8412 * tree-ssa-coalesce.h: Likewise.
8413 * tree-ssa-live.cc (remove_unused_scope_block_p): Likewise.
8414 * tree-ssa-loop-manip.cc (copy_phi_node_args): Likewise.
8415 * tree-ssa-loop-unswitch.cc: Likewise.
8416 * tree-ssa-math-opts.cc: Likewise.
8417 * tree-ssa-operands.cc (class operands_scanner): Likewise.
8418 * tree-ssa-pre.cc: Likewise.
8419 * tree-ssa-reassoc.cc (optimize_ops_list): Likewise.
8420 (debug_range_entry): Likewise.
8421 * tree-ssa-sccvn.cc (eliminate_dom_walker::eliminate_stmt): Likewise.
8422 * tree-ssa-sccvn.h (TREE_SSA_SCCVN_H): Likewise.
8423 * tree-ssa-scopedtables.cc (add_expr_commutative): Likewise.
8424 (equal_mem_array_ref_p): Likewise.
8425 * tree-ssa-strlen.cc (is_strlen_related_p): Likewise.
8426 * tree-ssa-strlen.h (get_range_strlen_dynamic): Likewise.
8427 * tree-ssa-tail-merge.cc (stmt_local_def): Likewise.
8428 * tree-ssa-ter.h: Likewise.
8429 * tree-ssa-threadupdate.h (enum bb_dom_status): Likewise.
8430 * tree-streamer-in.cc (lto_input_ts_block_tree_pointers): Likewise.
8431 * tree-streamer-out.cc (pack_ts_block_value_fields): Likewise.
8432 (write_ts_block_tree_pointers): Likewise.
8433 * tree-streamer.h (struct streamer_tree_cache_d): Likewise.
8434 (streamer_read_tree_bitfields): Likewise.
8435 (streamer_write_integer_cst): Likewise.
8436 * tree-vect-patterns.cc (apply_binop_and_append_stmt): Likewise.
8437 (vect_synth_mult_by_constant): Likewise.
8438 * tree-vect-stmts.cc (vectorizable_operation): Likewise.
8439 * tree-vectorizer.cc: Likewise.
8440 * tree-vectorizer.h (class auto_purge_vect_location): Likewise.
8441 (vect_update_inits_of_drs): Likewise.
8442 (vect_get_mask_type_for_stmt): Likewise.
8443 (vect_rgroup_iv_might_wrap_p): Likewise.
8444 (cse_and_gimplify_to_preheader): Likewise.
8445 (vect_free_slp_tree): Likewise.
8446 (vect_pattern_recog): Likewise.
8447 (vect_stmt_dominates_stmt_p): Likewise.
8448 * tree.cc (initialize_tree_contains_struct): Likewise.
8449 (need_assembler_name_p): Likewise.
8450 (type_with_interoperable_signedness): Likewise.
8451 * tree.def (SWITCH_EXPR): Likewise.
8452 * tree.h (TYPE_SYMTAB_ADDRESS): Likewise.
8453 (poly_int_tree_p): Likewise.
8454 (inlined_function_outer_scope_p): Likewise.
8455 (tree_code_for_canonical_type_merging): Likewise.
8456 * value-prof.cc: Likewise.
8457 * value-prof.h (get_nth_most_common_value): Likewise.
8458 (find_func_by_profile_id): Likewise.
8459 * value-range.cc (vrp_operand_equal_p): Likewise.
8460 * value-range.h: Likewise.
8461 * var-tracking.cc: Likewise.
8462 * varasm.cc (default_function_section): Likewise.
8463 (function_section_1): Likewise.
8464 (assemble_variable): Likewise.
8465 (handle_vtv_comdat_section): Likewise.
8466 * vec.h (struct vec_prefix): Likewise.
8467 * vmsdbgout.cc (full_name): Likewise.
8468 * vtable-verify.cc: Likewise.
8469 * vtable-verify.h (struct vtv_graph_node): Likewise.
8470 * xcoffout.cc: Likewise.
8471 * xcoffout.h (DEBUG_SYMS_TEXT): Likewise.
8472
8473 2022-01-17 Martin Liska <mliska@suse.cz>
8474
8475 * adjust-alignment.c: Moved to...
8476 * adjust-alignment.cc: ...here.
8477 * alias.c: Moved to...
8478 * alias.cc: ...here.
8479 * alloc-pool.c: Moved to...
8480 * alloc-pool.cc: ...here.
8481 * asan.c: Moved to...
8482 * asan.cc: ...here.
8483 * attribs.c: Moved to...
8484 * attribs.cc: ...here.
8485 * auto-inc-dec.c: Moved to...
8486 * auto-inc-dec.cc: ...here.
8487 * auto-profile.c: Moved to...
8488 * auto-profile.cc: ...here.
8489 * bb-reorder.c: Moved to...
8490 * bb-reorder.cc: ...here.
8491 * bitmap.c: Moved to...
8492 * bitmap.cc: ...here.
8493 * btfout.c: Moved to...
8494 * btfout.cc: ...here.
8495 * builtins.c: Moved to...
8496 * builtins.cc: ...here.
8497 * caller-save.c: Moved to...
8498 * caller-save.cc: ...here.
8499 * calls.c: Moved to...
8500 * calls.cc: ...here.
8501 * ccmp.c: Moved to...
8502 * ccmp.cc: ...here.
8503 * cfg.c: Moved to...
8504 * cfg.cc: ...here.
8505 * cfganal.c: Moved to...
8506 * cfganal.cc: ...here.
8507 * cfgbuild.c: Moved to...
8508 * cfgbuild.cc: ...here.
8509 * cfgcleanup.c: Moved to...
8510 * cfgcleanup.cc: ...here.
8511 * cfgexpand.c: Moved to...
8512 * cfgexpand.cc: ...here.
8513 * cfghooks.c: Moved to...
8514 * cfghooks.cc: ...here.
8515 * cfgloop.c: Moved to...
8516 * cfgloop.cc: ...here.
8517 * cfgloopanal.c: Moved to...
8518 * cfgloopanal.cc: ...here.
8519 * cfgloopmanip.c: Moved to...
8520 * cfgloopmanip.cc: ...here.
8521 * cfgrtl.c: Moved to...
8522 * cfgrtl.cc: ...here.
8523 * cgraph.c: Moved to...
8524 * cgraph.cc: ...here.
8525 * cgraphbuild.c: Moved to...
8526 * cgraphbuild.cc: ...here.
8527 * cgraphclones.c: Moved to...
8528 * cgraphclones.cc: ...here.
8529 * cgraphunit.c: Moved to...
8530 * cgraphunit.cc: ...here.
8531 * collect-utils.c: Moved to...
8532 * collect-utils.cc: ...here.
8533 * collect2-aix.c: Moved to...
8534 * collect2-aix.cc: ...here.
8535 * collect2.c: Moved to...
8536 * collect2.cc: ...here.
8537 * combine-stack-adj.c: Moved to...
8538 * combine-stack-adj.cc: ...here.
8539 * combine.c: Moved to...
8540 * combine.cc: ...here.
8541 * common/common-targhooks.c: Moved to...
8542 * common/common-targhooks.cc: ...here.
8543 * common/config/aarch64/aarch64-common.c: Moved to...
8544 * common/config/aarch64/aarch64-common.cc: ...here.
8545 * common/config/alpha/alpha-common.c: Moved to...
8546 * common/config/alpha/alpha-common.cc: ...here.
8547 * common/config/arc/arc-common.c: Moved to...
8548 * common/config/arc/arc-common.cc: ...here.
8549 * common/config/arm/arm-common.c: Moved to...
8550 * common/config/arm/arm-common.cc: ...here.
8551 * common/config/avr/avr-common.c: Moved to...
8552 * common/config/avr/avr-common.cc: ...here.
8553 * common/config/bfin/bfin-common.c: Moved to...
8554 * common/config/bfin/bfin-common.cc: ...here.
8555 * common/config/bpf/bpf-common.c: Moved to...
8556 * common/config/bpf/bpf-common.cc: ...here.
8557 * common/config/c6x/c6x-common.c: Moved to...
8558 * common/config/c6x/c6x-common.cc: ...here.
8559 * common/config/cr16/cr16-common.c: Moved to...
8560 * common/config/cr16/cr16-common.cc: ...here.
8561 * common/config/cris/cris-common.c: Moved to...
8562 * common/config/cris/cris-common.cc: ...here.
8563 * common/config/csky/csky-common.c: Moved to...
8564 * common/config/csky/csky-common.cc: ...here.
8565 * common/config/default-common.c: Moved to...
8566 * common/config/default-common.cc: ...here.
8567 * common/config/epiphany/epiphany-common.c: Moved to...
8568 * common/config/epiphany/epiphany-common.cc: ...here.
8569 * common/config/fr30/fr30-common.c: Moved to...
8570 * common/config/fr30/fr30-common.cc: ...here.
8571 * common/config/frv/frv-common.c: Moved to...
8572 * common/config/frv/frv-common.cc: ...here.
8573 * common/config/gcn/gcn-common.c: Moved to...
8574 * common/config/gcn/gcn-common.cc: ...here.
8575 * common/config/h8300/h8300-common.c: Moved to...
8576 * common/config/h8300/h8300-common.cc: ...here.
8577 * common/config/i386/i386-common.c: Moved to...
8578 * common/config/i386/i386-common.cc: ...here.
8579 * common/config/ia64/ia64-common.c: Moved to...
8580 * common/config/ia64/ia64-common.cc: ...here.
8581 * common/config/iq2000/iq2000-common.c: Moved to...
8582 * common/config/iq2000/iq2000-common.cc: ...here.
8583 * common/config/lm32/lm32-common.c: Moved to...
8584 * common/config/lm32/lm32-common.cc: ...here.
8585 * common/config/m32r/m32r-common.c: Moved to...
8586 * common/config/m32r/m32r-common.cc: ...here.
8587 * common/config/m68k/m68k-common.c: Moved to...
8588 * common/config/m68k/m68k-common.cc: ...here.
8589 * common/config/mcore/mcore-common.c: Moved to...
8590 * common/config/mcore/mcore-common.cc: ...here.
8591 * common/config/microblaze/microblaze-common.c: Moved to...
8592 * common/config/microblaze/microblaze-common.cc: ...here.
8593 * common/config/mips/mips-common.c: Moved to...
8594 * common/config/mips/mips-common.cc: ...here.
8595 * common/config/mmix/mmix-common.c: Moved to...
8596 * common/config/mmix/mmix-common.cc: ...here.
8597 * common/config/mn10300/mn10300-common.c: Moved to...
8598 * common/config/mn10300/mn10300-common.cc: ...here.
8599 * common/config/msp430/msp430-common.c: Moved to...
8600 * common/config/msp430/msp430-common.cc: ...here.
8601 * common/config/nds32/nds32-common.c: Moved to...
8602 * common/config/nds32/nds32-common.cc: ...here.
8603 * common/config/nios2/nios2-common.c: Moved to...
8604 * common/config/nios2/nios2-common.cc: ...here.
8605 * common/config/nvptx/nvptx-common.c: Moved to...
8606 * common/config/nvptx/nvptx-common.cc: ...here.
8607 * common/config/or1k/or1k-common.c: Moved to...
8608 * common/config/or1k/or1k-common.cc: ...here.
8609 * common/config/pa/pa-common.c: Moved to...
8610 * common/config/pa/pa-common.cc: ...here.
8611 * common/config/pdp11/pdp11-common.c: Moved to...
8612 * common/config/pdp11/pdp11-common.cc: ...here.
8613 * common/config/pru/pru-common.c: Moved to...
8614 * common/config/pru/pru-common.cc: ...here.
8615 * common/config/riscv/riscv-common.c: Moved to...
8616 * common/config/riscv/riscv-common.cc: ...here.
8617 * common/config/rs6000/rs6000-common.c: Moved to...
8618 * common/config/rs6000/rs6000-common.cc: ...here.
8619 * common/config/rx/rx-common.c: Moved to...
8620 * common/config/rx/rx-common.cc: ...here.
8621 * common/config/s390/s390-common.c: Moved to...
8622 * common/config/s390/s390-common.cc: ...here.
8623 * common/config/sh/sh-common.c: Moved to...
8624 * common/config/sh/sh-common.cc: ...here.
8625 * common/config/sparc/sparc-common.c: Moved to...
8626 * common/config/sparc/sparc-common.cc: ...here.
8627 * common/config/tilegx/tilegx-common.c: Moved to...
8628 * common/config/tilegx/tilegx-common.cc: ...here.
8629 * common/config/tilepro/tilepro-common.c: Moved to...
8630 * common/config/tilepro/tilepro-common.cc: ...here.
8631 * common/config/v850/v850-common.c: Moved to...
8632 * common/config/v850/v850-common.cc: ...here.
8633 * common/config/vax/vax-common.c: Moved to...
8634 * common/config/vax/vax-common.cc: ...here.
8635 * common/config/visium/visium-common.c: Moved to...
8636 * common/config/visium/visium-common.cc: ...here.
8637 * common/config/xstormy16/xstormy16-common.c: Moved to...
8638 * common/config/xstormy16/xstormy16-common.cc: ...here.
8639 * common/config/xtensa/xtensa-common.c: Moved to...
8640 * common/config/xtensa/xtensa-common.cc: ...here.
8641 * compare-elim.c: Moved to...
8642 * compare-elim.cc: ...here.
8643 * config/aarch64/aarch64-bti-insert.c: Moved to...
8644 * config/aarch64/aarch64-bti-insert.cc: ...here.
8645 * config/aarch64/aarch64-builtins.c: Moved to...
8646 * config/aarch64/aarch64-builtins.cc: ...here.
8647 * config/aarch64/aarch64-c.c: Moved to...
8648 * config/aarch64/aarch64-c.cc: ...here.
8649 * config/aarch64/aarch64-d.c: Moved to...
8650 * config/aarch64/aarch64-d.cc: ...here.
8651 * config/aarch64/aarch64.c: Moved to...
8652 * config/aarch64/aarch64.cc: ...here.
8653 * config/aarch64/cortex-a57-fma-steering.c: Moved to...
8654 * config/aarch64/cortex-a57-fma-steering.cc: ...here.
8655 * config/aarch64/driver-aarch64.c: Moved to...
8656 * config/aarch64/driver-aarch64.cc: ...here.
8657 * config/aarch64/falkor-tag-collision-avoidance.c: Moved to...
8658 * config/aarch64/falkor-tag-collision-avoidance.cc: ...here.
8659 * config/aarch64/host-aarch64-darwin.c: Moved to...
8660 * config/aarch64/host-aarch64-darwin.cc: ...here.
8661 * config/alpha/alpha.c: Moved to...
8662 * config/alpha/alpha.cc: ...here.
8663 * config/alpha/driver-alpha.c: Moved to...
8664 * config/alpha/driver-alpha.cc: ...here.
8665 * config/arc/arc-c.c: Moved to...
8666 * config/arc/arc-c.cc: ...here.
8667 * config/arc/arc.c: Moved to...
8668 * config/arc/arc.cc: ...here.
8669 * config/arc/driver-arc.c: Moved to...
8670 * config/arc/driver-arc.cc: ...here.
8671 * config/arm/aarch-common.c: Moved to...
8672 * config/arm/aarch-common.cc: ...here.
8673 * config/arm/arm-builtins.c: Moved to...
8674 * config/arm/arm-builtins.cc: ...here.
8675 * config/arm/arm-c.c: Moved to...
8676 * config/arm/arm-c.cc: ...here.
8677 * config/arm/arm-d.c: Moved to...
8678 * config/arm/arm-d.cc: ...here.
8679 * config/arm/arm.c: Moved to...
8680 * config/arm/arm.cc: ...here.
8681 * config/arm/driver-arm.c: Moved to...
8682 * config/arm/driver-arm.cc: ...here.
8683 * config/avr/avr-c.c: Moved to...
8684 * config/avr/avr-c.cc: ...here.
8685 * config/avr/avr-devices.c: Moved to...
8686 * config/avr/avr-devices.cc: ...here.
8687 * config/avr/avr-log.c: Moved to...
8688 * config/avr/avr-log.cc: ...here.
8689 * config/avr/avr.c: Moved to...
8690 * config/avr/avr.cc: ...here.
8691 * config/avr/driver-avr.c: Moved to...
8692 * config/avr/driver-avr.cc: ...here.
8693 * config/avr/gen-avr-mmcu-specs.c: Moved to...
8694 * config/avr/gen-avr-mmcu-specs.cc: ...here.
8695 * config/avr/gen-avr-mmcu-texi.c: Moved to...
8696 * config/avr/gen-avr-mmcu-texi.cc: ...here.
8697 * config/bfin/bfin.c: Moved to...
8698 * config/bfin/bfin.cc: ...here.
8699 * config/bpf/bpf.c: Moved to...
8700 * config/bpf/bpf.cc: ...here.
8701 * config/bpf/coreout.c: Moved to...
8702 * config/bpf/coreout.cc: ...here.
8703 * config/c6x/c6x.c: Moved to...
8704 * config/c6x/c6x.cc: ...here.
8705 * config/cr16/cr16.c: Moved to...
8706 * config/cr16/cr16.cc: ...here.
8707 * config/cris/cris.c: Moved to...
8708 * config/cris/cris.cc: ...here.
8709 * config/csky/csky.c: Moved to...
8710 * config/csky/csky.cc: ...here.
8711 * config/darwin-c.c: Moved to...
8712 * config/darwin-c.cc: ...here.
8713 * config/darwin-d.c: Moved to...
8714 * config/darwin-d.cc: ...here.
8715 * config/darwin-driver.c: Moved to...
8716 * config/darwin-driver.cc: ...here.
8717 * config/darwin-f.c: Moved to...
8718 * config/darwin-f.cc: ...here.
8719 * config/darwin.c: Moved to...
8720 * config/darwin.cc: ...here.
8721 * config/default-c.c: Moved to...
8722 * config/default-c.cc: ...here.
8723 * config/default-d.c: Moved to...
8724 * config/default-d.cc: ...here.
8725 * config/dragonfly-d.c: Moved to...
8726 * config/dragonfly-d.cc: ...here.
8727 * config/epiphany/epiphany.c: Moved to...
8728 * config/epiphany/epiphany.cc: ...here.
8729 * config/epiphany/mode-switch-use.c: Moved to...
8730 * config/epiphany/mode-switch-use.cc: ...here.
8731 * config/epiphany/resolve-sw-modes.c: Moved to...
8732 * config/epiphany/resolve-sw-modes.cc: ...here.
8733 * config/fr30/fr30.c: Moved to...
8734 * config/fr30/fr30.cc: ...here.
8735 * config/freebsd-d.c: Moved to...
8736 * config/freebsd-d.cc: ...here.
8737 * config/frv/frv.c: Moved to...
8738 * config/frv/frv.cc: ...here.
8739 * config/ft32/ft32.c: Moved to...
8740 * config/ft32/ft32.cc: ...here.
8741 * config/gcn/driver-gcn.c: Moved to...
8742 * config/gcn/driver-gcn.cc: ...here.
8743 * config/gcn/gcn-run.c: Moved to...
8744 * config/gcn/gcn-run.cc: ...here.
8745 * config/gcn/gcn-tree.c: Moved to...
8746 * config/gcn/gcn-tree.cc: ...here.
8747 * config/gcn/gcn.c: Moved to...
8748 * config/gcn/gcn.cc: ...here.
8749 * config/gcn/mkoffload.c: Moved to...
8750 * config/gcn/mkoffload.cc: ...here.
8751 * config/glibc-c.c: Moved to...
8752 * config/glibc-c.cc: ...here.
8753 * config/glibc-d.c: Moved to...
8754 * config/glibc-d.cc: ...here.
8755 * config/h8300/h8300.c: Moved to...
8756 * config/h8300/h8300.cc: ...here.
8757 * config/host-darwin.c: Moved to...
8758 * config/host-darwin.cc: ...here.
8759 * config/host-hpux.c: Moved to...
8760 * config/host-hpux.cc: ...here.
8761 * config/host-linux.c: Moved to...
8762 * config/host-linux.cc: ...here.
8763 * config/host-netbsd.c: Moved to...
8764 * config/host-netbsd.cc: ...here.
8765 * config/host-openbsd.c: Moved to...
8766 * config/host-openbsd.cc: ...here.
8767 * config/host-solaris.c: Moved to...
8768 * config/host-solaris.cc: ...here.
8769 * config/i386/djgpp.c: Moved to...
8770 * config/i386/djgpp.cc: ...here.
8771 * config/i386/driver-i386.c: Moved to...
8772 * config/i386/driver-i386.cc: ...here.
8773 * config/i386/driver-mingw32.c: Moved to...
8774 * config/i386/driver-mingw32.cc: ...here.
8775 * config/i386/gnu-property.c: Moved to...
8776 * config/i386/gnu-property.cc: ...here.
8777 * config/i386/host-cygwin.c: Moved to...
8778 * config/i386/host-cygwin.cc: ...here.
8779 * config/i386/host-i386-darwin.c: Moved to...
8780 * config/i386/host-i386-darwin.cc: ...here.
8781 * config/i386/host-mingw32.c: Moved to...
8782 * config/i386/host-mingw32.cc: ...here.
8783 * config/i386/i386-builtins.c: Moved to...
8784 * config/i386/i386-builtins.cc: ...here.
8785 * config/i386/i386-c.c: Moved to...
8786 * config/i386/i386-c.cc: ...here.
8787 * config/i386/i386-d.c: Moved to...
8788 * config/i386/i386-d.cc: ...here.
8789 * config/i386/i386-expand.c: Moved to...
8790 * config/i386/i386-expand.cc: ...here.
8791 * config/i386/i386-features.c: Moved to...
8792 * config/i386/i386-features.cc: ...here.
8793 * config/i386/i386-options.c: Moved to...
8794 * config/i386/i386-options.cc: ...here.
8795 * config/i386/i386.c: Moved to...
8796 * config/i386/i386.cc: ...here.
8797 * config/i386/intelmic-mkoffload.c: Moved to...
8798 * config/i386/intelmic-mkoffload.cc: ...here.
8799 * config/i386/msformat-c.c: Moved to...
8800 * config/i386/msformat-c.cc: ...here.
8801 * config/i386/winnt-cxx.c: Moved to...
8802 * config/i386/winnt-cxx.cc: ...here.
8803 * config/i386/winnt-d.c: Moved to...
8804 * config/i386/winnt-d.cc: ...here.
8805 * config/i386/winnt-stubs.c: Moved to...
8806 * config/i386/winnt-stubs.cc: ...here.
8807 * config/i386/winnt.c: Moved to...
8808 * config/i386/winnt.cc: ...here.
8809 * config/i386/x86-tune-sched-atom.c: Moved to...
8810 * config/i386/x86-tune-sched-atom.cc: ...here.
8811 * config/i386/x86-tune-sched-bd.c: Moved to...
8812 * config/i386/x86-tune-sched-bd.cc: ...here.
8813 * config/i386/x86-tune-sched-core.c: Moved to...
8814 * config/i386/x86-tune-sched-core.cc: ...here.
8815 * config/i386/x86-tune-sched.c: Moved to...
8816 * config/i386/x86-tune-sched.cc: ...here.
8817 * config/ia64/ia64-c.c: Moved to...
8818 * config/ia64/ia64-c.cc: ...here.
8819 * config/ia64/ia64.c: Moved to...
8820 * config/ia64/ia64.cc: ...here.
8821 * config/iq2000/iq2000.c: Moved to...
8822 * config/iq2000/iq2000.cc: ...here.
8823 * config/linux.c: Moved to...
8824 * config/linux.cc: ...here.
8825 * config/lm32/lm32.c: Moved to...
8826 * config/lm32/lm32.cc: ...here.
8827 * config/m32c/m32c-pragma.c: Moved to...
8828 * config/m32c/m32c-pragma.cc: ...here.
8829 * config/m32c/m32c.c: Moved to...
8830 * config/m32c/m32c.cc: ...here.
8831 * config/m32r/m32r.c: Moved to...
8832 * config/m32r/m32r.cc: ...here.
8833 * config/m68k/m68k.c: Moved to...
8834 * config/m68k/m68k.cc: ...here.
8835 * config/mcore/mcore.c: Moved to...
8836 * config/mcore/mcore.cc: ...here.
8837 * config/microblaze/microblaze-c.c: Moved to...
8838 * config/microblaze/microblaze-c.cc: ...here.
8839 * config/microblaze/microblaze.c: Moved to...
8840 * config/microblaze/microblaze.cc: ...here.
8841 * config/mips/driver-native.c: Moved to...
8842 * config/mips/driver-native.cc: ...here.
8843 * config/mips/frame-header-opt.c: Moved to...
8844 * config/mips/frame-header-opt.cc: ...here.
8845 * config/mips/mips-d.c: Moved to...
8846 * config/mips/mips-d.cc: ...here.
8847 * config/mips/mips.c: Moved to...
8848 * config/mips/mips.cc: ...here.
8849 * config/mmix/mmix.c: Moved to...
8850 * config/mmix/mmix.cc: ...here.
8851 * config/mn10300/mn10300.c: Moved to...
8852 * config/mn10300/mn10300.cc: ...here.
8853 * config/moxie/moxie.c: Moved to...
8854 * config/moxie/moxie.cc: ...here.
8855 * config/msp430/driver-msp430.c: Moved to...
8856 * config/msp430/driver-msp430.cc: ...here.
8857 * config/msp430/msp430-c.c: Moved to...
8858 * config/msp430/msp430-c.cc: ...here.
8859 * config/msp430/msp430-devices.c: Moved to...
8860 * config/msp430/msp430-devices.cc: ...here.
8861 * config/msp430/msp430.c: Moved to...
8862 * config/msp430/msp430.cc: ...here.
8863 * config/nds32/nds32-cost.c: Moved to...
8864 * config/nds32/nds32-cost.cc: ...here.
8865 * config/nds32/nds32-fp-as-gp.c: Moved to...
8866 * config/nds32/nds32-fp-as-gp.cc: ...here.
8867 * config/nds32/nds32-intrinsic.c: Moved to...
8868 * config/nds32/nds32-intrinsic.cc: ...here.
8869 * config/nds32/nds32-isr.c: Moved to...
8870 * config/nds32/nds32-isr.cc: ...here.
8871 * config/nds32/nds32-md-auxiliary.c: Moved to...
8872 * config/nds32/nds32-md-auxiliary.cc: ...here.
8873 * config/nds32/nds32-memory-manipulation.c: Moved to...
8874 * config/nds32/nds32-memory-manipulation.cc: ...here.
8875 * config/nds32/nds32-pipelines-auxiliary.c: Moved to...
8876 * config/nds32/nds32-pipelines-auxiliary.cc: ...here.
8877 * config/nds32/nds32-predicates.c: Moved to...
8878 * config/nds32/nds32-predicates.cc: ...here.
8879 * config/nds32/nds32-relax-opt.c: Moved to...
8880 * config/nds32/nds32-relax-opt.cc: ...here.
8881 * config/nds32/nds32-utils.c: Moved to...
8882 * config/nds32/nds32-utils.cc: ...here.
8883 * config/nds32/nds32.c: Moved to...
8884 * config/nds32/nds32.cc: ...here.
8885 * config/netbsd-d.c: Moved to...
8886 * config/netbsd-d.cc: ...here.
8887 * config/netbsd.c: Moved to...
8888 * config/netbsd.cc: ...here.
8889 * config/nios2/nios2.c: Moved to...
8890 * config/nios2/nios2.cc: ...here.
8891 * config/nvptx/mkoffload.c: Moved to...
8892 * config/nvptx/mkoffload.cc: ...here.
8893 * config/nvptx/nvptx-c.c: Moved to...
8894 * config/nvptx/nvptx-c.cc: ...here.
8895 * config/nvptx/nvptx.c: Moved to...
8896 * config/nvptx/nvptx.cc: ...here.
8897 * config/openbsd-d.c: Moved to...
8898 * config/openbsd-d.cc: ...here.
8899 * config/or1k/or1k.c: Moved to...
8900 * config/or1k/or1k.cc: ...here.
8901 * config/pa/pa-d.c: Moved to...
8902 * config/pa/pa-d.cc: ...here.
8903 * config/pa/pa.c: Moved to...
8904 * config/pa/pa.cc: ...here.
8905 * config/pdp11/pdp11.c: Moved to...
8906 * config/pdp11/pdp11.cc: ...here.
8907 * config/pru/pru-passes.c: Moved to...
8908 * config/pru/pru-passes.cc: ...here.
8909 * config/pru/pru-pragma.c: Moved to...
8910 * config/pru/pru-pragma.cc: ...here.
8911 * config/pru/pru.c: Moved to...
8912 * config/pru/pru.cc: ...here.
8913 * config/riscv/riscv-builtins.c: Moved to...
8914 * config/riscv/riscv-builtins.cc: ...here.
8915 * config/riscv/riscv-c.c: Moved to...
8916 * config/riscv/riscv-c.cc: ...here.
8917 * config/riscv/riscv-d.c: Moved to...
8918 * config/riscv/riscv-d.cc: ...here.
8919 * config/riscv/riscv-shorten-memrefs.c: Moved to...
8920 * config/riscv/riscv-shorten-memrefs.cc: ...here.
8921 * config/riscv/riscv-sr.c: Moved to...
8922 * config/riscv/riscv-sr.cc: ...here.
8923 * config/riscv/riscv.c: Moved to...
8924 * config/riscv/riscv.cc: ...here.
8925 * config/rl78/rl78-c.c: Moved to...
8926 * config/rl78/rl78-c.cc: ...here.
8927 * config/rl78/rl78.c: Moved to...
8928 * config/rl78/rl78.cc: ...here.
8929 * config/rs6000/driver-rs6000.c: Moved to...
8930 * config/rs6000/driver-rs6000.cc: ...here.
8931 * config/rs6000/host-darwin.c: Moved to...
8932 * config/rs6000/host-darwin.cc: ...here.
8933 * config/rs6000/host-ppc64-darwin.c: Moved to...
8934 * config/rs6000/host-ppc64-darwin.cc: ...here.
8935 * config/rs6000/rbtree.c: Moved to...
8936 * config/rs6000/rbtree.cc: ...here.
8937 * config/rs6000/rs6000-c.c: Moved to...
8938 * config/rs6000/rs6000-c.cc: ...here.
8939 * config/rs6000/rs6000-call.c: Moved to...
8940 * config/rs6000/rs6000-call.cc: ...here.
8941 * config/rs6000/rs6000-d.c: Moved to...
8942 * config/rs6000/rs6000-d.cc: ...here.
8943 * config/rs6000/rs6000-gen-builtins.c: Moved to...
8944 * config/rs6000/rs6000-gen-builtins.cc: ...here.
8945 * config/rs6000/rs6000-linux.c: Moved to...
8946 * config/rs6000/rs6000-linux.cc: ...here.
8947 * config/rs6000/rs6000-logue.c: Moved to...
8948 * config/rs6000/rs6000-logue.cc: ...here.
8949 * config/rs6000/rs6000-p8swap.c: Moved to...
8950 * config/rs6000/rs6000-p8swap.cc: ...here.
8951 * config/rs6000/rs6000-pcrel-opt.c: Moved to...
8952 * config/rs6000/rs6000-pcrel-opt.cc: ...here.
8953 * config/rs6000/rs6000-string.c: Moved to...
8954 * config/rs6000/rs6000-string.cc: ...here.
8955 * config/rs6000/rs6000.c: Moved to...
8956 * config/rs6000/rs6000.cc: ...here.
8957 * config/rx/rx.c: Moved to...
8958 * config/rx/rx.cc: ...here.
8959 * config/s390/driver-native.c: Moved to...
8960 * config/s390/driver-native.cc: ...here.
8961 * config/s390/s390-c.c: Moved to...
8962 * config/s390/s390-c.cc: ...here.
8963 * config/s390/s390-d.c: Moved to...
8964 * config/s390/s390-d.cc: ...here.
8965 * config/s390/s390.c: Moved to...
8966 * config/s390/s390.cc: ...here.
8967 * config/sh/divtab-sh4-300.c: Moved to...
8968 * config/sh/divtab-sh4-300.cc: ...here.
8969 * config/sh/divtab-sh4.c: Moved to...
8970 * config/sh/divtab-sh4.cc: ...here.
8971 * config/sh/divtab.c: Moved to...
8972 * config/sh/divtab.cc: ...here.
8973 * config/sh/sh-c.c: Moved to...
8974 * config/sh/sh-c.cc: ...here.
8975 * config/sh/sh.c: Moved to...
8976 * config/sh/sh.cc: ...here.
8977 * config/sol2-c.c: Moved to...
8978 * config/sol2-c.cc: ...here.
8979 * config/sol2-cxx.c: Moved to...
8980 * config/sol2-cxx.cc: ...here.
8981 * config/sol2-d.c: Moved to...
8982 * config/sol2-d.cc: ...here.
8983 * config/sol2-stubs.c: Moved to...
8984 * config/sol2-stubs.cc: ...here.
8985 * config/sol2.c: Moved to...
8986 * config/sol2.cc: ...here.
8987 * config/sparc/driver-sparc.c: Moved to...
8988 * config/sparc/driver-sparc.cc: ...here.
8989 * config/sparc/sparc-c.c: Moved to...
8990 * config/sparc/sparc-c.cc: ...here.
8991 * config/sparc/sparc-d.c: Moved to...
8992 * config/sparc/sparc-d.cc: ...here.
8993 * config/sparc/sparc.c: Moved to...
8994 * config/sparc/sparc.cc: ...here.
8995 * config/stormy16/stormy16.c: Moved to...
8996 * config/stormy16/stormy16.cc: ...here.
8997 * config/tilegx/mul-tables.c: Moved to...
8998 * config/tilegx/mul-tables.cc: ...here.
8999 * config/tilegx/tilegx-c.c: Moved to...
9000 * config/tilegx/tilegx-c.cc: ...here.
9001 * config/tilegx/tilegx.c: Moved to...
9002 * config/tilegx/tilegx.cc: ...here.
9003 * config/tilepro/mul-tables.c: Moved to...
9004 * config/tilepro/mul-tables.cc: ...here.
9005 * config/tilepro/tilepro-c.c: Moved to...
9006 * config/tilepro/tilepro-c.cc: ...here.
9007 * config/tilepro/tilepro.c: Moved to...
9008 * config/tilepro/tilepro.cc: ...here.
9009 * config/v850/v850-c.c: Moved to...
9010 * config/v850/v850-c.cc: ...here.
9011 * config/v850/v850.c: Moved to...
9012 * config/v850/v850.cc: ...here.
9013 * config/vax/vax.c: Moved to...
9014 * config/vax/vax.cc: ...here.
9015 * config/visium/visium.c: Moved to...
9016 * config/visium/visium.cc: ...here.
9017 * config/vms/vms-c.c: Moved to...
9018 * config/vms/vms-c.cc: ...here.
9019 * config/vms/vms-f.c: Moved to...
9020 * config/vms/vms-f.cc: ...here.
9021 * config/vms/vms.c: Moved to...
9022 * config/vms/vms.cc: ...here.
9023 * config/vxworks-c.c: Moved to...
9024 * config/vxworks-c.cc: ...here.
9025 * config/vxworks.c: Moved to...
9026 * config/vxworks.cc: ...here.
9027 * config/winnt-c.c: Moved to...
9028 * config/winnt-c.cc: ...here.
9029 * config/xtensa/xtensa.c: Moved to...
9030 * config/xtensa/xtensa.cc: ...here.
9031 * context.c: Moved to...
9032 * context.cc: ...here.
9033 * convert.c: Moved to...
9034 * convert.cc: ...here.
9035 * coverage.c: Moved to...
9036 * coverage.cc: ...here.
9037 * cppbuiltin.c: Moved to...
9038 * cppbuiltin.cc: ...here.
9039 * cppdefault.c: Moved to...
9040 * cppdefault.cc: ...here.
9041 * cprop.c: Moved to...
9042 * cprop.cc: ...here.
9043 * cse.c: Moved to...
9044 * cse.cc: ...here.
9045 * cselib.c: Moved to...
9046 * cselib.cc: ...here.
9047 * ctfc.c: Moved to...
9048 * ctfc.cc: ...here.
9049 * ctfout.c: Moved to...
9050 * ctfout.cc: ...here.
9051 * data-streamer-in.c: Moved to...
9052 * data-streamer-in.cc: ...here.
9053 * data-streamer-out.c: Moved to...
9054 * data-streamer-out.cc: ...here.
9055 * data-streamer.c: Moved to...
9056 * data-streamer.cc: ...here.
9057 * dbgcnt.c: Moved to...
9058 * dbgcnt.cc: ...here.
9059 * dbxout.c: Moved to...
9060 * dbxout.cc: ...here.
9061 * dce.c: Moved to...
9062 * dce.cc: ...here.
9063 * ddg.c: Moved to...
9064 * ddg.cc: ...here.
9065 * debug.c: Moved to...
9066 * debug.cc: ...here.
9067 * df-core.c: Moved to...
9068 * df-core.cc: ...here.
9069 * df-problems.c: Moved to...
9070 * df-problems.cc: ...here.
9071 * df-scan.c: Moved to...
9072 * df-scan.cc: ...here.
9073 * dfp.c: Moved to...
9074 * dfp.cc: ...here.
9075 * diagnostic-color.c: Moved to...
9076 * diagnostic-color.cc: ...here.
9077 * diagnostic-show-locus.c: Moved to...
9078 * diagnostic-show-locus.cc: ...here.
9079 * diagnostic-spec.c: Moved to...
9080 * diagnostic-spec.cc: ...here.
9081 * diagnostic.c: Moved to...
9082 * diagnostic.cc: ...here.
9083 * dojump.c: Moved to...
9084 * dojump.cc: ...here.
9085 * dominance.c: Moved to...
9086 * dominance.cc: ...here.
9087 * domwalk.c: Moved to...
9088 * domwalk.cc: ...here.
9089 * double-int.c: Moved to...
9090 * double-int.cc: ...here.
9091 * dse.c: Moved to...
9092 * dse.cc: ...here.
9093 * dumpfile.c: Moved to...
9094 * dumpfile.cc: ...here.
9095 * dwarf2asm.c: Moved to...
9096 * dwarf2asm.cc: ...here.
9097 * dwarf2cfi.c: Moved to...
9098 * dwarf2cfi.cc: ...here.
9099 * dwarf2ctf.c: Moved to...
9100 * dwarf2ctf.cc: ...here.
9101 * dwarf2out.c: Moved to...
9102 * dwarf2out.cc: ...here.
9103 * early-remat.c: Moved to...
9104 * early-remat.cc: ...here.
9105 * edit-context.c: Moved to...
9106 * edit-context.cc: ...here.
9107 * emit-rtl.c: Moved to...
9108 * emit-rtl.cc: ...here.
9109 * errors.c: Moved to...
9110 * errors.cc: ...here.
9111 * et-forest.c: Moved to...
9112 * et-forest.cc: ...here.
9113 * except.c: Moved to...
9114 * except.cc: ...here.
9115 * explow.c: Moved to...
9116 * explow.cc: ...here.
9117 * expmed.c: Moved to...
9118 * expmed.cc: ...here.
9119 * expr.c: Moved to...
9120 * expr.cc: ...here.
9121 * fibonacci_heap.c: Moved to...
9122 * fibonacci_heap.cc: ...here.
9123 * file-find.c: Moved to...
9124 * file-find.cc: ...here.
9125 * file-prefix-map.c: Moved to...
9126 * file-prefix-map.cc: ...here.
9127 * final.c: Moved to...
9128 * final.cc: ...here.
9129 * fixed-value.c: Moved to...
9130 * fixed-value.cc: ...here.
9131 * fold-const-call.c: Moved to...
9132 * fold-const-call.cc: ...here.
9133 * fold-const.c: Moved to...
9134 * fold-const.cc: ...here.
9135 * fp-test.c: Moved to...
9136 * fp-test.cc: ...here.
9137 * function-tests.c: Moved to...
9138 * function-tests.cc: ...here.
9139 * function.c: Moved to...
9140 * function.cc: ...here.
9141 * fwprop.c: Moved to...
9142 * fwprop.cc: ...here.
9143 * gcc-ar.c: Moved to...
9144 * gcc-ar.cc: ...here.
9145 * gcc-main.c: Moved to...
9146 * gcc-main.cc: ...here.
9147 * gcc-rich-location.c: Moved to...
9148 * gcc-rich-location.cc: ...here.
9149 * gcc.c: Moved to...
9150 * gcc.cc: ...here.
9151 * gcov-dump.c: Moved to...
9152 * gcov-dump.cc: ...here.
9153 * gcov-io.c: Moved to...
9154 * gcov-io.cc: ...here.
9155 * gcov-tool.c: Moved to...
9156 * gcov-tool.cc: ...here.
9157 * gcov.c: Moved to...
9158 * gcov.cc: ...here.
9159 * gcse-common.c: Moved to...
9160 * gcse-common.cc: ...here.
9161 * gcse.c: Moved to...
9162 * gcse.cc: ...here.
9163 * genattr-common.c: Moved to...
9164 * genattr-common.cc: ...here.
9165 * genattr.c: Moved to...
9166 * genattr.cc: ...here.
9167 * genattrtab.c: Moved to...
9168 * genattrtab.cc: ...here.
9169 * genautomata.c: Moved to...
9170 * genautomata.cc: ...here.
9171 * gencfn-macros.c: Moved to...
9172 * gencfn-macros.cc: ...here.
9173 * gencheck.c: Moved to...
9174 * gencheck.cc: ...here.
9175 * genchecksum.c: Moved to...
9176 * genchecksum.cc: ...here.
9177 * gencodes.c: Moved to...
9178 * gencodes.cc: ...here.
9179 * genconditions.c: Moved to...
9180 * genconditions.cc: ...here.
9181 * genconfig.c: Moved to...
9182 * genconfig.cc: ...here.
9183 * genconstants.c: Moved to...
9184 * genconstants.cc: ...here.
9185 * genemit.c: Moved to...
9186 * genemit.cc: ...here.
9187 * genenums.c: Moved to...
9188 * genenums.cc: ...here.
9189 * generic-match-head.c: Moved to...
9190 * generic-match-head.cc: ...here.
9191 * genextract.c: Moved to...
9192 * genextract.cc: ...here.
9193 * genflags.c: Moved to...
9194 * genflags.cc: ...here.
9195 * gengenrtl.c: Moved to...
9196 * gengenrtl.cc: ...here.
9197 * gengtype-parse.c: Moved to...
9198 * gengtype-parse.cc: ...here.
9199 * gengtype-state.c: Moved to...
9200 * gengtype-state.cc: ...here.
9201 * gengtype.c: Moved to...
9202 * gengtype.cc: ...here.
9203 * genhooks.c: Moved to...
9204 * genhooks.cc: ...here.
9205 * genmatch.c: Moved to...
9206 * genmatch.cc: ...here.
9207 * genmddeps.c: Moved to...
9208 * genmddeps.cc: ...here.
9209 * genmddump.c: Moved to...
9210 * genmddump.cc: ...here.
9211 * genmodes.c: Moved to...
9212 * genmodes.cc: ...here.
9213 * genopinit.c: Moved to...
9214 * genopinit.cc: ...here.
9215 * genoutput.c: Moved to...
9216 * genoutput.cc: ...here.
9217 * genpeep.c: Moved to...
9218 * genpeep.cc: ...here.
9219 * genpreds.c: Moved to...
9220 * genpreds.cc: ...here.
9221 * genrecog.c: Moved to...
9222 * genrecog.cc: ...here.
9223 * gensupport.c: Moved to...
9224 * gensupport.cc: ...here.
9225 * gentarget-def.c: Moved to...
9226 * gentarget-def.cc: ...here.
9227 * genversion.c: Moved to...
9228 * genversion.cc: ...here.
9229 * ggc-common.c: Moved to...
9230 * ggc-common.cc: ...here.
9231 * ggc-none.c: Moved to...
9232 * ggc-none.cc: ...here.
9233 * ggc-page.c: Moved to...
9234 * ggc-page.cc: ...here.
9235 * ggc-tests.c: Moved to...
9236 * ggc-tests.cc: ...here.
9237 * gimple-builder.c: Moved to...
9238 * gimple-builder.cc: ...here.
9239 * gimple-expr.c: Moved to...
9240 * gimple-expr.cc: ...here.
9241 * gimple-fold.c: Moved to...
9242 * gimple-fold.cc: ...here.
9243 * gimple-iterator.c: Moved to...
9244 * gimple-iterator.cc: ...here.
9245 * gimple-laddress.c: Moved to...
9246 * gimple-laddress.cc: ...here.
9247 * gimple-loop-jam.c: Moved to...
9248 * gimple-loop-jam.cc: ...here.
9249 * gimple-low.c: Moved to...
9250 * gimple-low.cc: ...here.
9251 * gimple-match-head.c: Moved to...
9252 * gimple-match-head.cc: ...here.
9253 * gimple-pretty-print.c: Moved to...
9254 * gimple-pretty-print.cc: ...here.
9255 * gimple-ssa-backprop.c: Moved to...
9256 * gimple-ssa-backprop.cc: ...here.
9257 * gimple-ssa-evrp-analyze.c: Moved to...
9258 * gimple-ssa-evrp-analyze.cc: ...here.
9259 * gimple-ssa-evrp.c: Moved to...
9260 * gimple-ssa-evrp.cc: ...here.
9261 * gimple-ssa-isolate-paths.c: Moved to...
9262 * gimple-ssa-isolate-paths.cc: ...here.
9263 * gimple-ssa-nonnull-compare.c: Moved to...
9264 * gimple-ssa-nonnull-compare.cc: ...here.
9265 * gimple-ssa-split-paths.c: Moved to...
9266 * gimple-ssa-split-paths.cc: ...here.
9267 * gimple-ssa-sprintf.c: Moved to...
9268 * gimple-ssa-sprintf.cc: ...here.
9269 * gimple-ssa-store-merging.c: Moved to...
9270 * gimple-ssa-store-merging.cc: ...here.
9271 * gimple-ssa-strength-reduction.c: Moved to...
9272 * gimple-ssa-strength-reduction.cc: ...here.
9273 * gimple-ssa-warn-alloca.c: Moved to...
9274 * gimple-ssa-warn-alloca.cc: ...here.
9275 * gimple-ssa-warn-restrict.c: Moved to...
9276 * gimple-ssa-warn-restrict.cc: ...here.
9277 * gimple-streamer-in.c: Moved to...
9278 * gimple-streamer-in.cc: ...here.
9279 * gimple-streamer-out.c: Moved to...
9280 * gimple-streamer-out.cc: ...here.
9281 * gimple-walk.c: Moved to...
9282 * gimple-walk.cc: ...here.
9283 * gimple-warn-recursion.c: Moved to...
9284 * gimple-warn-recursion.cc: ...here.
9285 * gimple.c: Moved to...
9286 * gimple.cc: ...here.
9287 * gimplify-me.c: Moved to...
9288 * gimplify-me.cc: ...here.
9289 * gimplify.c: Moved to...
9290 * gimplify.cc: ...here.
9291 * godump.c: Moved to...
9292 * godump.cc: ...here.
9293 * graph.c: Moved to...
9294 * graph.cc: ...here.
9295 * graphds.c: Moved to...
9296 * graphds.cc: ...here.
9297 * graphite-dependences.c: Moved to...
9298 * graphite-dependences.cc: ...here.
9299 * graphite-isl-ast-to-gimple.c: Moved to...
9300 * graphite-isl-ast-to-gimple.cc: ...here.
9301 * graphite-optimize-isl.c: Moved to...
9302 * graphite-optimize-isl.cc: ...here.
9303 * graphite-poly.c: Moved to...
9304 * graphite-poly.cc: ...here.
9305 * graphite-scop-detection.c: Moved to...
9306 * graphite-scop-detection.cc: ...here.
9307 * graphite-sese-to-poly.c: Moved to...
9308 * graphite-sese-to-poly.cc: ...here.
9309 * graphite.c: Moved to...
9310 * graphite.cc: ...here.
9311 * haifa-sched.c: Moved to...
9312 * haifa-sched.cc: ...here.
9313 * hash-map-tests.c: Moved to...
9314 * hash-map-tests.cc: ...here.
9315 * hash-set-tests.c: Moved to...
9316 * hash-set-tests.cc: ...here.
9317 * hash-table.c: Moved to...
9318 * hash-table.cc: ...here.
9319 * hooks.c: Moved to...
9320 * hooks.cc: ...here.
9321 * host-default.c: Moved to...
9322 * host-default.cc: ...here.
9323 * hw-doloop.c: Moved to...
9324 * hw-doloop.cc: ...here.
9325 * hwint.c: Moved to...
9326 * hwint.cc: ...here.
9327 * ifcvt.c: Moved to...
9328 * ifcvt.cc: ...here.
9329 * inchash.c: Moved to...
9330 * inchash.cc: ...here.
9331 * incpath.c: Moved to...
9332 * incpath.cc: ...here.
9333 * init-regs.c: Moved to...
9334 * init-regs.cc: ...here.
9335 * input.c: Moved to...
9336 * input.cc: ...here.
9337 * internal-fn.c: Moved to...
9338 * internal-fn.cc: ...here.
9339 * intl.c: Moved to...
9340 * intl.cc: ...here.
9341 * ipa-comdats.c: Moved to...
9342 * ipa-comdats.cc: ...here.
9343 * ipa-cp.c: Moved to...
9344 * ipa-cp.cc: ...here.
9345 * ipa-devirt.c: Moved to...
9346 * ipa-devirt.cc: ...here.
9347 * ipa-fnsummary.c: Moved to...
9348 * ipa-fnsummary.cc: ...here.
9349 * ipa-icf-gimple.c: Moved to...
9350 * ipa-icf-gimple.cc: ...here.
9351 * ipa-icf.c: Moved to...
9352 * ipa-icf.cc: ...here.
9353 * ipa-inline-analysis.c: Moved to...
9354 * ipa-inline-analysis.cc: ...here.
9355 * ipa-inline-transform.c: Moved to...
9356 * ipa-inline-transform.cc: ...here.
9357 * ipa-inline.c: Moved to...
9358 * ipa-inline.cc: ...here.
9359 * ipa-modref-tree.c: Moved to...
9360 * ipa-modref-tree.cc: ...here.
9361 * ipa-modref.c: Moved to...
9362 * ipa-modref.cc: ...here.
9363 * ipa-param-manipulation.c: Moved to...
9364 * ipa-param-manipulation.cc: ...here.
9365 * ipa-polymorphic-call.c: Moved to...
9366 * ipa-polymorphic-call.cc: ...here.
9367 * ipa-predicate.c: Moved to...
9368 * ipa-predicate.cc: ...here.
9369 * ipa-profile.c: Moved to...
9370 * ipa-profile.cc: ...here.
9371 * ipa-prop.c: Moved to...
9372 * ipa-prop.cc: ...here.
9373 * ipa-pure-const.c: Moved to...
9374 * ipa-pure-const.cc: ...here.
9375 * ipa-ref.c: Moved to...
9376 * ipa-ref.cc: ...here.
9377 * ipa-reference.c: Moved to...
9378 * ipa-reference.cc: ...here.
9379 * ipa-split.c: Moved to...
9380 * ipa-split.cc: ...here.
9381 * ipa-sra.c: Moved to...
9382 * ipa-sra.cc: ...here.
9383 * ipa-utils.c: Moved to...
9384 * ipa-utils.cc: ...here.
9385 * ipa-visibility.c: Moved to...
9386 * ipa-visibility.cc: ...here.
9387 * ipa.c: Moved to...
9388 * ipa.cc: ...here.
9389 * ira-build.c: Moved to...
9390 * ira-build.cc: ...here.
9391 * ira-color.c: Moved to...
9392 * ira-color.cc: ...here.
9393 * ira-conflicts.c: Moved to...
9394 * ira-conflicts.cc: ...here.
9395 * ira-costs.c: Moved to...
9396 * ira-costs.cc: ...here.
9397 * ira-emit.c: Moved to...
9398 * ira-emit.cc: ...here.
9399 * ira-lives.c: Moved to...
9400 * ira-lives.cc: ...here.
9401 * ira.c: Moved to...
9402 * ira.cc: ...here.
9403 * jump.c: Moved to...
9404 * jump.cc: ...here.
9405 * langhooks.c: Moved to...
9406 * langhooks.cc: ...here.
9407 * lcm.c: Moved to...
9408 * lcm.cc: ...here.
9409 * lists.c: Moved to...
9410 * lists.cc: ...here.
9411 * loop-doloop.c: Moved to...
9412 * loop-doloop.cc: ...here.
9413 * loop-init.c: Moved to...
9414 * loop-init.cc: ...here.
9415 * loop-invariant.c: Moved to...
9416 * loop-invariant.cc: ...here.
9417 * loop-iv.c: Moved to...
9418 * loop-iv.cc: ...here.
9419 * loop-unroll.c: Moved to...
9420 * loop-unroll.cc: ...here.
9421 * lower-subreg.c: Moved to...
9422 * lower-subreg.cc: ...here.
9423 * lra-assigns.c: Moved to...
9424 * lra-assigns.cc: ...here.
9425 * lra-coalesce.c: Moved to...
9426 * lra-coalesce.cc: ...here.
9427 * lra-constraints.c: Moved to...
9428 * lra-constraints.cc: ...here.
9429 * lra-eliminations.c: Moved to...
9430 * lra-eliminations.cc: ...here.
9431 * lra-lives.c: Moved to...
9432 * lra-lives.cc: ...here.
9433 * lra-remat.c: Moved to...
9434 * lra-remat.cc: ...here.
9435 * lra-spills.c: Moved to...
9436 * lra-spills.cc: ...here.
9437 * lra.c: Moved to...
9438 * lra.cc: ...here.
9439 * lto-cgraph.c: Moved to...
9440 * lto-cgraph.cc: ...here.
9441 * lto-compress.c: Moved to...
9442 * lto-compress.cc: ...here.
9443 * lto-opts.c: Moved to...
9444 * lto-opts.cc: ...here.
9445 * lto-section-in.c: Moved to...
9446 * lto-section-in.cc: ...here.
9447 * lto-section-out.c: Moved to...
9448 * lto-section-out.cc: ...here.
9449 * lto-streamer-in.c: Moved to...
9450 * lto-streamer-in.cc: ...here.
9451 * lto-streamer-out.c: Moved to...
9452 * lto-streamer-out.cc: ...here.
9453 * lto-streamer.c: Moved to...
9454 * lto-streamer.cc: ...here.
9455 * lto-wrapper.c: Moved to...
9456 * lto-wrapper.cc: ...here.
9457 * main.c: Moved to...
9458 * main.cc: ...here.
9459 * mcf.c: Moved to...
9460 * mcf.cc: ...here.
9461 * mode-switching.c: Moved to...
9462 * mode-switching.cc: ...here.
9463 * modulo-sched.c: Moved to...
9464 * modulo-sched.cc: ...here.
9465 * multiple_target.c: Moved to...
9466 * multiple_target.cc: ...here.
9467 * omp-expand.c: Moved to...
9468 * omp-expand.cc: ...here.
9469 * omp-general.c: Moved to...
9470 * omp-general.cc: ...here.
9471 * omp-low.c: Moved to...
9472 * omp-low.cc: ...here.
9473 * omp-offload.c: Moved to...
9474 * omp-offload.cc: ...here.
9475 * omp-simd-clone.c: Moved to...
9476 * omp-simd-clone.cc: ...here.
9477 * opt-suggestions.c: Moved to...
9478 * opt-suggestions.cc: ...here.
9479 * optabs-libfuncs.c: Moved to...
9480 * optabs-libfuncs.cc: ...here.
9481 * optabs-query.c: Moved to...
9482 * optabs-query.cc: ...here.
9483 * optabs-tree.c: Moved to...
9484 * optabs-tree.cc: ...here.
9485 * optabs.c: Moved to...
9486 * optabs.cc: ...here.
9487 * opts-common.c: Moved to...
9488 * opts-common.cc: ...here.
9489 * opts-global.c: Moved to...
9490 * opts-global.cc: ...here.
9491 * opts.c: Moved to...
9492 * opts.cc: ...here.
9493 * passes.c: Moved to...
9494 * passes.cc: ...here.
9495 * plugin.c: Moved to...
9496 * plugin.cc: ...here.
9497 * postreload-gcse.c: Moved to...
9498 * postreload-gcse.cc: ...here.
9499 * postreload.c: Moved to...
9500 * postreload.cc: ...here.
9501 * predict.c: Moved to...
9502 * predict.cc: ...here.
9503 * prefix.c: Moved to...
9504 * prefix.cc: ...here.
9505 * pretty-print.c: Moved to...
9506 * pretty-print.cc: ...here.
9507 * print-rtl-function.c: Moved to...
9508 * print-rtl-function.cc: ...here.
9509 * print-rtl.c: Moved to...
9510 * print-rtl.cc: ...here.
9511 * print-tree.c: Moved to...
9512 * print-tree.cc: ...here.
9513 * profile-count.c: Moved to...
9514 * profile-count.cc: ...here.
9515 * profile.c: Moved to...
9516 * profile.cc: ...here.
9517 * read-md.c: Moved to...
9518 * read-md.cc: ...here.
9519 * read-rtl-function.c: Moved to...
9520 * read-rtl-function.cc: ...here.
9521 * read-rtl.c: Moved to...
9522 * read-rtl.cc: ...here.
9523 * real.c: Moved to...
9524 * real.cc: ...here.
9525 * realmpfr.c: Moved to...
9526 * realmpfr.cc: ...here.
9527 * recog.c: Moved to...
9528 * recog.cc: ...here.
9529 * ree.c: Moved to...
9530 * ree.cc: ...here.
9531 * reg-stack.c: Moved to...
9532 * reg-stack.cc: ...here.
9533 * regcprop.c: Moved to...
9534 * regcprop.cc: ...here.
9535 * reginfo.c: Moved to...
9536 * reginfo.cc: ...here.
9537 * regrename.c: Moved to...
9538 * regrename.cc: ...here.
9539 * regstat.c: Moved to...
9540 * regstat.cc: ...here.
9541 * reload.c: Moved to...
9542 * reload.cc: ...here.
9543 * reload1.c: Moved to...
9544 * reload1.cc: ...here.
9545 * reorg.c: Moved to...
9546 * reorg.cc: ...here.
9547 * resource.c: Moved to...
9548 * resource.cc: ...here.
9549 * rtl-error.c: Moved to...
9550 * rtl-error.cc: ...here.
9551 * rtl-tests.c: Moved to...
9552 * rtl-tests.cc: ...here.
9553 * rtl.c: Moved to...
9554 * rtl.cc: ...here.
9555 * rtlanal.c: Moved to...
9556 * rtlanal.cc: ...here.
9557 * rtlhash.c: Moved to...
9558 * rtlhash.cc: ...here.
9559 * rtlhooks.c: Moved to...
9560 * rtlhooks.cc: ...here.
9561 * rtx-vector-builder.c: Moved to...
9562 * rtx-vector-builder.cc: ...here.
9563 * run-rtl-passes.c: Moved to...
9564 * run-rtl-passes.cc: ...here.
9565 * sancov.c: Moved to...
9566 * sancov.cc: ...here.
9567 * sanopt.c: Moved to...
9568 * sanopt.cc: ...here.
9569 * sbitmap.c: Moved to...
9570 * sbitmap.cc: ...here.
9571 * sched-deps.c: Moved to...
9572 * sched-deps.cc: ...here.
9573 * sched-ebb.c: Moved to...
9574 * sched-ebb.cc: ...here.
9575 * sched-rgn.c: Moved to...
9576 * sched-rgn.cc: ...here.
9577 * sel-sched-dump.c: Moved to...
9578 * sel-sched-dump.cc: ...here.
9579 * sel-sched-ir.c: Moved to...
9580 * sel-sched-ir.cc: ...here.
9581 * sel-sched.c: Moved to...
9582 * sel-sched.cc: ...here.
9583 * selftest-diagnostic.c: Moved to...
9584 * selftest-diagnostic.cc: ...here.
9585 * selftest-rtl.c: Moved to...
9586 * selftest-rtl.cc: ...here.
9587 * selftest-run-tests.c: Moved to...
9588 * selftest-run-tests.cc: ...here.
9589 * selftest.c: Moved to...
9590 * selftest.cc: ...here.
9591 * sese.c: Moved to...
9592 * sese.cc: ...here.
9593 * shrink-wrap.c: Moved to...
9594 * shrink-wrap.cc: ...here.
9595 * simplify-rtx.c: Moved to...
9596 * simplify-rtx.cc: ...here.
9597 * sparseset.c: Moved to...
9598 * sparseset.cc: ...here.
9599 * spellcheck-tree.c: Moved to...
9600 * spellcheck-tree.cc: ...here.
9601 * spellcheck.c: Moved to...
9602 * spellcheck.cc: ...here.
9603 * sreal.c: Moved to...
9604 * sreal.cc: ...here.
9605 * stack-ptr-mod.c: Moved to...
9606 * stack-ptr-mod.cc: ...here.
9607 * statistics.c: Moved to...
9608 * statistics.cc: ...here.
9609 * stmt.c: Moved to...
9610 * stmt.cc: ...here.
9611 * stor-layout.c: Moved to...
9612 * stor-layout.cc: ...here.
9613 * store-motion.c: Moved to...
9614 * store-motion.cc: ...here.
9615 * streamer-hooks.c: Moved to...
9616 * streamer-hooks.cc: ...here.
9617 * stringpool.c: Moved to...
9618 * stringpool.cc: ...here.
9619 * substring-locations.c: Moved to...
9620 * substring-locations.cc: ...here.
9621 * symtab.c: Moved to...
9622 * symtab.cc: ...here.
9623 * target-globals.c: Moved to...
9624 * target-globals.cc: ...here.
9625 * targhooks.c: Moved to...
9626 * targhooks.cc: ...here.
9627 * timevar.c: Moved to...
9628 * timevar.cc: ...here.
9629 * toplev.c: Moved to...
9630 * toplev.cc: ...here.
9631 * tracer.c: Moved to...
9632 * tracer.cc: ...here.
9633 * trans-mem.c: Moved to...
9634 * trans-mem.cc: ...here.
9635 * tree-affine.c: Moved to...
9636 * tree-affine.cc: ...here.
9637 * tree-call-cdce.c: Moved to...
9638 * tree-call-cdce.cc: ...here.
9639 * tree-cfg.c: Moved to...
9640 * tree-cfg.cc: ...here.
9641 * tree-cfgcleanup.c: Moved to...
9642 * tree-cfgcleanup.cc: ...here.
9643 * tree-chrec.c: Moved to...
9644 * tree-chrec.cc: ...here.
9645 * tree-complex.c: Moved to...
9646 * tree-complex.cc: ...here.
9647 * tree-data-ref.c: Moved to...
9648 * tree-data-ref.cc: ...here.
9649 * tree-dfa.c: Moved to...
9650 * tree-dfa.cc: ...here.
9651 * tree-diagnostic.c: Moved to...
9652 * tree-diagnostic.cc: ...here.
9653 * tree-dump.c: Moved to...
9654 * tree-dump.cc: ...here.
9655 * tree-eh.c: Moved to...
9656 * tree-eh.cc: ...here.
9657 * tree-emutls.c: Moved to...
9658 * tree-emutls.cc: ...here.
9659 * tree-if-conv.c: Moved to...
9660 * tree-if-conv.cc: ...here.
9661 * tree-inline.c: Moved to...
9662 * tree-inline.cc: ...here.
9663 * tree-into-ssa.c: Moved to...
9664 * tree-into-ssa.cc: ...here.
9665 * tree-iterator.c: Moved to...
9666 * tree-iterator.cc: ...here.
9667 * tree-loop-distribution.c: Moved to...
9668 * tree-loop-distribution.cc: ...here.
9669 * tree-nested.c: Moved to...
9670 * tree-nested.cc: ...here.
9671 * tree-nrv.c: Moved to...
9672 * tree-nrv.cc: ...here.
9673 * tree-object-size.c: Moved to...
9674 * tree-object-size.cc: ...here.
9675 * tree-outof-ssa.c: Moved to...
9676 * tree-outof-ssa.cc: ...here.
9677 * tree-parloops.c: Moved to...
9678 * tree-parloops.cc: ...here.
9679 * tree-phinodes.c: Moved to...
9680 * tree-phinodes.cc: ...here.
9681 * tree-predcom.c: Moved to...
9682 * tree-predcom.cc: ...here.
9683 * tree-pretty-print.c: Moved to...
9684 * tree-pretty-print.cc: ...here.
9685 * tree-profile.c: Moved to...
9686 * tree-profile.cc: ...here.
9687 * tree-scalar-evolution.c: Moved to...
9688 * tree-scalar-evolution.cc: ...here.
9689 * tree-sra.c: Moved to...
9690 * tree-sra.cc: ...here.
9691 * tree-ssa-address.c: Moved to...
9692 * tree-ssa-address.cc: ...here.
9693 * tree-ssa-alias.c: Moved to...
9694 * tree-ssa-alias.cc: ...here.
9695 * tree-ssa-ccp.c: Moved to...
9696 * tree-ssa-ccp.cc: ...here.
9697 * tree-ssa-coalesce.c: Moved to...
9698 * tree-ssa-coalesce.cc: ...here.
9699 * tree-ssa-copy.c: Moved to...
9700 * tree-ssa-copy.cc: ...here.
9701 * tree-ssa-dce.c: Moved to...
9702 * tree-ssa-dce.cc: ...here.
9703 * tree-ssa-dom.c: Moved to...
9704 * tree-ssa-dom.cc: ...here.
9705 * tree-ssa-dse.c: Moved to...
9706 * tree-ssa-dse.cc: ...here.
9707 * tree-ssa-forwprop.c: Moved to...
9708 * tree-ssa-forwprop.cc: ...here.
9709 * tree-ssa-ifcombine.c: Moved to...
9710 * tree-ssa-ifcombine.cc: ...here.
9711 * tree-ssa-live.c: Moved to...
9712 * tree-ssa-live.cc: ...here.
9713 * tree-ssa-loop-ch.c: Moved to...
9714 * tree-ssa-loop-ch.cc: ...here.
9715 * tree-ssa-loop-im.c: Moved to...
9716 * tree-ssa-loop-im.cc: ...here.
9717 * tree-ssa-loop-ivcanon.c: Moved to...
9718 * tree-ssa-loop-ivcanon.cc: ...here.
9719 * tree-ssa-loop-ivopts.c: Moved to...
9720 * tree-ssa-loop-ivopts.cc: ...here.
9721 * tree-ssa-loop-manip.c: Moved to...
9722 * tree-ssa-loop-manip.cc: ...here.
9723 * tree-ssa-loop-niter.c: Moved to...
9724 * tree-ssa-loop-niter.cc: ...here.
9725 * tree-ssa-loop-prefetch.c: Moved to...
9726 * tree-ssa-loop-prefetch.cc: ...here.
9727 * tree-ssa-loop-split.c: Moved to...
9728 * tree-ssa-loop-split.cc: ...here.
9729 * tree-ssa-loop-unswitch.c: Moved to...
9730 * tree-ssa-loop-unswitch.cc: ...here.
9731 * tree-ssa-loop.c: Moved to...
9732 * tree-ssa-loop.cc: ...here.
9733 * tree-ssa-math-opts.c: Moved to...
9734 * tree-ssa-math-opts.cc: ...here.
9735 * tree-ssa-operands.c: Moved to...
9736 * tree-ssa-operands.cc: ...here.
9737 * tree-ssa-phiopt.c: Moved to...
9738 * tree-ssa-phiopt.cc: ...here.
9739 * tree-ssa-phiprop.c: Moved to...
9740 * tree-ssa-phiprop.cc: ...here.
9741 * tree-ssa-pre.c: Moved to...
9742 * tree-ssa-pre.cc: ...here.
9743 * tree-ssa-propagate.c: Moved to...
9744 * tree-ssa-propagate.cc: ...here.
9745 * tree-ssa-reassoc.c: Moved to...
9746 * tree-ssa-reassoc.cc: ...here.
9747 * tree-ssa-sccvn.c: Moved to...
9748 * tree-ssa-sccvn.cc: ...here.
9749 * tree-ssa-scopedtables.c: Moved to...
9750 * tree-ssa-scopedtables.cc: ...here.
9751 * tree-ssa-sink.c: Moved to...
9752 * tree-ssa-sink.cc: ...here.
9753 * tree-ssa-strlen.c: Moved to...
9754 * tree-ssa-strlen.cc: ...here.
9755 * tree-ssa-structalias.c: Moved to...
9756 * tree-ssa-structalias.cc: ...here.
9757 * tree-ssa-tail-merge.c: Moved to...
9758 * tree-ssa-tail-merge.cc: ...here.
9759 * tree-ssa-ter.c: Moved to...
9760 * tree-ssa-ter.cc: ...here.
9761 * tree-ssa-threadbackward.c: Moved to...
9762 * tree-ssa-threadbackward.cc: ...here.
9763 * tree-ssa-threadedge.c: Moved to...
9764 * tree-ssa-threadedge.cc: ...here.
9765 * tree-ssa-threadupdate.c: Moved to...
9766 * tree-ssa-threadupdate.cc: ...here.
9767 * tree-ssa-uncprop.c: Moved to...
9768 * tree-ssa-uncprop.cc: ...here.
9769 * tree-ssa-uninit.c: Moved to...
9770 * tree-ssa-uninit.cc: ...here.
9771 * tree-ssa.c: Moved to...
9772 * tree-ssa.cc: ...here.
9773 * tree-ssanames.c: Moved to...
9774 * tree-ssanames.cc: ...here.
9775 * tree-stdarg.c: Moved to...
9776 * tree-stdarg.cc: ...here.
9777 * tree-streamer-in.c: Moved to...
9778 * tree-streamer-in.cc: ...here.
9779 * tree-streamer-out.c: Moved to...
9780 * tree-streamer-out.cc: ...here.
9781 * tree-streamer.c: Moved to...
9782 * tree-streamer.cc: ...here.
9783 * tree-switch-conversion.c: Moved to...
9784 * tree-switch-conversion.cc: ...here.
9785 * tree-tailcall.c: Moved to...
9786 * tree-tailcall.cc: ...here.
9787 * tree-vect-data-refs.c: Moved to...
9788 * tree-vect-data-refs.cc: ...here.
9789 * tree-vect-generic.c: Moved to...
9790 * tree-vect-generic.cc: ...here.
9791 * tree-vect-loop-manip.c: Moved to...
9792 * tree-vect-loop-manip.cc: ...here.
9793 * tree-vect-loop.c: Moved to...
9794 * tree-vect-loop.cc: ...here.
9795 * tree-vect-patterns.c: Moved to...
9796 * tree-vect-patterns.cc: ...here.
9797 * tree-vect-slp-patterns.c: Moved to...
9798 * tree-vect-slp-patterns.cc: ...here.
9799 * tree-vect-slp.c: Moved to...
9800 * tree-vect-slp.cc: ...here.
9801 * tree-vect-stmts.c: Moved to...
9802 * tree-vect-stmts.cc: ...here.
9803 * tree-vector-builder.c: Moved to...
9804 * tree-vector-builder.cc: ...here.
9805 * tree-vectorizer.c: Moved to...
9806 * tree-vectorizer.cc: ...here.
9807 * tree-vrp.c: Moved to...
9808 * tree-vrp.cc: ...here.
9809 * tree.c: Moved to...
9810 * tree.cc: ...here.
9811 * tsan.c: Moved to...
9812 * tsan.cc: ...here.
9813 * typed-splay-tree.c: Moved to...
9814 * typed-splay-tree.cc: ...here.
9815 * ubsan.c: Moved to...
9816 * ubsan.cc: ...here.
9817 * valtrack.c: Moved to...
9818 * valtrack.cc: ...here.
9819 * value-prof.c: Moved to...
9820 * value-prof.cc: ...here.
9821 * var-tracking.c: Moved to...
9822 * var-tracking.cc: ...here.
9823 * varasm.c: Moved to...
9824 * varasm.cc: ...here.
9825 * varpool.c: Moved to...
9826 * varpool.cc: ...here.
9827 * vec-perm-indices.c: Moved to...
9828 * vec-perm-indices.cc: ...here.
9829 * vec.c: Moved to...
9830 * vec.cc: ...here.
9831 * vmsdbgout.c: Moved to...
9832 * vmsdbgout.cc: ...here.
9833 * vr-values.c: Moved to...
9834 * vr-values.cc: ...here.
9835 * vtable-verify.c: Moved to...
9836 * vtable-verify.cc: ...here.
9837 * web.c: Moved to...
9838 * web.cc: ...here.
9839 * xcoffout.c: Moved to...
9840 * xcoffout.cc: ...here.
9841
9842 2022-01-17 qing zhao <qing.zhao@oracle.com>
9843
9844 * tree-ssa-uninit.c (warn_uninit): Delete the 4th parameter. Handle
9845 .DEFERRED_INIT call with an anonymous SSA_NAME specially.
9846 (check_defs): Handle .DEFERRED_INIT call with an anonymous SSA_NAME
9847 specially.
9848 (warn_uninit_phi_uses): Delete the 4th actual when call warn_uninit.
9849 (warn_uninitialized_vars): Likewise.
9850 (warn_uninitialized_phi): Likewise.
9851
9852 2022-01-17 Jason Merrill <jason@redhat.com>
9853
9854 * diagnostic.h (struct diagnostic_context): Add includes_seen.
9855 * diagnostic.c (diagnostic_initialize): Initialize it.
9856 (diagnostic_finish): Clean it up.
9857 (includes_seen): New function.
9858 (diagnostic_report_current_module): Use it.
9859
9860 2022-01-17 Richard Biener <rguenther@suse.de>
9861
9862 PR middle-end/101292
9863 * diagnostic-spec.c (copy_warning): Make sure to not
9864 reference old hashtable content on possible resize.
9865 * warning-control.cc (copy_warning): Likewise.
9866
9867 2022-01-17 Jakub Jelinek <jakub@redhat.com>
9868
9869 PR target/103973
9870 * tree-cfg.h (cond_only_block_p): Declare.
9871 * tree-ssa-phiopt.c (cond_only_block_p): Move function to ...
9872 * tree-cfg.c (cond_only_block_p): ... here. No longer static.
9873 * optabs.def (spaceship_optab): New optab.
9874 * internal-fn.def (SPACESHIP): New internal function.
9875 * internal-fn.h (expand_SPACESHIP): Declare.
9876 * internal-fn.c (expand_PHI): Formatting fix.
9877 (expand_SPACESHIP): New function.
9878 * tree-ssa-math-opts.c (optimize_spaceship): New function.
9879 (math_opts_dom_walker::after_dom_children): Use it.
9880 * config/i386/i386.md (spaceship<mode>3): New define_expand.
9881 * config/i386/i386-protos.h (ix86_expand_fp_spaceship): Declare.
9882 * config/i386/i386-expand.c (ix86_expand_fp_spaceship): New function.
9883 * doc/md.texi (spaceship@var{m}3): Document.
9884
9885 2022-01-17 Kewen Lin <linkw@linux.ibm.com>
9886
9887 * config/rs6000/altivec.md (altivec_vreveti2): Remove.
9888 * config/rs6000/vsx.md (*vsx_extract_si, *vsx_extract_si_<uns>float_df,
9889 *vsx_extract_si_<uns>float_<mode>, *vsx_insert_extract_v4sf_p9): Use
9890 known constant values to simplify code.
9891
9892 2022-01-17 Haochen Gui <guihaoc@gcc.gnu.org>
9893
9894 PR target/103124
9895 * config/rs6000/vsx.md (split pattern for TI to V1TI move): Defined.
9896
9897 2022-01-16 wwwhhhyyy <hongyu.wang@intel.com>
9898
9899 * config/i386/i386.h (TARGET_DEST_FALSE_DEP_FOR_GLC): New macro.
9900 * config/i386/sse.md (<avx512>_<complexopname>_<mode><maskc_name><round_name>):
9901 Insert zero-idiom in output template when attr enabled, set new attribute to
9902 true for non-mask/maskz insn.
9903 (avx512fp16_<complexopname>sh_v8hf<mask_scalarc_name><round_scalarcz_name>):
9904 Likewise.
9905 (avx512dq_mul<mode>3<mask_name>): Likewise.
9906 (<avx2_avx512>_permvar<mode><mask_name>): Likewise.
9907 (avx2_perm<mode>_1<mask_name>): Likewise.
9908 (avx512f_perm<mode>_1<mask_name>): Likewise.
9909 (avx512dq_rangep<mode><mask_name><round_saeonly_name>): Likewise.
9910 (avx512dq_ranges<mode><mask_scalar_name><round_saeonly_scalar_name>):
9911 Likewise.
9912 (<avx512>_getmant<mode><mask_name><round_saeonly_name>): Likewise.
9913 (avx512f_vgetmant<mode><mask_scalar_name><round_saeonly_scalar_name>):
9914 Likewise.
9915 * config/i386/subst.md (mask3_dest_false_dep_for_glc_cond): New
9916 subst_attr.
9917 (mask4_dest_false_dep_for_glc_cond): Likewise.
9918 (mask6_dest_false_dep_for_glc_cond): Likewise.
9919 (mask10_dest_false_dep_for_glc_cond): Likewise.
9920 (maskc_dest_false_dep_for_glc_cond): Likewise.
9921 (mask_scalar4_dest_false_dep_for_glc_cond): Likewise.
9922 (mask_scalarc_dest_false_dep_for_glc_cond): Likewise.
9923 * config/i386/x86-tune.def (X86_TUNE_DEST_FALSE_DEP_FOR_GLC): New
9924 DEF_TUNE enabled for m_SAPPHIRERAPIDS and m_ALDERLAKE
9925
9926 2022-01-15 Martin Sebor <msebor@redhat.com>
9927
9928 PR c/63272
9929 * diagnostic-spec.c (nowarn_spec_t::nowarn_spec_t): Handle
9930 -Wdangling-pointer.
9931 * doc/invoke.texi (-Wdangling-pointer): Document new option.
9932 * gimple-ssa-warn-access.cc (pass_waccess::clone): Set new member.
9933 (pass_waccess::check_pointer_uses): New function.
9934 (pass_waccess::gimple_call_return_arg): New function.
9935 (pass_waccess::gimple_call_return_arg_ref): New function.
9936 (pass_waccess::check_call_dangling): New function.
9937 (pass_waccess::check_dangling_uses): New function overloads.
9938 (pass_waccess::check_dangling_stores): New function.
9939 (pass_waccess::check_dangling_stores): New function.
9940 (pass_waccess::m_clobbers): New data member.
9941 (pass_waccess::m_func): New data member.
9942 (pass_waccess::m_run_number): New data member.
9943 (pass_waccess::m_check_dangling_p): New data member.
9944 (pass_waccess::check_alloca): Check m_early_checks_p.
9945 (pass_waccess::check_alloc_size_call): Same.
9946 (pass_waccess::check_strcat): Same.
9947 (pass_waccess::check_strncat): Same.
9948 (pass_waccess::check_stxcpy): Same.
9949 (pass_waccess::check_stxncpy): Same.
9950 (pass_waccess::check_strncmp): Same.
9951 (pass_waccess::check_memop_access): Same.
9952 (pass_waccess::check_read_access): Same.
9953 (pass_waccess::check_builtin): Call check_pointer_uses.
9954 (pass_waccess::warn_invalid_pointer): Add arguments.
9955 (is_auto_decl): New function.
9956 (pass_waccess::check_stmt): New function.
9957 (pass_waccess::check_block): Call check_stmt.
9958 (pass_waccess::execute): Call check_dangling_uses,
9959 check_dangling_stores. Empty m_clobbers.
9960 * passes.def (pass_warn_access): Invoke pass two more times.
9961
9962 2022-01-15 Martin Sebor <msebor@redhat.com>
9963
9964 PR tree-optimization/80532
9965 * common.opt (-Wuse-after-free): New options.
9966 * diagnostic-spec.c (nowarn_spec_t::nowarn_spec_t): Handle
9967 OPT_Wreturn_local_addr and OPT_Wuse_after_free_.
9968 * diagnostic-spec.h (NW_DANGLING): New enumerator.
9969 * doc/invoke.texi (-Wuse-after-free): Document new option.
9970 * gimple-ssa-warn-access.cc (pass_waccess::check_call): Rename...
9971 (pass_waccess::check_call_access): ...to this.
9972 (pass_waccess::check): Rename...
9973 (pass_waccess::check_block): ...to this.
9974 (pass_waccess::check_pointer_uses): New function.
9975 (pass_waccess::gimple_call_return_arg): New function.
9976 (pass_waccess::warn_invalid_pointer): New function.
9977 (pass_waccess::check_builtin): Handle free and realloc.
9978 (gimple_use_after_inval_p): New function.
9979 (get_realloc_lhs): New function.
9980 (maybe_warn_mismatched_realloc): New function.
9981 (pointers_related_p): New function.
9982 (pass_waccess::check_call): Call check_pointer_uses.
9983 (pass_waccess::execute): Compute and free dominance info.
9984
9985 2022-01-15 Uroš Bizjak <ubizjak@gmail.com>
9986
9987 * config/i386/i386-expand.c (ix86_expand_sse_movcc): Use
9988 expand_simple_unop and expand_simple_binop instead of manually
9989 constructing NOT, AND and IOR RTXes. Use vector_all_ones_operand
9990 consistently. Eliminate common subexpressions and simplify code.
9991 * config/i386/sse.md (<any_logic:code><MODEF:mode>3): New expander.
9992 (<any_logic:code><MODEF:mode>3): Make public.
9993
9994 2022-01-14 Eric Botcazou <ebotcazou@adacore.com>
9995
9996 * ipa-param-manipulation.c (ipa_dump_adjusted_parameters): Dump
9997 reverse flag as "reverse" for the sake of consistency.
9998 * ipa-sra.c: Fix copyright year.
9999 (ipa_sra_function_summaries::duplicate): Copy the reverse flag.
10000 (dump_isra_access): Tweak dump line.
10001 (isra_write_node_summary): Write the reverse flag.
10002 (isra_read_node_info): Read it.
10003 (pull_accesses_from_callee): Test its consistency and copy it.
10004
10005 2022-01-14 Richard Sandiford <richard.sandiford@arm.com>
10006
10007 PR middle-end/104026
10008 * tree-vect-loop.c (_loop_vec_info::_loop_vec_info): Initialize
10009 partial_load_store_bias.
10010
10011 2022-01-14 Martin Sebor <msebor@redhat.com>
10012
10013 PR middle-end/101475
10014 * pointer-query.cc (handle_component_ref): Use the size of
10015 the enclosing object if it's smaller than the member.
10016
10017 2022-01-14 Martin Liska <mliska@suse.cz>
10018
10019 * configure: Regenerate.
10020
10021 2022-01-14 Uroš Bizjak <ubizjak@gmail.com>
10022
10023 * config/i386/i386.md (*add<mode>_1_slp"):
10024 Mark alternative 1 output operand earlyclobbered.
10025 (*sub<mode>_1_slp): Ditto.
10026 (*and<mode>_1_slp): Ditto.
10027 (*<code><mode>_1_slp): Ditto.
10028 (*neg<mode>_1_slp): Ditto.
10029 (*one_cmpl<mode>_1_slp): Ditto.
10030 (*ashl<mode>3_1_slp): Ditto.
10031 (*<insn><mode>3_1_slp): Ditto.
10032 (*<insn><mode>3_1_slp): Ditto.
10033
10034 2022-01-14 Kewen Lin <linkw@linux.ibm.com>
10035
10036 PR tree-optimization/104015
10037 * tree-vect-loop.c (vect_analyze_loop): Check
10038 param_vect_partial_vector_usage for supports_partial_vectors.
10039
10040 2022-01-14 Jakub Jelinek <jakub@redhat.com>
10041
10042 PR c++/89074
10043 * fold-const.c (address_compare): Punt on comparison of address of
10044 one object with address of end of another object if
10045 folding_initializer.
10046
10047 2022-01-14 Jakub Jelinek <jakub@redhat.com>
10048
10049 PR target/98737
10050 * tree-ssa-forwprop.c (simplify_builtin_call): Canonicalize
10051 __atomic_fetch_op (p, x, y) op x into __atomic_op_fetch (p, x, y)
10052 and __atomic_op_fetch (p, x, y) iop x into
10053 __atomic_fetch_op (p, x, y).
10054
10055 2022-01-14 Claudiu Zissulescu <claziss@synopsys.com>
10056
10057 * config/arc/arc.h (DWARF_FRAME_REGNUM): Update definition.
10058 (DWARF_FRAME_RETURN_COLUMN): Use RETURN_ADDR_REGNUM macro.
10059 (INCOMING_RETURN_ADDR_RTX): Likewise.
10060 (DWARF_ALT_FRAME_RETURN_COLUMN): Define.
10061
10062 2022-01-14 Claudiu Zissulescu <claziss@synopsys.com>
10063
10064 * config/arc/arc.c (arc_compute_frame_size): Remove condition when
10065 computin checking accumulator regs.
10066 (arc_expand_prologue): Update comments.
10067 (arc_expand_epilogue): Likewise.
10068
10069 2022-01-14 Roger Sayle <roger@nextmovesoftware.com>
10070 Uroš Bizjak <ubizjak@gmail.com>
10071
10072 * config/i386/i386-expand.c (ix86_expand_v1ti_to_ti): Use force_reg.
10073 (ix86_expand_ti_to_v1ti): Use force_reg.
10074 (ix86_expand_v1ti_shift): Use force_reg.
10075 (ix86_expand_v1ti_rotate): Use force_reg.
10076 (ix86_expand_v1ti_ashiftrt): Provide new three operation
10077 implementations for shifts by 111..126 bits. Use force_reg.
10078
10079 2022-01-14 Martin Liska <mliska@suse.cz>
10080
10081 * common/config/arm/arm-common.c (arm_target_mode): Fix
10082 warning: unterminated quoting directive [-Wformat=].
10083
10084 2022-01-14 Siddhesh Poyarekar <siddhesh@gotplt.org>
10085
10086 PR tree-optimization/104009
10087 * tree-object-size.c (compute_builtin_object_size): Bail out on
10088 negative offset.
10089 (plus_stmt_object_size): Return maximum of wholesize and minimum
10090 of 0 for negative offset.
10091
10092 2022-01-14 liuhongt <hongtao.liu@intel.com>
10093
10094 PR target/104001
10095 PR target/94790
10096 PR target/104014
10097 * config/i386/i386.md (*xor2andn): Refine predicate of
10098 operands[0] from nonimmediate_operand to
10099 register_operand, remove TARGET_AVX512BW from condition.
10100
10101 2022-01-14 David Malcolm <dmalcolm@redhat.com>
10102
10103 * doc/extend.texi (Function Attributes): Note that "tainted_args" can
10104 be used on field decls.
10105 (Common Function Attributes): Add entry on "tainted_args" attribute.
10106
10107 2022-01-13 Anthony Sharp <anthonysharp15@gmail.com>
10108 Jason Merrill <jason@redhat.com>
10109
10110 PR c++/70417
10111 * doc/invoke.texi: Documentation for Wmissing-template-keyword.
10112
10113 2022-01-13 Uroš Bizjak <ubizjak@gmail.com>
10114
10115 PR target/103861
10116 * config/i386/i386.md (*ashlqi_ext<mode>_2): New insn pattern.
10117 (*<any_shiftrt:insn>qi_ext<mode>_2): Ditto.
10118 * config/i386/mmx.md (<any_shift:insn>v2qi):
10119 New insn_and_split pattern.
10120
10121 2022-01-13 Robin Dapp <rdapp@linux.ibm.com>
10122
10123 * internal-fn.c (expand_partial_load_optab_fn): Add bias.
10124 (expand_partial_store_optab_fn): Likewise.
10125 (internal_len_load_store_bias): New function.
10126 * internal-fn.h (VECT_PARTIAL_BIAS_UNSUPPORTED): New define.
10127 (internal_len_load_store_bias): New function.
10128 * tree-vect-loop-manip.c (vect_set_loop_controls_directly): Set bias.
10129 (vect_set_loop_condition_partial_vectors): Add header_seq parameter.
10130 * tree-vect-loop.c (vect_verify_loop_lens): Verify bias.
10131 (vect_estimate_min_profitable_iters): Account for bias.
10132 (vect_get_loop_len): Add bias-adjusted length.
10133 * tree-vect-stmts.c (vectorizable_store): Use.
10134 (vectorizable_load): Use.
10135 * tree-vectorizer.h (struct rgroup_controls): Add bias-adjusted length.
10136 (LOOP_VINFO_PARTIAL_LOAD_STORE_BIAS): New macro.
10137 * config/rs6000/vsx.md: Use const0 bias predicate.
10138 * doc/md.texi: Document bias value.
10139
10140 2022-01-13 Andrew MacLeod <amacleod@redhat.com>
10141
10142 PR tree-optimization/83072
10143 PR tree-optimization/83073
10144 PR tree-optimization/97909
10145 * fold-const.c (expr_not_equal_to): Use a multi-range class.
10146
10147 2022-01-13 Andrew MacLeod <amacleod@redhat.com>
10148
10149 PR tree-optimization/96707
10150 * range-op.cc (operator_rshift::lhs_op1_relation): New.
10151
10152 2022-01-13 Uroš Bizjak <ubizjak@gmail.com>
10153
10154 * config/i386/mmx.md (negv2qi): Disparage GPR alternative a bit.
10155 Disable for TARGET_PARTIAL_REG_STALL unless optimizing for size.
10156 (negv2qi splitters): Use lowpart_subreg instead of
10157 gen_lowpart to create subreg.
10158 (<plusminus:insn>v2qi3): Disparage GPR alternative a bit.
10159 Disable for TARGET_PARTIAL_REG_STALL unless optimizing for size.
10160 (<plusminus:insn>v2qi3 splitters): Use lowpart_subreg instead of
10161 gen_lowpart to create subreg.
10162 * config/i386/i386.md (*subqi_ext<mode>_2): Move.
10163
10164 2022-01-13 Uroš Bizjak <ubizjak@gmail.com>
10165
10166 PR target/104003
10167 * config/i386/mmx.md (*xop_pcmov_<mode>): Use VI_16_32 mode iterator.
10168
10169 2022-01-13 Martin Liska <mliska@suse.cz>
10170
10171 * common/config/arm/arm-common.c (arm_target_mode): Wrap
10172 keywords with %<, %> and remove trailing punctuation char.
10173 (arm_canon_arch_option_1): Likewise.
10174 (arm_asm_auto_mfpu): Likewise.
10175 * config/arm/arm-builtins.c (arm_expand_builtin): Likewise.
10176 * config/arm/arm.c (arm_options_perform_arch_sanity_checks): Likewise.
10177 (use_vfp_abi): Likewise.
10178 (aapcs_vfp_is_call_or_return_candidate): Likewise.
10179 (arm_handle_cmse_nonsecure_entry): Likewise.
10180 (arm_handle_cmse_nonsecure_call): Likewise.
10181 (thumb1_md_asm_adjust): Likewise.
10182
10183 2022-01-13 Paul A. Clarke <pc@us.ibm.com>
10184
10185 * config/rs6000/smmintrin.h (_mm_round_pd, _mm_round_ps,
10186 _mm_round_sd, _mm_round_ss, _MM_FROUND_TO_NEAREST_INT,
10187 _MM_FROUND_TO_ZERO, _MM_FROUND_TO_POS_INF, _MM_FROUND_TO_NEG_INF,
10188 _MM_FROUND_CUR_DIRECTION, _MM_FROUND_RAISE_EXC, _MM_FROUND_NO_EXC,
10189 _MM_FROUND_NINT, _MM_FROUND_FLOOR, _MM_FROUND_CEIL, _MM_FROUND_TRUNC,
10190 _MM_FROUND_RINT, _MM_FROUND_NEARBYINT): New.
10191 (_mm_ceil_pd, _mm_ceil_ps, _mm_ceil_sd, _mm_ceil_ss, _mm_floor_pd,
10192 _mm_floor_ps, _mm_floor_sd, _mm_floor_ss): Convert from function to
10193 macro.
10194
10195 2022-01-13 Jakub Jelinek <jakub@redhat.com>
10196
10197 PR tree-optimization/103989
10198 * tree-inline.c (setup_one_parameter): Don't copy parms with
10199 empty type.
10200
10201 2022-01-13 Thomas Schwinge <thomas@codesourcery.com>
10202
10203 * tree-streamer-out.c (pack_ts_base_value_fields): Don't pack
10204 'TYPE_ADDR_SPACE' for offloading.
10205 * tree-streamer-in.c (unpack_ts_base_value_fields): Don't unpack
10206 'TYPE_ADDR_SPACE' for offloading.
10207
10208 2022-01-13 Julian Brown <julian@codesourcery.com>
10209 Thomas Schwinge <thomas@codesourcery.com>
10210
10211 * omp-oacc-kernels-decompose.cc (add_wait): New function, split out
10212 of...
10213 (add_async_clauses_and_wait): ...here. Call new outlined function.
10214 (decompose_kernels_region_body): Add wait at the end of
10215 explicitly-asynchronous kernels regions.
10216
10217 2022-01-13 Thomas Schwinge <thomas@codesourcery.com>
10218
10219 PR middle-end/100280
10220 * omp-oacc-kernels-decompose.cc (maybe_build_inner_data_region):
10221 Mark variables used in synthesized data clauses as addressable.
10222
10223 2022-01-13 Martin Liska <mliska@suse.cz>
10224
10225 * config/epiphany/epiphany.c (epiphany_mode_priority):
10226 Use gcc_unreachable for not handled cases.
10227
10228 2022-01-13 Martin Liska <mliska@suse.cz>
10229
10230 * config/epiphany/epiphany.c (epiphany_handle_interrupt_attribute):
10231 Use %qs format specifier.
10232 (epiphany_override_options): Wrap keyword in %<, %>.
10233
10234 2022-01-13 Haochen Jiang <haochen.jiang@intel.com>
10235
10236 PR target/94790
10237 * config/i386/i386.md (*xor2andn): New define_insn_and_split.
10238
10239 2022-01-13 Xionghu Luo <luoxhu@linux.ibm.com>
10240
10241 * config/rs6000/altivec.md (sldoi_to_mov<mode>): New.
10242
10243 2022-01-12 Uroš Bizjak <ubizjak@gmail.com>
10244
10245 PR target/100637
10246 PR target/103861
10247 * config/i386/i386-expand.c (ix86_emit_vec_binop): New static function.
10248 (ix86_expand_sse_movcc): Use ix86_emit_vec_binop instead of gen_rtx_X
10249 when constructing vector logic RTXes.
10250 (expand_vec_perm_pshufb2): Ditto.
10251 * config/i386/mmx.md (negv2qi): Disparage GPR alternative a bit.
10252 (<plusminus:insn>v2qi3): Ditto.
10253 (vcond<mode><mode>): Re-enable for TARGET_SSE2.
10254 (vcondu<mode><mode>): Ditto.
10255 (vcond_mask_<mode><mode>): Ditto.
10256 (one_cmpl<VI_32:mode>2): Remove expander.
10257 (one_cmpl<VI_16_32:mode>2): Rename from one_cmplv2qi.
10258 Use VI_16_32 mode iterator.
10259 (one_cmpl<VI_16_32:mode>2 splitters): Use VI_16_32 mode iterator.
10260 Use lowpart_subreg instead of gen_lowpart to create subreg.
10261 (*andnot<VI_16_32:mode>3): Merge from "*andnot<VI_32:mode>" and
10262 "*andnotv2qi3" insn patterns using VI_16_32 mode iterator.
10263 Disparage GPR alternative a bit. Add CC clobber.
10264 (*andnot<VI_16_32:mode>3 splitters): Use VI_16_32 mode iterator.
10265 Use lowpart_subreg instead of gen_lowpart to create subreg.
10266 (*<any_logic:code><VI_16_32:mode>3): Merge from
10267 "*<any_logic:code><VI_32:mode>" and "*<any_logic:code>v2qi3" insn patterns
10268 using VI_16_32 mode iterator. Disparage GPR alternative a bit.
10269 Add CC clobber.
10270 (*<any_logic:code><VI_16_32:mode>3 splitters):Use VI_16_32 mode
10271 iterator. Use lowpart_subreg instead of gen_lowpart to create subreg.
10272
10273 2022-01-12 Clément Chigot <clement.chigot@atos.net>
10274
10275 * configure.ac: Check sizeof ino_t and dev_t.
10276 (HOST_STAT_FOR_64BIT_INODES): New AC_DEFINE to provide stat
10277 syscall being able to handle 64bit inodes.
10278 * config.in: Regenerate.
10279 * configure: Regenerate.
10280 * incpath.c (HOST_STAT_FOR_64BIT_INODES): New define.
10281 (remove_duplicates): Use it.
10282
10283 2022-01-12 Andrew MacLeod <amacleod@redhat.com>
10284
10285 PR tree-optimization/103551
10286 * tree-vrp.c (execute_ranger_vrp): Always set EDGE_EXECUTABLE.
10287
10288 2022-01-12 Richard Biener <rguenther@suse.de>
10289
10290 PR tree-optimization/103990
10291 * tree-pass.h (tail_merge_optimize): Drop unused argument.
10292 * tree-ssa-tail-merge.c (tail_merge_optimize): Likewise.
10293 * tree-ssa-pre.c (pass_pre::execute): Retain TODO_cleanup_cfg
10294 and adjust call to tail_merge_optimize.
10295
10296 2022-01-12 Andre Vieira <andre.simoesdiasvieira@arm.com>
10297
10298 * tree-vect-loop.c (vect-analyze-loop): Handle scenario where target
10299 does not add autovectorize_vector_modes.
10300
10301 2022-01-12 Martin Liska <mliska@suse.cz>
10302
10303 * config/aarch64/aarch64.c (aarch64_parse_boolean_options): Use
10304 %qs where possible.
10305 (aarch64_parse_sve_width_string): Likewise.
10306 (aarch64_override_options_internal): Likewise.
10307 (aarch64_print_hint_for_extensions): Likewise.
10308 (aarch64_validate_sls_mitigation): Likewise.
10309 (aarch64_handle_attr_arch): Likewise.
10310 (aarch64_handle_attr_cpu): Likewise.
10311 (aarch64_handle_attr_tune): Likewise.
10312 (aarch64_handle_attr_isa_flags): Likewise.
10313
10314 2022-01-12 Martin Liska <mliska@suse.cz>
10315
10316 * config.gcc: Include elfos.h before ${tm_file}.
10317
10318 2022-01-12 Hans-Peter Nilsson <hp@axis.com>
10319
10320 * config/cris/cris.c: Quote identifiers in parameters to error
10321 and internal_error, and remove extraneous spaces with punctuation.
10322 * config/cris/cris.h (CRIS_ASSERT): When passing on stringified
10323 expression to internal_error, pass it as a parameter instead of
10324 appending it to the format part.
10325
10326 2022-01-12 Hans-Peter Nilsson <hp@axis.com>
10327
10328 * config/cris/cris.c (cris_postdbr_cmpelim): Parenthesize
10329 parameter to as_a.
10330
10331 2022-01-11 qing zhao <qing.zhao@oracle.com>
10332
10333 * gimplify.c (gimple_add_init_for_auto_var): Delete the 3rd argument.
10334 Change the 3rd argument of function .DEFERRED_INIT to the name of the
10335 decl.
10336 (gimplify_decl_expr): Delete the 3rd argument when call
10337 gimple_add_init_for_auto_var.
10338 * internal-fn.c (expand_DEFERRED_INIT): Update comments to reflect
10339 the 3rd argument change of function .DEFERRED_INIT.
10340 * tree-cfg.c (verify_gimple_call): Update comments and verification
10341 to reflect the 3rd argument change of function .DEFERRED_INIT.
10342 * tree-sra.c (generate_subtree_deferred_init): Delete the 3rd argument.
10343 (sra_modify_deferred_init): Change the 3rd argument of function
10344 .DEFERRED_INIT to the name of the decl.
10345
10346 2022-01-11 Thomas Koenig <tkoenig@gcc.gnu.org>
10347
10348 * flag-types.h (enum gfc_convert): Add flags for
10349 conversion.
10350
10351 2022-01-11 Michael Meissner <meissner@the-meissners.org>
10352
10353 * config/rs6000/rs6000.c (rs6000_option_override_internal): Remove
10354 checks for only C/C++ front ends before allowing the long double
10355 format to change without a warning.
10356
10357 2022-01-11 Richard Sandiford <richard.sandiford@arm.com>
10358
10359 PR rtl-optimization/103974
10360 * ira-int.h (ira_subloop_allocnos_can_differ_p): Take an
10361 extra argument, default true, that says whether old-reload
10362 targets should be excluded.
10363 * ira-color.c (color_pass): Pass false.
10364
10365 2022-01-11 Uroš Bizjak <ubizjak@gmail.com>
10366
10367 PR target/103861
10368 * config/i386/mmx.md (vcond<mode><mode>):
10369 Use VI_16_32 mode iterator. Enable for TARGET_SSE4_1.
10370 (vcondu<mode><mode>): Ditto.
10371 (vcond_mask_<mode><mode>): Ditto.
10372 (mmx_pblendvb_v8qi): Rename from mmx_pblendvb64.
10373 (mmx_pblendvb_<mode>): Rename from mmx_pblendvb32.
10374 Use VI_16_32 mode iterator.
10375 * config/i386/i386-expand.c (ix86_expand_sse_movcc):
10376 Update for rename. Handle V2QImode.
10377 (expand_vec_perm_blend): Update for rename.
10378
10379 2022-01-11 Jakub Jelinek <jakub@redhat.com>
10380
10381 PR c++/101597
10382 * tree.def (OBJ_TYPE_REF): Document type of OBJ_TYPE_REF_TOKEN.
10383
10384 2022-01-11 Siddhesh Poyarekar <siddhesh@gotplt.org>
10385
10386 PR middle-end/70090
10387 * tree-object-size.c (size_valid_p): New function.
10388 (size_for_offset): Remove OFFSET constness assertion.
10389 (addr_object_size): Build dynamic expressions for object
10390 sizes and use size_valid_p to decide if it is valid for the
10391 given OBJECT_SIZE_TYPE.
10392 (compute_builtin_object_size): Allow dynamic offsets when
10393 computing size at O0.
10394 (call_object_size): Call size_valid_p.
10395 (plus_stmt_object_size): Allow non-constant offset and use
10396 size_valid_p to decide if it is valid for the given
10397 OBJECT_SIZE_TYPE.
10398
10399 2022-01-11 Siddhesh Poyarekar <siddhesh@gotplt.org>
10400
10401 PR middle-end/70090
10402 * tree-object-size.c (alloc_object_size): Make and return
10403 non-constant size expression.
10404 (call_object_size): Return expression or unknown based on
10405 whether dynamic object size is requested.
10406
10407 2022-01-11 Siddhesh Poyarekar <siddhesh@gotplt.org>
10408
10409 PR middle-end/70090
10410 * tree-object-size.c: Include tree-dfa.h.
10411 (parm_object_size): New function.
10412 (collect_object_sizes_for): Call it.
10413
10414 2022-01-11 Siddhesh Poyarekar <siddhesh@gotplt.org>
10415
10416 PR middle-end/70090
10417 * builtins.c (fold_builtin_object_size): Adjust for dynamic size
10418 expressions.
10419 * tree-object-size.c: Include gimplify-me.h.
10420 (struct object_size_info): New member UNKNOWNS.
10421 (size_initval_p, size_usable_p, object_sizes_get_raw): New
10422 functions.
10423 (object_sizes_get): Return suitable gimple variable for
10424 object size.
10425 (bundle_sizes): New function.
10426 (object_sizes_set): Use it and handle dynamic object size
10427 expressions.
10428 (object_sizes_set_temp): New function.
10429 (size_for_offset): Adjust for dynamic size expressions.
10430 (emit_phi_nodes, propagate_unknowns, gimplify_size_expressions):
10431 New functions.
10432 (compute_builtin_object_size): Call gimplify_size_expressions
10433 for OST_DYNAMIC.
10434 (dynamic_object_size): New function.
10435 (cond_expr_object_size): Use it.
10436 (phi_dynamic_object_size): New function.
10437 (collect_object_sizes_for): Call it for OST_DYNAMIC. Adjust to
10438 accommodate dynamic object sizes.
10439
10440 2022-01-11 Siddhesh Poyarekar <siddhesh@gotplt.org>
10441 Jakub Jelinek <jakub@redhat.com>
10442
10443 PR tree-optimization/103961
10444 * tree-object-size.c (plus_stmt_object_size): Always avoid
10445 computing offset for -1 size.
10446
10447 2022-01-11 Andrew MacLeod <amacleod@redhat.com>
10448
10449 PR tree-optimization/103821
10450 * range-op.cc (range_operator::fold_range): Only do precise ranges
10451 when there are not too many subranges.
10452
10453 2022-01-11 Richard Sandiford <richard.sandiford@arm.com>
10454
10455 * ira-costs.c (ira_tune_allocno_costs): Fix missing rclass
10456 definition in IRA_HARD_REGNO_ADD_COST_MULTIPLIER code.
10457
10458 2022-01-11 Roger Sayle <roger@nextmovesoftware.com>
10459 Richard Biener <rguenther@suse.de>
10460
10461 * tree-ssa-math-opts.c (struct widen_mul_stats): Add a
10462 highpart_mults_inserted field.
10463 (convert_mult_to_highpart): New function to convert right shift
10464 of a widening multiply into a MULT_HIGHPART_EXPR.
10465 (math_opts_dom_walker::after_dom_children) [RSHIFT_EXPR]:
10466 Call new convert_mult_to_highpart function.
10467 (pass_optimize_widening_mul::execute): Add a statistics counter
10468 for tracking "highpart multiplications inserted" events.
10469
10470 2022-01-11 Xionghu Luo <luoxhu@linux.ibm.com>
10471
10472 PR target/102239
10473 * config/rs6000/rs6000-protos.h (rs6000_is_valid_rotate_dot_mask): New
10474 declare.
10475 * config/rs6000/rs6000.c (rs6000_is_valid_rotate_dot_mask): New
10476 function.
10477 * config/rs6000/rs6000.md (*branch_anddi3_dot): New.
10478
10479 2022-01-11 Olivier Hainque <hainque@adacore.com>
10480
10481 * gcc.c (driver_handle_option): State --sysroot as
10482 validated.
10483
10484 2022-01-11 Kewen Lin <linkw@linux.ibm.com>
10485
10486 * config/rs6000/rs6000.c (rs6000_disable_incompatible_switches): Remove
10487 useless related to option -mno-power10.
10488
10489 2022-01-11 Haochen Jiang <haochen.jiang@intel.com>
10490
10491 PR target/53652
10492 * config/i386/sse.md (*andnot<mode>3): Extend predicate of
10493 operands[1] from register_operand to vector_operand.
10494
10495 2022-01-10 Uroš Bizjak <ubizjak@gmail.com>
10496
10497 PR target/103861
10498 * config/i386/i386-expand.c (ix86_expand_int_sse_cmp):
10499 Handle V2QImode.
10500 * config/i386/mmx.md (<sat_plusminus:insn><mode>3):
10501 Use VI1_16_32 mode iterator.
10502 (*eq<mode>3): Ditto.
10503 (*gt<mode>3): Ditto.
10504 (*xop_maskcmp<mode>3): Ditto.
10505 (*xop_maskcmp_uns<mode>3): Ditto.
10506 (vec_cmp<mode><mode>): Ditto.
10507 (vec_cmpu<mode><mode>): Ditto.
10508
10509 2022-01-10 Richard Biener <rguenther@suse.de>
10510
10511 PR tree-optimization/103948
10512 * tree-vect-generic.c (expand_vector_condition): Return true if
10513 all ones vector is returned for true, all zeros vector for false
10514 and the target defines corresponding vec_cmp{,u}MN named RTX pattern.
10515
10516 2022-01-10 Paul A. Clarke <pc@us.ibm.com>
10517
10518 * config/rs6000/smmintrin.h (_mm_blendv_epi8): Use vec_blendv
10519 when _ARCH_PWR10. Use signed types.
10520 (_mm_blendv_ps): Use vec_blendv when _ARCH_PWR10.
10521 (_mm_blendv_pd): Likewise.
10522
10523 2022-01-10 Andre Vieira <andre.simoesdiasvieira@arm.com>
10524
10525 * tree-vectorizer.c (better_epilogue_loop_than_p): Round factors up for
10526 epilogue costing.
10527 * tree-vect-loop.c (vect_analyze_loop): Re-analyze all modes for
10528 epilogues, unless we are guaranteed that we can't have partial vectors.
10529 * genopinit.c: (partial_vectors_supported): Generate new function.
10530
10531 2022-01-10 Jakub Jelinek <jakub@redhat.com>
10532
10533 PR target/102024
10534 * config/i386/i386.c (classify_argument): Add zero_width_bitfields
10535 argument, when seeing DECL_FIELD_CXX_ZERO_WIDTH_BIT_FIELD bitfields,
10536 always ignore them, when seeing other zero sized bitfields, either
10537 set zero_width_bitfields to 1 and ignore it or if equal to 2 process
10538 it. Pass it to recursive calls. Add wrapper
10539 with old arguments and diagnose ABI differences for C structures
10540 with zero width bitfields. Formatting fixes.
10541
10542 2022-01-10 Richard Sandiford <richard.sandiford@arm.com>
10543
10544 PR rtl-optimization/98782
10545 * ira-int.h (ira_soft_conflict): Declare.
10546 * ira-color.c (max_soft_conflict_loop_depth): New constant.
10547 (ira_soft_conflict): New function.
10548 (spill_soft_conflicts): Likewise.
10549 (assign_hard_reg): Use them to handle the case described by
10550 the comment above ira_soft_conflict.
10551 (improve_allocation): Likewise.
10552 * ira.c (check_allocation): Allow allocnos with "soft" conflicts
10553 to share the same register.
10554
10555 2022-01-10 Richard Sandiford <richard.sandiford@arm.com>
10556
10557 PR rtl-optimization/98782
10558 * ira-int.h (ira_caller_save_cost): New function.
10559 (ira_caller_save_loop_spill_p): Likewise.
10560 * ira-build.c (ira_propagate_hard_reg_costs): Test whether it is
10561 cheaper to spill a call-clobbered register throughout a loop rather
10562 than spill it around each individual call. If so, treat all
10563 call-clobbered registers as conflicts and...
10564 (propagate_allocno_info): ...do not propagate call information
10565 from the child to the parent.
10566 * ira-color.c (move_spill_restore): Update accordingly.
10567 * ira-costs.c (ira_tune_allocno_costs): Use ira_caller_save_cost.
10568
10569 2022-01-10 Richard Sandiford <richard.sandiford@arm.com>
10570
10571 PR rtl-optimization/98782
10572 * ira-int.h (ira_allocno::might_conflict_with_parent_p): New field.
10573 (ALLOCNO_MIGHT_CONFLICT_WITH_PARENT_P): New macro.
10574 (ira_single_region_allocno_p): New function.
10575 (ira_total_conflict_hard_regs): Likewise.
10576 * ira-build.c (ira_create_allocno): Initialize
10577 ALLOCNO_MIGHT_CONFLICT_WITH_PARENT_P.
10578 (ira_propagate_hard_reg_costs): New function.
10579 (propagate_allocno_info): Use it. Try to avoid propagating
10580 hard register conflicts to parent allocnos if we can handle
10581 the conflicts by spilling instead. Limit the propagated
10582 register costs to the cost of spilling throughout the child loop.
10583 * ira-color.c (color_pass): Use ira_single_region_allocno_p to
10584 test whether a child and parent allocno can share the same
10585 register.
10586 (move_spill_restore): Adjust for the new behavior of
10587 propagate_allocno_info.
10588
10589 2022-01-10 Richard Sandiford <richard.sandiford@arm.com>
10590
10591 PR rtl-optimization/98782
10592 * ira-int.h (ira_subloop_allocnos_can_differ_p): New function,
10593 extracted from...
10594 * ira-color.c (color_pass): ...here.
10595
10596 2022-01-10 Richard Sandiford <richard.sandiford@arm.com>
10597
10598 PR rtl-optimization/98782
10599 * ira-color.c (color_pass): Add comments to describe the spill costs.
10600 (move_spill_restore): Likewise. Fix reversed calculation.
10601
10602 2022-01-10 Richard Sandiford <richard.sandiford@arm.com>
10603
10604 PR rtl-optimization/98782
10605 * ira-int.h (ira_loop_border_costs): New class.
10606 * ira-color.c (ira_loop_border_costs::ira_loop_border_costs):
10607 New constructor.
10608 (calculate_allocno_spill_cost): Use ira_loop_border_costs.
10609 (color_pass): Likewise.
10610 (move_spill_restore): Likewise.
10611
10612 2022-01-10 Eric Botcazou <ebotcazou@adacore.com>
10613
10614 PR target/103465
10615 * coretypes.h (unwind_info_type): Swap UI_SEH and UI_TARGET.
10616
10617 2022-01-10 Richard Biener <rguenther@suse.de>
10618
10619 PR tree-optimization/100359
10620 * tree-ssa-loop-ivcanon.c (try_unroll_loop_completely):
10621 Allow non-growing peeling with !allow_peel and UL_ALL.
10622
10623 2022-01-08 Roger Sayle <roger@nextmovesoftware.com>
10624
10625 * config/i386/i386-expand.c (ix86_expand_vector_move): Add
10626 special case for TImode to V1TImode moves, going via V2DImode.
10627
10628 2022-01-08 Jakub Jelinek <jakub@redhat.com>
10629
10630 PR c++/89074
10631 * match.pd ((ptr) (x p+ y) p+ z -> (ptr) (x p+ (y + z))): New GENERIC
10632 simplification.
10633
10634 2022-01-08 David Malcolm <dmalcolm@redhat.com>
10635
10636 * doc/analyzer.texi
10637 (Special Functions for Debugging the Analyzer): Document
10638 __analyzer_dump_escaped.
10639
10640 2022-01-08 David Malcolm <dmalcolm@redhat.com>
10641
10642 * doc/analyzer.texi (Other Debugging Techniques): Document
10643 region::is_named_decl_p.
10644
10645 2022-01-07 Andrew Pinski <apinski@marvell.com>
10646
10647 PR target/102941
10648 * config/arm/aarch-common.c (arm_md_asm_adjust):
10649 Use a temp if !REG_P.
10650
10651 2022-01-07 Uroš Bizjak <ubizjak@gmail.com>
10652
10653 * config/i386/mmx.md (*move<V_32:mode>_internal): Add isa attribute.
10654 (*movv2qi_internal): Remve sse2 requirement for alternatives 4,5.
10655
10656 2022-01-07 liuhongt <hongtao.liu@intel.com>
10657
10658 PR rtl-optimization/103750
10659 * fwprop.c (forward_propagate_into): Allow propagations from
10660 inner loop to outer loop.
10661
10662 2022-01-07 Roger Sayle <roger@nextmovesoftware.com>
10663
10664 * config/nvptx/nvptx.md (*cnot<mode>2): New define_insn.
10665
10666 2022-01-07 Haochen Gui <guihaoc@gcc.gnu.org>
10667
10668 * config/rs6000/rs6000.md (rs6000_mffscrni): Define.
10669 (rs6000_set_fpscr_rn): Change the type of operand[0] from DI to SI.
10670 Call gen_rs6000_mffscrni when operand[0] is a const_0_to_3_operand.
10671
10672 2022-01-07 liuhongt <hongtao.liu@intel.com>
10673
10674 * config/i386/sse.md
10675 (*<avx512>_eq<mode>3<mask_scalar_merge_name>_1): Extend to
10676 UNSPEC_PCMP_UNSIGNED.
10677
10678 2022-01-07 liuhongt <hongtao.liu@intel.com>
10679
10680 PR target/103753
10681 * config/i386/i386-expand.c (ix86_expand_vector_set): Not use
10682 gen_avx2_pblendph_1 when elt == 0.
10683 * config/i386/sse.md (avx2_pblendph): Rename to ..
10684 (avx2_pblend<ssemodesuffix>_1).. this, and extend to V16HI.
10685 (*avx2_pblendw): Rename to ..
10686 (*avx2_pblend<ssemodesuffix>): .. this, and extend to V16HF.
10687 (avx2_pblendw): Rename to ..
10688 (*avx2_pblend<ssemodesuffix>): .. this, and extend to V16HF.
10689 (blendsuf): Removed.
10690 (sse4_1_pblend<blendsuf>): Renamed to ..
10691 (sse4_1_pblend<ssemodesuffix>): .. this.
10692
10693 2022-01-06 H.J. Lu <hjl.tools@gmail.com>
10694
10695 PR target/103925
10696 * config/i386/i386.c (ix86_output_indirect_function_return):
10697 Generate INT3 after indirect jmp for -mharden-sls=indirect-jmp.
10698
10699 2022-01-06 H.J. Lu <hjl.tools@gmail.com>
10700
10701 PR target/102952
10702 * config/i386/i386-opts.h (harden_sls): Replace
10703 harden_sls_indirect_branch with harden_sls_indirect_jmp.
10704 * config/i386/i386.c (ix86_output_jmp_thunk_or_indirect):
10705 Likewise.
10706 (ix86_output_indirect_jmp): Likewise.
10707 (ix86_output_call_insn): Likewise.
10708 * config/i386/i386.opt: Replace indirect-branch with
10709 indirect-jmp. Replace harden_sls_indirect_branch with
10710 harden_sls_indirect_jmp.
10711 * doc/invoke.texi (-harden-sls=): Replace indirect-branch with
10712 indirect-jmp.
10713
10714 2022-01-06 Uroš Bizjak <ubizjak@gmail.com>
10715
10716 * config/i386/i386.c (ix86_output_ssemov) <MODE_DI>:
10717 Add %q modifier for operands in general registers.
10718 <MODE_SI>: Add %q modifier for operands in general registers.
10719 * config/i386/i386.md (*movhi_internal): Change type attribute of
10720 xmm-gpr interunit alternatives 9,10 to ssemov and mode attribute
10721 to SImode for non-avx512fp16 targets.
10722 (*movhf_internal): Ditto for xmm-gpr interunit alternatives 6,8.
10723 * config/i386/mmx.md (*movv2qi_internal):
10724 Ditto for xmm-gpr interunit alternatives 8,9.
10725
10726 2022-01-06 Kito Cheng <kito.cheng@sifive.com>
10727
10728 * common/config/riscv/riscv-common.c (riscv_implied_info): Add
10729 vector extensions.
10730 (riscv_ext_version_table): Add version info for vector extensions.
10731 (riscv_ext_flag_table): Add option mask for vector extensions.
10732 * config/riscv/riscv-opts.h (MASK_VECTOR_EEW_32): New.
10733 (MASK_VECTOR_EEW_64): New.
10734 (MASK_VECTOR_EEW_FP_32): New.
10735 (MASK_VECTOR_EEW_FP_64): New.
10736 (MASK_ZVL32B): New.
10737 (MASK_ZVL64B): New.
10738 (MASK_ZVL128B): New.
10739 (MASK_ZVL256B): New.
10740 (MASK_ZVL512B): New.
10741 (MASK_ZVL1024B): New.
10742 (MASK_ZVL2048B): New.
10743 (MASK_ZVL4096B): New.
10744 (MASK_ZVL8192B): New.
10745 (MASK_ZVL16384B): New.
10746 (MASK_ZVL32768B): New.
10747 (MASK_ZVL65536B): New.
10748 (TARGET_ZVL32B): New.
10749 (TARGET_ZVL64B): New.
10750 (TARGET_ZVL128B): New.
10751 (TARGET_ZVL256B): New.
10752 (TARGET_ZVL512B): New.
10753 (TARGET_ZVL1024B): New.
10754 (TARGET_ZVL2048B): New.
10755 (TARGET_ZVL4096B): New.
10756 (TARGET_ZVL8192B): New.
10757 (TARGET_ZVL16384B): New.
10758 (TARGET_ZVL32768B): New.
10759 (TARGET_ZVL65536B): New.
10760 * config/riscv/riscv.opt (Mask(VECTOR)): New.
10761 (riscv_vector_eew_flags): New.
10762 (riscv_zvl_flags): New.
10763
10764 2022-01-06 Kito Cheng <kito.cheng@sifive.com>
10765
10766 * common/config/riscv/riscv-common.c
10767 (riscv_subset_list::parse_multiletter_ext): Allow ext. name has
10768 digit.
10769
10770 2022-01-06 Jakub Jelinek <jakub@redhat.com>
10771
10772 PR tree-optimization/103899
10773 * expr.c (expand_expr_real_1): Add a workaround for bogus uninit
10774 warning by moving context variable to the only spot where it is used
10775 and moving gcc_assert into if body.
10776
10777 2022-01-06 Jakub Jelinek <jakub@redhat.com>
10778
10779 PR rtl-optimization/103908
10780 * ifcvt.c (bb_valid_for_noce_process_p): Punt on bbs ending with
10781 asm goto.
10782
10783 2022-01-05 Bill Schmidt <wschmidt@linux.ibm.com>
10784
10785 PR target/103622
10786 * config/rs6000/rs6000-c.c (altivec_resolve_overloaded_builtin):
10787 Skip over instances with undefined function types.
10788
10789 2022-01-05 Andrew Pinski <apinski@marvell.com>
10790
10791 PR target/103910
10792 * config/i386/i386.h (x86_mfence): Mark with GTY.
10793
10794 2022-01-05 Uroš Bizjak <ubizjak@gmail.com>
10795
10796 PR target/103861
10797 * config/i386/mmx.md (VI_16_32): New mode iterator.
10798 (VI1_16_32): Ditto.
10799 (mmxvecsize): Handle V2QI mode.
10800 (<smaxmin:code><mode>3): Rename from <smaxmin:code>v4qi3.
10801 Use VI1_16_32 mode iterator.
10802 (<umaxmin:code><mode>3): Rename from <umaxmin:code>v4qi3.
10803 Use VI1_16_32 mode iterator.
10804 (abs<mode>2): Use VI_16_32 mode iterator.
10805 (uavgv2qi3_ceil): New insn pattern.
10806
10807 2022-01-05 Martin Sebor <msebor@redhat.com>
10808
10809 * gimple-ssa-warn-access.cc (pass_waccess::maybe_warn_memmodel): Use
10810 %qs to avoid -Wformat-diag.
10811
10812 2022-01-05 Uroš Bizjak <ubizjak@gmail.com>
10813
10814 PR target/103915
10815 * config/i386/mmx.md (one_cmplv2qi2): Change
10816 alternatives 1,2 type from sselog to sselog1.
10817
10818 2022-01-05 Uroš Bizjak <ubizjak@gmail.com>
10819
10820 PR target/103905
10821 * config/i386/i386-expand.c (expand_vec_perm_pshufb): Fix number of
10822 narrow mode remapped elements for !one_operand_p case.
10823
10824 2022-01-05 Richard Biener <rguenther@suse.de>
10825
10826 PR tree-optimization/103816
10827 * tree-vect-data-refs.c (vect_analyze_group_access_1): Also
10828 check DR_GROUP_GAP compute for overflow and representability.
10829
10830 2022-01-05 Jakub Jelinek <jakub@redhat.com>
10831
10832 PR fortran/103691
10833 * gimple-fold.c (fold_stmt_1): Don't call maybe_fold_reference
10834 for DEBUG stmts with ADDR_EXPR gimple_debug_bind_get_value,
10835 it can do unwanted rhs folding like &a[0] into &2.0 etc.
10836
10837 2022-01-05 Kewen Lin <linkw@linux.ibm.com>
10838
10839 PR ipa/102059
10840 * config/rs6000/rs6000.c (TARGET_NEED_IPA_FN_TARGET_INFO): New macro.
10841 (TARGET_UPDATE_IPA_FN_TARGET_INFO): Likewise.
10842 (rs6000_need_ipa_fn_target_info): New function.
10843 (rs6000_update_ipa_fn_target_info): Likewise.
10844 (rs6000_can_inline_p): Adjust for ipa function summary target info.
10845 * config/rs6000/rs6000.h (RS6000_FN_TARGET_INFO_HTM): New macro.
10846 * ipa-fnsummary.c (ipa_dump_fn_summary): Adjust for ipa function
10847 summary target info.
10848 (analyze_function_body): Adjust for ipa function summary target info
10849 and call hook rs6000_need_ipa_fn_target_info and
10850 rs6000_update_ipa_fn_target_info.
10851 (ipa_merge_fn_summary_after_inlining): Adjust for ipa function summary
10852 target info.
10853 (inline_read_section): Likewise.
10854 (ipa_fn_summary_write): Likewise.
10855 * ipa-fnsummary.h (ipa_fn_summary::target_info): New member.
10856 * doc/tm.texi: Regenerate.
10857 * doc/tm.texi.in (TARGET_UPDATE_IPA_FN_TARGET_INFO): Document new hook.
10858 (TARGET_NEED_IPA_FN_TARGET_INFO): Likewise.
10859 * target.def (update_ipa_fn_target_info): New hook.
10860 (need_ipa_fn_target_info): Likewise.
10861 * targhooks.c (default_need_ipa_fn_target_info): New function.
10862 (default_update_ipa_fn_target_info): Likewise.
10863 * targhooks.h (default_update_ipa_fn_target_info): New declare.
10864 (default_need_ipa_fn_target_info): Likewise.
10865
10866 2022-01-04 Martin Sebor <msebor@redhat.com>
10867
10868 PR middle-end/99612
10869 * builtins.c (get_memmodel): Move warning code to
10870 gimple-ssa-warn-access.cc.
10871 (expand_builtin_atomic_compare_exchange): Same.
10872 (expand_ifn_atomic_compare_exchange): Same.
10873 (expand_builtin_atomic_load): Same.
10874 (expand_builtin_atomic_store): Same.
10875 (expand_builtin_atomic_clear): Same.
10876 * doc/extend.texi (__atomic_exchange_n): Update valid memory
10877 models.
10878 * gimple-ssa-warn-access.cc (memmodel_to_uhwi): New function.
10879 (struct memmodel_pair): New struct.
10880 (memmodel_name): New function.
10881 (pass_waccess::maybe_warn_memmodel): New function.
10882 (pass_waccess::check_atomic_memmodel): New function.
10883 (pass_waccess::check_atomic_builtin): Handle memory model.
10884 * input.c (expansion_point_location_if_in_system_header): Return
10885 original location if expansion location is in a system header.
10886
10887 2022-01-04 Uroš Bizjak <ubizjak@gmail.com>
10888
10889 PR target/103861
10890 * config/i386/mmx.md (one_cmplv2qi3): New insn pattern.
10891 (one_cmplv2qi3 splitters): New post-reload splitters.
10892 (*andnotv2qi3): New insn pattern.
10893 (andnotv2qi3 splitters): New post-reload splitters.
10894 (<any_logic:code>v2qi3): New insn pattern.
10895 (<any_logic:insn>v2qi3 splitters): New post-reload splitters.
10896
10897 2022-01-04 Richard Biener <rguenther@suse.de>
10898
10899 PR tree-optimization/103800
10900 * tree-vect-loop.c (vectorizable_phi): Remove assert and
10901 expand comment.
10902
10903 2022-01-04 Richard Biener <rguenther@suse.de>
10904
10905 PR tree-optimization/103690
10906 * tree-pass.h (tail_merge_optimize): Adjust.
10907 * tree-ssa-tail-merge.c (tail_merge_optimize): Pass in whether
10908 to re-split critical edges, move CFG cleanup ...
10909 * tree-ssa-pre.c (pass_pre::execute): ... here, before
10910 simple_dce_from_worklist and delay freeing inserted_exprs from
10911 ...
10912 (fini_pre): .. here.
10913
10914 2022-01-04 Roger Sayle <roger@nextmovesoftware.com>
10915
10916 * config/nvptx/nvptx.h (STORE_FLAG_VALUE): Change to 1.
10917 * config/nvptx/nvptx.md (movbi): Use P1 constraint for true.
10918 (setcc_from_bi): Remove SImode specific pattern.
10919 (setcc<mode>_from_bi): Provide more general HSDIM pattern.
10920 (extendbi<mode>2, zeroextendbi<mode>2): Provide instructions
10921 for sign- and zero-extending BImode predicates to integers.
10922 (setcc_int<mode>): Remove previous (-1-based) instructions.
10923 (cstorebi4): Remove BImode to SImode specific expander.
10924 (cstore<mode>4): Fix indentation. Expand using setccsi_from_bi.
10925 (cstore<mode>4): For both integer and floating point modes.
10926
10927 2022-01-04 Olivier Hainque <hainque@adacore.com>
10928
10929 * gcc.c (driver_handle_option): do_save --sysroot.
10930
10931 2022-01-04 Richard Biener <rguenther@suse.de>
10932
10933 PR tree-optimization/103864
10934 PR tree-optimization/103544
10935 * tree-vect-slp.c (vect_analyze_slp_instance): Exclude
10936 reductions wrapped in conversions from SLP handling.
10937 (vect_analyze_slp): Revert PR103544 change.
10938
10939 2022-01-04 Jakub Jelinek <jakub@redhat.com>
10940
10941 PR rtl-optimization/103860
10942 * shrink-wrap.c (try_shrink_wrapping): Don't call can_get_prologue
10943 uselessly for blocks for which it has been called already.
10944
10945 2022-01-04 Cui,Lili <lili.cui@intel.com>
10946
10947 * common/config/i386/cpuinfo.h (get_intel_cpu): Add new model values
10948 to Alderlake and Rocketlake.
10949
10950 2022-01-04 Chung-Lin Tang <cltang@codesourcery.com>
10951
10952 PR middle-end/103643
10953 * gimplify.c (gimplify_omp_affinity): Adjust gimplify_expr of entire
10954 OMP_CLAUSE_DECL to use 'is_gimple_lvalue, fb_lvalue'
10955
10956 2022-01-04 liuhongt <hongtao.liu@intel.com>
10957
10958 PR target/103895
10959 * config/i386/sse.md (*bit_and_float_vector_all_ones):
10960 Force_reg operand 1 to avoid ICE.
10961
10962 2022-01-04 Jason Merrill <jason@redhat.com>
10963
10964 * tree-pretty-print.c (do_niy): Add spc parameter.
10965 (NIY): Pass it.
10966 (print_call_name): Add spc local variable.
10967
10968 2022-01-03 Uroš Bizjak <ubizjak@gmail.com>
10969
10970 PR target/103894
10971 * config/i386/mmx.md (mov<V_32:mode>): Remove TARGET_SSE2 constraint.
10972 (mov<V_32:mode>_internal): Ditto.
10973 (*push<V_32:mode>_rex64): Ditto.
10974 (movmisalign<V_32:mode>): Ditto.
10975 (*push<V_32:mode>_rex64 splitter): Enable for
10976 TARGET_64BIT && TARGET_SSE.
10977 (*push<V_32:mode>2): Remove insn pattern.
10978
10979 2022-01-03 Andrew Pinski <apinski@marvell.com>
10980
10981 PR c/33193
10982 * doc/extend.texi: Extend the documentation about Complex
10983 types for casting and also rewrite the __real__/__imag__
10984 expression portion to use tables.
10985 Move __builtin_complex to the Complex type section.
10986
10987 2022-01-03 Jakub Jelinek <jakub@redhat.com>
10988
10989 PR target/98737
10990 * internal-fn.def (ATOMIC_ADD_FETCH_CMP_0, ATOMIC_SUB_FETCH_CMP_0,
10991 ATOMIC_AND_FETCH_CMP_0, ATOMIC_OR_FETCH_CMP_0, ATOMIC_XOR_FETCH_CMP_0):
10992 New internal fns.
10993 * internal-fn.h (ATOMIC_OP_FETCH_CMP_0_EQ, ATOMIC_OP_FETCH_CMP_0_NE,
10994 ATOMIC_OP_FETCH_CMP_0_LT, ATOMIC_OP_FETCH_CMP_0_LE,
10995 ATOMIC_OP_FETCH_CMP_0_GT, ATOMIC_OP_FETCH_CMP_0_GE): New enumerators.
10996 * internal-fn.c (expand_ATOMIC_ADD_FETCH_CMP_0,
10997 expand_ATOMIC_SUB_FETCH_CMP_0, expand_ATOMIC_AND_FETCH_CMP_0,
10998 expand_ATOMIC_OR_FETCH_CMP_0, expand_ATOMIC_XOR_FETCH_CMP_0): New
10999 functions.
11000 * optabs.def (atomic_add_fetch_cmp_0_optab,
11001 atomic_sub_fetch_cmp_0_optab, atomic_and_fetch_cmp_0_optab,
11002 atomic_or_fetch_cmp_0_optab, atomic_xor_fetch_cmp_0_optab): New
11003 direct optabs.
11004 * builtins.h (expand_ifn_atomic_op_fetch_cmp_0): Declare.
11005 * builtins.c (expand_ifn_atomic_op_fetch_cmp_0): New function.
11006 * tree-ssa-ccp.c: Include internal-fn.h.
11007 (optimize_atomic_bit_test_and): Add . before internal fn call
11008 in function comment. Change return type from void to bool and
11009 return true only if successfully replaced.
11010 (optimize_atomic_op_fetch_cmp_0): New function.
11011 (pass_fold_builtins::execute): Use optimize_atomic_op_fetch_cmp_0
11012 for BUILT_IN_ATOMIC_{ADD,SUB,AND,OR,XOR}_FETCH_{1,2,4,8,16} and
11013 BUILT_IN_SYNC_{ADD,SUB,AND,OR,XOR}_AND_FETCH_{1,2,4,8,16},
11014 for *XOR* ones only if optimize_atomic_bit_test_and failed.
11015 * config/i386/sync.md (atomic_<plusminus_mnemonic>_fetch_cmp_0<mode>,
11016 atomic_<logic>_fetch_cmp_0<mode>): New define_expand patterns.
11017 (atomic_add_fetch_cmp_0<mode>_1, atomic_sub_fetch_cmp_0<mode>_1,
11018 atomic_<logic>_fetch_cmp_0<mode>_1): New define_insn patterns.
11019 * doc/md.texi (atomic_add_fetch_cmp_0<mode>,
11020 atomic_sub_fetch_cmp_0<mode>, atomic_and_fetch_cmp_0<mode>,
11021 atomic_or_fetch_cmp_0<mode>, atomic_xor_fetch_cmp_0<mode>): Document
11022 new named patterns.
11023
11024 2022-01-03 Richard Biener <rguenther@suse.de>
11025
11026 PR middle-end/103851
11027 * tree-cfg.c (move_sese_region_to_fn): Always release SSA names.
11028
11029 2022-01-03 Jakub Jelinek <jakub@redhat.com>
11030
11031 PR c++/94716
11032 * symtab.c: Include fold-const.h.
11033 (symtab_node::equal_address_to): If folding_initializer is true,
11034 handle it like memory_accessed. Simplify.
11035
11036 2022-01-03 Martin Liska <mliska@suse.cz>
11037
11038 * doc/extend.texi: Use ; for function declarations.
11039
11040 2022-01-03 Jakub Jelinek <jakub@redhat.com>
11041
11042 PR c++/103600
11043 * symtab.c (symtab_node::equal_address_to): Return 0 if one of
11044 VAR_DECLs has "non overlapping" attribute and rs1 != rs2.
11045
11046 2022-01-03 Jakub Jelinek <jakub@redhat.com>
11047
11048 * gcc.c (process_command): Update copyright notice dates.
11049 * gcov-dump.c (print_version): Ditto.
11050 * gcov.c (print_version): Ditto.
11051 * gcov-tool.c (print_version): Ditto.
11052 * gengtype.c (create_file): Ditto.
11053 * doc/cpp.texi: Bump @copying's copyright year.
11054 * doc/cppinternals.texi: Ditto.
11055 * doc/gcc.texi: Ditto.
11056 * doc/gccint.texi: Ditto.
11057 * doc/gcov.texi: Ditto.
11058 * doc/install.texi: Ditto.
11059 * doc/invoke.texi: Ditto.
11060
11061 2022-01-02 Uroš Bizjak <ubizjak@gmail.com>
11062
11063 PR target/103861
11064 * config/i386/i386.h (VALID_SSE2_REG_MODE): Add V2QImode.
11065 (VALID_INT_MODE_P): Ditto.
11066 * config/i386/i386.c (ix86_secondary_reload): Handle
11067 V2QImode reloads from SSE register to memory.
11068 (vector_mode_supported_p): Always return true for V2QImode.
11069 * config/i386/i386.md (*subqi_ext<mode>_2): New insn pattern.
11070 (*negqi_ext<mode>_2): Ditto.
11071 * config/i386/mmx.md (movv2qi): New expander.
11072 (movmisalignv2qi): Ditto.
11073 (*movv2qi_internal): New insn pattern.
11074 (*pushv2qi2): Ditto.
11075 (negv2qi2 and splitters): Ditto.
11076 (<plusminus:insn>v2qi3 and splitters): Ditto.
11077
11078 2022-01-02 John David Anglin <danglin@gcc.gnu.org>
11079
11080 * config/pa/pa.md (atomic_storeq): Use optab_libfunc to access
11081 sync_lock_test_and_set libfunc. Call convert_memory_address to
11082 convert memory address to Pmode.
11083 (atomic_storehi, atomic_storesi, atomic_storedi): Likewise.
11084
11085 \f
11086 Copyright (C) 2022 Free Software Foundation, Inc.
11087
11088 Copying and distribution of this file, with or without modification,
11089 are permitted in any medium without royalty provided the copyright
11090 notice and this notice are preserved.
This page took 0.492567 seconds and 4 git commands to generate.