11091 lines
382 KiB
Plaintext
11091 lines
382 KiB
Plaintext
2022-08-19 Release Manager
|
||
|
||
* GCC 12.2.0 released.
|
||
|
||
2022-08-17 Ilya Leoshkevich <iii@linux.ibm.com>
|
||
|
||
Backported from master:
|
||
2022-08-04 Ilya Leoshkevich <iii@linux.ibm.com>
|
||
|
||
* config/s390/vector.md (V_HW_FT): New iterator.
|
||
* config/s390/vx-builtins.md (vsel<mode>): Use V_HW_FT instead
|
||
of V_HW.
|
||
|
||
2022-08-12 Peter Bergner <bergner@linux.ibm.com>
|
||
|
||
Backported from master:
|
||
2022-07-26 Peter Bergner <bergner@linux.ibm.com>
|
||
|
||
PR c/106016
|
||
* expr.cc (count_type_elements): Handle OPAQUE_TYPE.
|
||
|
||
2022-08-11 Andre Simoes Dias Vieira <andre.simoesdiasvieira@arm.com>
|
||
|
||
Backported from master:
|
||
2022-07-25 Andre Vieira <andre.simoesdiasvieira@arm.com>
|
||
|
||
* config/aarch64/aarch64.md (rbit<mode>2): Rename this ...
|
||
(@aarch64_rbit<mode>): ... to this and change it in...
|
||
(ffs<mode>2,ctz<mode>2): ... here.
|
||
(@aarch64_rev16<mode>): New.
|
||
* config/aarch64/aarch64-builtins.cc: (aarch64_builtins):
|
||
Define the following enum AARCH64_REV16, AARCH64_REV16L,
|
||
AARCH64_REV16LL, AARCH64_RBIT, AARCH64_RBITL, AARCH64_RBITLL.
|
||
(aarch64_init_data_intrinsics): New.
|
||
(aarch64_general_init_builtins): Add call to
|
||
aarch64_init_data_intrinsics.
|
||
(aarch64_expand_builtin_data_intrinsic): New.
|
||
(aarch64_general_expand_builtin): Add call to
|
||
aarch64_expand_builtin_data_intrinsic.
|
||
* config/aarch64/arm_acle.h (__clz, __clzl, __clzll, __cls, __clsl,
|
||
__clsll, __rbit, __rbitl, __rbitll, __rev, __revl, __revll, __rev16,
|
||
__rev16l, __rev16ll, __ror, __rorl, __rorll, __revsh): New.
|
||
|
||
2022-08-10 Tobias Burnus <tobias@codesourcery.com>
|
||
|
||
Backported from master:
|
||
2022-08-09 Tobias Burnus <tobias@codesourcery.com>
|
||
|
||
PR middle-end/106492
|
||
* omp-low.cc (lower_rec_input_clauses): Add missing folding
|
||
to data type of linear-clause list item.
|
||
|
||
2022-08-10 Richard Biener <rguenther@suse.de>
|
||
|
||
Backported from master:
|
||
2022-08-10 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/106513
|
||
* gimple-ssa-store-merging.cc (do_shift_rotate): Use uint64_t
|
||
for head_marker.
|
||
|
||
2022-08-10 Richard Biener <rguenther@suse.de>
|
||
|
||
Backported from master:
|
||
2022-08-08 Richard Biener <rguenther@suse.de>
|
||
|
||
PR lto/106540
|
||
PR lto/106334
|
||
* lto-streamer-in.cc (lto_read_tree_1): Use lto_input_tree_1
|
||
to input DECL_INITIAL, avoiding to commit drefs.
|
||
|
||
2022-08-05 Michael Meissner <meissner@linux.ibm.com>
|
||
|
||
* config/rs6000/rs6000.cc (rs6000_option_override_internal): Remove code
|
||
setting -mblock-ops-vector-pair. Back port patch from trunk on 8/3.
|
||
|
||
2022-08-02 Peter Bergner <bergner@linux.ibm.com>
|
||
|
||
Backported from master:
|
||
2022-07-25 Peter Bergner <bergner@linux.ibm.com>
|
||
Kewen Lin <linkw@linux.ibm.com>
|
||
|
||
PR testsuite/106345
|
||
* config/rs6000/rs6000.h (DRIVER_SELF_SPECS): Adjust -mdejagnu-cpu
|
||
to filter out all -mtune options.
|
||
|
||
2022-08-02 Kewen Lin <linkw@linux.ibm.com>
|
||
|
||
Backported from master:
|
||
2022-07-26 Kewen Lin <linkw@linux.ibm.com>
|
||
|
||
PR target/106091
|
||
* config/rs6000/rs6000-p8swap.cc (replace_swapped_aligned_store): Copy
|
||
REG_EH_REGION when replacing one store insn having it.
|
||
(replace_swapped_aligned_load): Likewise.
|
||
|
||
2022-07-30 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-07-29 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR middle-end/106449
|
||
* omp-expand.cc (expand_omp_simd): Fix up handling of pointer
|
||
iterators in non-rectangular simd loops. Unshare fd->loops[i].n2
|
||
or n2 before regimplifying it inside of a condition.
|
||
|
||
2022-07-30 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-07-27 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR debug/106261
|
||
* cgraphunit.cc (cgraph_node::assemble_thunks_and_aliases): Don't
|
||
output asm thunks for -dx.
|
||
|
||
2022-07-30 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-07-01 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR middle-end/106144
|
||
* wide-int.cc (wi::shifted_mask): If end >= prec, return right after
|
||
emitting element for shift or if shift is 0 first element after start.
|
||
(wide_int_cc_tests): Add tests for equivalency of wi::mask and
|
||
wi::shifted_mask with 0 start.
|
||
|
||
2022-07-27 David Malcolm <dmalcolm@redhat.com>
|
||
|
||
* json.cc (string::print): Fix escaping of '\'.
|
||
|
||
2022-07-27 David Malcolm <dmalcolm@redhat.com>
|
||
|
||
* doc/invoke.texi (-fdump-analyzer-feasibility): Mention the
|
||
fpath.txt output.
|
||
|
||
2022-07-27 Maciej W. Rozycki <macro@embecosm.com>
|
||
|
||
Backported from master:
|
||
2022-07-27 Maciej W. Rozycki <macro@embecosm.com>
|
||
|
||
* config/riscv/riscv.md (stack_protect_set_<mode>): Remove
|
||
duplicate backslashes.
|
||
|
||
2022-07-27 Richard Biener <rguenther@suse.de>
|
||
|
||
Backported from master:
|
||
2022-07-26 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/106189
|
||
* gimple-array-bounds.cc (array_bounds_checker::check_mem_ref):
|
||
Divide using offset_ints.
|
||
|
||
2022-07-27 Joseph Myers <joseph@codesourcery.com>
|
||
|
||
Backported from master:
|
||
2022-06-30 Joseph Myers <joseph@codesourcery.com>
|
||
|
||
PR lto/106129
|
||
* lto-wrapper.cc (find_option): Add argument start.
|
||
(merge_and_complain): Loop over existing_opt_index and
|
||
existing_opt2_index for Xassembler check. Update calls to
|
||
find_option.
|
||
(find_and_merge_options): Add argument first to determine whether
|
||
to merge options with those passed in *opts.
|
||
(run_gcc): Update calls to find_and_merge_options.
|
||
|
||
2022-07-27 Andrew Pinski <apinski@marvell.com>
|
||
|
||
Backported from master:
|
||
2022-07-09 Andrew Pinski <apinski@marvell.com>
|
||
|
||
PR tree-optimization/106087
|
||
* tree-ssa-dce.cc (simple_dce_from_worklist): Check
|
||
to make sure the statement is only defining one operand.
|
||
|
||
2022-07-27 Tamar Christina <tamar.christina@arm.com>
|
||
|
||
Backported from master:
|
||
2022-07-08 Tamar Christina <tamar.christina@arm.com>
|
||
|
||
PR tree-optimization/106063
|
||
* match.pd: Do not apply pattern after veclower is not supported.
|
||
|
||
2022-07-27 Alexandre Oliva <oliva@adacore.com>
|
||
|
||
Backported from master:
|
||
2022-06-03 Alexandre Oliva <oliva@adacore.com>
|
||
|
||
PR tree-optimization/105665
|
||
PR tree-optimization/100810
|
||
* tree-ssa-loop-ivopts.cc
|
||
(ssa_name_maybe_undef_p, ssa_name_set_maybe_undef): New.
|
||
(ssa_name_any_use_dominates_bb_p, mark_ssa_maybe_undefs): New.
|
||
(find_ssa_undef): Check precomputed flag and intervening uses.
|
||
(tree_ssa_iv_optimize): Call mark_ssa_maybe_undefs.
|
||
|
||
2022-07-25 Sebastian Huber <sebastian.huber@embedded-brains.de>
|
||
|
||
Backported from master:
|
||
2022-07-25 Sebastian Huber <sebastian.huber@embedded-brains.de>
|
||
|
||
* config/rs6000/rtems.h (CPLUSPLUS_CPP_SPEC): Undef.
|
||
|
||
2022-07-19 Richard Biener <rguenther@suse.de>
|
||
|
||
Backported from master:
|
||
2022-07-19 Richard Biener <rguenther@suse.de>
|
||
|
||
PR middle-end/106331
|
||
* builtins.cc (get_memory_rtx): Compute alignment from
|
||
the original address and set MEM_OFFSET to unknown when
|
||
we create a MEM_EXPR from the base object of the address.
|
||
|
||
2022-07-19 Richard Biener <rguenther@suse.de>
|
||
|
||
Backported from master:
|
||
2022-07-01 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/106131
|
||
* tree-ssa-sccvn.cc (vn_reference_lookup_3): Force alias-set
|
||
zero when offsetting the read looking through an aggregate
|
||
copy.
|
||
|
||
2022-07-19 Richard Biener <rguenther@suse.de>
|
||
|
||
Backported from master:
|
||
2022-06-29 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/106112
|
||
* tree-ssa-sccvn.cc (valueized_wider_op): Properly extend
|
||
a constant operand according to its type.
|
||
|
||
2022-07-19 Richard Biener <rguenther@suse.de>
|
||
|
||
Backported from master:
|
||
2022-06-20 Richard Biener <rguenther@suse.de>
|
||
|
||
PR middle-end/106027
|
||
* fold-const.cc (fold_to_nonsharp_ineq_using_bound): Use the
|
||
type of the prevailing comparison for the new comparison type.
|
||
(fold_binary_loc): Use proper types for the A < X && A + 1 > Y
|
||
to A < X && A >= Y folding.
|
||
|
||
2022-07-19 Richard Biener <rguenther@suse.de>
|
||
|
||
Backported from master:
|
||
2022-06-15 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/105971
|
||
* tree-ssa-alias.cc (refs_may_alias_p_2): Put bail-out for
|
||
FUNCTION_DECL and LABEL_DECL refs after decl-decl disambiguation
|
||
to leak less surprising alias results.
|
||
|
||
2022-07-19 Richard Biener <rguenther@suse.de>
|
||
|
||
Backported from master:
|
||
2022-06-15 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/105969
|
||
* gimple-ssa-sprintf.cc (get_origin_and_offset_r): Avoid division
|
||
by zero in overflow check.
|
||
|
||
2022-07-19 Richard Biener <rguenther@suse.de>
|
||
|
||
Backported from master:
|
||
2022-06-14 Richard Biener <rguenther@suse.de>
|
||
|
||
PR middle-end/105965
|
||
* match.pd (view_convert CONSTRUCTOR): Handle single-element
|
||
CTOR case.
|
||
|
||
2022-07-19 Richard Biener <rguenther@suse.de>
|
||
|
||
Backported from master:
|
||
2022-06-14 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/105946
|
||
* tree-ssa-uninit.cc (maybe_warn_pass_by_reference):
|
||
Do not look at arguments not specified in the function call.
|
||
|
||
2022-07-19 Richard Biener <rguenther@suse.de>
|
||
|
||
Backported from master:
|
||
2022-07-11 Richard Biener <rguenthert@suse.de>
|
||
|
||
PR target/105459
|
||
* config/i386/i386-options.cc (ix86_set_current_function):
|
||
Rebuild the target optimization node whenever necessary,
|
||
not only when the optimization node didn't change.
|
||
|
||
2022-07-14 Michael Meissner <meissner@linux.ibm.com>
|
||
|
||
* config/rs6000/rs6000.cc (rs6000_option_override_internal): Do
|
||
not generate block copies with vector pair instructions if we are
|
||
tuning for power10. Back port from master branch.
|
||
|
||
2022-07-14 Surya Kumari Jangala <jskumari@linux.vnet.ibm.com>
|
||
|
||
Backported from master:
|
||
2022-06-14 Surya Kumari Jangala <jskumari@linux.ibm.com>
|
||
|
||
PR rtl-optimization/105041
|
||
* regrename.cc (check_new_reg_p): Use nregs value from du chain.
|
||
|
||
2022-07-11 Martin Jambor <mjambor@suse.cz>
|
||
|
||
Backported from master:
|
||
2022-07-04 Martin Jambor <mjambor@suse.cz>
|
||
|
||
PR tree-optimization/105860
|
||
* tree-sra.cc (build_reconstructed_reference): Start expr
|
||
traversal only just below the outermost union.
|
||
|
||
2022-07-10 Xi Ruoyao <xry111@xry111.site>
|
||
|
||
Backported from master:
|
||
2022-07-10 Xi Ruoyao <xry111@xry111.site>
|
||
|
||
* config/loongarch/loongarch.md (mulsidi3_64bit): Use mulw.d.w
|
||
instead of mul.d.
|
||
|
||
2022-07-09 Roger Sayle <roger@nextmovesoftware.com>
|
||
Uroš Bizjak <ubizjak@gmail.com>
|
||
|
||
PR target/105930
|
||
* config/i386/i386.md (*<any_or>di3_doubleword): Split after
|
||
reload. Use rtx_equal_p to avoid creating memory-to-memory moves,
|
||
and emit NOTE_INSN_DELETED if operand[2] is zero (i.e. with -O0).
|
||
|
||
2022-07-08 Lulu Cheng <chenglulu@loongson.cn>
|
||
|
||
Backported from master:
|
||
2022-07-08 Lulu Cheng <chenglulu@loongson.cn>
|
||
|
||
* config/loongarch/loongarch.cc (loongarch_compute_frame_info):
|
||
Modify fp_sp_offset and gp_sp_offset's calculation method,
|
||
when frame->mask or frame->fmask is zero, don't minus UNITS_PER_WORD
|
||
or UNITS_PER_FP_REG.
|
||
|
||
2022-07-04 Andrew MacLeod <amacleod@redhat.com>
|
||
|
||
PR tree-optimization/106114
|
||
* gimple-range-fold.cc (fold_using_range::relation_fold_and_or): Check
|
||
statement operands instead of GORI cache.
|
||
|
||
2022-07-04 Roger Sayle <roger@nextmovesoftware.com>
|
||
Marek Polacek <polacek@redhat.com>
|
||
Segher Boessenkool <segher@kernel.crashing.org>
|
||
Kewen Lin <linkw@linux.ibm.com>
|
||
|
||
PR target/105991
|
||
* config/rs6000/rs6000.md (rotl<mode>3_insert_3): Check that
|
||
exact_log2 doesn't return -1 (or zero).
|
||
(plus_xor): New code iterator.
|
||
(*rotl<mode>3_insert_3_<code>): New define_insn_and_split.
|
||
|
||
2022-07-04 Xi Ruoyao <xry111@xry111.site>
|
||
|
||
Backported from master:
|
||
2022-07-03 Xi Ruoyao <xry111@xry111.site>
|
||
Lulu Cheng <chenglulu@loongson.cn>
|
||
|
||
* config/loongarch/loongarch.cc (loongarch_check_zero_div_p):
|
||
New static function.
|
||
(loongarch_idiv_insns): Use loongarch_check_zero_div_p instead
|
||
of TARGET_CHECK_ZERO_DIV.
|
||
(loongarch_output_division): Likewise.
|
||
* common/config/loongarch/loongarch-common.cc
|
||
(TARGET_DEFAULT_TARGET_FLAGS): Remove unneeded hook.
|
||
* doc/invoke.texi: Update to match the new behavior.
|
||
|
||
2022-07-03 Roger Sayle <roger@nextmovesoftware.com>
|
||
|
||
PR target/106122
|
||
* config/i386/i386.md (peephole2): Avoid generating pop %esp
|
||
when optimizing for size.
|
||
|
||
2022-07-02 Sergei Trofimovich <siarheit@google.com>
|
||
|
||
Backported from master:
|
||
2022-06-29 Sergei Trofimovich <siarheit@google.com>
|
||
|
||
PR c++/106102
|
||
* system.h: Introduce INCLUDE_PTHREAD_H macros to include <pthread.h>.
|
||
|
||
2022-07-01 Vladimir Makarov <vmakarov@gcc.gnu.org>
|
||
|
||
Backported from master:
|
||
2022-05-28 Vladimir Makarov <vmakarov@gcc.gnu.org>
|
||
|
||
PR target/103722
|
||
* config/sh/sh.cc (sh_register_move_cost): Avoid cost "2" (which
|
||
is special) for various scenarios.
|
||
|
||
2022-06-29 Richard Biener <rguenther@suse.de>
|
||
|
||
Backported from master:
|
||
2022-05-11 Richard Biener <rguenther@suse.de>
|
||
|
||
PR bootstrap/105551
|
||
* opts.cc (finish_options): Also disable var-tracking if
|
||
!DWARF2_DEBUGGING_INFO.
|
||
|
||
2022-06-29 Lulu Cheng <chenglulu@loongson.cn>
|
||
|
||
Backported from master:
|
||
2022-06-29 Lulu Cheng <chenglulu@loongson.cn>
|
||
|
||
PR target/106097
|
||
* config/loongarch/loongarch.cc (loongarch_build_integer):
|
||
Remove undefined behavior from code.
|
||
|
||
2022-06-28 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-06-21 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR rtl-optimization/106032
|
||
* ifcvt.cc (noce_try_sign_mask): Punt if !t_unconditional, and
|
||
t may_trap_or_fault_p, even if it is cheap.
|
||
|
||
2022-06-28 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-06-21 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR middle-end/106030
|
||
* expr.cc (expand_cond_expr_using_cmove): Pass NULL_RTX instead of
|
||
temp to expand_operands if mode has been promoted.
|
||
|
||
2022-06-28 Xi Ruoyao <xry111@xry111.site>
|
||
|
||
Backported from master:
|
||
2022-06-28 Xi Ruoyao <xry111@xry111.site>
|
||
|
||
PR target/106096
|
||
* config/loongarch/loongarch.h (REG_CLASS_CONTENTS): Exclude
|
||
$r13 from SIBCALL_REGS.
|
||
* config/loongarch/loongarch.cc (loongarch_regno_to_class):
|
||
Change $r13 to JIRL_REGS.
|
||
|
||
2022-06-24 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
Backported from master:
|
||
2022-06-24 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* config/tilepro/gen-mul-tables.cc (tilegx_emit): Adjust loop
|
||
condition to avoid overflow.
|
||
|
||
2022-06-23 Martin Liska <mliska@suse.cz>
|
||
|
||
Backported from master:
|
||
2022-06-23 Martin Liska <mliska@suse.cz>
|
||
|
||
PR ipa/105600
|
||
* ipa-icf.cc (sem_item_optimizer::filter_removed_items):
|
||
Skip variables with body_removed.
|
||
|
||
2022-06-23 Siddhesh Poyarekar <siddhesh@gotplt.org>
|
||
|
||
Backported from master:
|
||
2022-06-21 Siddhesh Poyarekar <siddhesh@gotplt.org>
|
||
|
||
PR tree-optimization/105736
|
||
* tree-object-size.cc (addr_object_size): Return size_unknown
|
||
when object offset computation returns an error.
|
||
|
||
2022-06-23 Richard Sandiford <richard.sandiford@arm.com>
|
||
|
||
Backported from master:
|
||
2022-06-15 Richard Sandiford <richard.sandiford@arm.com>
|
||
|
||
PR tree-optimization/105254
|
||
PR tree-optimization/105940
|
||
Revert:
|
||
* config/aarch64/aarch64.cc
|
||
(aarch64_vector_costs::determine_suggested_unroll_factor): Take a
|
||
loop_vec_info as argument. Restrict the unroll factor to values
|
||
that divide the VF.
|
||
(aarch64_vector_costs::finish_cost): Update call accordingly.
|
||
|
||
2022-06-23 Kewen Lin <linkw@linux.ibm.com>
|
||
|
||
Backported from master:
|
||
2022-06-14 Kewen Lin <linkw@linux.ibm.com>
|
||
|
||
PR tree-optimization/105940
|
||
* tree-vect-loop.cc (vect_analyze_loop_2): Move the place of
|
||
applying suggested_unroll_factor after start_over.
|
||
|
||
2022-06-21 H.J. Lu <hjl.tools@gmail.com>
|
||
|
||
Backported from master:
|
||
2022-06-20 H.J. Lu <hjl.tools@gmail.com>
|
||
|
||
PR target/105960
|
||
* config/i386/i386.cc (ix86_function_ok_for_sibcall): Return
|
||
false if PIC register is used when calling ifunc functions.
|
||
|
||
2022-06-20 Uros Bizjak <ubizjak@gmail.com>
|
||
|
||
Backported from master:
|
||
2022-06-17 Uroš Bizjak <ubizjak@gmail.com>
|
||
|
||
PR target/105209
|
||
* config/alpha/alpha-protos.h (alpha_store_data_bypass_p): New.
|
||
* config/alpha/alpha.cc (alpha_store_data_bypass_p): New function.
|
||
(alpha_store_data_bypass_p_1): Ditto.
|
||
* config/alpha/ev4.md: Use alpha_store_data_bypass_p instead
|
||
of generic store_data_bypass_p.
|
||
(ev4_ist_c): Remove insn reservation.
|
||
|
||
2022-06-20 Uros Bizjak <ubizjak@gmail.com>
|
||
|
||
Backported from master:
|
||
2022-06-17 Uroš Bizjak <ubizjak@gmail.com>
|
||
|
||
PR target/105970
|
||
* config/i386/i386.cc (ix86_function_arg): Assert that
|
||
the mode of pointer argumet is equal to ptr_mode, not Pmode.
|
||
|
||
2022-06-19 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-06-18 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR middle-end/105998
|
||
* varasm.cc (narrowing_initializer_constant_valid_p): Check
|
||
SCALAR_INT_MODE_P instead of INTEGRAL_MODE_P, also break on
|
||
! INTEGRAL_TYPE_P and do the same check also on op{0,1}'s type.
|
||
|
||
2022-06-19 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-06-16 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR middle-end/105951
|
||
* tree-ssa-ccp.cc (optimize_atomic_bit_test_and,
|
||
optimize_atomic_op_fetch_cmp_0): Remember gimple_call_fn (call)
|
||
as last argument to the internal functions.
|
||
* builtins.cc (expand_ifn_atomic_bit_test_and): Adjust for the
|
||
extra call argument to ifns. If expand_atomic_fetch_op fails for the
|
||
lhs == NULL_TREE case, fall through into the optab code with
|
||
gen_reg_rtx (mode) as target. If second expand_atomic_fetch_op
|
||
fails, construct a CALL_EXPR and expand that.
|
||
(expand_ifn_atomic_op_fetch_cmp_0): Adjust for the extra call argument
|
||
to ifns. If expand_atomic_fetch_op fails, construct a CALL_EXPR and
|
||
expand that.
|
||
|
||
2022-06-19 Jan Hubicka <jh@suse.cz>
|
||
|
||
Backported from master:
|
||
2022-06-14 Jan Hubicka <hubicka@ucw.cz>
|
||
|
||
PR ipa/105739
|
||
* ipa-prop.cc (ipa_load_from_parm_agg): Punt on volatile loads.
|
||
|
||
2022-06-16 Richard Earnshaw <rearnsha@arm.com>
|
||
|
||
Backported from master:
|
||
2022-06-15 Richard Earnshaw <rearnsha@arm.com>
|
||
|
||
PR target/105981
|
||
* config/arm/arm.cc (gen_cpymem_ldrd_strd): Rename low_reg and hi_reg
|
||
to first_reg and second_reg respectively. Initialize them correctly
|
||
when generating big-endian code.
|
||
|
||
2022-06-15 Simon Wright <simon@pushface.org>
|
||
|
||
Backported from master:
|
||
2022-06-12 Simon Wright <simon@pushface.org>
|
||
|
||
PR target/104871
|
||
* config/darwin-driver.cc (darwin_find_version_from_kernel): If the OS
|
||
version is darwin20 (macOS 11) or greater, truncate the version to the
|
||
major number.
|
||
|
||
2022-06-15 Mark Mentovai <mark@mentovai.com>
|
||
|
||
Backported from master:
|
||
2022-06-12 Mark Mentovai <mark@mentovai.com>
|
||
|
||
* config/darwin-c.cc: Make -mmacosx-version-min more future-proof.
|
||
|
||
2022-06-15 Iain Sandoe <iain@sandoe.co.uk>
|
||
|
||
Backported from master:
|
||
2022-05-29 Iain Sandoe <iain@sandoe.co.uk>
|
||
|
||
PR target/105599
|
||
* config/darwin.h: Move versions-specific handling of multiply_defined
|
||
from SUBTARGET_DRIVER_SELF_SPECS to LINK_SPEC.
|
||
|
||
2022-06-15 liuhongt <hongtao.liu@intel.com>
|
||
|
||
PR target/105953
|
||
* config/i386/sse.md (*avx_cmp<mode>3_ltint_not): Force_reg
|
||
operands[3].
|
||
|
||
2022-06-14 H.J. Lu <hjl.tools@gmail.com>
|
||
|
||
Backported from master:
|
||
2022-06-13 H.J. Lu <hjl.tools@gmail.com>
|
||
|
||
* common/config/i386/cpuinfo.h (get_available_features): Require
|
||
AVX for F16C and VAES.
|
||
|
||
2022-06-14 Philipp Tomsich <philipp.tomsich@vrull.eu>
|
||
|
||
Backported from master:
|
||
2022-06-02 Philipp Tomsich <philipp.tomsich@vrull.eu>
|
||
|
||
* config/riscv/riscv.cc (riscv_build_integer_1): Rewrite value as
|
||
(-1 << 31) for the single-bit case, when operating on (1 << 31)
|
||
in SImode.
|
||
* config/riscv/riscv.h (SINGLE_BIT_MASK_OPERAND): Allow for
|
||
any single-bit value, moving the special case for (1 << 31) to
|
||
riscv_build_integer_1 (in riscv.c).
|
||
|
||
2022-06-08 Max Filippov <jcmvbkbc@gmail.com>
|
||
|
||
Backported from master:
|
||
2022-06-08 Max Filippov <jcmvbkbc@gmail.com>
|
||
|
||
PR target/105879
|
||
* config/xtensa/xtensa.md (movdi): Rename 'first' and 'second'
|
||
to 'lowpart' and 'highpart' so that they match 'gen_lowpart' and
|
||
'gen_highpart' bitwise semantics and fix order of highpart and
|
||
lowpart depending on target endianness.
|
||
|
||
2022-06-08 liuhongt <hongtao.liu@intel.com>
|
||
|
||
PR target/105854
|
||
* config/i386/sse.md (ssse3_palignrdi): Change alternative 2
|
||
from Yv to Yw.
|
||
|
||
2022-06-02 Philipp Tomsich <philipp.tomsich@vrull.eu>
|
||
|
||
Backported from master:
|
||
2022-05-13 Philipp Tomsich <philipp.tomsich@vrull.eu>
|
||
Manolis Tsamis <manolis.tsamis@vrull.eu>
|
||
|
||
* config/riscv/riscv.h (CLZ_DEFINED_VALUE_AT_ZERO): Implement.
|
||
(CTZ_DEFINED_VALUE_AT_ZERO): Same.
|
||
* doc/sourcebuild.texi: add documentation for RISC-V specific
|
||
test target keywords
|
||
|
||
2022-06-02 Richard Biener <rguenther@suse.de>
|
||
|
||
Backported from master:
|
||
2022-06-01 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/105786
|
||
* tree-loop-distribution.cc
|
||
(loop_distribution::transform_reduction_loop): Only do strlen
|
||
replacement for integer type reductions.
|
||
|
||
2022-06-02 Richard Biener <rguenther@suse.de>
|
||
|
||
Backported from master:
|
||
2022-05-27 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/105726
|
||
* gimple-ssa-warn-restrict.cc (builtin_memref::set_base_and_offset):
|
||
Constrain array-of-flexarray case more.
|
||
|
||
2022-06-02 Richard Biener <rguenther@suse.de>
|
||
|
||
Backported from master:
|
||
2022-05-24 Richard Biener <rguenther@suse.de>
|
||
|
||
PR middle-end/105711
|
||
* expmed.cc (extract_bit_field_as_subreg): Add op0_mode parameter
|
||
and use it.
|
||
(extract_bit_field_1): Pass down the mode of op0 to
|
||
extract_bit_field_as_subreg.
|
||
|
||
2022-06-02 Martin Sebor <msebor@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-05-24 Martin Sebor <msebor@redhat.com>
|
||
Richard Biener <rguenther@suse.de>
|
||
|
||
PR middle-end/105604
|
||
* gimple-ssa-sprintf.cc (set_aggregate_size_and_offset): Add comments.
|
||
(get_origin_and_offset_r): Remove null handling. Handle variable array
|
||
sizes.
|
||
(get_origin_and_offset): Handle null argument here. Simplify.
|
||
(alias_offset): Update comment.
|
||
* pointer-query.cc (field_at_offset): Update comment. Handle members
|
||
of variable-length types.
|
||
|
||
2022-06-02 Vineet Gupta <vineetg@rivosinc.com>
|
||
|
||
Backported from master:
|
||
2022-05-24 Vineet Gupta <vineetg@rivosinc.com>
|
||
|
||
* config/riscv/riscv.cc: (struct riscv_tune_param): Add
|
||
fmv_cost.
|
||
(rocket_tune_info): Add default fmv_cost 8.
|
||
(sifive_7_tune_info): Ditto.
|
||
(thead_c906_tune_info): Ditto.
|
||
(optimize_size_tune_info): Ditto.
|
||
(riscv_register_move_cost): Use fmv_cost for int<->fp moves.
|
||
|
||
2022-05-30 Martin Jambor <mjambor@suse.cz>
|
||
|
||
Backported from master:
|
||
2022-05-27 Martin Jambor <mjambor@suse.cz>
|
||
|
||
PR ipa/105639
|
||
* ipa-prop.cc (propagate_controlled_uses): Check type of the
|
||
constant before adding a LOAD reference.
|
||
|
||
2022-05-30 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-05-27 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR sanitizer/105729
|
||
* fold-const.cc (fold_unary_loc): Don't optimize (X &) ((Y *) z + w)
|
||
to (X &) z + w if -fsanitize=null during GENERIC folding.
|
||
|
||
2022-05-30 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-05-25 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR sanitizer/105714
|
||
* asan.cc (has_stmt_been_instrumented_p): For assignments which
|
||
are both stores and loads, return true only if both destination
|
||
and source have been instrumented.
|
||
|
||
2022-05-30 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-05-19 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR c/105635
|
||
* pointer-query.cc (gimple_parm_array_size): Return NULL if var
|
||
doesn't have pointer or reference type.
|
||
|
||
2022-05-26 Simon Cook <simon.cook@embecosm.com>
|
||
|
||
Backported from master:
|
||
2022-05-25 Simon Cook <simon.cook@embecosm.com>
|
||
|
||
* config/riscv/arch-canonicalize: Only add mafd extension if
|
||
base was rv32/rv64g.
|
||
|
||
2022-05-26 Kito Cheng <kito.cheng@sifive.com>
|
||
|
||
Backported from master:
|
||
2022-05-09 Kito Cheng <kito.cheng@sifive.com>
|
||
|
||
* config/riscv/arch-canonicalize: Handle g correctly.
|
||
|
||
2022-05-24 Qing Zhao <qing.zhao@oracle.com>
|
||
|
||
Backported from master:
|
||
2022-05-09 Qing Zhao <qing.zhao@oracle.com>
|
||
|
||
PR target/101891
|
||
* config/i386/i386.cc (zero_call_used_regno_mode): use V2SImode
|
||
as a generic MMX mode instead of V4HImode.
|
||
(zero_all_mm_registers): Use SET to zero instead of MOV for
|
||
zeroing scratch registers.
|
||
(ix86_zero_call_used_regs): Likewise.
|
||
|
||
2022-05-24 Bruno Haible <bruno@clisp.org>
|
||
|
||
Backported from master:
|
||
2022-05-24 Bruno Haible <bruno@clisp.org>
|
||
|
||
PR other/105527
|
||
* doc/install.texi (Configuration): Add more details about --with-zstd.
|
||
Document --with-zstd-include and --with-zstd-lib
|
||
|
||
2022-05-24 Martin Liska <mliska@suse.cz>
|
||
|
||
Backported from master:
|
||
2022-05-11 Martin Liska <mliska@suse.cz>
|
||
|
||
PR other/105527
|
||
* doc/install.texi: Document the configure option --with-zstd.
|
||
|
||
2022-05-20 Peter Bergner <bergner@linux.ibm.com>
|
||
|
||
Backported from master:
|
||
2022-05-18 Peter Bergner <bergner@linux.ibm.com>
|
||
Segher Boessenkool <segher@kernel.crashing.org>
|
||
|
||
PR target/105556
|
||
* config/rs6000/mma.md (mma_<vv>, mma_<avv>, mma_<pv>, mma_<apv>,
|
||
mma_<vvi4i4i8>, mma_<avvi4i4i8>, mma_<vvi4i4i2>, mma_<avvi4i4i2>,
|
||
mma_<vvi4i4>, mma_<avvi4i4>, mma_<pvi4i2>, mma_<apvi4i2>,
|
||
mma_<vvi4i4i4>, mma_<avvi4i4i4>): Replace "wa" constraints with "v,?wa".
|
||
Update other operands accordingly.
|
||
|
||
2022-05-20 Richard Biener <rguenther@suse.de>
|
||
|
||
Backported from master:
|
||
2022-05-04 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/103116
|
||
* tree-vect-stmts.cc (get_group_load_store_type): Handle the
|
||
case we need peeling for gaps even though GROUP_GAP is zero.
|
||
|
||
2022-05-19 Richard Biener <rguenther@suse.de>
|
||
|
||
Backported from master:
|
||
2022-05-17 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/105618
|
||
* tree-ssa-sink.cc (statement_sink_location): For virtual
|
||
PHI uses ignore those defining the used virtual operand.
|
||
|
||
2022-05-19 Richard Biener <rguenther@suse.de>
|
||
|
||
Backported from master:
|
||
2022-05-12 Richard Biener <rguenther@suse.de>
|
||
|
||
PR rtl-optimization/105577
|
||
* dse.cc (rest_of_handle_dse): Make sure to purge dead EH
|
||
edges before running fast DCE via df_analyze.
|
||
|
||
2022-05-19 Richard Biener <rguenther@suse.de>
|
||
|
||
Backported from master:
|
||
2022-05-12 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/105562
|
||
* tree-ssa-sccvn.cc (vn_reference_lookup_3): Disambiguate
|
||
against all CLOBBER defs if there's not an obvious must-alias
|
||
and we are not doing redundant store elimination.
|
||
(vn_walk_cb_data::redundant_store_removal_p): New field.
|
||
(vn_reference_lookup_pieces): Initialize it.
|
||
(vn_reference_lookup): Add argument to specify if we are
|
||
doing redundant store removal.
|
||
(eliminate_dom_walker::eliminate_stmt): Specify we do.
|
||
* tree-ssa-sccvn.h (vn_reference_lookup): Adjust.
|
||
|
||
2022-05-19 Richard Biener <rguenther@suse.de>
|
||
|
||
Backported from master:
|
||
2022-05-11 Richard Biener <rguenther@suse.de>
|
||
|
||
PR rtl-optimization/105559
|
||
* cfgrtl.cc (delete_insn_and_edges): Only perform search to BB_END
|
||
for non-debug insns.
|
||
|
||
2022-05-19 Richard Biener <rguenther@suse.de>
|
||
|
||
Backported from master:
|
||
2022-05-10 Richard Biener <rguenther@suse.de>
|
||
|
||
PR middle-end/105537
|
||
* toplev.cc (process_options): Move flag_var_tracking
|
||
handling ...
|
||
* opts.cc (finish_options): ... here.
|
||
|
||
2022-05-19 Richard Biener <rguenther@suse.de>
|
||
|
||
Backported from master:
|
||
2022-05-10 Richard Biener <rguenther@suse.de>
|
||
|
||
* flags.h (dwarf_debuginfo_p): Add opts argument, guard
|
||
API with !GENERATOR_FILE.
|
||
* opts.cc (global_options): Poison.
|
||
(global_options_set): Likewise.
|
||
(finish_options): Refer to options via opts.
|
||
|
||
2022-05-19 Richard Biener <rguenther@suse.de>
|
||
|
||
Backported from master:
|
||
2022-04-29 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/105431
|
||
* tree-ssa-math-opts.cc (powi_as_mults_1): Make n unsigned.
|
||
(powi_as_mults): Use absu_hwi.
|
||
(gimple_expand_builtin_powi): Remove now pointless n != -n
|
||
check.
|
||
|
||
2022-05-18 Andrew MacLeod <amacleod@redhat.com>
|
||
|
||
PR tree-optimization/105458
|
||
* value-relation.cc (path_oracle::register_relation): Merge, then check
|
||
for equivalence.
|
||
|
||
2022-05-16 Sebastian Pop <spop@amazon.com>
|
||
|
||
PR target/105162
|
||
* config/aarch64/aarch64-protos.h (atomic_ool_names): Increase dimension
|
||
of str array.
|
||
* config/aarch64/aarch64.cc (aarch64_atomic_ool_func): Call
|
||
memmodel_from_int and handle MEMMODEL_SYNC_*.
|
||
(DEF0): Add __aarch64_*_sync functions.
|
||
|
||
2022-05-16 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* dwarf2out.cc (loc_list_from_tree_1) <TRUTH_NOT_EXPR>: Do a logical
|
||
instead of a bitwise negation.
|
||
<COND_EXPR>: Swap the operands if the condition is TRUTH_NOT_EXPR.
|
||
|
||
2022-05-13 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* tree-sra.cc (sra_modify_assign): Check that scalar storage order
|
||
is the same on the LHS and RHS before rewriting one with the model
|
||
of the other.
|
||
|
||
2022-05-13 Alexandre Oliva <oliva@adacore.com>
|
||
|
||
Backported from master:
|
||
2022-05-13 Alexandre Oliva <oliva@adacore.com>
|
||
|
||
PR rtl-optimization/105455
|
||
* gimple-harden-conditionals.cc (insert_check_and_trap): Set
|
||
probabilities for newly-conditional edges.
|
||
|
||
2022-05-11 Martin Jambor <mjambor@suse.cz>
|
||
|
||
Backported from master:
|
||
2022-04-29 Martin Jambor <mjambor@suse.cz>
|
||
|
||
PR ipa/100413
|
||
* cgraph.cc (cgraph_node::remove): Release body of the node this
|
||
is clone_of if appropriate.
|
||
|
||
2022-05-10 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-05-10 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR tree-optimization/105528
|
||
* gimple-isel.cc (gimple_expand_vec_set_expr): After gsi_remove
|
||
set *gsi to gsi_for_stmt (ass_stmt). Fix up function comment.
|
||
|
||
2022-05-10 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
PR target/105292
|
||
* config/sparc/sparc.cc (sparc_vectorize_vec_perm_const): Return
|
||
true only for 8-byte vector modes.
|
||
|
||
2022-05-06 Michael Meissner <meissner@linux.ibm.com>
|
||
|
||
Backported from master:
|
||
2022-05-06 Michael Meissner <meissner@linux.ibm.com>
|
||
|
||
PR target/102059
|
||
* config/rs6000/rs6000.cc (rs6000_can_inline_p): Ignore -mpower8-fusion
|
||
and -mpower10-fusion options for inlining purposes.
|
||
|
||
2022-05-06 Richard Biener <rguenther@suse.de>
|
||
|
||
Backported from master:
|
||
2022-04-29 Richard Biener <rguenther@suse.de>
|
||
|
||
PR middle-end/105376
|
||
* tree.cc (build_real): Special case dconst* arguments
|
||
for decimal floating point types.
|
||
|
||
2022-05-06 Richard Biener <rguenther@suse.de>
|
||
|
||
Backported from master:
|
||
2022-05-05 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/105484
|
||
* gimple-isel.cc (gimple_expand_vec_set_expr): Clean EH, return
|
||
whether the CFG changed.
|
||
(gimple_expand_vec_exprs): When the CFG changed, clean it up.
|
||
|
||
2022-05-06 Richard Biener <rguenther@suse.de>
|
||
|
||
Backported from master:
|
||
2022-05-03 Richard Biener <rguenther@suse.de>
|
||
|
||
PR middle-end/105461
|
||
* opts.cc (finish_options): Match the condition to
|
||
disable flag_var_tracking to that of process_options.
|
||
|
||
2022-05-06 Richard Biener <rguenther@suse.de>
|
||
|
||
Backported from master:
|
||
2022-05-03 Richard Biener <rguenther@suse.de>
|
||
|
||
* opts.cc: #undef OPTIONS_SET_P.
|
||
(finish_options): Use opts_set instead of OPTIONS_SET_P.
|
||
|
||
2022-05-06 Richard Biener <rguenther@suse.de>
|
||
|
||
Backported from master:
|
||
2022-05-02 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/105437
|
||
* tree-vect-slp.cc (vect_schedule_slp_node): Handle the
|
||
case where last_stmt alters control flow.
|
||
|
||
2022-05-06 Richard Biener <rguenther@suse.de>
|
||
|
||
Backported from master:
|
||
2022-05-03 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/105394
|
||
* tree-vect-generic.cc (expand_vector_condition): Adjust
|
||
comp_width for non-integer mode masks as well.
|
||
|
||
2022-05-06 Release Manager
|
||
|
||
* GCC 12.1.0 released.
|
||
|
||
2022-05-02 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-05-02 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
* system.h: Include initializer_list.
|
||
|
||
2022-04-28 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR lto/105399
|
||
* cgraph.cc (cgraph_node::verify_node): Don't verify
|
||
semantic_interposition flag against
|
||
opt_for_fn (decl, flag_semantic_interposition) for aliases in lto1.
|
||
|
||
2022-04-28 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR target/105331
|
||
* config/i386/i386.cc (ix86_gimplify_va_arg): Mark va_arg_tmp
|
||
temporary TREE_ADDRESSABLE before trying to gimplify ADDR_EXPR
|
||
of it.
|
||
|
||
2022-04-28 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* doc/install.texi (Configuration): Remove misleading text
|
||
around LE PowerPC Linux multilibs.
|
||
|
||
2022-04-28 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
|
||
|
||
PR d/103528
|
||
* doc/install.texi (Tools/packages necessary for building GCC)
|
||
(GDC): Document libphobos requirement.
|
||
(Host/target specific installation notes for GCC, *-*-solaris2*):
|
||
Document libphobos and GDC specifics.
|
||
|
||
2022-04-28 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/105219
|
||
* tree-vect-loop.cc (vect_transform_loop): Disable
|
||
special code narrowing the vectorized epilogue max
|
||
iterations when peeling for alignment or gaps was in effect.
|
||
|
||
2022-04-28 Xi Ruoyao <xry111@mengyan1223.wang>
|
||
|
||
* config/loongarch/loongarch.cc
|
||
(loongarch_flatten_aggregate_field): Ignore empty fields for
|
||
RECORD_TYPE.
|
||
|
||
2022-04-27 Lulu Cheng <chenglulu@loongson.cn>
|
||
|
||
* config/loongarch/loongarch.md: Add fdiv define_expand template,
|
||
then generate floating-point division and floating-point reciprocal
|
||
instructions.
|
||
|
||
2022-04-27 Lulu Cheng <chenglulu@loongson.cn>
|
||
|
||
* config/loongarch/loongarch.md: Add '(clobber (mem:BLK (scratch)))'
|
||
to PLV instruction templates.
|
||
|
||
2022-04-27 Richard Biener <rguenther@suse.de>
|
||
|
||
PR middle-end/104492
|
||
* gimple-ssa-warn-access.cc
|
||
(pass_waccess::warn_invalid_pointer): Exclude equality compare
|
||
diagnostics for all kind of invalidations.
|
||
(pass_waccess::check_dangling_uses): Fix post-dominator query.
|
||
(pass_waccess::check_pointer_uses): Likewise.
|
||
|
||
2022-04-27 Andreas Krebbel <krebbel@linux.ibm.com>
|
||
|
||
PR target/102024
|
||
* config/s390/s390-protos.h (s390_function_arg_vector): Remove
|
||
prototype.
|
||
* config/s390/s390.cc (s390_single_field_struct_p): New function.
|
||
(s390_function_arg_vector): Invoke s390_single_field_struct_p.
|
||
(s390_function_arg_float): Likewise.
|
||
|
||
2022-04-27 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR sanitizer/105396
|
||
* asan.cc (asan_redzone_buffer::emit_redzone_byte): Handle the case
|
||
where offset is bigger than off but smaller than m_prev_offset + 32
|
||
bits by pushing one or more 0 bytes. Sink the
|
||
m_shadow_bytes.safe_push (value); flush_if_full (); statements from
|
||
all cases to the end of the function.
|
||
|
||
2022-04-27 Kewen Lin <linkw@linux.ibm.com>
|
||
|
||
PR target/105271
|
||
* config/rs6000/rs6000-builtins.def (NEG_V2DI): Move to [power8-vector]
|
||
stanza.
|
||
|
||
2022-04-26 Thomas Schwinge <thomas@codesourcery.com>
|
||
|
||
* config/gcn/gcn.cc (gcn_print_lds_decl): Make "gang-private
|
||
data-share memory exhausted" error more verbose.
|
||
|
||
2022-04-26 Martin Liska <mliska@suse.cz>
|
||
|
||
PR lto/105364
|
||
* lto-wrapper.cc (print_lto_docs_link): Use global_dc.
|
||
(run_gcc): Parse OPT_fdiagnostics_urls_.
|
||
(main): Initialize global_dc.
|
||
|
||
2022-04-26 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR rtl-optimization/105314
|
||
* ifcvt.cc (noce_try_store_flag_mask): Don't require that the non-zero
|
||
operand is equal to if_info->x, instead use the non-zero operand
|
||
as one of the operands of AND with if_info->x as target.
|
||
|
||
2022-04-26 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR tree-optimization/105374
|
||
* tree-ssa-reassoc.cc (eliminate_redundant_comparison): Punt if
|
||
!fold_convertible_p rather than assuming fold_convert must succeed.
|
||
|
||
2022-04-26 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR target/105367
|
||
* config/i386/i386.cc (ix86_veclibabi_svml, ix86_veclibabi_acml): Pass
|
||
el_mode == DFmode ? double_type_node : float_type_node instead of
|
||
TREE_TYPE (type_in) as first arguments to mathfn_built_in.
|
||
|
||
2022-04-25 David Malcolm <dmalcolm@redhat.com>
|
||
|
||
PR analyzer/104308
|
||
* gimple-fold.cc (gimple_fold_builtin_memory_op): Explicitly set
|
||
the location of new_stmt in all places that don't already set it,
|
||
whether explicitly, or via a call to gsi_replace.
|
||
|
||
2022-04-25 Paul A. Clarke <pc@us.ibm.com>
|
||
|
||
* doc/extend.texi (Other Builtins): Correct reference to 'modff'.
|
||
|
||
2022-04-25 Andrew MacLeod <amacleod@redhat.com>
|
||
|
||
PR tree-optimization/105276
|
||
* gimple-range.cc (gimple_ranger::prefill_stmt_dependencies): Include
|
||
existing global range with calculated value.
|
||
|
||
2022-04-25 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/105368
|
||
* tree-ssa-math-opts.cc (powi_cost): Use absu_hwi.
|
||
|
||
2022-04-25 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/100810
|
||
* tree-ssa-loop-ivopts.cc (struct iv_cand): Add involves_undefs flag.
|
||
(find_ssa_undef): New function.
|
||
(add_candidate_1): Avoid adding derived candidates with
|
||
undefined SSA names and mark the original ones.
|
||
(determine_group_iv_cost_generic): Reject rewriting
|
||
uses with a different IV when that involves undefined SSA names.
|
||
|
||
2022-04-25 Steven G. Kargl <kargl@gcc.gnu.org>
|
||
|
||
PR target/89125
|
||
* config/freebsd.h: Define TARGET_LIBC_HAS_FUNCTION to be
|
||
bsd_libc_has_function.
|
||
* targhooks.cc (bsd_libc_has_function): New function.
|
||
Expand the supported math functions to inclue C99 libm.
|
||
* targhooks.h (bsd_libc_has_function): New Prototype.
|
||
|
||
2022-04-25 Richard Biener <rguenther@suse.de>
|
||
|
||
PR rtl-optimization/105231
|
||
* combine.cc (distribute_notes): Assert that a REG_EH_REGION
|
||
with landing pad > 0 is from i3. Put any REG_EH_REGION note
|
||
on i3 or drop it if the insn can not trap.
|
||
(try_combine): Ensure that we can merge REG_EH_REGION notes
|
||
with non-call exceptions. Ensure we are not splitting a
|
||
trapping part of an insn with non-call exceptions when there
|
||
is any REG_EH_REGION note to preserve.
|
||
|
||
2022-04-25 Hongyu Wang <hongyu.wang@intel.com>
|
||
|
||
PR target/105339
|
||
* config/i386/avx512fintrin.h (_mm512_scalef_round_pd):
|
||
Add parentheses for parameters and djust format.
|
||
(_mm512_mask_scalef_round_pd): Ditto.
|
||
(_mm512_maskz_scalef_round_pd): Ditto.
|
||
(_mm512_scalef_round_ps): Ditto.
|
||
(_mm512_mask_scalef_round_ps): Ditto.
|
||
(_mm512_maskz_scalef_round_ps): Ditto.
|
||
(_mm_scalef_round_sd): Use _mm_undefined_pd.
|
||
(_mm_scalef_round_ss): Use _mm_undefined_ps.
|
||
(_mm_mask_scalef_round_sd): New macro.
|
||
(_mm_mask_scalef_round_ss): Ditto.
|
||
(_mm_maskz_scalef_round_sd): Ditto.
|
||
(_mm_maskz_scalef_round_ss): Ditto.
|
||
|
||
2022-04-23 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR target/105338
|
||
* config/i386/i386-expand.cc (ix86_expand_int_movcc): Handle
|
||
op0 == cst1 ? op0 : op3 like op0 == cst1 ? cst1 : op3 for the non-cmov
|
||
cases.
|
||
|
||
2022-04-22 Segher Boessenkool <segher@kernel.crashing.org>
|
||
|
||
PR target/105334
|
||
* config/rs6000/rs6000.md (pack<mode> for FMOVE128): New expander.
|
||
(pack<mode> for FMOVE128): Rename and split the insn_and_split to...
|
||
(pack<mode>_hard for FMOVE128): ... this...
|
||
(pack<mode>_soft for FMOVE128): ... and this.
|
||
|
||
2022-04-22 Paul A. Clarke <pc@us.ibm.com>
|
||
|
||
* doc/extend.texi: Correct "This" to "These".
|
||
|
||
2022-04-22 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR rtl-optimization/105333
|
||
* rtlanal.cc (replace_rtx): Use simplify_subreg or
|
||
simplify_unary_operation if CONST_SCALAR_INT_P rather than just
|
||
CONST_INT_P.
|
||
|
||
2022-04-21 Segher Boessenkool <segher@kernel.crashing.org>
|
||
|
||
PR target/103197
|
||
PR target/102146
|
||
* config/rs6000/rs6000.md (zero_extendqi<mode>2 for EXTQI): Disparage
|
||
the "Z" alternatives in {l,st}{f,xs}iwzx.
|
||
(zero_extendhi<mode>2 for EXTHI): Ditto.
|
||
(zero_extendsi<mode>2 for EXTSI): Ditto.
|
||
(*movsi_internal1): Ditto.
|
||
(*mov<mode>_internal1 for QHI): Ditto.
|
||
(movsd_hardfloat): Ditto.
|
||
|
||
2022-04-21 Martin Liska <mliska@suse.cz>
|
||
|
||
* configure.ac: Enable compressed debug sections for mold
|
||
linker.
|
||
* configure: Regenerate.
|
||
|
||
2022-04-21 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR debug/105203
|
||
* emit-rtl.cc (emit_copy_of_insn_after): Don't call mark_jump_label
|
||
on DEBUG_INSNs.
|
||
|
||
2022-04-20 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/104912
|
||
* tree-vect-loop-manip.cc (vect_loop_versioning): Split
|
||
the cost model check to a separate BB to make sure it is
|
||
checked first and not combined with other version checks.
|
||
|
||
2022-04-20 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/105312
|
||
* gimple-isel.cc (gimple_expand_vec_cond_expr): Query both
|
||
VCOND and VCONDU for EQ and NE.
|
||
|
||
2022-04-20 Jan Hubicka <hubicka@ucw.cz>
|
||
|
||
PR ipa/103818
|
||
* ipa-modref-tree.cc (modref_access_node::closer_pair_p): Use
|
||
poly_offset_int to avoid overflow.
|
||
(modref_access_node::update2): likewise.
|
||
|
||
2022-04-20 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR ipa/105306
|
||
* cgraph.cc (cgraph_node::create): Set node->semantic_interposition
|
||
to opt_for_fn (decl, flag_semantic_interposition).
|
||
* cgraphclones.cc (cgraph_node::create_clone): Copy over
|
||
semantic_interposition flag.
|
||
|
||
2022-04-19 Sergei Trofimovich <siarheit@google.com>
|
||
|
||
PR gcov-profile/105282
|
||
* value-prof.cc (stream_out_histogram_value): Allow negative counts
|
||
on HIST_TYPE_INDIR_CALL.
|
||
|
||
2022-04-19 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR target/105257
|
||
* config/sparc/sparc.cc (epilogue_renumber): If ORIGINAL_REGNO,
|
||
use gen_raw_REG instead of gen_rtx_REG and copy over also
|
||
ORIGINAL_REGNO. Use return 0; instead of /* fallthrough */.
|
||
|
||
2022-04-19 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/104010
|
||
PR tree-optimization/103941
|
||
* tree-vect-slp.cc (vect_bb_slp_scalar_cost): When
|
||
we run into stmts in patterns continue walking those
|
||
for uses outside of the vectorized region instead of
|
||
marking the lane live.
|
||
|
||
2022-04-18 Hans-Peter Nilsson <hp@axis.com>
|
||
|
||
* doc/install.texi <CRIS>: Remove references to removed websites and
|
||
adjust for cris-*-elf being the only remaining toolchain.
|
||
|
||
2022-04-18 Hans-Peter Nilsson <hp@axis.com>
|
||
|
||
* doc/invoke.texi <CRIS>: Remove references to options for removed
|
||
subtarget cris-axis-linux-gnu and tweak wording accordingly.
|
||
|
||
2022-04-16 Gerald Pfeifer <gerald@pfeifer.com>
|
||
|
||
* doc/install.texi (Specific): Adjust mingw-w64 download link.
|
||
|
||
2022-04-15 Hongyu Wang <hongyu.wang@intel.com>
|
||
|
||
* config/i386/smmintrin.h: Correct target pragma from sse4.1
|
||
and sse4.2 to crc32 for crc32 intrinsics.
|
||
|
||
2022-04-14 Indu Bhagat <indu.bhagat@oracle.com>
|
||
|
||
PR debug/105089
|
||
* ctfc.cc (ctf_dvd_ignore_insert): New function.
|
||
(ctf_dvd_ignore_lookup): Likewise.
|
||
(ctf_add_variable): Keep track of non-defining decl DIEs.
|
||
(new_ctf_container): Initialize the new hash-table.
|
||
(ctfc_delete_container): Empty hash-table.
|
||
* ctfc.h (struct ctf_container): Add new hash-table.
|
||
(ctf_dvd_ignore_lookup): New declaration.
|
||
(ctf_add_variable): Add additional argument.
|
||
* ctfout.cc (ctf_dvd_preprocess_cb): Skip adding CTF variable
|
||
record for non-defining decl for which a defining decl exists
|
||
in the same TU.
|
||
(ctf_preprocess): Defer updating the number of global objts
|
||
until here.
|
||
(output_ctf_header): Use ctfc_vars_list_count as some CTF
|
||
variables may not make it to the final output.
|
||
(output_ctf_vars): Likewise.
|
||
* dwarf2ctf.cc (gen_ctf_variable): Skip generating CTF variable
|
||
if this is known to be a non-defining decl DIE.
|
||
|
||
2022-04-14 Indu Bhagat <indu.bhagat@oracle.com>
|
||
|
||
* ctfc.h (struct ctf_container): Introduce a new member.
|
||
* ctfout.cc (ctf_list_add_ctf_vars): Use it instead of static
|
||
variable.
|
||
|
||
2022-04-14 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR target/105247
|
||
* simplify-rtx.cc (simplify_const_binary_operation): For shifts
|
||
or rotates by VOIDmode constant integer shift count use word_mode
|
||
for the operand if int_mode is narrower than word.
|
||
|
||
2022-04-14 Robin Dapp <rdapp@linux.ibm.com>
|
||
|
||
* config/s390/s390.cc (s390_get_sched_attrmask): Add z16.
|
||
(s390_get_unit_mask): Likewise.
|
||
(s390_is_fpd): Likewise.
|
||
(s390_is_fxd): Likewise.
|
||
* config/s390/s390.h (s390_tune_attr): Set max tune level to z16.
|
||
* config/s390/s390.md (z900,z990,z9_109,z9_ec,z10,z196,zEC12,z13,z14,z15):
|
||
Add z16.
|
||
(z900,z990,z9_109,z9_ec,z10,z196,zEC12,z13,z14,z15,z16):
|
||
Likewise.
|
||
* config/s390/3931.md: New file.
|
||
|
||
2022-04-13 Richard Sandiford <richard.sandiford@arm.com>
|
||
|
||
PR tree-optimization/105254
|
||
* config/aarch64/aarch64.cc
|
||
(aarch64_vector_costs::determine_suggested_unroll_factor): Take a
|
||
loop_vec_info as argument. Restrict the unroll factor to values
|
||
that divide the VF.
|
||
(aarch64_vector_costs::finish_cost): Update call accordingly.
|
||
|
||
2022-04-13 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/105263
|
||
* tree-ssa-reassoc.cc (try_special_add_to_ops): Do not consume
|
||
negates in multiplication chains with DFP.
|
||
|
||
2022-04-13 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR middle-end/105253
|
||
* tree.cc (tree_builtin_call_types_compatible_p): If PROP_gimple,
|
||
use useless_type_conversion_p checks instead of TYPE_MAIN_VARIANT
|
||
comparisons or tree_nop_conversion_p checks.
|
||
|
||
2022-04-13 Hongyu Wang <hongyu.wang@intel.com>
|
||
|
||
PR target/103069
|
||
* config/i386/i386-expand.cc (ix86_expand_cmpxchg_loop):
|
||
Add missing set to target_val at pause label.
|
||
|
||
2022-04-13 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR target/105234
|
||
* attribs.cc (decl_attributes): Don't set
|
||
DECL_FUNCTION_SPECIFIC_TARGET if target_option_default_node is
|
||
NULL.
|
||
|
||
2022-04-13 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/105250
|
||
* fold-const.cc (fold_convertible_p): Revert
|
||
r12-7979-geaaf77dd85c333, instead check for size equality
|
||
of the vector types involved.
|
||
|
||
2022-04-13 Richard Biener <rguenther@suse.de>
|
||
|
||
Revert:
|
||
2022-04-13 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/104912
|
||
* tree-vect-loop-manip.cc (vect_loop_versioning): Split
|
||
the cost model check to a separate BB to make sure it is
|
||
checked first and not combined with other version checks.
|
||
|
||
2022-04-13 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/104912
|
||
* tree-vect-loop-manip.cc (vect_loop_versioning): Split
|
||
the cost model check to a separate BB to make sure it is
|
||
checked first and not combined with other version checks.
|
||
|
||
2022-04-13 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
* tree-scalar-evolution.cc (expression_expensive_p): Fix a comment typo.
|
||
|
||
2022-04-12 Antoni Boucher <bouanto@zoho.com>
|
||
|
||
PR jit/104072
|
||
* reginfo.cc: New functions (clear_global_regs_cache,
|
||
reginfo_cc_finalize) to avoid an issue where compiling the same
|
||
code multiple times gives an error about assigning the same
|
||
register to 2 global variables.
|
||
* rtl.h: New function (reginfo_cc_finalize).
|
||
* toplev.cc: Call it.
|
||
|
||
2022-04-12 Antoni Boucher <bouanto@zoho.com>
|
||
|
||
PR jit/104071
|
||
* toplev.cc: Call the new function tree_cc_finalize in
|
||
toplev::finalize.
|
||
* tree.cc: New functions (clear_nonstandard_integer_type_cache
|
||
and tree_cc_finalize) to clear the cache of non-standard integer
|
||
types to avoid having issues with some optimizations of
|
||
bitcast where the SSA_NAME will have a size of a cached
|
||
integer type that should have been invalidated, causing a
|
||
comparison of integer constant to fail.
|
||
* tree.h: New function (tree_cc_finalize).
|
||
|
||
2022-04-12 Thomas Schwinge <thomas@codesourcery.com>
|
||
|
||
PR target/97348
|
||
* config/nvptx/nvptx.h (ASM_SPEC): Don't set.
|
||
* config/nvptx/nvptx.opt (misa): Adjust comment.
|
||
|
||
2022-04-12 Thomas Schwinge <thomas@codesourcery.com>
|
||
|
||
Revert:
|
||
2022-03-03 Tom de Vries <tdevries@suse.de>
|
||
|
||
* config/nvptx/nvptx.h (ASM_SPEC): Add %{misa=sm_30:--no-verify}.
|
||
|
||
2022-04-12 Thomas Schwinge <thomas@codesourcery.com>
|
||
|
||
Revert:
|
||
2022-03-31 Tom de Vries <tdevries@suse.de>
|
||
|
||
* config/nvptx/nvptx.h (ASM_SPEC): Use "-m sm_35" for -misa=sm_30.
|
||
|
||
2022-04-12 Richard Biener <rguenther@suse.de>
|
||
|
||
PR ipa/104303
|
||
* tree-ssa-dce.cc (mark_stmt_if_obviously_necessary): Do not
|
||
include local escaped memory as obviously necessary stores.
|
||
|
||
2022-04-12 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/105235
|
||
* tree-ssa-math-opts.cc (execute_cse_conv_1): Clean EH and
|
||
return whether the CFG changed.
|
||
(execute_cse_sincos_1): Adjust.
|
||
|
||
2022-04-12 Przemyslaw Wirkus <Przemyslaw.Wirkus@arm.com>
|
||
|
||
PR target/104144
|
||
* config/arm/t-aprofile (MULTI_ARCH_OPTS_A): Remove Armv9-a options.
|
||
(MULTI_ARCH_DIRS_A): Remove Armv9-a diretories.
|
||
(MULTILIB_REQUIRED): Don't require Armv9-a libraries.
|
||
(MULTILIB_MATCHES): Treat Armv9-a as equivalent to Armv8-a.
|
||
(MULTILIB_REUSE): Remove remap rules for Armv9-a.
|
||
* config/arm/t-multilib (v9_a_nosimd_variants): Delete.
|
||
(MULTILIB_MATCHES): Remove mappings for v9_a_nosimd_variants.
|
||
|
||
2022-04-12 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/105232
|
||
* tree.cc (component_ref_size): Bail out for too large
|
||
or non-constant sizes.
|
||
|
||
2022-04-12 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/105226
|
||
* tree-vect-loop-manip.cc (vect_loop_versioning): Verify
|
||
we can split the exit of an outer loop we choose to version.
|
||
|
||
2022-04-12 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
* config/i386/i386-expand.cc (ix86_emit_i387_sinh, ix86_emit_i387_cosh,
|
||
ix86_emit_i387_tanh, ix86_emit_i387_asinh, ix86_emit_i387_acosh,
|
||
ix86_emit_i387_atanh, ix86_emit_i387_log1p, ix86_emit_i387_round,
|
||
ix86_emit_swdivsf, ix86_emit_swsqrtsf,
|
||
ix86_expand_atomic_fetch_op_loop, ix86_expand_cmpxchg_loop):
|
||
Formatting fix.
|
||
* config/i386/i386.cc (warn_once_call_ms2sysv_xlogues): Likewise.
|
||
|
||
2022-04-12 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR target/105214
|
||
* config/i386/i386-expand.cc (ix86_emit_i387_log1p): Call
|
||
do_pending_stack_adjust.
|
||
|
||
2022-04-12 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR rtl-optimization/105211
|
||
* builtins.cc (expand_builtin_int_roundingfn_2): If mathfn_built_in_1
|
||
fails for TREE_TYPE (arg), retry it with
|
||
TREE_VALUE (TYPE_ARG_TYPES (TREE_TYPE (fndecl))) and if even that
|
||
fails, emit call normally.
|
||
|
||
2022-04-12 Andreas Krebbel <krebbel@linux.ibm.com>
|
||
|
||
* common/config/s390/s390-common.cc: Rename PF_ARCH14 to PF_Z16.
|
||
* config.gcc: Add z16 as march/mtune switch.
|
||
* config/s390/driver-native.cc (s390_host_detect_local_cpu):
|
||
Recognize z16 with -march=native.
|
||
* config/s390/s390-opts.h (enum processor_type): Rename
|
||
PROCESSOR_ARCH14 to PROCESSOR_3931_Z16.
|
||
* config/s390/s390.cc (PROCESSOR_ARCH14): Rename to ...
|
||
(PROCESSOR_3931_Z16): ... throughout the file.
|
||
(s390_processor processor_table): Add z16 as cpu string.
|
||
* config/s390/s390.h (enum processor_flags): Rename PF_ARCH14 to
|
||
PF_Z16.
|
||
(TARGET_CPU_ARCH14): Rename to ...
|
||
(TARGET_CPU_Z16): ... this.
|
||
(TARGET_CPU_ARCH14_P): Rename to ...
|
||
(TARGET_CPU_Z16_P): ... this.
|
||
(TARGET_ARCH14): Rename to ...
|
||
(TARGET_Z16): ... this.
|
||
(TARGET_ARCH14_P): Rename to ...
|
||
(TARGET_Z16_P): ... this.
|
||
* config/s390/s390.md (cpu_facility): Rename arch14 to z16 and
|
||
check TARGET_Z16 instead of TARGET_ARCH14.
|
||
* config/s390/s390.opt: Add z16 to processor_type.
|
||
* doc/invoke.texi: Document z16 and arch14.
|
||
|
||
2022-04-12 chenglulu <chenglulu@loongson.cn>
|
||
|
||
* config/loongarch/loongarch.cc: Fix bug for
|
||
tmpdir-g++.dg-struct-layout-1/t033.
|
||
|
||
2022-04-11 Peter Bergner <bergner@linux.ibm.com>
|
||
|
||
PR target/104894
|
||
* config/rs6000/rs6000.cc (rs6000_sibcall_aix): Handle pcrel sibcalls
|
||
to longcall functions.
|
||
|
||
2022-04-11 Jason Merrill <jason@redhat.com>
|
||
|
||
* ipa-free-lang-data.cc (free_lang_data_in_decl): Fix typos.
|
||
|
||
2022-04-11 Segher Boessenkool <segher@kernel.crashing.org>
|
||
|
||
PR target/105213
|
||
PR target/103623
|
||
* config/rs6000/rs6000.md (unpack<mode>_nodm): Add m,r,i alternative.
|
||
|
||
2022-04-11 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR tree-optimization/105218
|
||
* tree-ssa-phiopt.cc (value_replacement): If middle_bb has
|
||
more than one predecessor or phi's bb more than 2 predecessors,
|
||
reset phi result uses instead of adding a debug temp.
|
||
|
||
2022-04-11 Kito Cheng <kito.cheng@sifive.com>
|
||
|
||
PR target/104853
|
||
* config.gcc: Pass -misa-spec to arch-canonicalize and
|
||
multilib-generator.
|
||
* config/riscv/arch-canonicalize: Adding -misa-spec option.
|
||
(SUPPORTED_ISA_SPEC): New.
|
||
(arch_canonicalize): New argument `isa_spec`.
|
||
Handle multiple ISA spec versions.
|
||
* config/riscv/multilib-generator: Adding -misa-spec option.
|
||
|
||
2022-04-11 Kito Cheng <kito.cheng@sifive.com>
|
||
|
||
* config/riscv/arch-canonicalize: Add TODO item.
|
||
(IMPLIED_EXT): Sync.
|
||
(arch_canonicalize): Checking until no change.
|
||
|
||
2022-04-11 Tamar Christina <tamar.christina@arm.com>
|
||
|
||
PR target/105197
|
||
* tree-vect-stmts.cc (vectorizable_condition): Prevent cond swap when
|
||
not masked.
|
||
|
||
2022-04-11 Jason Merrill <jason@redhat.com>
|
||
|
||
PR c++/100370
|
||
* pointer-query.cc (compute_objsize_r) [POINTER_PLUS_EXPR]: Require
|
||
deref == -1.
|
||
|
||
2022-04-11 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR tree-optimization/104639
|
||
* tree-ssa-phiopt.cc: Include tree-ssa-propagate.h.
|
||
(value_replacement): Optimize (x != cst1 ? x : cst2) != cst3
|
||
into x != cst3.
|
||
|
||
2022-04-11 Jeff Law <jeffreyalaw@gmail.com>
|
||
|
||
* config/bfin/bfin.md (rol_one): Fix pattern to indicate the
|
||
sign bit of the source ends up in CC.
|
||
|
||
2022-04-09 Jan Hubicka <hubicka@ucw.cz>
|
||
|
||
PR ipa/103376
|
||
* cgraphunit.cc (cgraph_node::analyze): update semantic_interposition
|
||
flag.
|
||
|
||
2022-04-09 Jan Hubicka <hubicka@ucw.cz>
|
||
|
||
* ipa-modref.cc (ipa_merge_modref_summary_after_inlining): Propagate
|
||
nondeterministic and side_effects flags.
|
||
|
||
2022-04-08 Andre Vieira <andre.simoesdiasvieira@arm.com>
|
||
|
||
PR target/105157
|
||
* config.gcc: Shift ext_mask by TARGET_CPU_NBITS.
|
||
* config/aarch64/aarch64.h (TARGET_CPU_NBITS): New macro.
|
||
(TARGET_CPU_MASK): Likewise.
|
||
(TARGET_CPU_DEFAULT): Use TARGET_CPU_NBITS.
|
||
* config/aarch64/aarch64.cc (aarch64_get_tune_cpu): Use TARGET_CPU_MASK.
|
||
(aarch64_get_arch): Likewise.
|
||
(aarch64_override_options): Use TARGET_CPU_NBITS.
|
||
|
||
2022-04-08 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/105198
|
||
* tree-predcom.cc (find_looparound_phi): Check whether
|
||
the found memory location of the entry value is clobbered
|
||
inbetween the value we want to use and loop entry.
|
||
|
||
2022-04-08 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR tree-optimization/105189
|
||
* fold-const.cc (make_range_step): Fix up handling of
|
||
(unsigned) x +[low, -] ranges for signed x if low fits into
|
||
typeof (x).
|
||
|
||
2022-04-08 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/105175
|
||
* tree-vect-stmts.cc (vectorizable_operation): Suppress
|
||
-Wvector-operation-performance if using emulated vectors.
|
||
* tree-vect-generic.cc (expand_vector_piecewise): Do not diagnose
|
||
-Wvector-operation-performance when suppressed.
|
||
(expand_vector_parallel): Likewise.
|
||
(expand_vector_comparison): Likewise.
|
||
(expand_vector_condition): Likewise.
|
||
(lower_vec_perm): Likewise.
|
||
(expand_vector_conversion): Likewise.
|
||
|
||
2022-04-07 Tamar Christina <tamar.christina@arm.com>
|
||
|
||
PR target/104409
|
||
* config/aarch64/aarch64-builtins.cc (handle_arm_acle_h): New.
|
||
(aarch64_general_init_builtins): Move LS64 code.
|
||
* config/aarch64/aarch64-c.cc (aarch64_pragma_aarch64): Support
|
||
arm_acle.h
|
||
* config/aarch64/aarch64-protos.h (handle_arm_acle_h): New.
|
||
* config/aarch64/arm_acle.h: Add pragma GCC aarch64 "arm_acle.h".
|
||
|
||
2022-04-07 Richard Biener <rguenther@suse.de>
|
||
Jan Hubicka <hubicka@ucw.cz>
|
||
|
||
PR ipa/104303
|
||
* tree-ssa-alias.h (ptr_deref_may_alias_global_p,
|
||
ref_may_alias_global_p, ref_may_alias_global_p,
|
||
stmt_may_clobber_global_p, pt_solution_includes_global): Add
|
||
bool parameters indicating whether escaped locals should be
|
||
considered global.
|
||
* tree-ssa-structalias.cc (pt_solution_includes_global):
|
||
When the new escaped_nonlocal_p flag is true also consider
|
||
pt->vars_contains_escaped.
|
||
* tree-ssa-alias.cc (ptr_deref_may_alias_global_p):
|
||
Pass down new escaped_nonlocal_p flag.
|
||
(ref_may_alias_global_p): Likewise.
|
||
(stmt_may_clobber_global_p): Likewise.
|
||
(ref_may_alias_global_p_1): Likewise. For decls also
|
||
query the escaped solution if true.
|
||
(ref_may_access_global_memory_p): Remove.
|
||
(modref_may_conflict): Use ref_may_alias_global_p with
|
||
escaped locals considered global.
|
||
(ref_maybe_used_by_stmt_p): Adjust.
|
||
* ipa-fnsummary.cc (points_to_local_or_readonly_memory_p):
|
||
Likewise.
|
||
* tree-ssa-dse.cc (dse_classify_store): Likewise.
|
||
* trans-mem.cc (thread_private_new_memory): Likewise, but
|
||
consider escaped locals global.
|
||
* tree-ssa-dce.cc (mark_stmt_if_obviously_necessary): Likewise.
|
||
|
||
2022-04-07 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/105185
|
||
* tree-ssa-sccvn.cc (visit_reference_op_call): Simplify
|
||
modref query again.
|
||
|
||
2022-04-07 Tamar Christina <tamar.christina@arm.com>
|
||
|
||
PR target/104049
|
||
* config/aarch64/aarch64-simd.md
|
||
(aarch64_reduc_plus_internal<mode>): Fix RTL and rename to...
|
||
(reduc_plus_scal_<mode>): ... This.
|
||
(reduc_plus_scal_v4sf): Moved.
|
||
(aarch64_reduc_plus_internalv2si): Fix RTL and rename to...
|
||
(reduc_plus_scal_v2si): ... This.
|
||
|
||
2022-04-07 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR tree-optimization/102586
|
||
* langhooks.h (struct lang_hooks_for_types): Add classtype_as_base
|
||
langhook.
|
||
* langhooks-def.h (LANG_HOOKS_CLASSTYPE_AS_BASE): Define.
|
||
(LANG_HOOKS_FOR_TYPES_INITIALIZER): Add it.
|
||
* gimple-fold.cc (clear_padding_type): Use ftype instead of
|
||
TREE_TYPE (field) some more. For artificial FIELD_DECLs without
|
||
name try the lang_hooks.types.classtype_as_base langhook and
|
||
if it returns non-NULL, use that instead of ftype for recursive call.
|
||
|
||
2022-04-07 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR tree-optimization/105150
|
||
* tree.cc (tree_builtin_call_types_compatible_p): New function.
|
||
(get_call_combined_fn): Use it.
|
||
|
||
2022-04-07 Richard Biener <rguenther@suse.de>
|
||
|
||
PR middle-end/105165
|
||
* tree-complex.cc (expand_complex_asm): Sorry for asm goto
|
||
_Complex outputs.
|
||
|
||
2022-04-07 liuhongt <hongtao.liu@intel.com>
|
||
|
||
* config/i386/sse.md (<sse2_avx2>_andnot<mode>3_mask):
|
||
Removed.
|
||
(<sse>_andnot<mode>3<mask_name>): Disable V*HFmode patterns
|
||
for mask_applied.
|
||
(<code><mode>3<mask_name>): Ditto.
|
||
(*<code><mode>3<mask_name>): Ditto.
|
||
(VFB_128_256): Adjust condition of V8HF/V16HFmode according to
|
||
real instruction.
|
||
(VFB_512): Ditto.
|
||
(VFB): Ditto.
|
||
|
||
2022-04-06 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR rtl-optimization/104985
|
||
* combine.cc (struct undo): Add where.regno member.
|
||
(do_SUBST_MODE): Rename to ...
|
||
(subst_mode): ... this. Change first argument from rtx * into int,
|
||
operate on regno_reg_rtx[regno] and save regno into where.regno.
|
||
(SUBST_MODE): Remove.
|
||
(try_combine): Use subst_mode instead of SUBST_MODE, change first
|
||
argument from regno_reg_rtx[whatever] to whatever. For UNDO_MODE, use
|
||
regno_reg_rtx[undo->where.regno] instead of *undo->where.r.
|
||
(undo_to_marker): For UNDO_MODE, use regno_reg_rtx[undo->where.regno]
|
||
instead of *undo->where.r.
|
||
(simplify_set): Use subst_mode instead of SUBST_MODE, change first
|
||
argument from regno_reg_rtx[whatever] to whatever.
|
||
|
||
2022-04-06 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR target/105069
|
||
* config/sh/sh.opt (mdiv=): Add Save.
|
||
|
||
2022-04-06 Martin Liska <mliska@suse.cz>
|
||
|
||
PR driver/105096
|
||
* common.opt: Document properly based on what it does.
|
||
* gcc.cc (display_help): Unify with what we have in common.opt.
|
||
* opts.cc (common_handle_option): Do not print undocumented
|
||
options.
|
||
|
||
2022-04-06 Xi Ruoyao <xry111@mengyan1223.wang>
|
||
|
||
* config/mips/mips.cc (mips_fpr_return_fields): Ignore
|
||
cxx17_empty_base_field_p fields and set an indicator.
|
||
(mips_return_in_msb): Adjust for mips_fpr_return_fields change.
|
||
(mips_function_value_1): Inform psABI change about C++17 empty
|
||
bases.
|
||
|
||
2022-04-06 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR tree-optimization/105150
|
||
* gimple.cc (gimple_builtin_call_types_compatible_p): Use
|
||
builtin_decl_explicit here...
|
||
(gimple_call_builtin_p, gimple_call_combined_fn): ... rather than
|
||
here.
|
||
|
||
2022-04-06 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/105173
|
||
* tree-ssa-reassoc.cc (find_insert_point): Get extra
|
||
insert_before output argument and compute it.
|
||
(insert_stmt_before_use): Adjust.
|
||
(rewrite_expr_tree): Likewise.
|
||
|
||
2022-04-06 Richard Biener <rguenther@suse.de>
|
||
|
||
PR ipa/105166
|
||
* ipa-modref-tree.cc (modref_access_node::get_ao_ref ): Bail
|
||
out for non-pointer arguments.
|
||
|
||
2022-04-06 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/105163
|
||
* tree-ssa-reassoc.cc (repropagate_negates): Avoid propagating
|
||
negated abnormals.
|
||
|
||
2022-04-06 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR tree-optimization/105150
|
||
* gimple.cc (gimple_call_builtin_p, gimple_call_combined_fn):
|
||
For BUILT_IN_NORMAL calls, call gimple_builtin_call_types_compatible_p
|
||
preferrably on builtin_decl_explicit decl rather than fndecl.
|
||
* tree-ssa-strlen.cc (valid_builtin_call): Don't call
|
||
gimple_builtin_call_types_compatible_p here.
|
||
|
||
2022-04-06 Richard Sandiford <richard.sandiford@arm.com>
|
||
|
||
PR tree-optimization/103761
|
||
* tree-vect-stmts.cc (check_load_store_for_partial_vectors): Replace
|
||
the ncopies parameter with an slp_node parameter. Calculate the
|
||
number of vectors based on it and vectype. Rename lambda to
|
||
group_memory_nvectors.
|
||
(vectorizable_store, vectorizable_load): Update calls accordingly.
|
||
|
||
2022-04-06 Martin Liska <mliska@suse.cz>
|
||
|
||
* doc/invoke.texi: Document it.
|
||
|
||
2022-04-06 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/105148
|
||
* tree-ssa-loop-ivopts.cc (idx_record_use): Walk raw operands
|
||
2 and 3 of ARRAY_REFs.
|
||
|
||
2022-04-06 Roger Sayle <roger@nextmovesoftware.com>
|
||
|
||
* config/i386/sse.md (ANDNOT_MODE): New mode iterator for TF and V1TI.
|
||
(*andnottf3): Replace with...
|
||
(*andnot<mode>3): New define_insn using ANDNOT_MODE.
|
||
|
||
2022-04-06 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/105142
|
||
* gimple-fold.h (maybe_fold_and_comparisons): Add defaulted
|
||
basic-block parameter.
|
||
(maybe_fold_or_comparisons): Likewise.
|
||
* gimple-fold.cc (follow_outer_ssa_edges): New.
|
||
(maybe_fold_comparisons_from_match_pd): Use follow_outer_ssa_edges
|
||
when an outer condition basic-block is specified.
|
||
(and_comparisons_1, and_var_with_comparison,
|
||
and_var_with_comparison_1, or_comparisons_1,
|
||
or_var_with_comparison, or_var_with_comparison_1): Receive and pass
|
||
down the outer condition basic-block.
|
||
* tree-ssa-ifcombine.cc (ifcombine_ifandif): Pass down the
|
||
basic-block of the outer condition.
|
||
|
||
2022-04-06 Kewen Lin <linkw@linux.ibm.com>
|
||
|
||
PR target/105002
|
||
* config/rs6000/rs6000.cc (rs6000_maybe_emit_maxc_minc): Support more
|
||
comparison codes UNLT/UNLE/UNGT/UNGE.
|
||
|
||
2022-04-05 David Malcolm <dmalcolm@redhat.com>
|
||
|
||
* doc/extend.texi (Common Function Attributes): Document that
|
||
'access' does not imply 'nonnull'.
|
||
|
||
2022-04-05 Uroš Bizjak <ubizjak@gmail.com>
|
||
|
||
PR target/105139
|
||
* config/i386/mmx.md (*movv2qi_internal):
|
||
Change insn mode of alternative 5 to HF for TARGET_AVX512FP16.
|
||
|
||
2022-04-05 Richard Sandiford <richard.sandiford@arm.com>
|
||
|
||
* config/aarch64/aarch64.md (aarch64_cpymemdi): Turn into a
|
||
define_expand and turn operands 0 and 1 from REGs to MEMs.
|
||
(*aarch64_cpymemdi): New pattern.
|
||
(aarch64_setmemdi): Turn into a define_expand and turn operand 0
|
||
from a REG to a MEM.
|
||
(*aarch64_setmemdi): New pattern.
|
||
* config/aarch64/aarch64.cc (aarch64_expand_cpymem_mops): Use
|
||
copy_to_mode_reg on all three registers. Replace the original
|
||
MEM addresses rather than creating wild reads and writes.
|
||
(aarch64_expand_setmem_mops): Likewise for the size and for the
|
||
destination memory and address.
|
||
|
||
2022-04-05 Richard Sandiford <richard.sandiford@arm.com>
|
||
|
||
PR target/103147
|
||
* config/aarch64/aarch64-protos.h (aarch64_simd_switcher): New class.
|
||
* config/aarch64/aarch64-sve-builtins.h (sve_switcher): Inherit
|
||
from aarch64_simd_switcher.
|
||
* config/aarch64/aarch64-builtins.cc (aarch64_simd_tuple_modes):
|
||
New variable.
|
||
(aarch64_lookup_simd_builtin_type): Use it instead of TYPE_MODE.
|
||
(register_tuple_type): Add more asserts. Expect the alignment
|
||
of the structure to be subject to flag_pack_struct and
|
||
maximum_field_alignment. Set aarch64_simd_tuple_modes.
|
||
(aarch64_simd_switcher::aarch64_simd_switcher): New function.
|
||
(aarch64_simd_switcher::~aarch64_simd_switcher): Likewise.
|
||
(handle_arm_neon_h): Hold an aarch64_simd_switcher throughout.
|
||
(aarch64_general_init_builtins): Hold an aarch64_simd_switcher
|
||
while calling aarch64_init_simd_builtins.
|
||
* config/aarch64/aarch64-sve-builtins.cc (sve_switcher::sve_switcher)
|
||
(sve_switcher::~sve_switcher): Remove code now performed by
|
||
aarch64_simd_switcher.
|
||
|
||
2022-04-05 Richard Sandiford <richard.sandiford@arm.com>
|
||
|
||
PR target/104897
|
||
* config/aarch64/aarch64-sve-builtins.cc
|
||
(function_resolver::infer_vector_or_tuple_type): Use error_n
|
||
for "%d vectors" messages.
|
||
|
||
2022-04-05 Chung-Lin Tang <cltang@codesourcery.com>
|
||
|
||
* omp-low.cc (lower_omp_target): Use outer context looked-up 'var' as
|
||
argument to lang_hooks.decls.omp_array_data, instead of 'ovar' from
|
||
current clause.
|
||
|
||
2022-04-05 Richard Biener <rguenther@suse.de>
|
||
|
||
PR c/105151
|
||
* passes.def (pass_walloca): Move early instance into
|
||
pass_build_ssa_passes to make SSA form available.
|
||
|
||
2022-04-05 liuhongt <hongtao.liu@intel.com>
|
||
|
||
PR target/101908
|
||
* config/i386/i386.cc (ix86_split_stlf_stall_load): New
|
||
function
|
||
(ix86_reorg): Call ix86_split_stlf_stall_load.
|
||
* config/i386/i386.opt (-param=x86-stlf-window-ninsns=): New
|
||
param.
|
||
|
||
2022-04-05 Alexandre Oliva <oliva@adacore.com>
|
||
|
||
* targhooks.cc (default_zero_call_used_regs): Attempt to group
|
||
regs that the target refuses to use in their natural modes.
|
||
(zcur_select_mode_rtx): New.
|
||
* regs.h (struct target_regs): Add x_hard_regno_max_nregs.
|
||
(hard_regno_max_nregs): Define.
|
||
* reginfo.cc (init_reg_modes_target): Set hard_regno_max_nregs.
|
||
|
||
2022-04-04 Alex Coplan <alex.coplan@arm.com>
|
||
|
||
* doc/match-and-simplify.texi: Fix typos.
|
||
|
||
2022-04-04 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR target/105144
|
||
* config/aarch64/t-aarch64 (s-aarch64-tune-md): Do move-if-change
|
||
only if configured with --enable-maintainer-mode, otherwise compare
|
||
tmp-aarch64-tune.md with $(srcdir)/config/aarch64/aarch64-tune.md and
|
||
if they differ, emit a message and fail.
|
||
|
||
2022-04-04 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR target/105144
|
||
* config/aarch64/t-aarch64 (s-mddeps): Depend on s-aarch64-tune-md.
|
||
* config/aarch64/aarch64-tune.md: Regenerated.
|
||
|
||
2022-04-04 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/105132
|
||
* tree-vect-stmts.cc (vectorizable_operation): Check that
|
||
the input vectors have the same number of elements.
|
||
|
||
2022-04-04 Richard Biener <rguenther@suse.de>
|
||
|
||
PR middle-end/105140
|
||
* fold-const.cc (fold_convertible_p): Allow a TYPE_P arg.
|
||
|
||
2022-04-03 Jeff Law <jeffreyalaw@gmail.com>
|
||
|
||
PR target/104987
|
||
* config/iq2000/iq2000.md (bbi): New attribute, default to no.
|
||
(delay slot descripts): Use different delay slot description when
|
||
the insn as the "bbi" attribute.
|
||
(bbi, bbin patterns): Set the bbi attribute to yes.
|
||
|
||
2022-04-03 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR target/105123
|
||
* config/i386/i386-expand.cc (ix86_expand_vector_init_general): Avoid
|
||
using word as target for expand_simple_binop when doing ASHIFT and
|
||
IOR.
|
||
|
||
2022-04-02 Xi Ruoyao <xry111@mengyan1223.wang>
|
||
|
||
* config/mips/mips.cc (mips_function_arg): Check if DECL_SIZE is
|
||
NULL before dereferencing it.
|
||
|
||
2022-04-01 Qing Zhao <qing.zhao@oracle.com>
|
||
|
||
* config/i386/i386.cc (zero_all_st_registers): Return the value of
|
||
num_of_st.
|
||
(ix86_zero_call_used_regs): Update zeroed_hardregs set according to
|
||
the return value of zero_all_st_registers.
|
||
* doc/tm.texi: Update the documentation of TARGET_ZERO_CALL_USED_REGS.
|
||
* function.cc (gen_call_used_regs_seq): Add an assertion.
|
||
* target.def: Update the documentation of TARGET_ZERO_CALL_USED_REGS.
|
||
|
||
2022-04-01 Xi Ruoyao <xry111@mengyan1223.wang>
|
||
|
||
PR target/102024
|
||
* config/mips/mips.cc (mips_function_arg): Ignore zero-width
|
||
fields, and inform if it causes a psABI change.
|
||
|
||
2022-04-01 Xi Ruoyao <xry111@mengyan1223.wang>
|
||
|
||
PR target/102024
|
||
* config/mips/mips.cc (mips_fpr_return_fields): Detect C++
|
||
zero-width bit-fields and set up an indicator.
|
||
(mips_return_in_msb): Adapt for mips_fpr_return_fields change.
|
||
(mips_function_value_1): Diagnose when the presense of a C++
|
||
zero-width bit-field changes function returning in GCC 12.
|
||
|
||
2022-04-01 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR tree-optimization/104645
|
||
* tree-ssa-phiopt.cc (value_replacement): If assign has
|
||
CONVERT_EXPR_CODE_P rhs_code, treat it like a preparation
|
||
statement with constant evaluation.
|
||
|
||
2022-04-01 YunQiang Su <yunqiang.su@cipunited.com>
|
||
|
||
* config/mips/mips.cc (mips_expand_prologue):
|
||
IPL is 8bit for MCU ASE.
|
||
|
||
2022-03-31 Bill Schmidt <wschmidt@linux.ibm.com>
|
||
|
||
PR target/104004
|
||
* config/rs6000/rs6000-builtins.def (MFFSL): Mark nosoft.
|
||
(MTFSB0): Likewise.
|
||
(MTFSB1): Likewise.
|
||
(SET_FPSCR_RN): Likewise.
|
||
(SET_FPSCR_DRN): Mark nosoft and no32bit.
|
||
|
||
2022-03-31 Thomas Schwinge <thomas@codesourcery.com>
|
||
|
||
* doc/options.texi (Option file format): Clarifications around
|
||
option definition records' help texts.
|
||
|
||
2022-03-31 Thomas Schwinge <thomas@codesourcery.com>
|
||
|
||
* optc-gen.awk <END>: Fix "Multiple different help strings" error
|
||
diagnostic.
|
||
|
||
2022-03-31 Andre Vieira <andre.simoesdiasvieira@arm.com>
|
||
|
||
* config/aarch64/aarch64.cc (aarch64_vector_costs): Define
|
||
determine_suggested_unroll_factor and m_has_avg.
|
||
(determine_suggested_unroll_factor): New function.
|
||
(aarch64_vector_costs::add_stmt_cost): Check for a qualifying pattern
|
||
to set m_nosve_pattern.
|
||
(aarch64_vector_costs::finish_costs): Use
|
||
determine_suggested_unroll_factor.
|
||
* config/aarch64/aarch64.opt (aarch64-vect-unroll-limit): New.
|
||
* doc/invoke.texi: (aarch64-vect-unroll-limit): Document new option.
|
||
|
||
2022-03-31 Martin Jambor <mjambor@suse.cz>
|
||
|
||
PR ipa/103083
|
||
* ipa-prop.h (ipa_ancestor_jf_data): New flag keep_null;
|
||
(ipa_get_jf_ancestor_keep_null): New function.
|
||
* ipa-prop.cc (ipa_set_ancestor_jf): Initialize keep_null field of the
|
||
ancestor function.
|
||
(compute_complex_assign_jump_func): Pass false to keep_null
|
||
parameter of ipa_set_ancestor_jf.
|
||
(compute_complex_ancestor_jump_func): Pass true to keep_null
|
||
parameter of ipa_set_ancestor_jf.
|
||
(update_jump_functions_after_inlining): Carry over keep_null from the
|
||
original ancestor jump-function or merge them.
|
||
(ipa_write_jump_function): Stream keep_null flag.
|
||
(ipa_read_jump_function): Likewise.
|
||
(ipa_print_node_jump_functions_for_edge): Print the new flag.
|
||
* ipa-cp.cc (class ipcp_bits_lattice): Make various getters const. New
|
||
member function known_nonzero_p.
|
||
(ipcp_bits_lattice::known_nonzero_p): New.
|
||
(ipcp_bits_lattice::meet_with_1): New parameter drop_all_ones,
|
||
observe it.
|
||
(ipcp_bits_lattice::meet_with): Likewise.
|
||
(propagate_bits_across_jump_function): Simplify. Pass true in
|
||
drop_all_ones when it is necessary.
|
||
(propagate_aggs_across_jump_function): Take care of keep_null
|
||
flag.
|
||
(ipa_get_jf_ancestor_result): Propagate NULL accross keep_null
|
||
jump functions.
|
||
|
||
2022-03-31 Martin Jambor <mjambor@suse.cz>
|
||
|
||
PR ipa/102513
|
||
* ipa-cp.cc (decide_whether_version_node): Skip scalar values
|
||
which do not fit the known value_range.
|
||
|
||
2022-03-31 Martin Jambor <mjambor@suse.cz>
|
||
|
||
PR ipa/103171
|
||
* ipa-prop.cc (propagate_controlled_uses): Add a LOAD reference
|
||
always when an ADDR_EXPR constant is known to reach a load because
|
||
of inlining, not just when removing an ADDR reference.
|
||
|
||
2022-03-31 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/105109
|
||
* tree-ssa.cc (execute_update_addresses_taken): Suppress
|
||
diagnostics on the load of the other complex component.
|
||
|
||
2022-03-31 Tom de Vries <tdevries@suse.de>
|
||
|
||
* config/nvptx/nvptx.h (ASM_SPEC): Use "-m sm_35" for -misa=sm_30.
|
||
|
||
2022-03-31 Richard Biener <rguenther@suse.de>
|
||
|
||
PR rtl-optimization/105091
|
||
* gimple-expr.cc (mark_addressable): Handle TARGET_MEM_REF
|
||
bases.
|
||
|
||
2022-03-31 Richard Biener <rguenther@suse.de>
|
||
|
||
Revert:
|
||
2021-09-13 Richard Earnshaw <rearnsha@arm.com>
|
||
|
||
PR target/102125
|
||
* gimple-fold.c (gimple_fold_builtin_memory_op): Allow folding
|
||
memcpy if the size is not more than MOVE_MAX * MOVE_RATIO.
|
||
|
||
2022-03-31 Sebastian Huber <sebastian.huber@embedded-brains.de>
|
||
|
||
* gcov-io.cc (gcov_read_string): Reword documentation comment.
|
||
|
||
2022-03-30 Bill Schmidt <wschmidt@linux.ibm.com>
|
||
|
||
* config/rs6000/rs6000-builtins.def (NEG_V16QI): Move to [altivec]
|
||
stanza.
|
||
(NEG_V4SF): Likewise.
|
||
(NEG_V4SI): Likewise.
|
||
(NEG_V8HI): Likewise.
|
||
(NEG_V2DF): Move to [vsx] stanza.
|
||
(NEG_V2DI): Likewise.
|
||
|
||
2022-03-30 Vladimir N. Makarov <vmakarov@redhat.com>
|
||
|
||
PR middle-end/105032
|
||
* lra-assigns.cc (find_reload_regno_insns): Modify loop condition.
|
||
|
||
2022-03-30 Tom de Vries <tdevries@suse.de>
|
||
Tobias Burnus <tobias@codesourcery.com>
|
||
|
||
* doc/invoke.texi (march): Document __PTX_SM__.
|
||
(mptx): Document __PTX_ISA_VERSION_MAJOR__ and
|
||
__PTX_ISA_VERSION_MINOR__.
|
||
|
||
2022-03-30 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR sanitizer/105093
|
||
* ubsan.cc (instrument_object_size): If t is equal to inner and
|
||
is a decl other than global var, punt. When emitting call to
|
||
UBSAN_OBJECT_SIZE ifn, make sure base is addressable.
|
||
|
||
2022-03-30 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR tree-optimization/105094
|
||
* gimple-ssa-store-merging.cc (mem_valid_for_store_merging): Punt if
|
||
bitsize <= 0 rather than just == 0.
|
||
|
||
2022-03-30 Tom de Vries <tdevries@suse.de>
|
||
|
||
* doc/invoke.texi (misa, mptx): Update.
|
||
(march, march-map): Add.
|
||
|
||
2022-03-30 Thomas Schwinge <thomas@codesourcery.com>
|
||
|
||
* opt-functions.awk (n_args): New function.
|
||
(lang_enabled_by): Merge function into...
|
||
* optc-gen.awk <END>: ... sole user here.
|
||
Improve diagnostics.
|
||
|
||
2022-03-29 Marek Polacek <polacek@redhat.com>
|
||
Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR middle-end/103597
|
||
* gimplify.cc (collect_fallthrough_labels): Don't push UNUSED_LABEL_Ps
|
||
into labels. Maybe set prev to the statement preceding UNUSED_LABEL_P.
|
||
(gimplify_cond_expr): Set UNUSED_LABEL_P.
|
||
* tree.h (UNUSED_LABEL_P): New.
|
||
|
||
2022-03-29 Michael Meissner <meissner@linux.ibm.com>
|
||
|
||
* config/rs6000/vsx.md (vsx_extract_<mode>): Allow destination to
|
||
be any VSX register.
|
||
|
||
2022-03-29 Richard Earnshaw <rearnsha@arm.com>
|
||
|
||
PR target/102024
|
||
* config/aarch64/aarch64.cc (aapcs_vfp_sub_candidate): Handle
|
||
zero-sized bit-fields. Detect cases where a warning may be needed.
|
||
(aarch64_vfp_is_call_or_return_candidate): Emit a note if a
|
||
zero-sized bit-field has caused parameter passing to change.
|
||
|
||
2022-03-29 Richard Earnshaw <rearnsha@arm.com>
|
||
|
||
PR target/102024
|
||
* config/arm/arm.cc (aapcs_vfp_sub_candidate): Handle zero-sized
|
||
bit-fields. Detect cases where a warning may be needed.
|
||
(aapcs_vfp_is_call_or_return_candidate): Emit a note if
|
||
a zero-sized bit-field has caused parameter passing to change.
|
||
|
||
2022-03-29 Richard Earnshaw <rearnsha@arm.com>
|
||
|
||
PR target/96882
|
||
* config/arm/arm.cc (arm_get_pcs_model): Disable selection of
|
||
ARM_PCS_AAPCS_LOCAL.
|
||
|
||
2022-03-29 Tom de Vries <tdevries@suse.de>
|
||
|
||
PR target/104857
|
||
* config/nvptx/nvptx-c.cc (nvptx_cpu_cpp_builtins): Emit
|
||
__PTX_ISA_VERSION_MAJOR__ and __PTX_ISA_VERSION_MINOR__.
|
||
* config/nvptx/nvptx.cc (ptx_version_to_number): New function.
|
||
* config/nvptx/nvptx-protos.h (ptx_version_to_number): Declare.
|
||
|
||
2022-03-29 Tom de Vries <tdevries@suse.de>
|
||
|
||
* config/nvptx/nvptx.opt (m64): Update help text to reflect that it
|
||
is ignored.
|
||
|
||
2022-03-29 Tom de Vries <tdevries@suse.de>
|
||
|
||
PR target/104714
|
||
* config/nvptx/nvptx.opt (march-map=*): Add aliases.
|
||
|
||
2022-03-29 Jan Hubicka <hubicka@ucw.cz>
|
||
|
||
* config/i386/i386-builtins.cc (ix86_vectorize_builtin_gather): Test
|
||
TARGET_USE_GATHER_2PARTS and TARGET_USE_GATHER_4PARTS.
|
||
* config/i386/i386.h (TARGET_USE_GATHER_2PARTS): New macro.
|
||
(TARGET_USE_GATHER_4PARTS): New macro.
|
||
* config/i386/x86-tune.def (X86_TUNE_USE_GATHER_2PARTS): New tune
|
||
(X86_TUNE_USE_GATHER_4PARTS): New tune
|
||
|
||
2022-03-29 Tom de Vries <tdevries@suse.de>
|
||
|
||
* config/nvptx/nvptx.opt (march): Add alias of misa.
|
||
|
||
2022-03-29 Chenghua Xu <xuchenghua@loongson.cn>
|
||
Lulu Cheng <chenglulu@loongson.cn>
|
||
|
||
* doc/install.texi: Add LoongArch options section.
|
||
* doc/invoke.texi: Add LoongArch options section.
|
||
* doc/md.texi: Add LoongArch options section.
|
||
|
||
2022-03-29 Chenghua Xu <xuchenghua@loongson.cn>
|
||
Lulu Cheng <chenglulu@loongson.cn>
|
||
|
||
* config/loongarch/loongarch-c.cc
|
||
|
||
2022-03-29 Chenghua Xu <xuchenghua@loongson.cn>
|
||
Lulu Cheng <chenglulu@loongson.cn>
|
||
|
||
* config/loongarch/larchintrin.h: New file.
|
||
* config/loongarch/loongarch-builtins.cc: New file.
|
||
|
||
2022-03-29 Chenghua Xu <xuchenghua@loongson.cn>
|
||
Lulu Cheng <chenglulu@loongson.cn>
|
||
|
||
* config/host-linux.cc: Add LoongArch support.
|
||
* config/loongarch/loongarch-protos.h: New file.
|
||
* config/loongarch/loongarch-tune.h: Likewise.
|
||
* config/loongarch/loongarch.cc: Likewise.
|
||
* config/loongarch/loongarch.h: Likewise.
|
||
|
||
2022-03-29 Chenghua Xu <xuchenghua@loongson.cn>
|
||
Lulu Cheng <chenglulu@loongson.cn>
|
||
|
||
* config/loongarch/constraints.md: New file.
|
||
* config/loongarch/generic.md: New file.
|
||
* config/loongarch/la464.md: New file.
|
||
* config/loongarch/loongarch-ftypes.def: New file.
|
||
* config/loongarch/loongarch-modes.def: New file.
|
||
* config/loongarch/loongarch.md: New file.
|
||
* config/loongarch/predicates.md: New file.
|
||
* config/loongarch/sync.md: New file.
|
||
|
||
2022-03-29 Chenghua Xu <xuchenghua@loongson.cn>
|
||
Lulu Cheng <chenglulu@loongson.cn>
|
||
|
||
* configure: Regenerate file.
|
||
|
||
2022-03-29 Chenghua Xu <xuchenghua@loongson.cn>
|
||
Lulu Cheng <chenglulu@loongson.cn>
|
||
|
||
* common/config/loongarch/loongarch-common.cc: New file.
|
||
* config/loongarch/genopts/genstr.sh: New file.
|
||
* config/loongarch/genopts/loongarch-strings: New file.
|
||
* config/loongarch/genopts/loongarch.opt.in: New file.
|
||
* config/loongarch/loongarch-str.h: New file.
|
||
* config/loongarch/gnu-user.h: New file.
|
||
* config/loongarch/linux.h: New file.
|
||
* config/loongarch/loongarch-cpu.cc: New file.
|
||
* config/loongarch/loongarch-cpu.h: New file.
|
||
* config/loongarch/loongarch-def.c: New file.
|
||
* config/loongarch/loongarch-def.h: New file.
|
||
* config/loongarch/loongarch-driver.cc: New file.
|
||
* config/loongarch/loongarch-driver.h: New file.
|
||
* config/loongarch/loongarch-opts.cc: New file.
|
||
* config/loongarch/loongarch-opts.h: New file.
|
||
* config/loongarch/loongarch.opt: New file.
|
||
* config/loongarch/t-linux: New file.
|
||
* config/loongarch/t-loongarch: New file.
|
||
* config.gcc: Add LoongArch support.
|
||
* configure.ac: Add LoongArch support.
|
||
|
||
2022-03-29 Thomas Schwinge <thomas@codesourcery.com>
|
||
|
||
* opt-functions.awk (lang_enabled_by): Fix 'enabledby_negargs'
|
||
typo.
|
||
|
||
2022-03-29 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/105080
|
||
* tree-ssa-strlen.cc (printf_strlen_execute): Always init
|
||
loops and SCEV.
|
||
|
||
2022-03-28 Indu Bhagat <indu.bhagat@oracle.com>
|
||
|
||
* ctfout.cc (ctf_preprocess): Use ctfc_get_num_ctf_vars instead.
|
||
(output_ctf_vars): Likewise.
|
||
|
||
2022-03-28 Jason Merrill <jason@redhat.com>
|
||
|
||
PR c++/59426
|
||
* doc/extend.texi: Refer to __is_trivial instead of __is_pod.
|
||
|
||
2022-03-28 H.J. Lu <hjl.tools@gmail.com>
|
||
|
||
PR target/105068
|
||
* config/i386/sse.md (*ssse3_pshufbv8qi3): Also replace "Yv" with
|
||
"Yw" in clobber.
|
||
|
||
2022-03-28 Tom de Vries <tdevries@suse.de>
|
||
|
||
PR target/104818
|
||
* config/nvptx/gen-opt.sh (ptx_isa): Improve help text.
|
||
* config/nvptx/nvptx-gen.opt: Regenerate.
|
||
* config/nvptx/nvptx.opt (misa, mptx, ptx_version): Improve help text.
|
||
* config/nvptx/t-nvptx (s-nvptx-gen-opt): Add missing dependency on
|
||
gen-opt.sh.
|
||
|
||
2022-03-28 David Malcolm <dmalcolm@redhat.com>
|
||
|
||
PR analyzer/104308
|
||
* gimple-fold.cc (gimple_fold_builtin_memory_op): When optimizing
|
||
to loads then stores, set the location of the new load stmt.
|
||
|
||
2022-03-28 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/105070
|
||
* tree-switch-conversion.h
|
||
(bit_test_cluster::hoist_edge_and_branch_if_true): Add location
|
||
argument.
|
||
* tree-switch-conversion.cc
|
||
(bit_test_cluster::hoist_edge_and_branch_if_true): Annotate
|
||
cond with location.
|
||
(bit_test_cluster::emit): Annotate all generated expressions
|
||
with location.
|
||
|
||
2022-03-28 Andre Vieira <andre.simoesdiasvieira@arm.com>
|
||
|
||
* config/aarch64/aarch64-cores.def: Update Neoverse N2 core entry.
|
||
|
||
2022-03-28 liuhongt <hongtao.liu@intel.com>
|
||
|
||
PR target/105066
|
||
* config/i386/sse.md (vec_set<mode>_0): Change attr "isa" of
|
||
alternative 4 from sse4_noavx to noavx.
|
||
|
||
2022-03-28 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR tree-optimization/105056
|
||
* tree-predcom.cc (component::component): Initialize also comp_step.
|
||
|
||
2022-03-27 H.J. Lu <hjl.tools@gmail.com>
|
||
|
||
PR target/105068
|
||
* config/i386/sse.md (*ssse3_pshufbv8qi3): Replace "Yv" with
|
||
"Yw".
|
||
|
||
2022-03-26 Roger Sayle <roger@nextmovesoftware.com>
|
||
|
||
PR middle-end/104885
|
||
* calls.cc (mark_stack_region_used): Check that the region
|
||
is within the allocated size of stack_usage_map.
|
||
|
||
2022-03-26 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR rtl-optimization/103775
|
||
* recog.cc (check_invalid_inc_dec): New function.
|
||
(insn_invalid_p): Return 1 if REG_INC operand overlaps
|
||
any stored REGs.
|
||
|
||
2022-03-26 H.J. Lu <hjl.tools@gmail.com>
|
||
|
||
PR target/105058
|
||
* config/i386/sse.md (loadiwkey): Replace "v" with "x".
|
||
(aes<aesklvariant>u8): Likewise.
|
||
|
||
2022-03-26 H.J. Lu <hjl.tools@gmail.com>
|
||
|
||
PR target/105052
|
||
* config/i386/sse.md (ssse3_ph<plusminus_mnemonic>wv4hi3):
|
||
Replace "Yv" with "x".
|
||
(ssse3_ph<plusminus_mnemonic>dv2si3): Likewise.
|
||
(ssse3_psign<mode>3): Likewise.
|
||
|
||
2022-03-26 Hans-Peter Nilsson <hp@axis.com>
|
||
|
||
* reload.cc (find_reloads): Align comment with code where
|
||
considering the intersection of register classes then tweaking the
|
||
regclass for the current alternative or rejecting it.
|
||
|
||
2022-03-25 Christophe Lyon <christohe.lyon@arm.com>
|
||
|
||
PR target/104882
|
||
Revert
|
||
2021-06-11 Christophe Lyon <christophe.lyon@linaro.org>
|
||
|
||
* config/arm/mve.md (mve_vec_unpack<US>_lo_<mode>): Delete.
|
||
(mve_vec_unpack<US>_hi_<mode>): Delete.
|
||
(@mve_vec_pack_trunc_lo_<mode>): Delete.
|
||
(mve_vmovntq_<supf><mode>): Remove '@' prefix.
|
||
* config/arm/neon.md (vec_unpack<US>_hi_<mode>): Move back
|
||
from vec-common.md.
|
||
(vec_unpack<US>_lo_<mode>): Likewise.
|
||
(vec_pack_trunc_<mode>): Rename from
|
||
neon_quad_vec_pack_trunc_<mode>.
|
||
* config/arm/vec-common.md (vec_unpack<US>_hi_<mode>): Delete.
|
||
(vec_unpack<US>_lo_<mode>): Delete.
|
||
(vec_pack_trunc_<mode>): Delete.
|
||
|
||
2022-03-25 Vladimir N. Makarov <vmakarov@redhat.com>
|
||
|
||
PR middle-end/104971
|
||
* lra-lives.cc (process_bb_lives): Check hard_regs_live for hard
|
||
regs to clear remove_p flag.
|
||
|
||
2022-03-25 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/105053
|
||
* tree-vect-loop.cc (vect_create_epilog_for_reduction): Pick
|
||
the correct live-out stmt for a reduction chain.
|
||
|
||
2022-03-25 Richard Biener <rguenther@suse.de>
|
||
|
||
PR middle-end/105049
|
||
* tree.cc (uniform_vector_p): Recurse for VECTOR_CST or
|
||
CONSTRUCTOR first elements.
|
||
|
||
2022-03-25 Tobias Burnus <tobias@codesourcery.com>
|
||
|
||
PR analyzer/103533
|
||
* doc/invoke.texi (Static Analyzer Options): Move
|
||
@ignore block after @gccoptlist's '}' for 'make pdf'.
|
||
|
||
2022-03-25 David Malcolm <dmalcolm@redhat.com>
|
||
|
||
PR analyzer/104954
|
||
* doc/invoke.texi (Static Analyzer Options): Add
|
||
-fdump-analyzer-untracked.
|
||
|
||
2022-03-25 Avinash Sonawane <rootkea@gmail.com>
|
||
|
||
PR analyzer/103533
|
||
* doc/invoke.texi: Document that enabling taint analyzer
|
||
checker disables some warnings from `-fanalyzer`.
|
||
|
||
2022-03-24 Alexandre Oliva <oliva@adacore.com>
|
||
|
||
PR debug/104564
|
||
* gimple-harden-conditionals.cc (detach_value): Keep temps
|
||
anonymous.
|
||
|
||
2022-03-24 Alexandre Oliva <oliva@adacore.com>
|
||
|
||
PR middle-end/104975
|
||
* gimple-harden-conditionals.cc
|
||
(pass_harden_compares::execute): Force split in case of
|
||
multiple edges.
|
||
|
||
2022-03-24 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR c++/105035
|
||
* fold-const.cc (operand_equal_p) <case COMPONENT_REF>: If either
|
||
field0 or field1 is not a FIELD_DECL, return false.
|
||
|
||
2022-03-24 Richard Biener <rguenther@suse.de>
|
||
|
||
* tree-predcom.cc (chain::chain): Add CTOR.
|
||
(component::component): Likewise.
|
||
(pcom_worker::release_chain): Use delete.
|
||
(release_components): Likewise.
|
||
(pcom_worker::filter_suitable_components): Likewise.
|
||
(pcom_worker::split_data_refs_to_components): Use new.
|
||
(make_invariant_chain): Likewise.
|
||
(make_rooted_chain): Likewise.
|
||
(pcom_worker::combine_chains): Likewise.
|
||
* tree-vect-loop.cc (vect_create_epilog_for_reduction):
|
||
Make sure to release previously constructed scalar_results.
|
||
* tree-vect-stmts.cc (vectorizable_load): Use auto_vec
|
||
for vec_offsets.
|
||
* vr-values.cc (simplify_using_ranges::~simplify_using_ranges):
|
||
Release m_flag_set_edges.
|
||
|
||
2022-03-24 Siddhesh Poyarekar <siddhesh@gotplt.org>
|
||
|
||
PR tree-optimization/104970
|
||
* tree-object-size.cc (parm_object_size): Restrict size
|
||
computation scenarios to explicit access attributes.
|
||
|
||
2022-03-24 Kewen Lin <linkw@linux.ibm.com>
|
||
|
||
PR target/104967
|
||
* config/rs6000/rs6000-c.cc (find_instance): Skip instances with null
|
||
function types.
|
||
|
||
2022-03-23 Richard Biener <rguenther@suse.de>
|
||
|
||
PR target/102125
|
||
* gimple-fold.cc (gimple_fold_builtin_memory_op): Allow the
|
||
use of movmisalign when either the source or destination
|
||
decl is properly aligned.
|
||
|
||
2022-03-23 Richard Biener <rguenther@suse.de>
|
||
|
||
PR rtl-optimization/105028
|
||
* ira-color.cc (form_threads_from_copies): Remove unnecessary
|
||
copying of the sorted_copies tail.
|
||
|
||
2022-03-23 Martin Liska <mliska@suse.cz>
|
||
|
||
* config/rs6000/rs6000-c.cc (altivec_resolve_overloaded_builtin):
|
||
Use %qs in format.
|
||
* config/rs6000/rs6000.cc (rs6000_option_override_internal):
|
||
Reword the error message.
|
||
|
||
2022-03-23 liuhongt <hongtao.liu@intel.com>
|
||
|
||
PR target/104976
|
||
* config/i386/sse.md (ssePSmodelower): New.
|
||
(*avx_cmp<mode>3_ltint_not): Force_reg operand before
|
||
lowpart_subreg to avoid NULL_RTX.
|
||
(<avx512>_fmaddc_<mode>_mask1<round_expand_name>,
|
||
<avx512>_fcmaddc_<mode>_mask1<round_expand_name>,
|
||
fma_<mode>_fmaddc_bcst, fma_<mode>_fcmaddc_bcst,
|
||
<avx512>_<complexopname>_<mode>_mask<round_name>,
|
||
avx512fp16_fcmaddcsh_v8hf_mask1<round_expand_name>,
|
||
avx512fp16_fcmaddcsh_v8hf_mask3<round_expand_name>,
|
||
avx512fp16_fmaddcsh_v8hf_mask3<round_expand_name>,
|
||
avx512fp16_fmaddcsh_v8hf_mask3<round_expand_name>,
|
||
float<floatunssuffix><mode>v4hf2,
|
||
float<floatunssuffix>v2div2hf2,
|
||
fix<fixunssuffix>_truncv4hf<mode>2,
|
||
fix<fixunssuffix>_truncv2hfv2di2, extendv4hf<mode>2,
|
||
extendv2hfv2df2,
|
||
trunc<mode>v4hf2,truncv2dfv2hf2,
|
||
*avx512bw_permvar_truncv16siv16hi_1,
|
||
*avx512bw_permvar_truncv16siv16hi_1_hf,
|
||
*avx512f_permvar_truncv8siv8hi_1,
|
||
*avx512f_permvar_truncv8siv8hi_1_hf,
|
||
*avx512f_vpermvar_truncv8div8si_1,
|
||
*avx512f_permvar_truncv32hiv32qi_1,
|
||
*avx512f_permvar_truncv16hiv16qi_1,
|
||
*avx512f_permvar_truncv4div4si_1,
|
||
*avx512f_pshufb_truncv8hiv8qi_1,
|
||
*avx512f_pshufb_truncv4siv4hi_1,
|
||
*avx512f_pshufd_truncv2div2si_1,
|
||
sdot_prod<mode>, avx2_pblend<ssemodesuffix>_1,
|
||
ashrv2di3,ashrv2di3,usdot_prod<mode>): Ditto.
|
||
|
||
2022-03-22 Tom de Vries <tdevries@suse.de>
|
||
|
||
PR target/104925
|
||
* config/nvptx/nvptx.md (define_insn "nvptx_uniform_warp_check"):
|
||
Use % as register prefix.
|
||
|
||
2022-03-22 Tom de Vries <tdevries@suse.de>
|
||
|
||
* config/nvptx/nvptx.cc (nvptx_scalar_mode_supported_p)
|
||
(nvptx_libgcc_floating_mode_supported_p): Only enable HFmode for
|
||
mexperimental.
|
||
|
||
2022-03-22 Tom de Vries <tdevries@suse.de>
|
||
|
||
* config/nvptx/nvptx.opt (mexperimental): New option.
|
||
|
||
2022-03-22 Tom de Vries <tdevries@suse.de>
|
||
|
||
PR target/104957
|
||
* config/nvptx/nvptx-protos.h (nvptx_asm_output_def_from_decls): Declare.
|
||
* config/nvptx/nvptx.cc (write_fn_proto_1): Don't add function marker
|
||
for alias.
|
||
(SET_ASM_OP, NVPTX_ASM_OUTPUT_DEF): New macro def.
|
||
(nvptx_asm_output_def_from_decls): New function.
|
||
* config/nvptx/nvptx.h (ASM_OUTPUT_DEF): New macro def, define to
|
||
gcc_unreachable ().
|
||
(ASM_OUTPUT_DEF_FROM_DECLS): New macro def, define to
|
||
nvptx_asm_output_def_from_decls.
|
||
* config/nvptx/nvptx.opt (malias): New opt.
|
||
|
||
2022-03-22 Tom de Vries <tdevries@suse.de>
|
||
|
||
PR target/104916
|
||
PR target/104783
|
||
* config/nvptx/nvptx.md (define_expand "omp_simt_exit"): Emit warp
|
||
sync (or uniform warp check for mptx < 6.0).
|
||
|
||
2022-03-22 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/105012
|
||
* tree-if-conv.cc (ifcvt_local_dce): Only call
|
||
dse_classify_store when we have a VDEF.
|
||
|
||
2022-03-22 Martin Liska <mliska@suse.cz>
|
||
|
||
PR target/104902
|
||
* config/nvptx/nvptx.cc (handle_ptx_version_option):
|
||
Fix option wrapping in an error message.
|
||
|
||
2022-03-22 Martin Liska <mliska@suse.cz>
|
||
|
||
PR target/104903
|
||
* config/rs6000/rs6000-c.cc (altivec_resolve_overloaded_builtin):
|
||
Wrap const keyword.
|
||
|
||
2022-03-22 Martin Liska <mliska@suse.cz>
|
||
|
||
* config/v850/v850-c.cc (pop_data_area): Fix typo in pragma
|
||
name.
|
||
|
||
2022-03-22 Martin Liska <mliska@suse.cz>
|
||
|
||
PR target/104898
|
||
* config/rs6000/rs6000.cc (rs6000_option_override_internal):
|
||
Use %qs instead of (%qs).
|
||
|
||
2022-03-22 Martin Liska <mliska@suse.cz>
|
||
|
||
PR target/104898
|
||
* config/i386/i386-options.cc (ix86_option_override_internal):
|
||
Use '%qs' instead of '(%qs)'.
|
||
|
||
2022-03-22 Martin Liska <mliska@suse.cz>
|
||
|
||
PR target/104898
|
||
* config/aarch64/aarch64.cc (aarch64_handle_attr_arch):
|
||
Use 'qs' and remove usage '(%qs)'.
|
||
(aarch64_handle_attr_cpu): Likewise.
|
||
(aarch64_handle_attr_tune): Likewise.
|
||
(aarch64_handle_attr_isa_flags): Likewise.
|
||
|
||
2022-03-22 Tamar Christina <tamar.christina@arm.com>
|
||
Andre Vieira <andre.simoesdiasvieira@arm.com>
|
||
|
||
* config/aarch64/aarch64.cc (neoversev1_regmove_cost): New tuning
|
||
struct.
|
||
(neoversev1_tunings): Use neoversev1_regmove_cost and update store_int
|
||
cost.
|
||
(neoverse512tvb_tunings): Likewise.
|
||
|
||
2022-03-22 Tamar Christina <tamar.christina@arm.com>
|
||
Andre Vieira <andre.simoesdiasvieira@arm.com>
|
||
|
||
* config/aarch64/aarch64.cc (demeter_addrcost_table,
|
||
demeter_regmove_cost, demeter_advsimd_vector_cost,
|
||
demeter_sve_vector_cost, demeter_scalar_issue_info,
|
||
demeter_advsimd_issue_info, demeter_sve_issue_info,
|
||
demeter_vec_issue_info, demeter_vector_cost,
|
||
demeter_tunings): New tuning structs.
|
||
(aarch64_ve_op_count::rename_cycles_per_iter): Enable for demeter
|
||
tuning.
|
||
* config/aarch64/aarch64-cores.def: Add entry for demeter.
|
||
* config/aarch64/aarch64-tune.md (tune): Add demeter to list.
|
||
|
||
2022-03-22 Tamar Christina <tamar.christina@arm.com>
|
||
Andre Vieira <andre.simoesdiasvieira@arm.com>
|
||
|
||
* config/aarch64/aarch64-protos.h (struct cpu_memmov_cost): New struct.
|
||
(struct tune_params): Change type of memmov_cost to use cpu_memmov_cost.
|
||
* config/aarch64/aarch64.cc (aarch64_memory_move_cost): Update all
|
||
tunings to use cpu_memmov_cost struct.
|
||
|
||
2022-03-22 Tamar Christina <tamar.christina@arm.com>
|
||
Andre Vieira <andre.simoesdiasvieira@arm.com>
|
||
|
||
* config/aarch64/aarch64.cc (neoversen2_addrcost_table,
|
||
neoversen2_regmove_cost, neoversen2_advsimd_vector_cost,
|
||
neoversen2_sve_vector_cost, neoversen2_scalar_issue_info,
|
||
neoversen2_advsimd_issue_info, neoversen2_sve_issue_info,
|
||
neoversen2_vec_issue_info, neoversen2_tunings): New structs.
|
||
(neoversen2_tunings): Use new structs and update tuning flags.
|
||
(aarch64_vec_op_count::rename_cycles_per_iter): Enable for neoversen2
|
||
tuning.
|
||
|
||
2022-03-22 Andre Vieira <andre.simoesdiasvieira@arm.com>
|
||
|
||
* config/aarch64/aarch64.h (AARCH64_FL_FOR_ARCH9): Add FP16 feature
|
||
bit.
|
||
|
||
2022-03-22 liuhongt <hongtao.liu@intel.com>
|
||
|
||
PR target/104982
|
||
* config/i386/i386.md (*jcc_bt<mode>_mask): Extend the
|
||
following splitter to reversed condition.
|
||
|
||
2022-03-22 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR rtl-optimization/104989
|
||
* calls.cc (expand_call): Don't set ECF_NORETURN in flags after
|
||
sorry for passing too large argument, instead set sibcall_failure
|
||
for pass == 0, or a new normal_failure flag otherwise. If
|
||
normal_failure is set, don't assert all stack has been deallocated
|
||
at the end and throw away the whole insn sequence.
|
||
|
||
2022-03-22 Qian Jianhua <qianjh@cn.fujitsu.com>
|
||
|
||
* print-tree.cc: Change array length
|
||
|
||
2022-03-22 Hongyu Wang <hongyu.wang@intel.com>
|
||
|
||
PR target/104978
|
||
* config/i386/sse.md
|
||
(avx512fp16_fmaddcsh_v8hf_mask1<round_expand_name):
|
||
Use avx512f_movsf_mask instead of vmovaps or vblend, and
|
||
force_reg before lowpart_subreg.
|
||
(avx512fp16_fcmaddcsh_v8hf_mask1<round_expand_name): Likewise.
|
||
|
||
2022-03-21 H.J. Lu <hjl.tools@gmail.com>
|
||
|
||
PR target/105000
|
||
* common/config/i386/i386-common.cc
|
||
(OPTION_MASK_ISA2_GENERAL_REGS_ONLY_UNSET): Replace
|
||
OPTION_MASK_ISA2_AVX512F_UNSET with OPTION_MASK_ISA2_SSE_UNSET.
|
||
|
||
2022-03-21 H.J. Lu <hjl.tools@gmail.com>
|
||
|
||
PR target/104998
|
||
* common/config/i386/cpuinfo.h (get_available_features): Pass
|
||
0x19 to __cpuid for bit_AESKLE. Enable FEATURE_AESKLE only if
|
||
bit_AESKLE is set.
|
||
|
||
2022-03-21 Richard Sandiford <richard.sandiford@arm.com>
|
||
|
||
PR middle-end/104869
|
||
* rtl-ssa/accesses.h (clobber_group::prev_clobber): Declare.
|
||
(clobber_group::next_clobber): Likewise.
|
||
(def_lookup::prev_def): Rename to...
|
||
(def_lookup::last_def_of_prev_group): ...this.
|
||
(def_lookup::next_def): Rename to...
|
||
(def_lookup::first_def_of_next_group): ...this.
|
||
(def_lookup::matching_or_prev_def): Rename to...
|
||
(def_lookup::matching_set_or_last_def_of_prev_group): ...this.
|
||
(def_lookup::matching_or_next_def): Rename to...
|
||
(def_lookup::matching_set_or_first_def_of_next_group): ...this.
|
||
(def_lookup::prev_def): New function, taking the lookup insn as
|
||
argument.
|
||
(def_lookup::next_def): Likewise.
|
||
* rtl-ssa/member-fns.inl (def_lookup::prev_def): Rename to...
|
||
(def_lookup::last_def_of_prev_group): ...this.
|
||
(def_lookup::next_def): Rename to...
|
||
(def_lookup::first_def_of_next_group): ...this.
|
||
(def_lookup::matching_or_prev_def): Rename to...
|
||
(def_lookup::matching_set_or_last_def_of_prev_group): ...this.
|
||
(def_lookup::matching_or_next_def): Rename to...
|
||
(def_lookup::matching_set_or_first_def_of_next_group): ...this.
|
||
* rtl-ssa/movement.h (restrict_movement_for_dead_range): Update after
|
||
above renaming.
|
||
* rtl-ssa/accesses.cc (clobber_group::prev_clobber): New function.
|
||
(clobber_group::next_clobber): Likewise.
|
||
(def_lookup::prev_def): Likewise.
|
||
(def_lookup::next_def): Likewise.
|
||
(function_info::make_use_available): Pass the lookup insn to
|
||
def_lookup::prev_def and def_lookup::next_def.
|
||
|
||
2022-03-21 Martin Liska <mliska@suse.cz>
|
||
|
||
* doc/invoke.texi: Document min-pagesize parameter.
|
||
|
||
2022-03-21 Richard Biener <rguenther@suse.de>
|
||
|
||
* tree-ssa-loop-niter.cc (estimate_numbers_of_iterations): Dump
|
||
we are estimating niter of loop.
|
||
|
||
2022-03-21 Kito Cheng <kito.cheng@sifive.com>
|
||
|
||
* common/config/riscv/riscv-common.cc (riscv_ext_flag_table):
|
||
Update flag name and mask name.
|
||
* config/riscv/riscv-c.cc (riscv_cpu_cpp_builtins): Define
|
||
misc macro for vector extensions.
|
||
* config/riscv/riscv-opts.h (MASK_VECTOR_EEW_32): Rename to ...
|
||
(MASK_VECTOR_ELEN_32): ... this.
|
||
(MASK_VECTOR_EEW_64): Rename to ...
|
||
(MASK_VECTOR_ELEN_64): ... this.
|
||
(MASK_VECTOR_EEW_FP_32): Rename to ...
|
||
(MASK_VECTOR_ELEN_FP_32): ... this.
|
||
(MASK_VECTOR_EEW_FP_64): Rename to ...
|
||
(MASK_VECTOR_ELEN_FP_64): ... this.
|
||
(TARGET_VECTOR_ELEN_32): New.
|
||
(TARGET_VECTOR_ELEN_64): Ditto.
|
||
(TARGET_VECTOR_ELEN_FP_32): Ditto.
|
||
(TARGET_VECTOR_ELEN_FP_64): Ditto.
|
||
(TARGET_MIN_VLEN): Ditto.
|
||
* config/riscv/riscv.opt (riscv_vector_eew_flags): Rename to ...
|
||
(riscv_vector_elen_flags): ... this.
|
||
|
||
2022-03-21 Hongyu Wang <hongyu.wang@intel.com>
|
||
|
||
PR target/104977
|
||
* config/i386/sse.md
|
||
(avx512fp16_fma<complexopname>sh_v8hf<mask_scalarcz_name><round_scalarcz_name>):
|
||
Correct round operand for intel dialect.
|
||
|
||
2022-03-19 Arthur Cohen <arthur.cohen@embecosm.com>
|
||
|
||
* diagnostic.cc (diagnostic_cc_tests): Rename to...
|
||
(c_diagnostic_cc_tests): ...this.
|
||
* opt-problem.cc (opt_problem_cc_tests): Rename to...
|
||
(c_opt_problem_cc_tests): ...this.
|
||
* selftest-run-tests.cc (selftest::run_tests): No longer run
|
||
opt_problem_cc_tests or diagnostic_cc_tests.
|
||
* selftest.h (diagnostic_cc_tests): Remove declaration.
|
||
(opt_problem_cc_tests): Likewise.
|
||
|
||
2022-03-19 Marc Nieper-Wißkirchen <marc@nieper-wisskirchen.de>
|
||
|
||
PR jit/63854
|
||
* hash-traits.h (struct typed_const_free_remove): New.
|
||
(struct free_string_hash): New.
|
||
* pass_manager.h: Use free_string_hash.
|
||
* passes.cc (pass_manager::register_pass_name): Use free_string_hash.
|
||
(pass_manager::~pass_manager): Delete allocated m_name_to_pass_map.
|
||
|
||
2022-03-19 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR middle-end/104971
|
||
* config/i386/i386-expand.cc
|
||
(ix86_expand_builtin) <case IX86_BUILTIN_READ_FLAGS>: If ignore,
|
||
don't push/pop anything and just return const0_rtx.
|
||
|
||
2022-03-18 Vladimir N. Makarov <vmakarov@redhat.com>
|
||
|
||
PR rtl-optimization/104961
|
||
* lra-assigns.cc (find_reload_regno_insns): Process reload pseudo clobber.
|
||
|
||
2022-03-18 Jason Merrill <jason@redhat.com>
|
||
|
||
* tree.h (IDENTIFIER_LENGTH): Add comment.
|
||
|
||
2022-03-18 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR middle-end/99578
|
||
PR middle-end/100680
|
||
PR tree-optimization/100834
|
||
* params.opt (--param=min-pagesize=): New parameter.
|
||
* pointer-query.cc
|
||
(compute_objsize_r) <case ARRAY_REF>: Formatting fix.
|
||
(compute_objsize_r) <case INTEGER_CST>: Use maximum object size instead
|
||
of zero for pointer constants equal or larger than min-pagesize.
|
||
|
||
2022-03-18 Tom de Vries <tdevries@suse.de>
|
||
|
||
* gimplify.cc (gimplify_omp_for): Set location using 'input_location'.
|
||
Set gfor location only when dealing with a OMP_TASKLOOP.
|
||
|
||
2022-03-18 Tom de Vries <tdevries@suse.de>
|
||
|
||
* gimplify.cc (gimplify_omp_for): Set taskloop location.
|
||
|
||
2022-03-18 Tom de Vries <tdevries@suse.de>
|
||
|
||
PR target/104952
|
||
* omp-low.cc (lower_rec_input_clauses): Make sure GOMP_SIMT_XCHG_BFLY
|
||
is executed unconditionally.
|
||
|
||
2022-03-18 liuhongt <hongtao.liu@intel.com>
|
||
|
||
PR target/104974
|
||
* config/i386/i386.md (*movhi_internal): Set attr type from HI
|
||
to HF for alternative 12 under TARGET_AVX512FP16.
|
||
|
||
2022-03-18 Cui,Lili <lili.cui@intel.com>
|
||
|
||
PR target/104963
|
||
* config/i386/i386.h (PTA_SAPPHIRERAPIDS): change it to base on ICX.
|
||
* doc/invoke.texi: Update documents for Intel sapphirerapids.
|
||
|
||
2022-03-17 Roger Sayle <roger@nextmovesoftware.com>
|
||
|
||
PR target/86722
|
||
PR tree-optimization/90356
|
||
* config/i386/i386.md (*movtf_internal): Don't guard
|
||
standard_sse_constant_p clause by optimize_function_for_size_p.
|
||
(*movdf_internal): Likewise.
|
||
(*movsf_internal): Likewise.
|
||
|
||
2022-03-17 Andrew MacLeod <amacleod@redhat.com>
|
||
|
||
PR tree-optimization/102943
|
||
* gimple-range-cache.cc (ranger_cache::range_from_dom): Find range via
|
||
dominators and apply intermediary outgoing edge ranges.
|
||
|
||
2022-03-17 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/104960
|
||
* passes.def: Add pass parameter to pass_sink_code, mark
|
||
last one to unsplit edges.
|
||
* tree-ssa-sink.cc (pass_sink_code::set_pass_param): New.
|
||
(pass_sink_code::execute): Always execute TODO_cleanup_cfg
|
||
when we need to unsplit edges.
|
||
|
||
2022-03-17 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR middle-end/103984
|
||
* gimplify.cc (gimplify_target_expr): Gimplify type sizes and
|
||
TARGET_EXPR_INITIAL into a temporary sequence, then push clobbers
|
||
and asan unpoisioning, then append the temporary sequence and
|
||
finally the TARGET_EXPR_CLEANUP clobbers.
|
||
|
||
2022-03-16 Roger Sayle <roger@nextmovesoftware.com>
|
||
|
||
* config/i386/sse.md: Delete corrupt character/typo.
|
||
|
||
2022-03-16 Roger Sayle <roger@nextmovesoftware.com>
|
||
|
||
PR target/94680
|
||
* config/i386/sse.md (sse2_movq128): New define_expand to
|
||
preserve previous named instruction.
|
||
(*sse2_movq128_<mode>): Renamed from sse2_movq128, and
|
||
generalized to VI8F_128 (both V2DI and V2DF).
|
||
|
||
2022-03-16 Siddhesh Poyarekar <siddhesh@gotplt.org>
|
||
|
||
PR tree-optimization/104941
|
||
* tree-object-size.cc (size_for_offset): Make useless conversion
|
||
check lighter and assign result of fold_convert to OFFSET.
|
||
|
||
2022-03-16 H.J. Lu <hjl.tools@gmail.com>
|
||
|
||
PR target/104890
|
||
* config/i386/x86gprintrin.h: Also check _SOFT_FLOAT before
|
||
pushing target("general-regs-only").
|
||
|
||
2022-03-16 Kito Cheng <kito.cheng@sifive.com>
|
||
|
||
* common/config/riscv/riscv-common.cc (riscv_ext_version_table):
|
||
Add version info for zk, zks and zkn.
|
||
|
||
2022-03-16 LiaoShihua <shihua@iscas.ac.cn>
|
||
|
||
* common/config/riscv/riscv-common.cc
|
||
(riscv_combine_info): New.
|
||
(riscv_subset_list::handle_combine_ext): Combine back into zk to
|
||
maintain the canonical order in isa strings.
|
||
(riscv_subset_list::parse): Ditto.
|
||
* config/riscv/riscv-subset.h (handle_combine_ext): New.
|
||
|
||
2022-03-16 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/102008
|
||
* passes.def: Move the added code sinking pass before the
|
||
preceeding phiopt pass.
|
||
|
||
2022-03-16 Patrick Palka <ppalka@redhat.com>
|
||
|
||
PR c++/96780
|
||
* doc/invoke.texi (C++ Dialect Options): Document
|
||
-ffold-simple-inlines.
|
||
|
||
2022-03-16 Siddhesh Poyarekar <siddhesh@gotplt.org>
|
||
|
||
PR tree-optimization/104942
|
||
* tree-object-size.cc (alloc_object_size): Remove STRIP_NOPS.
|
||
|
||
2022-03-16 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR target/104910
|
||
* config/aarch64/aarch64.cc (aarch64_load_symref_appropriately): Copy
|
||
imm rtx.
|
||
|
||
2022-03-16 Roger Sayle <roger@nextmovesoftware.com>
|
||
Richard Biener <rguenther@suse.de>
|
||
|
||
* gimple-match-head.cc (single_use): Implement inline using a
|
||
single loop.
|
||
|
||
2022-03-16 Roger Sayle <roger@nextmovesoftware.com>
|
||
|
||
* match.pd (X CMP X -> true): Test tree_expr_maybe_nan_p
|
||
instead of HONOR_NANS.
|
||
(X LTGT X -> false): Enable if X is not tree_expr_maybe_nan_p, as
|
||
this can't trap/signal.
|
||
|
||
2022-03-16 liuhongt <hongtao.liu@intel.com>
|
||
|
||
PR target/104946
|
||
* config/i386/i386-builtin.def (BDESC): Add
|
||
CODE_FOR_sse4_1_blendvpd for IX86_BUILTIN_BLENDVPD.
|
||
* config/i386/i386.cc (ix86_gimple_fold_builtin): Don't fold
|
||
__builtin_ia32_blendvpd w/o sse4.2
|
||
|
||
2022-03-15 Peter Bergner <bergner@linux.ibm.com>
|
||
|
||
PR target/104923
|
||
* config/rs6000/predicates.md (mma_disassemble_output_operand): Restrict
|
||
acceptable MEM addresses.
|
||
|
||
2022-03-15 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR target/91229
|
||
* config/riscv/riscv.cc (riscv_pass_aggregate_in_fpr_pair_p,
|
||
riscv_pass_aggregate_in_fpr_and_gpr_p): Pass OPT_Wpsabi instead of 0
|
||
to warning calls.
|
||
|
||
2022-03-15 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR target/104890
|
||
* config/i386/i386.h (LIBGCC2_UNWIND_ATTRIBUTE): Use no-mmx,no-sse
|
||
instead of general-regs-only.
|
||
|
||
2022-03-15 Roger Sayle <roger@nextmovesoftware.com>
|
||
Marc Glisse <marc.glisse@inria.fr>
|
||
Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/101895
|
||
* match.pd (vec_same_elem_p): Handle CONSTRUCTOR_EXPR def.
|
||
(plus (vec_perm (mult ...) ...) ...): New reordering simplification.
|
||
|
||
2022-03-15 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR rtl-optimization/104814
|
||
* ifcvt.cc (find_if_case_1, find_if_case_2): Punt if test_bb doesn't
|
||
end with onlyjump_p. Assume BB_END (test_bb) is always non-NULL.
|
||
|
||
2022-03-15 Martin Sebor <msebor@redhat.com>
|
||
|
||
PR middle-end/104436
|
||
* gimple-ssa-warn-access.cc (pass_waccess::check_dangling_stores):
|
||
Check for warning suppression. Avoid by-value arguments transformed
|
||
into by-transparent-reference.
|
||
|
||
2022-03-14 Roger Sayle <roger@nextmovesoftware.com>
|
||
Uroš Bizjak <ubizjak@gmail.com>
|
||
|
||
* config/i386/i386.md (peephole2 xorl;movb -> movzbl): Disable
|
||
transformation when *zero_extend<mode>si2 is not available.
|
||
|
||
2022-03-14 Xi Ruoyao <xry111@mengyan1223.wang>
|
||
|
||
* config/mips/mips.h (SUBTARGET_SHADOW_OFFSET): Define.
|
||
* config/mips/mips.cc (mips_option_override): Make
|
||
-fsanitize=address imply -fasynchronous-unwind-tables. This is
|
||
needed by libasan for stack backtrace on MIPS.
|
||
(mips_asan_shadow_offset): Return SUBTARGET_SHADOW_OFFSET.
|
||
|
||
2022-03-14 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR debug/104778
|
||
* lra.cc (lra_substitute_pseudo): For debug_p mode, simplify
|
||
SUBREG, ZERO_EXTEND, SIGN_EXTEND, FLOAT or UNSIGNED_FLOAT if recursive
|
||
call simplified the first operand into VOIDmode constant.
|
||
|
||
2022-03-14 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR tree-optimization/102586
|
||
* doc/extend.texi (__builtin_clear_padding): Clearify that for C++
|
||
argument type should be pointer to trivially-copyable type unless it
|
||
is address of a variable or parameter.
|
||
|
||
2022-03-14 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR target/99754
|
||
* config/i386/emmintrin.h (_mm_loadu_si32): Put loaded value into
|
||
first rather than last element of the vector, use __m32_u to do
|
||
a really unaligned load, use just 0 instead of (int)0.
|
||
(_mm_loadu_si16): Put loaded value into first rather than last
|
||
element of the vector, use __m16_u to do a really unaligned load,
|
||
use just 0 instead of (short)0.
|
||
|
||
2022-03-14 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR other/104899
|
||
* config/bfin/bfin.cc (bfin_handle_longcall_attribute): Fix a typo
|
||
in diagnostic message - cannott -> cannot. Use %< and %> around
|
||
names of attribute. Avoid too long line.
|
||
* range-op.cc (operator_logical_and::op1_range): Fix up a typo
|
||
in comment - cannott -> cannot. Use 2 spaces after . instead of one.
|
||
|
||
2022-03-14 liuhongt <hongtao.liu@intel.com>
|
||
|
||
PR target/104666
|
||
* config/i386/i386-expand.cc
|
||
(ix86_check_builtin_isa_match): New func.
|
||
(ix86_expand_builtin): Move code to
|
||
ix86_check_builtin_isa_match and call it.
|
||
* config/i386/i386-protos.h
|
||
(ix86_check_builtin_isa_match): Declare.
|
||
* config/i386/i386.cc (ix86_gimple_fold_builtin): Don't fold
|
||
builtin into gimple when isa mismatches.
|
||
|
||
2022-03-13 Tobias Burnus <tobias@codesourcery.com>
|
||
|
||
* doc/invoke.texi: Fix typos.
|
||
* doc/tm.texi.in: Remove duplicated word.
|
||
* doc/tm.texi: Regenerate.
|
||
|
||
2022-03-12 Segher Boessenkool <segher@kernel.crashing.org>
|
||
|
||
PR target/104829
|
||
* config/rs6000/rs6000.cc (rs6000_machine_from_flags): Don't output
|
||
"ppc" and "ppc64" based on rs6000_cpu.
|
||
|
||
2022-03-12 Thomas Schwinge <thomas@codesourcery.com>
|
||
|
||
PR middle-end/100280
|
||
PR middle-end/104892
|
||
* omp-oacc-kernels-decompose.cc (omp_oacc_kernels_decompose_1):
|
||
Remove special handling of 'GOMP_MAP_FORCE_TOFROM'.
|
||
|
||
2022-03-12 Thomas Schwinge <thomas@codesourcery.com>
|
||
|
||
PR middle-end/100280
|
||
PR middle-end/104086
|
||
* omp-oacc-kernels-decompose.cc (omp_oacc_kernels_decompose_1):
|
||
Mark variables used in 'present' clauses as addressable.
|
||
* omp-low.cc (scan_sharing_clauses) <OMP_CLAUSE_MAP>: Gracefully
|
||
handle duplicate 'OMP_CLAUSE_MAP_DECL_MAKE_ADDRESSABLE'.
|
||
|
||
2022-03-12 Thomas Schwinge <thomas@codesourcery.com>
|
||
|
||
PR other/65095
|
||
* tree-core.h (user_omp_claus_code_name): Declare function.
|
||
* tree.cc (user_omp_clause_code_name): New function.
|
||
|
||
2022-03-12 Roger Sayle <roger@nextmovesoftware.com>
|
||
|
||
PR middle-end/98420
|
||
* match.pd (minus @0 @0): Additional checks for -fno-rounding-math
|
||
(the defaut) or -fno-signed-zeros.
|
||
|
||
2022-03-12 Michael Meissner <meissner@linux.ibm.com>
|
||
|
||
PR target/104868
|
||
* config/rs6000/vsx.md (extendditi2): Use a 'b' constraint when
|
||
moving from a GPR register to an Altivec register.
|
||
|
||
2022-03-11 Roger Sayle <roger@nextmovesoftware.com>
|
||
|
||
PR tree-optimization/98335
|
||
* config/i386/i386.md (peephole2): Eliminate redundant insv.
|
||
Combine movl followed by movb. Transform xorl followed by
|
||
a suitable movb or movw into the equivalent movz[bw]l.
|
||
|
||
2022-03-11 Roger Sayle <roger@nextmovesoftware.com>
|
||
Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/98335
|
||
* builtins.cc (get_object_alignment_2): Export.
|
||
* builtins.h (get_object_alignment_2): Likewise.
|
||
* tree-ssa-alias.cc (ao_ref_alignment): New.
|
||
* tree-ssa-alias.h (ao_ref_alignment): Declare.
|
||
* tree-ssa-dse.cc (compute_trims): Improve logic deciding whether
|
||
to align head/tail, writing more bytes but using fewer store insns.
|
||
|
||
2022-03-11 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/104880
|
||
* tree-ssa.cc (execute_update_address_taken): Remember if we
|
||
optimistically made something not addressable and
|
||
prepare to undo it.
|
||
|
||
2022-03-11 Richard Biener <rguenther@suse.de>
|
||
|
||
PR target/104762
|
||
* config/i386/i386.cc (ix86_builtin_vectorization_cost): Do not
|
||
cost the first lane of SSE pieces as inserts for vec_construct.
|
||
|
||
2022-03-10 Roger Sayle <roger@nextmovesoftware.com>
|
||
|
||
PR c++/84964
|
||
* calls.cc (expand_call): Ignore stack adjustments after sorry.
|
||
|
||
2022-03-10 Vladimir N. Makarov <vmakarov@redhat.com>
|
||
|
||
PR target/103074
|
||
* lra-constraints.cc (split_reg): Set up
|
||
check_and_force_assignment_correctness_p when splitting hard
|
||
register live range.
|
||
|
||
2022-03-10 Martin Jambor <mjambor@suse.cz>
|
||
|
||
PR ipa/104813
|
||
* ipa-cp.cc (create_specialized_node): Move removal of
|
||
self-recursive calls from callers vector before refrence
|
||
adjustments.
|
||
|
||
2022-03-10 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/102943
|
||
* gimple-range-cache.cc (sbr_sparse_bitmap::bitvec):
|
||
Make a bitmap_head.
|
||
(sbr_sparse_bitmap::sbr_sparse_bitmap): Adjust and switch
|
||
to tree view.
|
||
(sbr_sparse_bitmap::set_bb_range): Adjust.
|
||
(sbr_sparse_bitmap::get_bb_range): Likewise.
|
||
|
||
2022-03-10 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/102943
|
||
* tree-ssa-dom.cc (back_propagate_equivalences): Only
|
||
populate the dominance bitmap if fast queries are not
|
||
available. Use a tree view bitmap.
|
||
(record_temporary_equivalences): Cache the dominance bitmap
|
||
across all equivalences on the edge.
|
||
|
||
2022-03-10 Tom de Vries <tdevries@suse.de>
|
||
|
||
PR target/104840
|
||
* config/nvptx/nvptx.md (define_attr "predicable"): Use no,yes instead
|
||
of false,true.
|
||
|
||
2022-03-10 Tom de Vries <tdevries@suse.de>
|
||
|
||
PR target/104783
|
||
* config/nvptx/nvptx.cc (nvptx_init_unisimt_predicate)
|
||
(nvptx_output_unisimt_switch): Handle unisimt_outside_simt_predicate.
|
||
(nvptx_get_unisimt_outside_simt_predicate): New function.
|
||
(predicate_insn): New function, factored out of ...
|
||
(nvptx_reorg_uniform_simt): ... here. Predicate all emitted insns.
|
||
* config/nvptx/nvptx.h (struct machine_function): Add
|
||
unisimt_outside_simt_predicate field.
|
||
* config/nvptx/nvptx.md (define_insn "nvptx_warpsync")
|
||
(define_insn "nvptx_uniform_warp_check"): Make predicable.
|
||
|
||
2022-03-10 Tom de Vries <tdevries@suse.de>
|
||
|
||
* config/nvptx/nvptx.cc (nvptx_unisimt_handle_set): Handle unused
|
||
result.
|
||
|
||
2022-03-10 Tom de Vries <tdevries@suse.de>
|
||
|
||
PR target/104815
|
||
* config/nvptx/nvptx.cc (nvptx_print_operand): Handle 'x' operand
|
||
modifier.
|
||
* config/nvptx/nvptx.md: Use %x0 destination operand in atom insns.
|
||
|
||
2022-03-10 Tom de Vries <tdevries@suse.de>
|
||
|
||
* config/nvptx/nvptx.md (define_insn "atomic_fetch_<logic><mode>"):
|
||
Emit atom.and.b64 instead of atom.b64.and.
|
||
|
||
2022-03-10 Tom de Vries <tdevries@suse.de>
|
||
|
||
* config/nvptx/t-nvptx (MULTILIB_EXTRA_OPTS): Move mptx=3.1 ...
|
||
(MULTILIB_OPTIONS): ... here.
|
||
|
||
2022-03-10 Tom de Vries <tdevries@suse.de>
|
||
|
||
PR target/104758
|
||
* config/nvptx/nvptx.opt (misa): Set default to sm_30.
|
||
* config/nvptx/t-nvptx (MULTILIB_EXTRA_OPTS): Remove misa=sm_30.
|
||
|
||
2022-03-10 Thomas Schwinge <thomas@codesourcery.com>
|
||
|
||
PR middle-end/90115
|
||
PR middle-end/102330
|
||
PR middle-end/104774
|
||
* omp-low.cc (oacc_privatization_candidate_p)
|
||
(oacc_privatization_scan_clause_chain)
|
||
(oacc_privatization_scan_decl_chain, lower_oacc_private_marker):
|
||
Analyze 'lookup_decl'-translated DECL.
|
||
|
||
2022-03-10 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR target/99708
|
||
* config/rs6000/rs6000.h (enum rs6000_builtin_type_index): Remove
|
||
RS6000_BTI_ptr_ieee128_float and RS6000_BTI_ptr_ibm128_float.
|
||
(ptr_ieee128_float_type_node, ptr_ibm128_float_type_node): Remove.
|
||
* config/rs6000/rs6000-builtin.cc (rs6000_type_string): Return
|
||
"**NULL**" if type_node is NULL first. Handle
|
||
ieee128_float_type_node.
|
||
(rs6000_init_builtins): Don't initialize ptr_ieee128_float_type_node
|
||
and ptr_ibm128_float_type_node. Set ibm128_float_type_node and
|
||
ieee128_float_type_node to NULL rather than long_double_type_node if
|
||
they aren't supported. Do support __ibm128 even if
|
||
!TARGET_FLOAT128_TYPE when long double is double double.
|
||
(rs6000_expand_builtin): Error if bif_is_ibm128 and
|
||
!ibm128_float_type_node. Remap RS6000_BIF_{,UN}PACK_IF to
|
||
RS6000_BIF_{,UN}PACK_TF much earlier and only use bif_is_ibm128 check
|
||
for it.
|
||
* config/rs6000/rs6000-c.cc (rs6000_target_modify_macros): Define
|
||
__SIZEOF_FLOAT128__ here and only iff __float128 macro is defined.
|
||
(rs6000_cpu_cpp_builtins): Don't define __SIZEOF_FLOAT128__ here.
|
||
Define __SIZEOF_IBM128__=16 if ieee128_float_type_node is non-NULL.
|
||
Formatting fix.
|
||
* config/rs6000/rs6000-gen-builtins.cc: Document ibm128 attribute.
|
||
(struct attrinfo): Add isibm128 member.
|
||
(TYPE_MAP_SIZE): Remove.
|
||
(type_map): Use [] instead of [TYPE_MAP_SIZE]. For "if" use
|
||
ibm128_float_type_node only if it is non-NULL, otherwise fall back
|
||
to long_double_type_node. Remove "pif" entry.
|
||
(parse_bif_attrs): Handle ibm128 attribute and print it for debugging.
|
||
(write_decls): Output bif_ibm128_bit and bif_is_ibm128.
|
||
(write_type_node): Use sizeof type_map / sizeof type_map[0]
|
||
instead of TYPE_MAP_SIZE.
|
||
(write_bif_static_init): Handle isibm128.
|
||
* config/rs6000/rs6000-builtins.def: Document ibm128 attribute.
|
||
(__builtin_pack_ibm128, __builtin_unpack_ibm128): Add ibm128
|
||
attribute.
|
||
|
||
2022-03-09 Richard Biener <rguenther@suse.de>
|
||
|
||
* cfgexpand.cc (expand_gimple_asm): Special-case MEM_REF
|
||
with non-decl operand, avoiding a copy.
|
||
|
||
2022-03-09 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR target/104781
|
||
* config/i386/i386.h (LIBGCC2_UNWIND_ATTRIBUTE): Define for ia32.
|
||
|
||
2022-03-09 Richard Biener <rguenther@suse.de>
|
||
|
||
PR middle-end/104786
|
||
* cfgexpand.cc (expand_asm_stmt): Do not generate a copy
|
||
for VLAs without an upper size bound.
|
||
|
||
2022-03-09 Xi Ruoyao <xry111@mengyan1223.wang>
|
||
|
||
PR tree-optimization/104851
|
||
* optabs-query.cc (supports_vec_convert_optab_p): Fix off-by-one
|
||
error.
|
||
|
||
2022-03-09 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR c/104711
|
||
* doc/invoke.texi (-Wextra): Document that -Wshift-negative-value
|
||
is enabled by it only for C++11 to C++17 rather than for C++03 or
|
||
later.
|
||
(-Wshift-negative-value): Similarly (except here we stated
|
||
that it is enabled for C++11 or later).
|
||
|
||
2022-03-09 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR rtl-optimization/104839
|
||
* simplify-rtx.cc (simplify_unary_operation_1) <case SIGN_EXTEND>:
|
||
Use SRP_SIGNED instead of incorrect 1 in SUBREG_PROMOTED_SET.
|
||
(simplify_unary_operation_1) <case ZERO_EXTEND>: Use SRP_UNSIGNED
|
||
instead of incorrect 0 in SUBREG_PROMOTED_SET.
|
||
|
||
2022-03-09 Xi Ruoyao <xry111@mengyan1223.wang>
|
||
|
||
PR target/104842
|
||
* config/mips/mips.h (LUI_OPERAND): Cast the input to an unsigned
|
||
value before adding an offset.
|
||
|
||
2022-03-08 Christophe Lyon <christophe.lyon@arm.com>
|
||
|
||
* config/arm/arm-builtins.cc
|
||
(arm_binop_none_none_unone_qualifiers): Delete.
|
||
(BINOP_NONE_NONE_UNONE_QUALIFIERS): Delete.
|
||
|
||
2022-03-08 Iain Sandoe <iain@sandoe.co.uk>
|
||
|
||
PR translation/104552
|
||
* config/host-darwin.cc (darwin_gt_pch_get_address): Amend
|
||
the PCH out of memory error message punctuation and wording.
|
||
|
||
2022-03-08 Marek Polacek <polacek@redhat.com>
|
||
|
||
PR rtl-optimization/104777
|
||
* rtl.cc (classify_insn): For ASM_OPERANDS, return JUMP_INSN only if
|
||
ASM_OPERANDS_LABEL_VEC has at least one element.
|
||
|
||
2022-03-08 H.J. Lu <hjl.tools@gmail.com>
|
||
|
||
PR target/104781
|
||
* config/i386/i386.cc (ix86_expand_epilogue): Sorry if there is
|
||
stack realignment or regparm nested function with EH return.
|
||
|
||
2022-03-08 Andre Vieira <andre.simoesdiasvieira@arm.com>
|
||
|
||
PR target/104790
|
||
* config/arm/arm.h (MVE_STN_LDW_MODE): New MACRO.
|
||
* config/arm/arm.cc (mve_vector_mem_operand): Relax constraint on base
|
||
register for non widening loads or narrowing stores.
|
||
|
||
2022-03-08 Eric Gallager <egallager@gcc.gnu.org>
|
||
|
||
PR translation/104552
|
||
* params.opt: Fix typo.
|
||
|
||
2022-03-08 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/84201
|
||
* params.opt (-param=vect-induction-float): Add.
|
||
* doc/invoke.texi (vect-induction-float): Document.
|
||
* tree-vect-loop.cc (vectorizable_induction): Honor
|
||
param_vect_induction_float.
|
||
|
||
2022-03-08 Martin Jambor <mjambor@suse.cz>
|
||
|
||
PR translation/104552
|
||
* params.opt (ipa-cp-recursive-freq-factor): Remove repeated word
|
||
"that" in the description.
|
||
|
||
2022-03-08 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/104825
|
||
* tree-ssa-sccvn.cc (visit_reference_op_call): Properly
|
||
guard modref get_ao_ref on a pointer typed argument.
|
||
|
||
2022-03-08 liuhongt <hongtao.liu@intel.com>
|
||
|
||
* config/i386/sse.md (*vec_dupv4si): Disable memory operand
|
||
for !TARGET_INTER_UNIT_MOVES_TO_VEC when prefer_for_speed.
|
||
|
||
2022-03-07 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* doc/invoke.texi (C++ Modules): Remove anachronism.
|
||
|
||
2022-03-07 Martin Liska <mliska@suse.cz>
|
||
|
||
PR middle-end/104381
|
||
* opts.cc (finish_options): If debug info is disabled
|
||
(debug_info_level) and -fvar-tracking is unset, disable it.
|
||
|
||
2022-03-07 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
* tree-ssa-propagate.cc: Fix up duplicated word issue in a comment.
|
||
* config/riscv/riscv.cc: Likewise.
|
||
* config/darwin.h: Likewise.
|
||
* config/i386/i386.cc: Likewise.
|
||
* config/aarch64/thunderx3t110.md: Likewise.
|
||
* config/aarch64/fractional-cost.h: Likewise.
|
||
* config/vax/vax.cc: Likewise.
|
||
* config/rs6000/pcrel-opt.md: Likewise.
|
||
* config/rs6000/predicates.md: Likewise.
|
||
* ctfc.h: Likewise.
|
||
* tree-ssa-uninit.cc: Likewise.
|
||
* value-relation.h: Likewise.
|
||
* gimple-range-gori.cc: Likewise.
|
||
* ipa-polymorphic-call.cc: Likewise.
|
||
* pointer-query.cc: Likewise.
|
||
* ipa-sra.cc: Likewise.
|
||
* internal-fn.cc: Likewise.
|
||
* varasm.cc: Likewise.
|
||
* gimple-ssa-warn-access.cc: Likewise.
|
||
|
||
2022-03-07 Martin Liska <mliska@suse.cz>
|
||
|
||
PR target/104794
|
||
* config/arm/arm.cc (arm_option_override_internal): Add missing
|
||
space.
|
||
|
||
2022-03-07 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/104782
|
||
* tree-vect-slp.cc (vectorize_slp_instance_root_stmt):
|
||
Re-instantiate r10-5979 fix, add comment.
|
||
|
||
2022-03-07 Martin Liska <mliska@suse.cz>
|
||
|
||
PR target/104797
|
||
* config/msp430/msp430.cc (msp430_expand_delay_cycles): Remove
|
||
parenthesis from built-in name.
|
||
|
||
2022-03-07 Martin Liska <mliska@suse.cz>
|
||
|
||
PR target/104794
|
||
* config/arm/arm.cc (arm_option_override_internal): Fix quoting
|
||
of options in error messages.
|
||
(arm_option_reconfigure_globals): Likewise.
|
||
|
||
2022-03-07 Martin Liska <mliska@suse.cz>
|
||
|
||
PR target/104794
|
||
* config/arm/arm-builtins.cc (arm_expand_builtin): Reuse error
|
||
message. Fix ARM_BUILTIN_WRORHI and ARM_BUILTIN_WRORH that can
|
||
have only range [0,32].
|
||
|
||
2022-03-07 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR target/104775
|
||
* config/s390/s390.md (*cmp_and_trap_unsigned_int<mode>): Use
|
||
S constraint instead of T in the last alternative.
|
||
|
||
2022-03-07 Martin Liska <mliska@suse.cz>
|
||
|
||
* plugin.cc (default_plugin_dir_name): Remove <dir> from error
|
||
message.
|
||
|
||
2022-03-07 Martin Liska <mliska@suse.cz>
|
||
|
||
PR translation/90148
|
||
* config/rs6000/rs6000.cc (rs6000_linux64_override_options): Put
|
||
quote to a proper place.
|
||
* plugin.cc (default_plugin_dir_name): Likewise.
|
||
|
||
2022-03-07 Martin Liska <mliska@suse.cz>
|
||
|
||
PR target/99297
|
||
* config/rx/rx.cc (rx_expand_builtin_mvtc): Fix translation
|
||
string.
|
||
|
||
2022-03-07 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR target/104779
|
||
* config/i386/sse.md (avx512dq_mul<mode>3<mask_name>): New
|
||
define_expand pattern. Rename define_insn to ...
|
||
(*avx512dq_mul<mode>3<mask_name>): ... this.
|
||
(<code><mode>3_mask): New any_logic define_expand pattern.
|
||
(<mask_codefor><code><mode>3<mask_name>): Rename to ...
|
||
(*<code><mode>3<mask_name>): ... this.
|
||
|
||
2022-03-05 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
* gimple-ssa-warn-access.cc (pass_waccess::use_after_inval_p): Remove
|
||
visited bitmap and its use. Also punt on EDGE_ABNORMAL edges.
|
||
|
||
2022-03-05 Roger Sayle <roger@nextmovesoftware.com>
|
||
Uroš Bizjak <ubizjak@gmail.com>
|
||
|
||
PR testsuite/104732
|
||
* config/i386/i386.md (SWIM1248x): Renamed from SWIM1248s.
|
||
Include DI mode unconditionally.
|
||
(*anddi3_doubleword): Remove && TARGET_STV && TARGET_SSE2 condition,
|
||
i.e. always split on !TARGET_64BIT.
|
||
(*<any_or>di3_doubleword): Likewise.
|
||
(*one_cmpldi2_doubleword): Likewise.
|
||
(and<mode>3 expander): Update to use SWIM1248x from SWIM1248s.
|
||
(<any_or><mode>3 expander): Likewise.
|
||
(one_cmpl<mode>2 expander): Likewise.
|
||
|
||
2022-03-05 Michael Meissner <meissner@linux.ibm.com>
|
||
|
||
PR target/104698
|
||
* config/rs6000/vsx.md (UNSPEC_MTVSRD_DITI_W1): Delete.
|
||
(mtvsrdd_diti_w1): Delete.
|
||
(extendditi2): Convert from define_expand to
|
||
define_insn_and_split. Replace with code to deal with both GPR
|
||
registers and with altivec registers.
|
||
|
||
2022-03-04 Segher Boessenkool <segher@kernel.crashing.org>
|
||
|
||
* config/rs6000/rs6000.cc (rs6000_machine_from_flags): Restructure a
|
||
bit. Handle most older CPUs.
|
||
|
||
2022-03-04 Iain Sandoe <iain@sandoe.co.uk>
|
||
|
||
* config/darwin.cc (darwin_fold_builtin): Make fcode an int to
|
||
avoid a mismatch with DECL_MD_FUNCTION_CODE().
|
||
|
||
2022-03-04 Iain Sandoe <iain@sandoe.co.uk>
|
||
|
||
PR target/104117
|
||
* config/rs6000/darwin.md (@machopic_high_<mode>): New.
|
||
(@machopic_low_<mode>): New.
|
||
* config/rs6000/predicates.md (macho_pic_address): New.
|
||
* config/rs6000/rs6000.cc (rs6000_legitimize_address): Do not
|
||
apply the TLS processing to Darwin.
|
||
* lra-constraints.cc (process_address_1): Revert the changes
|
||
in r12-7209.
|
||
|
||
2022-03-04 Peter Bergner <bergner@linux.ibm.com>
|
||
|
||
PR target/87496
|
||
PR target/104208
|
||
* config/rs6000/rs6000.cc (rs6000_option_override_internal): Make the
|
||
ISA 2.06 requirement for -mabi=ieeelongdouble conditional on
|
||
-mlong-double-128.
|
||
Move the -mabi=ieeelongdouble and -mabi=ibmlongdouble error checking
|
||
from here...
|
||
* common/config/rs6000/rs6000-common.cc (rs6000_handle_option):
|
||
... to here.
|
||
|
||
2022-03-04 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR middle-end/104529
|
||
* gimplify.cc (gimplify_init_constructor): Clear TREE_READONLY
|
||
on automatic objects which will be runtime initialized.
|
||
|
||
2022-03-04 Thomas Schwinge <thomas@codesourcery.com>
|
||
|
||
PR middle-end/100280
|
||
PR middle-end/104132
|
||
PR middle-end/104133
|
||
* omp-low.cc (task_shared_vars): Rename to
|
||
'make_addressable_vars'. Adjust all users.
|
||
(scan_sharing_clauses) <OMP_CLAUSE_MAP> Use it for
|
||
'OMP_CLAUSE_MAP_DECL_MAKE_ADDRESSABLE' DECLs, too.
|
||
|
||
2022-03-04 Thomas Schwinge <thomas@codesourcery.com>
|
||
|
||
PR middle-end/100280
|
||
* tree.h (OMP_CLAUSE_MAP_DECL_MAKE_ADDRESSABLE): New.
|
||
* tree-core.h: Document it.
|
||
* omp-low.cc (scan_sharing_clauses) <OMP_CLAUSE_MAP>: Handle
|
||
'OMP_CLAUSE_MAP_DECL_MAKE_ADDRESSABLE'.
|
||
* omp-oacc-kernels-decompose.cc (maybe_build_inner_data_region):
|
||
Set 'OMP_CLAUSE_MAP_DECL_MAKE_ADDRESSABLE' instead of
|
||
'TREE_ADDRESSABLE'.
|
||
|
||
2022-03-04 Thomas Schwinge <thomas@codesourcery.com>
|
||
|
||
PR middle-end/100280
|
||
* omp-oacc-kernels-decompose.cc (maybe_build_inner_data_region):
|
||
Add diagnostic: "note: OpenACC 'kernels' decomposition: variable
|
||
'[...]' declared in block made addressable".
|
||
|
||
2022-03-04 Thomas Schwinge <thomas@codesourcery.com>
|
||
|
||
PR middle-end/100400
|
||
PR middle-end/103836
|
||
PR middle-end/104061
|
||
* omp-oacc-kernels-decompose.cc (decompose_kernels_region_body):
|
||
Catch 'GIMPLE_DEBUG'.
|
||
|
||
2022-03-04 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR c/104627
|
||
* tree.cc (warn_deprecated_use): For types prefer to use node
|
||
and only use TYPE_MAIN_VARIANT (node) if TYPE_STUB_DECL (node) is
|
||
NULL.
|
||
|
||
2022-03-04 H.J. Lu <hjl.tools@gmail.com>
|
||
|
||
PR target/104704
|
||
* config/i386/i386.cc (ix86_gen_scratch_sse_rtx): Always return
|
||
a pseudo register.
|
||
|
||
2022-03-03 Martin Sebor <msebor@redhat.com>
|
||
|
||
PR middle-end/104761
|
||
* gimple-ssa-warn-access.cc (pass_waccess::execute): Call
|
||
mark_dfs_back_edges.
|
||
|
||
2022-03-03 Martin Liska <mliska@suse.cz>
|
||
|
||
* configure.ac: Use linker plug-in by default.
|
||
* configure: Regenerate.
|
||
|
||
2022-03-03 Martin Liska <mliska@suse.cz>
|
||
|
||
* configure.ac: Now ld.mold support LTO plugin API, use it.
|
||
* configure: Regenerate.
|
||
|
||
2022-03-03 Tom de Vries <tdevries@suse.de>
|
||
|
||
* config/nvptx/t-nvptx (MULTILIB_EXTRA_OPTS): Add mptx=3.1.
|
||
|
||
2022-03-03 Tom de Vries <tdevries@suse.de>
|
||
|
||
PR target/104758
|
||
* config/nvptx/t-nvptx (MULTILIB_EXTRA_OPTS): Add misa=sm_30.
|
||
|
||
2022-03-03 Tom de Vries <tdevries@suse.de>
|
||
|
||
* config/nvptx/nvptx.h (ASM_SPEC): Add %{misa=sm_30:--no-verify}.
|
||
|
||
2022-03-03 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR middle-end/104757
|
||
* gimplify.cc (gimplify_omp_loop): Call gimplify_expr rather than
|
||
gimplify_omp_for.
|
||
(gimplify_expr) <case OMP_SIMD>: Temporarily disable
|
||
gimplify_ctxp->into_ssa around call to gimplify_omp_for.
|
||
|
||
2022-03-03 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR middle-end/104558
|
||
* calls.cc (store_one_arg): When not calling emit_push_insn
|
||
because size_rtx is const0_rtx, call at least anti_adjust_stack
|
||
on arg->locate.alignment_pad if !argblock and the alignment might
|
||
be non-zero.
|
||
|
||
2022-03-02 Alexandre Oliva <oliva@adacore.com>
|
||
|
||
* lra-constraints.cc (undo_optional_reloads): Recognize and
|
||
drop insns of multi-word move sequences, tolerate removal
|
||
iteration on an already-removed clobber, and refuse to
|
||
substitute original pseudos into clobbers.
|
||
|
||
2022-03-02 Qing Zhao <qing.zhao@oracle.com>
|
||
|
||
PR middle-end/102276
|
||
* common.opt (-Wtrivial-auto-var-init): New option.
|
||
* doc/invoke.texi (-Wtrivial-auto-var-init): Document new option.
|
||
(-ftrivial-auto-var-init): Update option;
|
||
* gimplify.cc (emit_warn_switch_unreachable): New function.
|
||
(warn_switch_unreachable_r): Rename to ...
|
||
(warn_switch_unreachable_and_auto_init_r): This.
|
||
(maybe_warn_switch_unreachable): Rename to ...
|
||
(maybe_warn_switch_unreachable_and_auto_init): This.
|
||
(gimplify_switch_expr): Update calls to renamed function.
|
||
|
||
2022-03-02 Richard Biener <rguenther@suse.de>
|
||
|
||
PR rtl-optimization/104686
|
||
* ira-color.cc (object_conflicts_with_allocno_p): New function
|
||
using a bitvector test instead of iterating when possible.
|
||
(allocnos_conflict_p): Choose the best allocno to iterate over
|
||
object conflicts.
|
||
(update_conflict_hard_regno_costs): Do allocnos_conflict_p test
|
||
last.
|
||
|
||
2022-03-02 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
* cfg.cc (dump_edge_info): Dump goto_locus if present.
|
||
|
||
2022-03-02 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR rtl-optimization/104589
|
||
* cfgrtl.cc (fixup_reorder_chain): Use loc_equal instead of direct
|
||
INSN_LOCATION comparison with goto_locus.
|
||
|
||
2022-03-02 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
* tree-ssa-strlen.cc (strlen_pass::handle_assign,
|
||
strlen_pass::before_dom_children): Comment spelling fixes.
|
||
|
||
2022-03-02 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
* ipa-modref-tree.cc (modref_access_node::contains,
|
||
modref_access_node::closer_pair_p, modref_access_node::insert,
|
||
modref_access_node::insert_kill): Comment spelling fixes.
|
||
* ipa-modref.cc: Likewise.
|
||
(modref_summary::finalize, ignore_nondeterminism_p,
|
||
class modref_access_analysis,
|
||
modref_access_analysis::set_side_effects,
|
||
modref_access_analysis::set_nondeterministic,
|
||
modref_access_analysis::record_global_memory_load,
|
||
modref_access_analysis::propagate, modref_access_analysis::analyze,
|
||
struct escape_point, class modref_lattice, modref_lattice::merge,
|
||
modref_lattice::merge_deref, class modref_eaf_analysis,
|
||
modref_eaf_analysis::merge_call_lhs_flags,
|
||
modref_eaf_analysis::analyze_ssa_name, modref_eaf_analysis::propagate,
|
||
modref_eaf_analysis::record_escape_points, remap_kills,
|
||
update_escape_summary, remove_useless_summaries,
|
||
ipa_merge_modref_summary_after_inlining, pass_ipa_modref::execute):
|
||
Likewise.
|
||
* ipa-modref.h (struct modref_summary, interposable_eaf_flags):
|
||
Likewise.
|
||
* ipa-modref-tree.h (enum modref_special_parms,
|
||
struct modref_access_node): Likewise.
|
||
|
||
2022-03-01 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR tree-optimization/104715
|
||
* gimple-ssa-warn-access.cc (pass_waccess::check_pointer_uses): Don't
|
||
unnecessarily test if ptr is a SSA_NAME, it has to be. Only push lhs
|
||
of a call if gimple_call_return_arg is equal to ptr, not just when it
|
||
is non-NULL.
|
||
|
||
2022-03-01 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
* gimple-ssa-warn-access.cc (warn_string_no_nul,
|
||
maybe_warn_nonstring_arg, fndecl_alloc_p, new_delete_mismatch_p,
|
||
matching_alloc_calls_p, maybe_warn_alloc_args_overflow,
|
||
pass_waccess::check_alloca, pass_waccess::check_strcat,
|
||
memmodel_to_uhwi, fntype_argno_type,
|
||
pass_waccess::maybe_check_access_sizes,
|
||
pass_waccess::check_call_access,
|
||
pass_waccess::maybe_check_dealloc_call, pass_waccess::check_stmt):
|
||
Comment spelling fixes.
|
||
|
||
2022-03-01 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/104716
|
||
* tree-loop-distribution.cc (find_seed_stmts_for_distribution):
|
||
Check if we can copy the loop.
|
||
|
||
2022-03-01 H.J. Lu <hjl.tools@gmail.com>
|
||
|
||
PR middle-end/104721
|
||
* cfgexpand.cc (expand_gimple_basic_block): Clear
|
||
currently_expanding_gimple_stmt when returning inside the loop.
|
||
|
||
2022-03-01 Martin Liska <mliska@suse.cz>
|
||
|
||
PR ipa/104533
|
||
* multiple_target.cc (get_attr_len): Move to tree.c.
|
||
(expand_target_clones): Remove single value checking.
|
||
* tree.cc (get_target_clone_attr_len): New fn.
|
||
* tree.h (get_target_clone_attr_len): Likewise.
|
||
|
||
2022-03-01 Martin Liska <mliska@suse.cz>
|
||
|
||
PR gcov-profile/104677
|
||
* doc/invoke.texi: Document more .gcda file name generation.
|
||
|
||
2022-03-01 Tom de Vries <tdevries@suse.de>
|
||
|
||
PR target/102429
|
||
* config/nvptx/nvptx.cc (nvptx_gen_shuffle): Handle DCmode and CDImode.
|
||
* config/nvptx/nvptx.md
|
||
(define_predicate "nvptx_register_or_complex_di_df_register_operand"):
|
||
New predicate.
|
||
(define_expand "omp_simt_xchg_bfly", define_expand "omp_simt_xchg_idx"):
|
||
Use nvptx_register_or_complex_di_df_register_operand.
|
||
|
||
2022-03-01 Tom de Vries <tdevries@suse.de>
|
||
|
||
* config.gcc (nvptx*-*-*): Add nvptx/nvptx-gen.opt to extra_options.
|
||
* config/nvptx/gen-copyright.sh: New file.
|
||
* config/nvptx/gen-h.sh: New file.
|
||
* config/nvptx/gen-opt.sh: New file.
|
||
* config/nvptx/nvptx.h (TARGET_SM35, TARGET_SM53, TARGET_SM70)
|
||
(TARGET_SM75, TARGET_SM80): Move ...
|
||
* config/nvptx/nvptx-gen.h: ... here. New file, generate.
|
||
* config/nvptx/nvptx.opt (Enum ptx_isa): Move ...
|
||
* config/nvptx/nvptx-gen.opt: ... here. New file, generate.
|
||
* config/nvptx/t-nvptx ($(srcdir)/config/nvptx/nvptx-gen.h)
|
||
($(srcdir)/config/nvptx/nvptx-gen.opt): New make target.
|
||
|
||
2022-03-01 Tom de Vries <tdevries@suse.de>
|
||
|
||
* config/nvptx/gen-omp-device-properties.sh: New file.
|
||
* config/nvptx/t-omp-device: Use gen-omp-device-properties.sh.
|
||
|
||
2022-03-01 Tom de Vries <tdevries@suse.de>
|
||
|
||
* config/nvptx/nvptx-sm.def: New file.
|
||
* config/nvptx/nvptx-c.cc (nvptx_cpu_cpp_builtins): Use nvptx-sm.def.
|
||
* config/nvptx/nvptx-opts.h (enum ptx_isa): Same.
|
||
* config/nvptx/nvptx.cc (sm_version_to_string)
|
||
(nvptx_omp_device_kind_arch_isa): Same.
|
||
|
||
2022-03-01 Robin Dapp <rdapp@linux.ibm.com>
|
||
|
||
PR rtl-optimization/104154
|
||
* config/arc/arc.cc (gen_compare_reg): Return the CC-mode
|
||
comparison ifcvt passed us.
|
||
|
||
2022-03-01 Hongyu Wang <hongyu.wang@intel.com>
|
||
|
||
PR target/104664
|
||
* config/i386/i386-expand.cc (ix86_expand_vector_init_duplicate):
|
||
Use vec_setv8hf_0 for HF to V8HFmode move instead of subreg.
|
||
|
||
2022-02-28 Roger Sayle <roger@nextmovesoftware.com>
|
||
|
||
PR tree-optimization/91384
|
||
* config/i386/i386.md (peephole2): Eliminate final testl insn
|
||
from the sequence *movsi_internal, *negsi_1, *cmpsi_ccno_1 by
|
||
transforming using *negsi_2 for the negation.
|
||
|
||
2022-02-28 Roger Sayle <roger@nextmovesoftware.com>
|
||
Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
PR middle-end/80270
|
||
* expmed.cc (extract_integral_bit_field): If OP0 is a hard
|
||
register, copy it to a pseudo before calling simplify_gen_subreg.
|
||
|
||
2022-02-28 Vladimir N. Makarov <vmakarov@redhat.com>
|
||
|
||
PR rtl-optimization/104637
|
||
* lra-assigns.cc (lra_split_hard_reg_for): Split hard regs as many
|
||
as possible on one subpass.
|
||
|
||
2022-02-28 Qing Zhao <qing.zhao@oracle.com>
|
||
|
||
PR middle-end/104550
|
||
* gimple-fold.cc (clear_padding_flush): Suppress warnings for new
|
||
created uses.
|
||
|
||
2022-02-28 Martin Liska <mliska@suse.cz>
|
||
|
||
PR ipa/104648
|
||
* main.cc (main): Use flag_checking instead of CHECKING_P
|
||
and run toplev::finalize only if there is not error seen.
|
||
|
||
2022-02-28 Richard Biener <rguenther@suse.de>
|
||
|
||
* tree-ssa-pre.cc (compute_avail): Revert part of last change.
|
||
|
||
2022-02-28 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/104700
|
||
* tree-ssa-pre.cc (get_or_alloc_expr_for): Remove and inline
|
||
into ...
|
||
(find_or_generate_expression): ... here, simplifying code.
|
||
|
||
2022-02-28 Tom de Vries <tdevries@suse.de>
|
||
|
||
* config/nvptx/nvptx-opts.h (enum ptx_version): Add
|
||
PTX_VERSION_default.
|
||
* config/nvptx/nvptx.cc (handle_ptx_version_option): Handle
|
||
PTX_VERSION_default.
|
||
* config/nvptx/nvptx.opt: Add EnumValue "_" / PTX_VERSION_default.
|
||
|
||
2022-02-28 Richard Biener <rguenther@suse.de>
|
||
|
||
PR rtl-optimization/104686
|
||
* ira-int.h (minmax_set_iter_cond): Use ctz_hwi to elide loop
|
||
skipping bits that are zero.
|
||
(ira_object_conflict_iter_cond): Likewise.
|
||
|
||
2022-02-28 Hongyu Wang <hongyu.wang@intel.com>
|
||
|
||
* config/i386/avx512fintrin.h (_MM_TERNLOG_ENUM): New enum.
|
||
(_mm512_ternarylogic_epi64): Truncate imm to unsigned
|
||
char to avoid error when using ~enum as parameter.
|
||
(_mm512_mask_ternarylogic_epi64): Likewise.
|
||
(_mm512_maskz_ternarylogic_epi64): Likewise.
|
||
(_mm512_ternarylogic_epi32): Likewise.
|
||
(_mm512_mask_ternarylogic_epi32): Likewise.
|
||
(_mm512_maskz_ternarylogic_epi32): Likewise.
|
||
* config/i386/avx512vlintrin.h (_mm256_ternarylogic_epi64):
|
||
Adjust imm param type to unsigned char.
|
||
(_mm256_mask_ternarylogic_epi64): Likewise.
|
||
(_mm256_maskz_ternarylogic_epi64): Likewise.
|
||
(_mm256_ternarylogic_epi32): Likewise.
|
||
(_mm256_mask_ternarylogic_epi32): Likewise.
|
||
(_mm256_maskz_ternarylogic_epi32): Likewise.
|
||
(_mm_ternarylogic_epi64): Likewise.
|
||
(_mm_mask_ternarylogic_epi64): Likewise.
|
||
(_mm_maskz_ternarylogic_epi64): Likewise.
|
||
(_mm_ternarylogic_epi32): Likewise.
|
||
(_mm_mask_ternarylogic_epi32): Likewise.
|
||
(_mm_maskz_ternarylogic_epi32): Likewise.
|
||
|
||
2022-02-25 Jakub Jelinek <jakub@redhat.com>
|
||
Marc Glisse <marc.glisse@inria.fr>
|
||
|
||
PR tree-optimization/104675
|
||
* match.pd (t * 2U / 2 -> t & (~0 / 2), t / 2U * 2 -> t & ~1):
|
||
Restrict simplifications to INTEGRAL_TYPE_P.
|
||
|
||
2022-02-25 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR target/104681
|
||
* config/rs6000/vector.md (movmisalign<mode>): Use rs6000_emit_move.
|
||
|
||
2022-02-25 Claudiu Zissulescu <claziss@synopsys.com>
|
||
|
||
* config/arc/arc.cc (gen_compare_reg): Return NULL_RTX if the
|
||
comparison is not valid.
|
||
* config/arc/arc.md (movsicc): Fail if comparison is not valid.
|
||
(movdicc): Likewise.
|
||
(movsfcc): Likewise.
|
||
(movdfcc): Likewise.
|
||
|
||
2022-02-25 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/103037
|
||
* tree-ssa-sccvn.h (alloc_vn_nary_op_noinit): Declare.
|
||
(vn_nary_length_from_stmt): Likewise.
|
||
(init_vn_nary_op_from_stmt): Likewise.
|
||
(vn_nary_op_compute_hash): Likewise.
|
||
* tree-ssa-sccvn.cc (alloc_vn_nary_op_noinit): Export.
|
||
(vn_nary_length_from_stmt): Likewise.
|
||
(init_vn_nary_op_from_stmt): Likewise.
|
||
(vn_nary_op_compute_hash): Likewise.
|
||
* tree-ssa-pre.cc (pre_expr_obstack): New obstack.
|
||
(get_or_alloc_expr_for_nary): Pass in the value-id to use,
|
||
(re-)compute the hash value and if the expression is not
|
||
found allocate it from pre_expr_obstack.
|
||
(phi_translate_1): Do not insert the NARY found in the
|
||
VN tables but build a PRE expression from the valueized
|
||
NARY with the value-id we eventually found.
|
||
(find_or_generate_expression): Assert we have an entry
|
||
for constant values.
|
||
(compute_avail): Insert not valueized expressions into
|
||
EXP_GEN using the value-id from the VN tables.
|
||
(init_pre): Allocate pre_expr_obstack.
|
||
(fini_pre): Free pre_expr_obstack.
|
||
|
||
2022-02-25 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR target/104674
|
||
* config/i386/i386.h (enum ix86_stack_slot): Add SLOT_FLOATxFDI_387.
|
||
* config/i386/i386.md (splitter to floatdi<mode>2_i387_with_xmm): Use
|
||
SLOT_FLOATxFDI_387 rather than SLOT_TEMP.
|
||
|
||
2022-02-25 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
* warning-control.cc (get_nowarn_spec): Comment spelling fix.
|
||
|
||
2022-02-25 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR middle-end/104679
|
||
* internal-fn.cc (expand_SPACESHIP): Call do_pending_stack_adjust.
|
||
|
||
2022-02-25 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR tree-optimization/104675
|
||
* match.pd (-A - 1 -> ~A, -1 - A -> ~A): Don't simplify for
|
||
COMPLEX_TYPE.
|
||
|
||
2022-02-25 Alexandre Oliva <oliva@adacore.com>
|
||
|
||
PR target/104121
|
||
PR target/103302
|
||
* expr.cc (emit_move_multi_word): Restore clobbers during LRA.
|
||
|
||
2022-02-25 Alexandre Oliva <oliva@adacore.com>
|
||
|
||
PR middle-end/104540
|
||
* dwarf2cfi.cc (cfi_oprnd_equal_p): Cope with NULL
|
||
dw_cfi_cfa_loc.
|
||
|
||
2022-02-25 Alexandre Oliva <oliva@adacore.com>
|
||
|
||
PR tree-optimization/103856
|
||
* gimple-harden-conditionals.cc (non_eh_succ_edge): Enable the
|
||
eh edge to be requested through an extra parameter.
|
||
(pass_harden_compares::execute): Copy PHI args in the EH dest
|
||
block for the new EH edge added for the inverted compare.
|
||
|
||
2022-02-24 Palmer Dabbelt <palmer@rivosinc.com>
|
||
|
||
* doc/invoke.texi (RISC-V -mcmodel=medany): Document the degree
|
||
of position independence that -mcmodel=medany affords.
|
||
|
||
2022-02-24 Jose E. Marchesi <jose.marchesi@oracle.com>
|
||
|
||
PR target/104656
|
||
* configure.ac: --disable-gcov if targetting bpf-*.
|
||
* configure: Regenerate.
|
||
|
||
2022-02-24 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/104676
|
||
* tree-loop-distribution.cc (loop_distribution::execute):
|
||
Do a full scev_reset.
|
||
|
||
2022-02-24 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR tree-optimization/104601
|
||
* tree-ssa-sccvn.cc (visit_reference_op_call): For calls with
|
||
non-SSA_NAME lhs value number vdef to itself instead of e.g. the
|
||
vuse value number.
|
||
|
||
2022-02-24 Tom de Vries <tdevries@suse.de>
|
||
Tobias Burnus <tobias@codesourcery.com>
|
||
|
||
* config/nvptx/nvptx.cc (nvptx_omp_device_kind_arch_isa): Handle
|
||
sm_70, sm_75 and sm_80.
|
||
* config/nvptx/t-omp-device: Add sm_53, sm_70, sm_75 and sm_80.
|
||
|
||
2022-02-24 Tom de Vries <tdevries@suse.de>
|
||
|
||
* config/nvptx/nvptx.md (define_insn "rotlsi3", define_insn
|
||
"rotrsi3"): New define_insn.
|
||
|
||
2022-02-24 Tom de Vries <tdevries@suse.de>
|
||
|
||
* config/nvptx/nvptx.cc (gen_comment): Use
|
||
DECL_SOURCE_LOCATION (cfun->decl) instead of cfun->function_start_locus.
|
||
|
||
2022-02-24 liuhongt <hongtao.liu@intel.com>
|
||
|
||
* config/i386/sse.md (<code>v1ti3): Add suffix and replace
|
||
isa attr of alternative 2 from avx to avx512vl.
|
||
|
||
2022-02-23 Richard Biener <rguenther@suse.de>
|
||
Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR tree-optimization/104644
|
||
* doc/match-and-simplify.texi: Amend ! documentation.
|
||
* genmatch.cc (expr::gen_transform): Code-generate ! support
|
||
for GENERIC.
|
||
(parser::parse_expr): Allow ! for GENERIC.
|
||
* match.pd (cmp (bswap @0) INTEGER_CST@1): Use ! modifier on
|
||
bswap.
|
||
|
||
2022-02-23 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/101636
|
||
* tree-vect-slp.cc (vect_print_slp_tree): Dump the
|
||
vector type of the node.
|
||
(vect_slp_analyze_operations): Make sure the CTOR
|
||
is vectorized with an expected type.
|
||
(vectorize_slp_instance_root_stmt): Revert r10-5979 fix.
|
||
|
||
2022-02-23 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR c/104633
|
||
* gimple-warn-recursion.cc (pass_warn_recursion::find_function_exit):
|
||
Don't warn about calls to corresponding builtin from extern inline
|
||
gnu_inline wrappers.
|
||
|
||
2022-02-23 Roger Sayle <roger@nextmovesoftware.com>
|
||
|
||
PR target/104489
|
||
* config/nvptx/nvptx.md (*movhf_insn): Add subregs_ok attribute.
|
||
|
||
2022-02-23 Christophe Lyon <christophe.lyon@arm.com>
|
||
|
||
PR target/100757
|
||
PR target/101325
|
||
* config/arm/vfp.md (thumb2_movhi_vfp, thumb2_movhi_fp16): Fix
|
||
typo.
|
||
|
||
2022-02-23 Cui,Lili <lili.cui@intel.com>
|
||
|
||
* doc/invoke.texi: Update documents for Intel architectures.
|
||
|
||
2022-02-22 Roger Sayle <roger@nextmovesoftware.com>
|
||
|
||
* config/i386/i386-expand.cc (ix86_expand_cmpxchg_loop): Restore
|
||
bootstrap.
|
||
|
||
2022-02-22 Thomas Schwinge <thomas@codesourcery.com>
|
||
|
||
* omp-low.cc (omp_build_component_ref): Move function...
|
||
* omp-general.cc (omp_build_component_ref): ... here. Remove
|
||
'static'.
|
||
* omp-general.h (omp_build_component_ref): Declare function.
|
||
* omp-oacc-neuter-broadcast.cc (oacc_build_component_ref): Remove
|
||
function.
|
||
(build_receiver_ref, build_sender_ref): Call
|
||
'omp_build_component_ref' instead.
|
||
|
||
2022-02-22 Thomas Schwinge <thomas@codesourcery.com>
|
||
|
||
* omp-oacc-neuter-broadcast.cc (record_field_map_t): Further
|
||
simplify. Adjust all users.
|
||
|
||
2022-02-22 Segher Boessenkool <segher@kernel.crashing.org>
|
||
|
||
PR target/88134
|
||
* config/rs6000/rs6000.cc (atomic_hold_decl, atomic_clear_decl,
|
||
atomic_update_decl): Add GTY markup.
|
||
|
||
2022-02-22 Christophe Lyon <christophe.lyon@arm.com>
|
||
|
||
* config/arm/arm.h (REG_CLASS_CONTENTS): Add VPR_REG to ALL_REGS.
|
||
|
||
2022-02-22 Christophe Lyon <christophe.lyon@arm.com>
|
||
|
||
PR target/100757
|
||
PR target/101325
|
||
* config/arm/arm-builtins.cc (CX_UNARY_UNONE_QUALIFIERS): Use
|
||
predicate.
|
||
(CX_BINARY_UNONE_QUALIFIERS): Likewise.
|
||
(CX_TERNARY_UNONE_QUALIFIERS): Likewise.
|
||
(TERNOP_NONE_NONE_NONE_UNONE_QUALIFIERS): Delete.
|
||
(QUADOP_NONE_NONE_NONE_NONE_UNONE_QUALIFIERS): Delete.
|
||
(QUADOP_UNONE_UNONE_UNONE_UNONE_UNONE_QUALIFIERS): Delete.
|
||
* config/arm/arm_mve_builtins.def: Use predicated qualifiers.
|
||
* config/arm/mve.md: Use VxBI instead of HI.
|
||
|
||
2022-02-22 Christophe Lyon <christophe.lyon@arm.com>
|
||
|
||
PR target/100757
|
||
PR target/101325
|
||
* config/arm/arm-builtins.cc (STRSBS_P_QUALIFIERS): Use predicate
|
||
qualifier.
|
||
(STRSBU_P_QUALIFIERS): Likewise.
|
||
(LDRGBS_Z_QUALIFIERS): Likewise.
|
||
(LDRGBU_Z_QUALIFIERS): Likewise.
|
||
(LDRGBWBXU_Z_QUALIFIERS): Likewise.
|
||
(LDRGBWBS_Z_QUALIFIERS): Likewise.
|
||
(LDRGBWBU_Z_QUALIFIERS): Likewise.
|
||
(STRSBWBS_P_QUALIFIERS): Likewise.
|
||
(STRSBWBU_P_QUALIFIERS): Likewise.
|
||
* config/arm/mve.md: Use VxBI instead of HI.
|
||
|
||
2022-02-22 Christophe Lyon <christophe.lyon@arm.com>
|
||
|
||
PR target/100757
|
||
PR target/101325
|
||
* config/arm/arm-builtins.cc (TERNOP_UNONE_UNONE_NONE_UNONE_QUALIFIERS): Change to ...
|
||
(TERNOP_UNONE_UNONE_NONE_PRED_QUALIFIERS): ... this.
|
||
(TERNOP_UNONE_UNONE_IMM_UNONE_QUALIFIERS): Change to ...
|
||
(TERNOP_UNONE_UNONE_IMM_PRED_QUALIFIERS): ... this.
|
||
(TERNOP_NONE_NONE_IMM_UNONE_QUALIFIERS): Change to ...
|
||
(TERNOP_NONE_NONE_IMM_PRED_QUALIFIERS): ... this.
|
||
(TERNOP_NONE_NONE_UNONE_UNONE_QUALIFIERS): Change to ...
|
||
(TERNOP_NONE_NONE_UNONE_PRED_QUALIFIERS): ... this.
|
||
(QUADOP_UNONE_UNONE_NONE_NONE_UNONE_QUALIFIERS): Change to ...
|
||
(QUADOP_UNONE_UNONE_NONE_NONE_PRED_QUALIFIERS): ... this.
|
||
(QUADOP_NONE_NONE_NONE_NONE_PRED_QUALIFIERS): New.
|
||
(QUADOP_NONE_NONE_NONE_IMM_UNONE_QUALIFIERS): Change to ...
|
||
(QUADOP_NONE_NONE_NONE_IMM_PRED_QUALIFIERS): ... this.
|
||
(QUADOP_UNONE_UNONE_UNONE_UNONE_PRED_QUALIFIERS): New.
|
||
(QUADOP_UNONE_UNONE_NONE_IMM_UNONE_QUALIFIERS): Change to ...
|
||
(QUADOP_UNONE_UNONE_NONE_IMM_PRED_QUALIFIERS): ... this.
|
||
(QUADOP_NONE_NONE_UNONE_IMM_UNONE_QUALIFIERS): Change to ...
|
||
(QUADOP_NONE_NONE_UNONE_IMM_PRED_QUALIFIERS): ... this.
|
||
(QUADOP_UNONE_UNONE_UNONE_IMM_UNONE_QUALIFIERS): Change to ...
|
||
(QUADOP_UNONE_UNONE_UNONE_IMM_PRED_QUALIFIERS): ... this.
|
||
(QUADOP_UNONE_UNONE_UNONE_NONE_UNONE_QUALIFIERS): Change to ...
|
||
(QUADOP_UNONE_UNONE_UNONE_NONE_PRED_QUALIFIERS): ... this.
|
||
(STRS_P_QUALIFIERS): Use predicate qualifier.
|
||
(STRU_P_QUALIFIERS): Likewise.
|
||
(STRSU_P_QUALIFIERS): Likewise.
|
||
(STRSS_P_QUALIFIERS): Likewise.
|
||
(LDRGS_Z_QUALIFIERS): Likewise.
|
||
(LDRGU_Z_QUALIFIERS): Likewise.
|
||
(LDRS_Z_QUALIFIERS): Likewise.
|
||
(LDRU_Z_QUALIFIERS): Likewise.
|
||
(QUINOP_UNONE_UNONE_UNONE_UNONE_IMM_UNONE_QUALIFIERS): Change to ...
|
||
(QUINOP_UNONE_UNONE_UNONE_UNONE_IMM_PRED_QUALIFIERS): ... this.
|
||
(BINOP_NONE_NONE_PRED_QUALIFIERS): New.
|
||
(BINOP_UNONE_UNONE_PRED_QUALIFIERS): New.
|
||
* config/arm/arm_mve_builtins.def: Use new predicated qualifiers.
|
||
* config/arm/mve.md: Use MVE_VPRED instead of HI.
|
||
|
||
2022-02-22 Christophe Lyon <christophe.lyon@arm.com>
|
||
|
||
PR target/100757
|
||
PR target/101325
|
||
* config/arm/arm-builtins.cc (BINOP_UNONE_NONE_NONE_QUALIFIERS):
|
||
Delete.
|
||
(TERNOP_UNONE_NONE_NONE_UNONE_QUALIFIERS): Change to ...
|
||
(TERNOP_PRED_NONE_NONE_PRED_QUALIFIERS): ... this.
|
||
(TERNOP_PRED_UNONE_UNONE_PRED_QUALIFIERS): New.
|
||
* config/arm/arm_mve_builtins.def (vcmp*q_n_, vcmp*q_m_f): Use new
|
||
predicated qualifiers.
|
||
* config/arm/mve.md (mve_vcmp<mve_cmp_op>q_n_<mode>)
|
||
(mve_vcmp*q_m_f<mode>): Use MVE_VPRED instead of HI.
|
||
|
||
2022-02-22 Christophe Lyon <christophe.lyon@arm.com>
|
||
|
||
PR target/100757
|
||
* config/arm/arm-protos.h (arm_get_mask_mode): New prototype.
|
||
(arm_expand_vector_compare): Update prototype.
|
||
* config/arm/arm.cc (TARGET_VECTORIZE_GET_MASK_MODE): New.
|
||
(arm_vector_mode_supported_p): Add support for VxBI modes.
|
||
(arm_expand_vector_compare): Remove useless generation of vpsel.
|
||
(arm_expand_vcond): Fix select operands.
|
||
(arm_get_mask_mode): New.
|
||
* config/arm/mve.md (vec_cmp<mode><MVE_vpred>): New.
|
||
(vec_cmpu<mode><MVE_vpred>): New.
|
||
(vcond_mask_<mode><MVE_vpred>): New.
|
||
* config/arm/vec-common.md (vec_cmp<mode><v_cmp_result>)
|
||
(vec_cmpu<mode><mode, vcond_mask_<mode><v_cmp_result>): Move to ...
|
||
* config/arm/neon.md (vec_cmp<mode><v_cmp_result>)
|
||
(vec_cmpu<mode><mode, vcond_mask_<mode><v_cmp_result>): ... here
|
||
and disable for MVE.
|
||
* doc/sourcebuild.texi (arm_mve): Document new effective-target.
|
||
|
||
2022-02-22 Christophe Lyon <christophe.lyon@arm.com>
|
||
|
||
PR target/100757
|
||
PR target/101325
|
||
* config/arm/arm-builtins.cc (BINOP_PRED_UNONE_UNONE_QUALIFIERS)
|
||
(BINOP_PRED_NONE_NONE_QUALIFIERS)
|
||
(TERNOP_NONE_NONE_NONE_PRED_QUALIFIERS)
|
||
(TERNOP_UNONE_UNONE_UNONE_PRED_QUALIFIERS): New.
|
||
* config/arm/arm-protos.h (mve_bool_vec_to_const): New.
|
||
* config/arm/arm.cc (arm_hard_regno_mode_ok): Handle new VxBI
|
||
modes.
|
||
(arm_mode_to_pred_mode): New.
|
||
(arm_expand_vector_compare): Use the right VxBI mode instead of
|
||
HI.
|
||
(arm_expand_vcond): Likewise.
|
||
(simd_valid_immediate): Handle MODE_VECTOR_BOOL.
|
||
(mve_bool_vec_to_const): New.
|
||
(neon_make_constant): Call mve_bool_vec_to_const when needed.
|
||
* config/arm/arm_mve_builtins.def (vcmpneq_, vcmphiq_, vcmpcsq_)
|
||
(vcmpltq_, vcmpleq_, vcmpgtq_, vcmpgeq_, vcmpeqq_, vcmpneq_f)
|
||
(vcmpltq_f, vcmpleq_f, vcmpgtq_f, vcmpgeq_f, vcmpeqq_f, vpselq_u)
|
||
(vpselq_s, vpselq_f): Use new predicated qualifiers.
|
||
* config/arm/constraints.md (DB): New.
|
||
* config/arm/iterators.md (MVE_7, MVE_7_HI): New mode iterators.
|
||
(MVE_VPRED, MVE_vpred): New attribute iterators.
|
||
* config/arm/mve.md (@mve_vcmp<mve_cmp_op>q_<mode>)
|
||
(@mve_vcmp<mve_cmp_op>q_f<mode>, @mve_vpselq_<supf><mode>)
|
||
(@mve_vpselq_f<mode>): Use MVE_VPRED instead of HI.
|
||
(@mve_vpselq_<supf>v2di): Define separately.
|
||
(mov<mode>): New expander for VxBI modes.
|
||
* config/arm/vfp.md (thumb2_movhi_vfp, thumb2_movhi_fp16): Use
|
||
MVE_7_HI iterator and add support for DB constraint.
|
||
|
||
2022-02-22 Christophe Lyon <christophe.lyon@arm.com>
|
||
Richard Sandiford <richard.sandiford@arm.com>
|
||
|
||
PR target/100757
|
||
PR target/101325
|
||
* config/aarch64/aarch64-modes.def (VNx16BI, VNx8BI, VNx4BI,
|
||
VNx2BI): Update definition.
|
||
* config/arm/arm-builtins.cc (arm_init_simd_builtin_types): Add new
|
||
simd types.
|
||
(arm_init_builtin): Map predicate vectors arguments to HImode.
|
||
(arm_expand_builtin_args): Move HImode predicate arguments to VxBI
|
||
rtx. Move return value to HImode rtx.
|
||
* config/arm/arm-builtins.h (arm_type_qualifiers): Add qualifier_predicate.
|
||
* config/arm/arm-modes.def (B2I, B4I, V16BI, V8BI, V4BI): New modes.
|
||
* config/arm/arm-simd-builtin-types.def (Pred1x16_t,
|
||
Pred2x8_t,Pred4x4_t): New.
|
||
* emit-rtl.cc (init_emit_once): Handle all boolean modes.
|
||
* genmodes.cc (mode_data): Add boolean field.
|
||
(blank_mode): Initialize it.
|
||
(make_complex_modes): Fix handling of boolean modes.
|
||
(make_vector_modes): Likewise.
|
||
(VECTOR_BOOL_MODE): Use new COMPONENT parameter.
|
||
(make_vector_bool_mode): Likewise.
|
||
(BOOL_MODE): New.
|
||
(make_bool_mode): New.
|
||
(emit_insn_modes_h): Fix generation of boolean modes.
|
||
(emit_class_narrowest_mode): Likewise.
|
||
* machmode.def: (VECTOR_BOOL_MODE): Document new COMPONENT
|
||
parameter. Use new BOOL_MODE instead of FRACTIONAL_INT_MODE to
|
||
define BImode.
|
||
* rtx-vector-builder.cc (rtx_vector_builder::find_cached_value):
|
||
Fix handling of constm1_rtx for VECTOR_BOOL.
|
||
* simplify-rtx.cc (native_encode_rtx): Fix support for VECTOR_BOOL.
|
||
(native_decode_vector_rtx): Likewise.
|
||
(test_vector_ops_duplicate): Skip vec_merge test
|
||
with vectors of booleans.
|
||
* varasm.cc (output_constant_pool_2): Likewise.
|
||
|
||
2022-02-22 Christophe Lyon <christophe.lyon@arm.com>
|
||
|
||
* config/arm/mve.md (mve_vmvnq_n_<supf><mode>): Use V_elem mode
|
||
for operand 1.
|
||
|
||
2022-02-22 Christophe Lyon <christophe.lyon@arm.com>
|
||
|
||
* config/arm/arm.cc (arm_class_likely_spilled_p): Handle VPR_REG.
|
||
|
||
2022-02-22 Christophe Lyon <christophe.lyon@arm.com>
|
||
|
||
* config/arm/arm.h (reg_class): Add GENERAL_AND_VPR_REGS.
|
||
(REG_CLASS_NAMES): Likewise.
|
||
(REG_CLASS_CONTENTS): Likewise.
|
||
(CLASS_MAX_NREGS): Handle VPR.
|
||
* config/arm/arm.cc (arm_hard_regno_nregs): Handle VPR.
|
||
|
||
2022-02-22 Tobias Burnus <tobias@codesourcery.com>
|
||
Tom de Vries <tdevries@suse.de>
|
||
|
||
* config/nvptx/nvptx-c.cc (nvptx_cpu_cpp_builtins): Handle SM70.
|
||
* config/nvptx/nvptx.cc (first_ptx_version_supporting_sm):
|
||
Likewise.
|
||
* config/nvptx/nvptx.opt (misa): Add sm_70 alias PTX_ISA_SM70.
|
||
|
||
2022-02-22 Tobias Burnus <tobias@codesourcery.com>
|
||
Tom de Vries <tdevries@suse.de>
|
||
|
||
* config/nvptx/nvptx.opt (mptx): Add 6.0 alias PTX_VERSION_6_0.
|
||
* doc/invoke.texi (-mptx): Update for new values and defaults.
|
||
|
||
2022-02-22 Tom de Vries <tdevries@suse.de>
|
||
|
||
* config/nvptx/nvptx.cc (gen_comment): New function.
|
||
(workaround_uninit_method_1, workaround_uninit_method_2)
|
||
(workaround_uninit_method_3): : Use gen_comment.
|
||
* config/nvptx/nvptx.opt (mptx-comment): New option.
|
||
|
||
2022-02-22 Richard Biener <rguenther@suse.de>
|
||
|
||
* tree-vect-slp.cc (vect_build_slp_tree_2): Dump the def used
|
||
for a splat.
|
||
|
||
2022-02-22 Roger Sayle <roger@nextmovesoftware.com>
|
||
Richard Biener <rguenther@suse.de>
|
||
|
||
* fold-const.cc (ctor_single_nonzero_element): New function to
|
||
return the single non-zero element of a (vector) constructor.
|
||
* fold-const.h (ctor_single_nonzero_element): Prototype here.
|
||
* match.pd (reduc (constructor@0)): Simplify reductions of a
|
||
constructor containing a single non-zero element.
|
||
(reduc (@0 op VECTOR_CST) -> (reduc @0) op CONST): Simplify
|
||
reductions of vector operations of the same operator with
|
||
constant vector operands.
|
||
|
||
2022-02-22 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR tree-optimization/104604
|
||
* gimple-range-fold.cc (adjust_imagpart_expr, adjust_realpart_expr):
|
||
Only check if gimple_assign_rhs1 is COMPLEX_CST if
|
||
gimple_assign_rhs_code is COMPLEX_CST.
|
||
|
||
2022-02-22 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR target/104612
|
||
* config/i386/i386-expand.cc (ix86_expand_copysign): Call force_reg
|
||
on input operands before calling lowpart_subreg on it. For output
|
||
operand, use a vmode pseudo as destination and then move its lowpart
|
||
subreg into operands[0] if lowpart_subreg fails on dest.
|
||
(ix86_expand_xorsign): Likewise.
|
||
|
||
2022-02-22 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/104582
|
||
PR target/99881
|
||
* config/i386/i386.cc (ix86_vector_costs::add_stmt_cost):
|
||
Cost GPR to vector register moves for integer vector construction.
|
||
|
||
2022-02-22 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/104582
|
||
* tree-vectorizer.h (stmt_info_for_cost::node): New field.
|
||
(vector_costs::add_stmt_cost): Add SLP node parameter.
|
||
(dump_stmt_cost): Likewise.
|
||
(add_stmt_cost): Likewise, new overload and adjust.
|
||
(add_stmt_costs): Adjust.
|
||
(record_stmt_cost): New overload.
|
||
* tree-vectorizer.cc (dump_stmt_cost): Dump the SLP node.
|
||
(vector_costs::add_stmt_cost): Adjust.
|
||
* tree-vect-loop.cc (vect_estimate_min_profitable_iters):
|
||
Adjust.
|
||
* tree-vect-slp.cc (vect_prologue_cost_for_slp): Record
|
||
the SLP node for costing.
|
||
(vectorizable_slp_permutation): Likewise.
|
||
* tree-vect-stmts.cc (record_stmt_cost): Adjust and add
|
||
new overloads.
|
||
* config/i386/i386.cc (ix86_vector_costs::add_stmt_cost):
|
||
Adjust.
|
||
* config/aarch64/aarch64.cc (aarch64_vector_costs::add_stmt_cost):
|
||
Adjust.
|
||
* config/rs6000/rs6000.cc (rs6000_vector_costs::add_stmt_cost):
|
||
Adjust.
|
||
(rs6000_cost_data::adjust_vect_cost_per_loop): Likewise.
|
||
|
||
2022-02-22 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/104582
|
||
* tree-vectorizer.h (add_stmt_cost): New overload.
|
||
(record_stmt_cost): Likewise.
|
||
* tree-vect-loop.cc (vect_compute_single_scalar_iteration_cost):
|
||
Use add_stmt_costs.
|
||
(vect_get_known_peeling_cost): Use new overloads.
|
||
(vect_estimate_min_profitable_iters): Likewise. Consistently
|
||
use scalar_stmt for costing versioning checks.
|
||
* tree-vect-stmts.cc (record_stmt_cost): New overload.
|
||
|
||
2022-02-22 Hongyu Wang <hongyu.wang@intel.com>
|
||
|
||
PR target/103069
|
||
* config/i386/i386-expand.cc (ix86_expand_atomic_fetch_op_loop):
|
||
Split atomic fetch and loop part.
|
||
(ix86_expand_cmpxchg_loop): New expander for cmpxchg loop.
|
||
* config/i386/i386-protos.h (ix86_expand_cmpxchg_loop): New
|
||
prototype.
|
||
* config/i386/sync.md (atomic_compare_and_swap<mode>): Call new
|
||
expander under TARGET_RELAX_CMPXCHG_LOOP.
|
||
(atomic_compare_and_swap<mode>): Likewise for doubleword modes.
|
||
|
||
2022-02-21 Dan Li <ashimida@linux.alibaba.com>
|
||
|
||
* config/aarch64/aarch64.cc (SLOT_REQUIRED):
|
||
Change wb_candidate[12] to wb_push_candidate[12].
|
||
(aarch64_layout_frame): Likewise, and
|
||
change callee_adjust when scs is enabled.
|
||
(aarch64_save_callee_saves):
|
||
Change wb_candidate[12] to wb_push_candidate[12].
|
||
(aarch64_restore_callee_saves):
|
||
Change wb_candidate[12] to wb_pop_candidate[12].
|
||
(aarch64_get_separate_components):
|
||
Change wb_candidate[12] to wb_push_candidate[12].
|
||
(aarch64_expand_prologue): Push x30 onto SCS before it's
|
||
pushed onto stack.
|
||
(aarch64_expand_epilogue): Pop x30 frome SCS, while
|
||
preventing it from being popped from the regular stack again.
|
||
(aarch64_override_options_internal): Add SCS compile option check.
|
||
(TARGET_HAVE_SHADOW_CALL_STACK): New hook.
|
||
* config/aarch64/aarch64.h (struct GTY): Add is_scs_enabled,
|
||
wb_pop_candidate[12], and rename wb_candidate[12] to
|
||
wb_push_candidate[12].
|
||
* config/aarch64/aarch64.md (scs_push): New template.
|
||
(scs_pop): Likewise.
|
||
* doc/invoke.texi: Document -fsanitize=shadow-call-stack.
|
||
* doc/tm.texi: Regenerate.
|
||
* doc/tm.texi.in: Add hook have_shadow_call_stack.
|
||
* flag-types.h (enum sanitize_code):
|
||
Add SANITIZE_SHADOW_CALL_STACK.
|
||
* opts.cc (parse_sanitizer_options): Add shadow-call-stack
|
||
and exclude SANITIZE_SHADOW_CALL_STACK.
|
||
* target.def: New hook.
|
||
* toplev.cc (process_options): Add SCS compile option check.
|
||
* ubsan.cc (ubsan_expand_null_ifn): Enum type conversion.
|
||
|
||
2022-02-21 Tom de Vries <tdevries@suse.de>
|
||
|
||
PR target/104440
|
||
* config/nvptx/nvptx.cc (workaround_uninit_method_1)
|
||
(workaround_uninit_method_2, workaround_uninit_method_3)
|
||
(workaround_uninit): New function.
|
||
(nvptx_reorg): Use workaround_uninit.
|
||
* config/nvptx/nvptx.opt (minit-regs): New option.
|
||
|
||
2022-02-21 Andre Vieira <andre.simoesdiasvieira@arm.com>
|
||
|
||
PR rtl-optimization/104498
|
||
* alias.cc (compare_base_symbol_refs): Correct distance computation
|
||
when swapping x and y.
|
||
|
||
2022-02-21 Andrew Pinski <apinski@marvell.com>
|
||
|
||
PR c/104506
|
||
* tree-ssa.cc (tree_ssa_useless_type_conversion):
|
||
Check the inner type before calling useless_type_conversion_p.
|
||
|
||
2022-02-19 Tom de Vries <tdevries@suse.de>
|
||
|
||
* config/nvptx/nvptx.cc (nvptx_reorg_uniform_simt): Handle SET insn.
|
||
* config/nvptx/nvptx.md
|
||
(define_insn "nvptx_atomic_store<mode>"): Rename to ...
|
||
(define_insn "nvptx_atomic_store_sm70<mode>"): This.
|
||
(define_insn "nvptx_atomic_store<mode>"): New define_insn.
|
||
(define_expand "atomic_store<mode>"): Handle rename. Use
|
||
nvptx_atomic_store instead of atomic_exchange.
|
||
|
||
2022-02-19 Tom de Vries <tdevries@suse.de>
|
||
|
||
* config/nvptx/nvptx.cc (nvptx_reorg_uniform_simt): Handle all
|
||
insns with atomic attribute. Assert that all handled insns are
|
||
PARALLELs.
|
||
* config/nvptx/nvptx.md (define_insn "nvptx_atomic_store<mode>"):
|
||
Set atomic attribute to false.
|
||
|
||
2022-02-19 Tom de Vries <tdevries@suse.de>
|
||
|
||
* config/nvptx/nvptx.cc (nvptx_unisimt_handle_set): Change return
|
||
type to bool.
|
||
(nvptx_reorg_uniform_simt): Insert nvptx_uniform_warp_check or
|
||
nvptx_warpsync, if necessary.
|
||
|
||
2022-02-19 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR sanitizer/102656
|
||
* asan.cc (instrument_derefs): If inner is a RESULT_DECL and access is
|
||
known to be within bounds, treat it like automatic variables.
|
||
If instrumenting access and inner is {VAR,PARM,RESULT}_DECL from
|
||
current function and !TREE_STATIC which is not TREE_ADDRESSABLE, mark
|
||
it addressable.
|
||
|
||
2022-02-18 Pat Haugen <pthaugen@linux.ibm.com>
|
||
|
||
* config/rs6000/rs6000.opt (mpower10-fusion): Mark Undocumented.
|
||
(mpower10-fusion-ld-cmpi, mpower10-fusion-2logical,
|
||
mpower10-fusion-logical-add, mpower10-fusion-add-logical,
|
||
mpower10-fusion-2add, mpower10-fusion-2store): Remove.
|
||
* config/rs6000/rs6000-cpus.def (ISA_3_1_MASKS_SERVER,
|
||
OTHER_P9_VECTOR_MASKS): Remove Power10 fusion sub-options.
|
||
* config/rs6000/rs6000.cc (rs6000_option_override_internal,
|
||
power10_sched_reorder): Likewise.
|
||
* config/rs6000/genfusion.pl (gen_ld_cmpi_p10, gen_logical_addsubf,
|
||
gen_addadd): Likewise
|
||
* config/rs6000/fusion.md: Regenerate.
|
||
|
||
2022-02-18 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR target/104257
|
||
PR target/104598
|
||
* config/rs6000/mm_malloc.h (_mm_malloc): Call posix_memalign
|
||
rather than __posix_memalign.
|
||
|
||
2022-02-18 Richard Biener <rguenther@suse.de>
|
||
|
||
PR target/104581
|
||
* config/i386/i386.cc (ix86_avx_u128_mode_source): Remove.
|
||
(ix86_avx_u128_mode_needed): Return AVX_U128_DIRTY instead
|
||
of calling ix86_avx_u128_mode_source which would eventually
|
||
have returned AVX_U128_ANY in some very special case.
|
||
|
||
2022-02-18 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/96881
|
||
* tree-ssa-dce.cc (mark_stmt_if_obviously_necessary): Comment
|
||
CLOBBER handling.
|
||
(control_parents_preserved_p): New function.
|
||
(eliminate_unnecessary_stmts): Check that we preserved control
|
||
parents before retaining a CLOBBER.
|
||
(perform_tree_ssa_dce): Pass down aggressive flag
|
||
to eliminate_unnecessary_stmts.
|
||
|
||
2022-02-17 Jason Merrill <jason@redhat.com>
|
||
|
||
* tree.cc (warn_deprecated_use): Look for TYPE_STUB_DECL
|
||
on TYPE_MAIN_VARIANT.
|
||
|
||
2022-02-17 Paul A. Clarke <pc@us.ibm.com>
|
||
|
||
PR target/104257
|
||
* config/rs6000/bmi2intrin.h: Uglify local variables.
|
||
* config/rs6000/emmintrin.h: Likewise.
|
||
* config/rs6000/mm_malloc.h: Likewise.
|
||
* config/rs6000/mmintrin.h: Likewise.
|
||
* config/rs6000/pmmintrin.h: Likewise.
|
||
* config/rs6000/smmintrin.h: Likewise.
|
||
* config/rs6000/tmmintrin.h: Likewise.
|
||
* config/rs6000/xmmintrin.h: Likewise.
|
||
|
||
2022-02-17 Robin Dapp <rdapp@linux.ibm.com>
|
||
|
||
PR target/104335
|
||
* config/rs6000/rs6000.cc (rs6000_emit_int_cmove): Return false
|
||
if the expected comparison's first operand is of mode MODE_CC.
|
||
|
||
2022-02-17 Vladimir N. Makarov <vmakarov@redhat.com>
|
||
|
||
PR rtl-optimization/104447
|
||
* lra-constraints.cc (spill_hard_reg_in_range): Initiate ignore
|
||
hard reg set by lra_no_alloc_regs.
|
||
|
||
2022-02-17 liuhongt <hongtao.liu@intel.com>
|
||
|
||
PR tree-optimization/104551
|
||
PR tree-optimization/103771
|
||
* match.pd (cond_expr_convert_p): Add types_match check when
|
||
convert is extension.
|
||
* tree-vect-patterns.cc
|
||
(gimple_cond_expr_convert_p): Adjust comments.
|
||
(vect_recog_cond_expr_convert_pattern): Ditto.
|
||
|
||
2022-02-17 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR debug/104557
|
||
* valtrack.cc (debug_lowpart_subreg): Don't call gen_rtx_raw_SUBREG
|
||
if expr has VOIDmode.
|
||
|
||
2022-02-17 liuhongt <hongtao.liu@intel.com>
|
||
|
||
* config/i386/cpuid.h (bit_MPX): Removed.
|
||
(bit_BNDREGS): Ditto.
|
||
(bit_BNDCSR): Ditto.
|
||
|
||
2022-02-17 Michael Meissner <meissner@the-meissners.org>
|
||
|
||
PR target/99708
|
||
* config/rs6000/rs6000-c.cc (rs6000_cpu_cpp_builtins): Define
|
||
__SIZEOF_IBM128__ if the IBM 128-bit long double type is created.
|
||
Define __SIZEOF_FLOAT128__ if the IEEE 128-bit floating point type
|
||
is created.
|
||
|
||
2022-02-16 Andrew MacLeod <amacleod@redhat.com>
|
||
|
||
* gimple-range-gori.cc (gori_compute::condexpr_adjust): Use
|
||
range_compatible_p instead of direct type comparison.
|
||
|
||
2022-02-16 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR rtl-optimization/104544
|
||
* combine.cc (try_combine): When looking for insn whose links
|
||
should be updated from i3 to i2, don't stop on debug insns, instead
|
||
skip over them.
|
||
|
||
2022-02-16 Richard Sandiford <richard.sandiford@arm.com>
|
||
|
||
PR target/100056
|
||
* config/aarch64/iterators.md (LOGICAL_OR_PLUS): New iterator.
|
||
* config/aarch64/aarch64.md: Extend the PR100056 patterns
|
||
to handle plus in the same way as ior, if the operands have
|
||
no set bits in common.
|
||
|
||
2022-02-15 Andrew MacLeod <amacleod@redhat.com>
|
||
|
||
PR tree-optimization/104526
|
||
* gimple-range-fold.cc (fold_using_range::range_of_cond_expr): Call
|
||
new routine.
|
||
* gimple-range-gori.cc (range_def_chain::get_def_chain): Force a build
|
||
of dependency chain if there isn't one.
|
||
(gori_compute::condexpr_adjust): New.
|
||
* gimple-range-gori.h (class gori_compute): New prototype.
|
||
|
||
2022-02-15 Richard Sandiford <richard.sandiford@arm.com>
|
||
|
||
PR target/100874
|
||
* config/aarch64/aarch64-protos.h (aarch64_maxmin_plus_const):
|
||
Declare.
|
||
* config/aarch64/aarch64.cc (aarch64_maxmin_plus_const): New function.
|
||
* config/aarch64/aarch64.md (*aarch64_minmax_plus): New pattern.
|
||
|
||
2022-02-15 Richard Sandiford <richard.sandiford@arm.com>
|
||
|
||
* tree-vectorizer.h (vect_scalar_ops_slice): New struct.
|
||
(vect_scalar_ops_slice_hash): Likewise.
|
||
(vect_scalar_ops_slice::op): New function.
|
||
* tree-vect-slp.cc (vect_scalar_ops_slice::all_same_p): New function.
|
||
(vect_scalar_ops_slice_hash::hash): Likewise.
|
||
(vect_scalar_ops_slice_hash::equal): Likewise.
|
||
(vect_prologue_cost_for_slp): Check for duplicate vectors.
|
||
* config/aarch64/aarch64.cc
|
||
(aarch64_vector_costs::m_stp_sequence_cost): New member variable.
|
||
(aarch64_aligned_constant_offset_p): New function.
|
||
(aarch64_stp_sequence_cost): Likewise.
|
||
(aarch64_vector_costs::add_stmt_cost): Handle new STP heuristic.
|
||
(aarch64_vector_costs::finish_cost): Likewise.
|
||
|
||
2022-02-15 Richard Sandiford <richard.sandiford@arm.com>
|
||
|
||
* tree-vect-slp.cc (vect_bb_vectorization_profitable_p): Fix
|
||
use after free.
|
||
|
||
2022-02-15 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/104543
|
||
* gimple-loop-jam.cc (unroll_jam_possible_p): Check outer loop exits
|
||
come after the inner loop.
|
||
|
||
2022-02-15 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR target/104536
|
||
* config/i386/host-cygwin.cc (cygwin_gt_pch_get_address): Use
|
||
cannot instead of can%'t in diagnostics. Formatting fixes.
|
||
|
||
2022-02-15 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR middle-end/104522
|
||
* fold-const.h (native_interpret_real): Declare.
|
||
* fold-const.cc (native_interpret_real): No longer static. Don't
|
||
perform MODE_COMPOSITE_P verification here.
|
||
(native_interpret_expr) <case REAL_TYPE>: But perform it here instead
|
||
for all modes.
|
||
* gimple-fold.cc (clear_padding_type): Call native_interpret_real
|
||
instead of native_interpret_expr.
|
||
* simplify-rtx.cc (simplify_immed_subreg): Perform the native_encode_rtx
|
||
and comparison verification for all FLOAT_MODE_P modes, not just
|
||
MODE_COMPOSITE_P.
|
||
|
||
2022-02-15 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/104519
|
||
* fold-const.cc (multiple_of_p): Remove never true condition.
|
||
* tree-ssa-loop-niter.cc (number_of_iterations_ne): Use
|
||
the appropriate types for determining whether the difference
|
||
of final and base is a multiple of the step.
|
||
|
||
2022-02-15 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR debug/104517
|
||
* omp-low.cc (task_cpyfns): New variable.
|
||
(delete_omp_context): Don't call finalize_task_copyfn from here.
|
||
(create_task_copyfn): Push task_stmt into task_cpyfns.
|
||
(execute_lower_omp): Call finalize_task_copyfn here on entries from
|
||
task_cpyfns vector and release the vector.
|
||
|
||
2022-02-14 Martin Sebor <msebor@redhat.com>
|
||
|
||
PR middle-end/104355
|
||
* doc/invoke.texi (-Warray-bounds): Update documentation.
|
||
|
||
2022-02-14 Michael Meissner <meissner@the-meissners.org>
|
||
|
||
PR target/104253
|
||
* config/rs6000/rs6000.cc (init_float128_ibm): Update the
|
||
conversion functions used to convert IFmode types.
|
||
|
||
2022-02-14 Andrew Stubbs <ams@codesourcery.com>
|
||
|
||
* config/gcn/gcn.cc (gcn_expand_reduc_scalar): Use force_reg.
|
||
|
||
2022-02-14 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/104528
|
||
* tree-ssa.h (find_released_ssa_name): Declare.
|
||
* tree-ssa.cc (find_released_ssa_name): Export.
|
||
* cfgloop.cc (verify_loop_structure): Look for released
|
||
SSA names in loops nb_iterations.
|
||
* tree-ssa-dse.cc (pass_dse::execute): Release number of iteration
|
||
estimates.
|
||
|
||
2022-02-14 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/104511
|
||
* tree-ssa-forwprop.cc (simplify_vector_constructor): Avoid
|
||
touching DFP <-> FP conversions.
|
||
|
||
2022-02-14 Richard Biener <rguenther@suse.de>
|
||
|
||
PR middle-end/104497
|
||
* gimplify.cc (gimplify_compound_lval): Make sure the
|
||
base is a non-register if needed and possible.
|
||
|
||
2022-02-13 liuhongt <hongtao.liu@intel.com>
|
||
|
||
PR target/103771
|
||
* match.pd (cond_expr_convert_p): New match.
|
||
* tree-vect-patterns.cc (gimple_cond_expr_convert_p): Declare.
|
||
(vect_recog_cond_expr_convert_pattern): New.
|
||
|
||
2022-02-12 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR sanitizer/104449
|
||
* asan.cc: Include tree-eh.h.
|
||
(handle_builtin_alloca): Handle the case when __builtin_alloca or
|
||
__builtin_alloca_with_align can throw.
|
||
|
||
2022-02-12 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR target/104502
|
||
* config/i386/i386.md (cvtsd2ss splitter): If operands[1] is xmm16+
|
||
and AVX512VL isn't available, move operands[1] to operands[0] first.
|
||
|
||
2022-02-12 Uroš Bizjak <ubizjak@gmail.com>
|
||
|
||
PR target/79754
|
||
* config/i386/i386.cc (type_natural_mode):
|
||
Skip decimal float vector modes.
|
||
|
||
2022-02-11 Iain Sandoe <iain@sandoe.co.uk>
|
||
Vladimir Makarov <vmakarov@redhat.com>
|
||
|
||
PR target/104117
|
||
* config/rs6000/rs6000.cc (darwin_rs6000_legitimate_lo_sum_const_p):
|
||
Check for UNSPEC_MACHOPIC_OFFSET wrappers on symbolic addresses when
|
||
emitting PIC code.
|
||
(legitimate_lo_sum_address_p): Likewise.
|
||
* lra-constraints.cc (process_address_1): Do not attempt to emit a reg
|
||
load from an invalid lo_sum address.
|
||
|
||
2022-02-11 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR tree-optimization/104499
|
||
* match.pd ((X & Y) CMP 0 -> X CMP2 ~Y): Use view_convert instead
|
||
of convert.
|
||
|
||
2022-02-11 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
* tree.cc (build_common_builtin_nodes): Fix up formatting in
|
||
__builtin_clear_padding decl creation.
|
||
* gimplify.cc (gimple_add_padding_init_for_auto_var): Encode
|
||
for_auto_init in the value of 2nd BUILT_IN_CLEAR_PADDING
|
||
argument rather than in 3rd argument.
|
||
(gimplify_call_expr): Likewise. Fix up comment formatting.
|
||
* gimple-fold.cc (gimple_fold_builtin_clear_padding): Expect
|
||
2 arguments instead of 3, take for_auto_init from the value
|
||
of 2nd argument.
|
||
|
||
2022-02-11 Vladimir N. Makarov <vmakarov@redhat.com>
|
||
|
||
PR rtl-optimization/104400
|
||
* lra-constraints.cc (process_alt_operands): Don't make union of
|
||
this_alternative_exclude_start_hard_regs when reg class in insn
|
||
alternative covers other reg classes in the same alternative.
|
||
|
||
2022-02-11 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR middle-end/104446
|
||
* combine.cc (subst): Don't substitute CONST_INTs into RTX_AUTOINC
|
||
operands.
|
||
|
||
2022-02-11 Richard Biener <rguenther@suse.de>
|
||
|
||
PR middle-end/104496
|
||
* internal-fn.cc (vectorized_internal_fn_supported_p):
|
||
Bail out for integer mode vector types.
|
||
|
||
2022-02-11 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR rtl-optimization/104459
|
||
* df-scan.cc (df_insn_change_bb): Don't call df_set_bb_dirty when
|
||
moving DEBUG_INSNs between bbs.
|
||
|
||
2022-02-11 liuhongt <hongtao.liu@intel.com>
|
||
|
||
PR tree-optimization/104479
|
||
* match.pd (uncond_op + vec_cond -> cond_op): Add single_use
|
||
for the dest of uncond_op.
|
||
|
||
2022-02-11 Tom de Vries <tdevries@suse.de>
|
||
|
||
PR target/104456
|
||
* config/nvptx/nvptx.cc (prevent_branch_around_nothing): Handle asm
|
||
insn.
|
||
|
||
2022-02-10 Qing Zhao <qing.zhao@oracle.com>
|
||
|
||
PR middle-end/100775
|
||
* function.cc (gen_call_used_regs_seq): Call
|
||
df_update_exit_block_uses when updating df.
|
||
|
||
2022-02-10 Uroš Bizjak <ubizjak@gmail.com>
|
||
|
||
PR target/104469
|
||
* config/i386/sse.md (vec_unpacks_float_lo_v4si):
|
||
Change operand 1 constraint to register_operand.
|
||
|
||
2022-02-10 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/104373
|
||
* tree-ssa-sccvn.h (do_rpo_vn): New export exposing the
|
||
walk kind.
|
||
* tree-ssa-sccvn.cc (do_rpo_vn): Export, get the default
|
||
walk kind as argument.
|
||
(run_rpo_vn): Adjust.
|
||
(pass_fre::execute): Likewise.
|
||
* tree-ssa-uninit.cc (warn_uninitialized_vars): Skip
|
||
blocks not reachable.
|
||
(execute_late_warn_uninitialized): Mark all edges as
|
||
executable.
|
||
(execute_early_warn_uninitialized): Use VN to compute
|
||
executable edges.
|
||
(pass_data_early_warn_uninitialized): Enable a dump file,
|
||
change dump name to warn_uninit.
|
||
|
||
2022-02-10 Richard Biener <rguenther@suse.de>
|
||
|
||
PR middle-end/104467
|
||
* match.pd (vector extract simplification): Multiply the
|
||
number of CTOR elements with the number of element elements.
|
||
|
||
2022-02-10 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/104466
|
||
* tree-ssa-alias.cc (refs_may_alias_p_2): Use rbase1/rbase2
|
||
for the MR_DEPENDENCE checks as intended.
|
||
|
||
2022-02-10 Tom de Vries <tdevries@suse.de>
|
||
|
||
* config/nvptx/nvptx.md (define_insn "nvptx_atomic_store<mode>"): New
|
||
define_insn.
|
||
(define_expand "atomic_store<mode>"): Use nvptx_atomic_store<mode> for
|
||
TARGET_SM70.
|
||
(define_c_enum "unspecv"): Add UNSPECV_ST.
|
||
|
||
2022-02-10 Tom de Vries <tdevries@suse.de>
|
||
|
||
* config/nvptx/nvptx-protos.h (nvptx_mem_maybe_shared_p): Declare.
|
||
* config/nvptx/nvptx.cc (nvptx_mem_data_area): New static function.
|
||
(nvptx_mem_maybe_shared_p): New function.
|
||
* config/nvptx/nvptx.md (define_expand "atomic_store<mode>"): New
|
||
define_expand.
|
||
|
||
2022-02-10 Tom de Vries <tdevries@suse.de>
|
||
|
||
PR target/97005
|
||
* config/nvptx/nvptx.md (define_insn "sub<mode>3"): Workaround
|
||
driver JIT bug by using sub.s16 instead of sub.u16.
|
||
|
||
2022-02-10 Roger Sayle <roger@nextmovesoftware.com>
|
||
|
||
* config/nvptx/nvptx.md (copysign<mode>3): Allow immediate
|
||
floating point constants as operands 1 and/or 2.
|
||
|
||
2022-02-10 Roger Sayle <roger@nextmovesoftware.com>
|
||
|
||
PR target/104345
|
||
* config/nvptx/nvptx.md (sel_true<mode>): Fix indentation.
|
||
(sel_false<mode>): Likewise.
|
||
(define_code_iterator eqne): New code iterator for EQ and NE.
|
||
(*selp<mode>_neg_<code>): New define_insn_and_split to optimize
|
||
the negation of a selp instruction.
|
||
(*selp<mode>_not_<code>): New define_insn_and_split to optimize
|
||
the bitwise not of a selp instruction.
|
||
(*setcc_int<mode>): Use set instruction for neg:SI of a selp.
|
||
|
||
2022-02-10 Roger Sayle <roger@nextmovesoftware.com>
|
||
|
||
* config/nvptx/nvptx.md (any_logic): Move code iterator earlier
|
||
in machine description.
|
||
(logic): Move code attribute earlier in machine description.
|
||
(ilogic): New code attribute, like logic but "ior" for IOR.
|
||
(and<mode>3, ior<mode>3, xor<mode>3): Delete. Replace with...
|
||
(<ilogic><mode>3): New define_insn for HSDIM logic operations.
|
||
(<ilogic>bi3): New define_insn for BI mode logic operations.
|
||
(define_split): Lower logic operations from integer modes to
|
||
BI mode predicate operations.
|
||
|
||
2022-02-10 Roger Sayle <roger@nextmovesoftware.com>
|
||
|
||
* config/nvptx/nvptx.md (UNSPEC_ISINF): New UNSPEC.
|
||
(one_cmplbi2): New define_insn for not.pred.
|
||
(mulditi3): New define_expand for signed widening multiply.
|
||
(umulditi3): New define_expand for unsigned widening multiply.
|
||
(smul<mode>3_highpart): New define_insn for signed highpart mult.
|
||
(umul<mode>3_highpart): New define_insn for unsigned highpart mult.
|
||
(*smulhi3_highpart_2): Renamed from smulhi3_highpart.
|
||
(*smulsi3_highpart_2): Renamed from smulsi3_highpart.
|
||
(*umulhi3_highpart_2): Renamed from umulhi3_highpart.
|
||
(*umulsi3_highpart_2): Renamed from umulsi3_highpart.
|
||
(*setcc<mode>_from_not_bi): New define_insn.
|
||
(*setcc_isinf<mode>): New define_insn for testp.infinite.
|
||
(isinf<mode>2): New define_expand.
|
||
|
||
2022-02-10 Roger Sayle <roger@nextmovesoftware.com>
|
||
|
||
* config/nvptx/nvptx.md (cmp<mode>): Renamed from *cmp<mode>.
|
||
(setcc<mode>_from_bi): Additionally support QImode.
|
||
(extendbi<mode>2): Additionally support QImode.
|
||
(zero_extendbi<mode>2): Additionally support QImode.
|
||
(any_sbinary, any_ubinary, any_sunary, any_uunary): New code
|
||
iterators for signed and unsigned, binary and unary operations.
|
||
(<sbinary>qi3, <ubinary>qi3, <sunary>qi2, <uunary>qi2): New
|
||
expanders to perform QImode operations using SImode instructions.
|
||
(cstoreqi4): New define_expand.
|
||
(*ext_truncsi2_qi): New define_insn.
|
||
(*zext_truncsi2_qi): New define_insn.
|
||
|
||
2022-02-10 Roger Sayle <roger@nextmovesoftware.com>
|
||
|
||
* config/nvptx/nvptx.md (*cmpf): New define_insn.
|
||
(cstorehf4): New define_expand.
|
||
(fmahf4): New define_insn.
|
||
(neghf2): New define_insn.
|
||
(abshf2): New define_insn.
|
||
|
||
2022-02-10 Gerald Pfeifer <gerald@pfeifer.com>
|
||
|
||
* doc/install.texi (Specific): Change the www.bitwizard.nl
|
||
reference to use https.
|
||
|
||
2022-02-10 Marcel Vollweiler <marcel@codesourcery.com>
|
||
|
||
* gimplify.cc (gimplify_scan_omp_clauses): Added cases for
|
||
OMP_CLAUSE_HAS_DEVICE_ADDR
|
||
and handle array sections.
|
||
(gimplify_adjust_omp_clauses): Added OMP_CLAUSE_HAS_DEVICE_ADDR case.
|
||
* omp-low.cc (scan_sharing_clauses): Handle OMP_CLAUSE_HAS_DEVICE_ADDR.
|
||
(lower_omp_target): Same.
|
||
* tree-core.h (enum omp_clause_code): Same.
|
||
* tree-nested.cc (convert_nonlocal_omp_clauses): Same.
|
||
(convert_local_omp_clauses): Same.
|
||
* tree-pretty-print.cc (dump_omp_clause): Same.
|
||
* tree.cc: Same.
|
||
|
||
2022-02-10 Eugene Rozenfeld <erozen@microsoft.com>
|
||
|
||
* auto-profile.cc (afdo_indirect_call): Don't attempt to promote indirect calls
|
||
that will result in direct recursive calls.
|
||
|
||
2022-02-10 Andrew Pinski <apinski@marvell.com>
|
||
|
||
PR target/104474
|
||
* config/aarch64/aarch64.cc
|
||
(aarch64_sve_expand_vector_init_handle_trailing_constants):
|
||
Use CONST0_RTX instead of const0_rtx for the non-constant elements.
|
||
|
||
2022-02-09 Uroš Bizjak <ubizjak@gmail.com>
|
||
|
||
PR target/104462
|
||
* common/config/i386/i386-common.cc (OPTION_MASK_ISA2_XSAVE_UNSET):
|
||
Also include OPTION_MASK_ISA2_AVX2_UNSET.
|
||
|
||
2022-02-09 Uroš Bizjak <ubizjak@gmail.com>
|
||
|
||
PR target/104458
|
||
* config/i386/i386-expand.cc (ix86_split_idivmod):
|
||
Force operands[2] and operands[3] into a register..
|
||
|
||
2022-02-09 Jeff Law <jeffreyalaw@gmail.com>
|
||
|
||
PR target/97040
|
||
* config/v850/v850.md (*v850_fnmasf4): Renamed from fnmasf4.
|
||
(*v850_fnmssf4): Renamed from fnmssf4
|
||
|
||
2022-02-09 Ian Lance Taylor <iant@golang.org>
|
||
|
||
* godump.cc (go_force_record_alignment): Really name the alignment
|
||
field "_" (complete 2021-12-29 change).
|
||
|
||
2022-02-09 Bill Schmidt <wschmidt@linux.ibm.com>
|
||
|
||
* config/rs6000/rs6000-builtins.def (VREPLACE_UN_UV2DI): Change
|
||
function prototype.
|
||
(VREPLACE_UN_UV4SI): Likewise.
|
||
(VREPLACE_UN_V2DF): Likewise.
|
||
(VREPLACE_UN_V2DI): Likewise.
|
||
(VREPLACE_UN_V4SF): Likewise.
|
||
(VREPLACE_UN_V4SI): Likewise.
|
||
* config/rs6000/rs6000-overload.def (VEC_REPLACE_UN): Change all
|
||
function prototypes.
|
||
* config/rs6000/vsx.md (vreplace_un_<mode>): Remove define_expand.
|
||
(vreplace_un_<mode>): New define_insn.
|
||
|
||
2022-02-09 Richard Sandiford <richard.sandiford@arm.com>
|
||
|
||
* config/aarch64/iterators.md (VDCSIF): New mode iterator.
|
||
(VDBL): Handle SF.
|
||
(single_wx, single_type, single_dtype, dblq): New mode attributes.
|
||
* config/aarch64/aarch64-simd.md (load_pair_lanes<mode>): Extend
|
||
from VDC to VDCSIF.
|
||
(store_pair_lanes<mode>): Likewise.
|
||
(*aarch64_combine_internal<mode>): Likewise.
|
||
(*aarch64_combine_internal_be<mode>): Likewise.
|
||
(*aarch64_combinez<mode>): Likewise.
|
||
(*aarch64_combinez_be<mode>): Likewise.
|
||
* config/aarch64/aarch64.cc (aarch64_classify_address): Handle
|
||
8-byte modes for ADDR_QUERY_LDP_STP_N.
|
||
(aarch64_print_operand): Likewise for %y.
|
||
|
||
2022-02-09 Richard Sandiford <richard.sandiford@arm.com>
|
||
|
||
* config/aarch64/aarch64-simd.md (@aarch64_split_simd_mov<mode>):
|
||
Use aarch64_combine instead of move_lo/hi_quad. Tabify.
|
||
(move_lo_quad_<mode>, aarch64_simd_move_hi_quad_<mode>): Delete.
|
||
(aarch64_simd_move_hi_quad_be_<mode>, move_hi_quad_<mode>): Delete.
|
||
(vec_pack_trunc_<mode>): Take general_operand elements and use
|
||
aarch64_combine rather than move_lo/hi_quad to combine them.
|
||
(vec_pack_trunc_df): Likewise.
|
||
|
||
2022-02-09 Richard Sandiford <richard.sandiford@arm.com>
|
||
|
||
* config/aarch64/aarch64-protos.h (aarch64_split_simd_combine):
|
||
Delete.
|
||
* config/aarch64/aarch64-simd.md (@aarch64_combinez<mode>): Rename
|
||
to...
|
||
(*aarch64_combinez<mode>): ...this.
|
||
(@aarch64_combinez_be<mode>): Rename to...
|
||
(*aarch64_combinez_be<mode>): ...this.
|
||
(@aarch64_vec_concat<mode>): New expander.
|
||
(aarch64_combine<mode>): Use it.
|
||
(@aarch64_simd_combine<mode>): Delete.
|
||
* config/aarch64/aarch64.cc (aarch64_split_simd_combine): Delete.
|
||
(aarch64_expand_vector_init): Use aarch64_vec_concat.
|
||
|
||
2022-02-09 Richard Sandiford <richard.sandiford@arm.com>
|
||
|
||
* config/aarch64/predicates.md (aarch64_reg_or_mem_pair_operand):
|
||
New predicate.
|
||
* config/aarch64/aarch64-simd.md (*aarch64_combine_internal<mode>)
|
||
(*aarch64_combine_internal_be<mode>): New patterns.
|
||
|
||
2022-02-09 Richard Sandiford <richard.sandiford@arm.com>
|
||
|
||
* config/aarch64/aarch64-simd.md (move_lo_quad_internal_<mode>)
|
||
(move_lo_quad_internal_be_<mode>): Delete.
|
||
(move_lo_quad_<mode>): Use aarch64_combine<Vhalf> instead of the above.
|
||
|
||
2022-02-09 Richard Sandiford <richard.sandiford@arm.com>
|
||
|
||
* config/aarch64/aarch64-protos.h (aarch64_mergeable_load_pair_p):
|
||
Declare.
|
||
* config/aarch64/aarch64-simd.md (load_pair_lanes<mode>): Use
|
||
aarch64_mergeable_load_pair_p instead of inline check.
|
||
* config/aarch64/aarch64.cc (aarch64_expand_vector_init): Likewise.
|
||
(aarch64_check_consecutive_mems): Allow the reversed parameter
|
||
to be null.
|
||
(aarch64_mergeable_load_pair_p): New function.
|
||
|
||
2022-02-09 Richard Sandiford <richard.sandiford@arm.com>
|
||
|
||
* config/aarch64/aarch64-simd.md (vec_set<mode>): Allow the
|
||
element to be an aarch64_simd_nonimmediate_operand.
|
||
|
||
2022-02-09 Richard Sandiford <richard.sandiford@arm.com>
|
||
|
||
* config/aarch64/aarch64-simd.md (aarch64_simd_vec_set<mode>): Use
|
||
aarch64_simd_nonimmediate_operand instead of
|
||
aarch64_simd_general_operand.
|
||
(@aarch64_combinez<mode>): Use nonimmediate_operand instead of
|
||
general_operand.
|
||
(@aarch64_combinez_be<mode>): Likewise.
|
||
|
||
2022-02-09 Richard Biener <rguenther@suse.de>
|
||
|
||
PR middle-end/104464
|
||
* gimple-isel.cc (gimple_expand_vec_cond_expr): Postpone
|
||
throwing check to after unproblematic replacement.
|
||
|
||
2022-02-09 Roger Sayle <roger@nextmovesoftware.com>
|
||
|
||
PR tree-optimization/104420
|
||
* match.pd (mult @0 real_zerop): Tweak conditions for constant
|
||
folding X*0.0 (or X*-0.0) to HONOR_SIGNED_ZEROS when appropriate.
|
||
|
||
2022-02-09 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR debug/104407
|
||
* dwarf2out.cc (mangle_referenced_decls): New function.
|
||
(tree_add_const_value_attribute): Don't call rtl_for_decl_init if
|
||
early_dwarf. Instead walk the initializer and try to mangle vars or
|
||
functions referenced from it.
|
||
|
||
2022-02-09 Andrew MacLeod <amacleod@redhat.com>
|
||
|
||
PR tree-optimization/104288
|
||
* gimple-range-cache.cc (non_null_ref::set_nonnull): New.
|
||
(non_null_ref::adjust_range): Move to header.
|
||
(ranger_cache::range_of_def): Don't check non-null.
|
||
(ranger_cache::entry_range): Don't check non-null.
|
||
(ranger_cache::range_on_edge): Check for nonnull on normal edges.
|
||
(ranger_cache::update_to_nonnull): New.
|
||
(non_null_loadstore): New.
|
||
(ranger_cache::block_apply_nonnull): New.
|
||
* gimple-range-cache.h (class non_null_ref): Update prototypes.
|
||
(non_null_ref::adjust_range): Move to here and inline.
|
||
(class ranger_cache): Update prototypes.
|
||
* gimple-range-path.cc (path_range_query::range_defined_in_block): Do
|
||
not search dominators.
|
||
(path_range_query::adjust_for_non_null_uses): Ditto.
|
||
* gimple-range.cc (gimple_ranger::range_of_expr): Check on-entry for
|
||
def overrides. Do not check nonnull.
|
||
(gimple_ranger::range_on_entry): Check dominators for nonnull.
|
||
(gimple_ranger::range_on_edge): Check for nonnull on normal edges..
|
||
(gimple_ranger::register_side_effects): New.
|
||
* gimple-range.h (gimple_ranger::register_side_effects): New.
|
||
* tree-vrp.cc (rvrp_folder::fold_stmt): Call register_side_effects.
|
||
|
||
2022-02-09 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/104445
|
||
PR tree-optimization/102832
|
||
* optabs-query.h (can_vec_extract): New.
|
||
* optabs-query.cc (can_vec_extract): Likewise.
|
||
* tree-vect-loop.cc (vect_find_reusable_accumulator): Check
|
||
we can extract a hi/lo part from the larger vector, rework
|
||
check iteration from larger to smaller sizes.
|
||
|
||
2022-02-09 H.J. Lu <hjl.tools@gmail.com>
|
||
|
||
PR target/35513
|
||
PR target/100593
|
||
* config/i386/gnu-property.cc: Include "i386-protos.h".
|
||
(file_end_indicate_exec_stack_and_gnu_property): Generate
|
||
a GNU_PROPERTY_1_NEEDED note for -mno-direct-extern-access or
|
||
nodirect_extern_access attribute.
|
||
* config/i386/i386-options.cc
|
||
(handle_nodirect_extern_access_attribute): New function.
|
||
(ix86_attribute_table): Add nodirect_extern_access attribute.
|
||
* config/i386/i386-protos.h (ix86_force_load_from_GOT_p): Add a
|
||
bool argument.
|
||
(ix86_has_no_direct_extern_access): New.
|
||
* config/i386/i386.cc (ix86_has_no_direct_extern_access): New.
|
||
(ix86_force_load_from_GOT_p): Add a bool argument to indicate
|
||
call operand. Force non-call load from GOT for
|
||
-mno-direct-extern-access or nodirect_extern_access attribute.
|
||
(legitimate_pic_address_disp_p): Avoid copy relocation in PIE
|
||
for -mno-direct-extern-access or nodirect_extern_access attribute.
|
||
(ix86_print_operand): Pass true to ix86_force_load_from_GOT_p
|
||
for call operand.
|
||
(asm_preferred_eh_data_format): Use PC-relative format for
|
||
-mno-direct-extern-access to avoid copy relocation. Check
|
||
ptr_mode instead of TARGET_64BIT when selecting DW_EH_PE_sdata4.
|
||
(ix86_binds_local_p): Set ix86_has_no_direct_extern_access to
|
||
true for -mno-direct-extern-access or nodirect_extern_access
|
||
attribute. Don't treat protected data as extern and avoid copy
|
||
relocation on common symbol with -mno-direct-extern-access or
|
||
nodirect_extern_access attribute.
|
||
(ix86_reloc_rw_mask): New to avoid copy relocation for
|
||
-mno-direct-extern-access.
|
||
(TARGET_ASM_RELOC_RW_MASK): New.
|
||
* config/i386/i386.opt: Add -mdirect-extern-access.
|
||
* doc/extend.texi: Document nodirect_extern_access attribute.
|
||
* doc/invoke.texi: Document -m[no-]direct-extern-access.
|
||
|
||
2022-02-09 H.J. Lu <hjl.tools@gmail.com>
|
||
|
||
PR target/104441
|
||
* config/i386/i386.cc (ix86_avx_u128_mode_source): New function.
|
||
(ix86_avx_u128_mode_needed): Return AVX_U128_ANY for debug INSN.
|
||
Call ix86_avx_u128_mode_source to check mode for each component
|
||
of source operand.
|
||
|
||
2022-02-09 liuhongt <hongtao.liu@intel.com>
|
||
|
||
PR target/104451
|
||
* config/i386/sse.md (<insn><mode>3): lowpart_subreg
|
||
operands[2] from SImode to QImode.
|
||
|
||
2022-02-09 Richard Biener <rguenther@suse.de>
|
||
|
||
PR middle-end/104450
|
||
* gimple-isel.cc: Pass cfun around.
|
||
(+gimple_expand_vec_cond_expr): Do not combine a throwing
|
||
comparison with the select.
|
||
|
||
2022-02-09 Richard Biener <rguenther@suse.de>
|
||
|
||
PR target/104453
|
||
* config/i386/i386.cc (ix86_gimple_fold_builtin): Guard shift
|
||
folding for NULL LHS.
|
||
|
||
2022-02-08 Robin Dapp <rdapp@linux.ibm.com>
|
||
|
||
PR rtl-optimization/104198
|
||
PR rtl-optimization/104153
|
||
* ifcvt.cc (noce_convert_multiple_sets_1): Copy rtx instead of
|
||
using it directly. Rework comparison handling and always
|
||
perform a second pass.
|
||
|
||
2022-02-08 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR target/102140
|
||
* config/rs6000/rs6000.cc (vspltis_shifted): Return false also if
|
||
split1 pass has finished already.
|
||
|
||
2022-02-08 Bill Schmidt <wschmidt@linux.ibm.com>
|
||
|
||
* config/rs6000/rs6000-builtins.def (VMSUMCUD): New.
|
||
* config/rs6000/rs6000-overload.def (VEC_MSUMC): New.
|
||
* config/rs6000/vsx.md (UNSPEC_VMSUMCUD): New constant.
|
||
(vmsumcud): New define_insn.
|
||
|
||
2022-02-08 Tom de Vries <tdevries@suse.de>
|
||
|
||
* config/nvptx/nvptx-opts.h (enum ptx_isa): Add PTX_ISA_SM70.
|
||
* config/nvptx/nvptx.h (TARGET_SM70): Define.
|
||
|
||
2022-02-08 Robin Dapp <rdapp@linux.ibm.com>
|
||
|
||
* config/s390/s390.cc (s390_rtx_costs): Increase costs for load
|
||
on condition.
|
||
* config/s390/s390.md: Use paradoxical subreg.
|
||
|
||
2022-02-08 Robin Dapp <rdapp@linux.ibm.com>
|
||
|
||
* combine.cc (reg_subword_p): Check for paradoxical subreg.
|
||
|
||
2022-02-08 Tom de Vries <tdevries@suse.de>
|
||
|
||
PR target/104283
|
||
* config/nvptx/nvptx-opts.h (enum ptx_version): Add PTX_VERSION_3_0
|
||
and PTX_VERSION_4_2.
|
||
* config/nvptx/nvptx.cc (first_ptx_version_supporting_sm)
|
||
(default_ptx_version_option, ptx_version_to_string)
|
||
(sm_version_to_string, handle_ptx_version_option): New function.
|
||
(nvptx_option_override): Call handle_ptx_version_option.
|
||
(nvptx_file_start): Use ptx_version_to_string and sm_version_to_string.
|
||
* config/nvptx/nvptx.md (define_insn "nvptx_shuffle<mode>")
|
||
(define_insn "nvptx_vote_ballot"): Use TARGET_PTX_6_0.
|
||
* config/nvptx/nvptx.opt (mptx): Remove 'Init'.
|
||
|
||
2022-02-08 Maciej W. Rozycki <macro@embecosm.com>
|
||
|
||
* doc/install.texi (Configuration): Document `--with-isa-spec='
|
||
RISC-V option.
|
||
* doc/invoke.texi (Option Summary): List `-misa-spec=' RISC-V
|
||
option.
|
||
(RISC-V Options): Document it.
|
||
|
||
2022-02-08 Maciej W. Rozycki <macro@embecosm.com>
|
||
|
||
* config/riscv/t-riscv (riscv-sr.o): Add $(TM_H) dependency.
|
||
|
||
2022-02-08 Tom de Vries <tdevries@suse.de>
|
||
|
||
* config/nvptx/nvptx.cc (write_fn_proto_1): Handle 'main (int)'.
|
||
|
||
2022-02-08 Tom de Vries <tdevries@suse.de>
|
||
|
||
PR target/104364
|
||
* config/nvptx/nvptx-protos.h (nvptx_mem_local_p): Declare.
|
||
* config/nvptx/nvptx.cc (nvptx_reorg_uniform_simt): Assert that
|
||
change is validated.
|
||
(nvptx_mem_local_p): New function.
|
||
* config/nvptx/nvptx.md: Use nvptx_mem_local_p.
|
||
(define_c_enum "unspecv"): Add UNSPECV_CAS_LOCAL.
|
||
(define_insn "atomic_compare_and_swap<mode>_1_local"): New
|
||
non-atomic, non-predicable define_insn, factored out of ...
|
||
(define_insn "atomic_compare_and_swap<mode>_1"): ... here.
|
||
Make predicable again.
|
||
(define_expand "atomic_compare_and_swap<mode>"): Use
|
||
atomic_compare_and_swap<mode>_1_local.
|
||
|
||
2022-02-08 liuhongt <hongtao.liu@intel.com>
|
||
|
||
PR rtl-optimization/104059
|
||
* regcprop.cc (copyprop_hardreg_forward_1): Don't propagate
|
||
for a more expensive reg-reg move.
|
||
|
||
2022-02-07 Tamar Christina <tamar.christina@arm.com>
|
||
|
||
* config/arm/arm_neon.h (vusdotq_s32, vusdot_laneq_s32,
|
||
vusdotq_laneq_s32, vsudot_laneq_s32, vsudotq_laneq_s32): New
|
||
* config/arm/arm_neon_builtins.def (usdot): Add V16QI.
|
||
(usdot_laneq, sudot_laneq): New.
|
||
* config/arm/neon.md (neon_<sup>dot_laneq<vsi2qi>): New.
|
||
(neon_<sup>dot_lane<vsi2qi>): Remote unneeded code.
|
||
|
||
2022-02-07 Tamar Christina <tamar.christina@arm.com>
|
||
|
||
* config/arm/arm_neon.h (vdot_laneq_u32, vdotq_laneq_u32,
|
||
vdot_laneq_s32, vdotq_laneq_s32): New.
|
||
* config/arm/arm_neon_builtins.def (sdot_laneq, udot_laneq): New.
|
||
* config/arm/neon.md (neon_<sup>dot<vsi2qi>): New.
|
||
(<sup>dot_prod<vsi2qi>): Re-order rtl.
|
||
(neon_<sup>dot_lane<vsi2qi>): Fix rtl order and endiannes.
|
||
(neon_<sup>dot_laneq<vsi2qi>): New.
|
||
|
||
2022-02-07 Andreas Krebbel <krebbel@linux.ibm.com>
|
||
|
||
PR target/104327
|
||
* config/s390/s390.cc (s390_can_inline_p): Accept a few more flags
|
||
if always_inline is set. Don't inline when tune differs without
|
||
always_inline.
|
||
|
||
2022-02-07 Richard Biener <rguenther@suse.de>
|
||
|
||
PR middle-end/104402
|
||
* gimple-expr.cc (is_gimple_condexpr): _Complex typed
|
||
compares are not valid.
|
||
* tree-cfg.cc (verify_gimple_assign_ternary): For COND_EXPR
|
||
check is_gimple_condexpr.
|
||
|
||
2022-02-07 Kewen Lin <linkw@linux.ibm.com>
|
||
|
||
PR target/103627
|
||
* config/rs6000/rs6000.cc (rs6000_option_override_internal): Move the
|
||
hunk affecting VSX and ALTIVEC to appropriate place.
|
||
|
||
2022-02-07 Kewen Lin <linkw@linux.ibm.com>
|
||
|
||
PR target/103627
|
||
* config/rs6000/rs6000.cc (rs6000_option_override_internal): Disable
|
||
MMA if !TARGET_VSX.
|
||
|
||
2022-02-06 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR c++/89074
|
||
PR c++/104033
|
||
* fold-const.h (folding_initializer): Adjust comment.
|
||
(folding_cxx_constexpr): Declare.
|
||
* fold-const.cc (folding_initializer): Adjust comment.
|
||
(folding_cxx_constexpr): New variable.
|
||
(address_compare): Restrict the decl vs. STRING_CST
|
||
or vice versa or STRING_CST vs. STRING_CST or
|
||
is_global_var != is_global_var optimizations to !folding_cxx_constexpr.
|
||
Punt for FUNCTION_DECLs with non-zero offsets. If folding_initializer,
|
||
assume non-aliased functions have non-zero size and have different
|
||
addresses. For folding_cxx_constexpr, punt on comparisons of start
|
||
of some object and end of another one, regardless whether it is a decl
|
||
or string literal. Also punt for folding_cxx_constexpr on
|
||
STRING_CST vs. STRING_CST comparisons if the two literals could be
|
||
overlapping.
|
||
|
||
2022-02-05 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR tree-optimization/104389
|
||
* match.pd (x * 0 -> 0): Punt if x maybe infinite and NaNs are
|
||
honored.
|
||
|
||
2022-02-05 Kito Cheng <kito.cheng@sifive.com>
|
||
|
||
* configure.ac: Fix detection for zifencei support.
|
||
* configure: Regenerate.
|
||
|
||
2022-02-05 Kito Cheng <kito.cheng@sifive.com>
|
||
|
||
PR target/104219
|
||
* config.gcc (riscv*-*-*): Normalize the with_isa_spec value.
|
||
(all_defaults): Add isa_spec.
|
||
* config/riscv/riscv.h (OPTION_DEFAULT_SPECS): Add isa_spec.
|
||
|
||
2022-02-04 Bill Schmidt <wschmidt@linux.ibm.com>
|
||
|
||
* config/rs6000/rs6000-c.cc (resolve_vec_mul): Accept args and types
|
||
parameters instead of arglist and nargs. Simplify accordingly. Remove
|
||
unnecessary test for argument count mismatch.
|
||
(resolve_vec_cmpne): Likewise.
|
||
(resolve_vec_adde_sube): Likewise.
|
||
(resolve_vec_addec_subec): Likewise.
|
||
(altivec_resolve_overloaded_builtin): Move overload special handling
|
||
after the gathering of arguments into args[] and types[] and the test
|
||
for correct number of arguments. Don't perform the test for correct
|
||
number of arguments for certain special cases. Call the other special
|
||
cases with args and types instead of arglist and nargs.
|
||
|
||
2022-02-04 Bill Schmidt <wschmidt@linux.ibm.com>
|
||
|
||
PR target/100808
|
||
* doc/extend.texi (Basic PowerPC Built-in Functions Available on ISA
|
||
3.1): Provide consistent type names. Remove unnecessary semicolons.
|
||
Fix bad line breaks.
|
||
|
||
2022-02-04 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR target/104380
|
||
* config/rs6000/rs6000.cc (rs6000_mangle_decl_assembler_name): Also
|
||
adjust mangling of __builtin*printf_chk.
|
||
|
||
2022-02-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* doc/cpp.texi (Variadic Macros): Replace C++2a with C++20.
|
||
|
||
2022-02-04 Richard Biener <rguenther@suse.de>
|
||
Bin Cheng <bin.cheng@linux.alibaba.com>
|
||
|
||
PR tree-optimization/100499
|
||
* fold-const.h (multiple_of_p): Add nowrap parameter, defaulted
|
||
to true.
|
||
* fold-const.cc (multiple_of_p): Likewise. Honor it for
|
||
MULT_EXPR, PLUS_EXPR and MINUS_EXPR and pass it along,
|
||
switching to false for conversions.
|
||
* tree-ssa-loop-niter.cc (number_of_iterations_ne): Do not
|
||
claim the outermost expression does not wrap when calling
|
||
multiple_of_p. Refactor the check done to check the
|
||
original IV, avoiding a bias that might wrap.
|
||
|
||
2022-02-04 Richard Biener <rguenther@suse.de>
|
||
|
||
* fold-const.cc (multiple_of_p): Re-write and move LSHIFT_EXPR
|
||
handling.
|
||
|
||
2022-02-04 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
PR debug/104366
|
||
* dwarf2out.cc (dwarf2out_finish): Empty base_types.
|
||
(dwarf2out_early_finish): Likewise.
|
||
|
||
2022-02-04 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
PR tree-optimization/104356
|
||
* match.pd (X / bool_range_Y is X): Add guard.
|
||
(X / X is one): Likewise.
|
||
(X / abs (X) is X < 0 ? -1 : 1): Likewise.
|
||
(X / -X is -1): Likewise.
|
||
(1 / X -> X == 1): Likewise.
|
||
|
||
2022-02-04 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/103641
|
||
* tree-vect-patterns.cc (vect_synth_mult_by_constant):
|
||
Pass the vector mode to choose_mult_variant.
|
||
|
||
2022-02-04 Roger Sayle <roger@nextmovesoftware.com>
|
||
|
||
PR rtl-optimization/101885
|
||
* combine.cc (try_combine): When splitting a parallel into two
|
||
sequential sets, check not only that the first doesn't clobber
|
||
the second but also that the second doesn't clobber the first.
|
||
|
||
2022-02-04 Richard Biener <rguenther@suse.de>
|
||
|
||
PR middle-end/90348
|
||
PR middle-end/104092
|
||
* tree-core.h (clobber_kind): New enum.
|
||
(tree_base::u::bits::address_space): Document use in CONSTRUCTORs.
|
||
* tree.h (CLOBBER_KIND): Add.
|
||
(build_clobber): Add clobber kind argument, defaulted to
|
||
CLOBBER_UNDEF.
|
||
* tree.cc (build_clobber): Likewise.
|
||
* gimple.h (gimple_clobber_p): New overload with specified kind.
|
||
* tree-streamer-in.cc (streamer_read_tree_bitfields): Stream
|
||
CLOBBER_KIND.
|
||
* tree-streamer-out.cc (streamer_write_tree_bitfields):
|
||
Likewise.
|
||
* tree-pretty-print.cc (dump_generic_node): Mark EOL CLOBBERs.
|
||
* gimplify.cc (gimplify_bind_expr): Build storage end-of-life clobbers
|
||
with CLOBBER_EOL.
|
||
(gimplify_target_expr): Likewise.
|
||
* tree-inline.cc (expand_call_inline): Likewise.
|
||
* tree-ssa-ccp.cc (insert_clobber_before_stack_restore): Likewise.
|
||
* gimple-ssa-warn-access.cc (pass_waccess::check_stmt): Only treat
|
||
CLOBBER_EOL clobbers as ending lifetime of storage.
|
||
|
||
2022-02-04 Martin Sebor <msebor@redhat.com>
|
||
|
||
* pointer-query.h (pointer_query::cache_type): Use auto_vec for auto
|
||
cleanup.
|
||
|
||
2022-02-03 Martin Sebor <msebor@redhat.com>
|
||
|
||
PR middle-end/104260
|
||
* passes.def (pass_warn_access): Adjust pass placement.
|
||
|
||
2022-02-03 Uroš Bizjak <ubizjak@gmail.com>
|
||
|
||
PR target/104362
|
||
* config/i386/i386.cc (find_drap_reg): For 32bit targets
|
||
return DI_REG if function uses __builtin_eh_return.
|
||
|
||
2022-02-03 Martin Sebor <msebor@redhat.com>
|
||
|
||
* gimple-ssa-warn-restrict.cc (class pass_wrestrict): Outline ctor.
|
||
(pass_wrestrict::m_ptr_qry): New member.
|
||
(wrestrict_walk): Rename...
|
||
(pass_wrestrict::check_block): ...to this.
|
||
(pass_wrestrict::execute): Set up and tear down pointer_query and
|
||
ranger.
|
||
(builtin_memref::builtin_memref): Change ctor argument. Simplify.
|
||
(builtin_access::builtin_access): Same.
|
||
(builtin_access::m_ptr_qry): New member.
|
||
(check_call): Rename...
|
||
(pass_wrestrict::check_call): ...to this.
|
||
(check_bounds_or_overlap): Change argument.
|
||
* gimple-ssa-warn-restrict.h (check_bounds_or_overlap): Same.
|
||
|
||
2022-02-03 Martin Sebor <msebor@redhat.com>
|
||
|
||
* gimple-array-bounds.cc (array_bounds_checker::array_bounds_checker):
|
||
Define ctor.
|
||
(array_bounds_checker::get_value_range): Use new member.
|
||
(array_bounds_checker::check_mem_ref): Same.
|
||
* gimple-array-bounds.h (array_bounds_checker::array_bounds_checker):
|
||
Outline ctor.
|
||
(array_bounds_checker::m_ptr_query): New member.
|
||
|
||
2022-02-03 Martin Sebor <msebor@redhat.com>
|
||
|
||
* gimple-ssa-warn-access.cc (pass_waccess::pass_waccess): Remove
|
||
pointer_query cache.
|
||
* pointer-query.cc (pointer_query::pointer_query): Remove cache
|
||
argument. Zero-initialize new cache member.
|
||
(pointer_query::get_ref): Replace cache pointer with direct access.
|
||
(pointer_query::put_ref): Same.
|
||
(pointer_query::flush_cache): Same.
|
||
(pointer_query::dump): Same.
|
||
* pointer-query.h (class pointer_query): Remove cache argument from
|
||
ctor. Change cache pointer to cache subobject member.
|
||
* tree-ssa-strlen.cc: Remove pointer_query cache.
|
||
|
||
2022-02-03 Martin Sebor <msebor@redhat.com>
|
||
|
||
PR tree-optimization/104119
|
||
* gimple-ssa-sprintf.cc (struct directive): Change argument type.
|
||
(format_none): Same.
|
||
(format_percent): Same.
|
||
(format_integer): Same.
|
||
(format_floating): Same.
|
||
(get_string_length): Same.
|
||
(format_character): Same.
|
||
(format_string): Same.
|
||
(format_plain): Same.
|
||
(format_directive): Same.
|
||
(compute_format_length): Same.
|
||
(handle_printf_call): Same.
|
||
* tree-ssa-strlen.cc (get_range_strlen_dynamic): Same. Call
|
||
get_maxbound.
|
||
(get_range_strlen_phi): Same.
|
||
(get_maxbound): New function.
|
||
(strlen_pass::get_len_or_size): Adjust to parameter change.
|
||
* tree-ssa-strlen.h (get_range_strlen_dynamic): Change argument type.
|
||
|
||
2022-02-03 Bill Schmidt <wschmidt@linux.ibm.com>
|
||
|
||
PR target/103686
|
||
* config/rs6000/rs6000-builtin.cc (rs6000_gimple_fold_builtin): Remove
|
||
test for !rs6000_fold_gimple.
|
||
* config/rs6000/rs6000.cc (rs6000_option_override_internal): Likewise.
|
||
* config/rs6000/rs6000.opt (mfold-gimple): Remove.
|
||
|
||
2022-02-03 Bill Schmidt <wschmidt@linux.ibm.com>
|
||
|
||
PR target/95082
|
||
* config/rs6000/rs6000-builtin.cc (rs6000_expand_builtin): Handle
|
||
endianness for vclzlsbb and vctzlsbb.
|
||
* config/rs6000/rs6000-builtins.def (VCLZLSBB_V16QI): Change
|
||
default pattern and indicate a different pattern will be used for
|
||
big endian.
|
||
(VCLZLSBB_V4SI): Likewise.
|
||
(VCLZLSBB_V8HI): Likewise.
|
||
(VCTZLSBB_V16QI): Likewise.
|
||
(VCTZLSBB_V4SI): Likewise.
|
||
(VCTZLSBB_V8HI): Likewise.
|
||
|
||
2022-02-03 Bill Schmidt <wschmidt@linux.ibm.com>
|
||
|
||
* config.gcc (powerpc*-*-*): Add rs6000-builtin.o to extra_objs.
|
||
* config/rs6000/rs6000-builtin.cc: New file, containing code moved
|
||
from other files.
|
||
* config/rs6000/rs6000-call.cc (cpu_is_info): Move to
|
||
rs6000-builtin.cc.
|
||
(cpu_supports_info): Likewise.
|
||
(rs6000_type_string): Likewise.
|
||
(altivec_expand_predicate_builtin): Likewise.
|
||
(rs6000_htm_spr_icode): Likewise.
|
||
(altivec_expand_vec_init_builtin): Likewise.
|
||
(get_element_number): Likewise.
|
||
(altivec_expand_vec_set_builtin): Likewise.
|
||
(altivec_expand_vec_ext_builtin): Likewise.
|
||
(rs6000_invalid_builtin): Likewise.
|
||
(rs6000_fold_builtin): Likewise.
|
||
(fold_build_vec_cmp): Likewise.
|
||
(fold_compare_helper): Likewise.
|
||
(map_to_integral_tree_type): Likewise.
|
||
(fold_mergehl_helper): Likewise.
|
||
(fold_mergeeo_helper): Likewise.
|
||
(rs6000_builtin_valid_without_lhs): Likewise.
|
||
(rs6000_builtin_is_supported): Likewise.
|
||
(rs6000_gimple_fold_mma_builtin): Likewise.
|
||
(rs6000_gimple_fold_builtin): Likewise.
|
||
(rs6000_expand_ldst_mask): Likewise.
|
||
(cpu_expand_builtin): Likewise.
|
||
(elemrev_icode): Likewise.
|
||
(ldv_expand_builtin): Likewise.
|
||
(lxvrse_expand_builtin): Likewise.
|
||
(lxvrze_expand_builtin): Likewise.
|
||
(stv_expand_builtin): Likewise.
|
||
(mma_expand_builtin): Likewise.
|
||
(htm_spr_num): Likewise.
|
||
(htm_expand_builtin): Likewise.
|
||
(rs6000_expand_builtin): Likewise.
|
||
(rs6000_vector_type): Likewise.
|
||
(rs6000_init_builtins): Likewise. Remove initialization of
|
||
builtin_mode_to_type entries.
|
||
(rs6000_builtin_decl): Move to rs6000-builtin.cc.
|
||
* config/rs6000/rs6000.cc (rs6000_builtin_mask_for_load): New
|
||
external declaration.
|
||
(rs6000_builtin_md_vectorized_function): Likewise.
|
||
(rs6000_builtin_reciprocal): Likewise.
|
||
(altivec_builtin_mask_for_load): Move to rs6000-builtin.cc.
|
||
(rs6000_builtin_types): Likewise.
|
||
(builtin_mode_to_type): Remove.
|
||
(rs6000_builtin_mask_for_load): Move to rs6000-builtin.cc. Remove
|
||
static qualifier.
|
||
(rs6000_builtin_md_vectorized_function): Likewise.
|
||
(rs6000_builtin_reciprocal): Likewise.
|
||
* config/rs6000/rs6000.h (builtin_mode_to_type): Remove.
|
||
* config/rs6000/t-rs6000 (rs6000-builtin.o): New target.
|
||
|
||
2022-02-03 Richard Biener <rguenther@suse.de>
|
||
|
||
PR debug/104337
|
||
* tree-nrv.cc (pass_nrv::execute): Remove tieing result and found
|
||
together via DECL_ABSTRACT_ORIGIN.
|
||
|
||
2022-02-03 Bill Schmidt <wschmidt@linux.ibm.com>
|
||
|
||
* config/rs6000/rs6000-call.cc (rs6000_expand_builtin): Revise error
|
||
message for RES_BITS case.
|
||
|
||
2022-02-03 Aldy Hernandez <aldyh@redhat.com>
|
||
|
||
* gimple-range-fold.cc (fur_list::fur_list): Set m_local[1] correctly.
|
||
|
||
2022-02-03 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
* config/arm/arm.opt (mfix-cortex-a57-aes-1742098,
|
||
mfix-cortex-a72-aes-1655431): Ensure description ends with full stop.
|
||
|
||
2022-02-03 Aldy Hernandez <aldyh@redhat.com>
|
||
|
||
* cfganal.cc (verify_marked_backedges): New.
|
||
* cfganal.h (verify_marked_backedges): New.
|
||
* gimple-range-path.cc (path_range_query::path_range_query):
|
||
Verify freshness of back edges.
|
||
* tree-ssa-loop-ch.cc (ch_base::copy_headers): Call
|
||
mark_dfs_back_edges.
|
||
* tree-ssa-threadbackward.cc (back_threader::back_threader): Move
|
||
path_range_query construction after backedges have been
|
||
updated.
|
||
|
||
2022-02-03 Richard Sandiford <richard.sandiford@arm.com>
|
||
|
||
* config/aarch64/aarch64-simd.md (movmisalign<mode>): Extend from
|
||
VALL to VALL_F16.
|
||
|
||
2022-02-03 Richard Sandiford <richard.sandiford@arm.com>
|
||
|
||
* config/aarch64/iterators.md (VALL_F16MOV): Delete.
|
||
* config/aarch64/aarch64-simd.md (mov<mode>): Use VALL_F16 instead
|
||
of VALL_F16MOV.
|
||
|
||
2022-02-03 Martin Liska <mliska@suse.cz>
|
||
|
||
* config/i386/i386-options.cc (ix86_valid_target_attribute_inner_p):
|
||
Change subject and object in the error message.
|
||
* config/s390/s390.cc (s390_valid_target_attribute_inner_p):
|
||
Likewise.
|
||
|
||
2022-02-03 Martin Liska <mliska@suse.cz>
|
||
|
||
* config/s390/s390.cc (s390_valid_target_attribute_inner_p):
|
||
Use the error message for i386 target.
|
||
|
||
2022-02-03 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR tree-optimization/104334
|
||
* range-op.cc (range_operator::wi_fold_in_parts): Change lh_range
|
||
and rh_range type to widest_int and subtract in widest_int. Remove
|
||
ov_rh, ov_lh and sign vars, always perform comparisons as signed
|
||
and use >, < and == operators for it.
|
||
|
||
2022-02-03 Martin Sebor <msebor@redhat.com>
|
||
|
||
* common.opt (-Wuse-after-free): Correct typos.
|
||
|
||
2022-02-02 David Malcolm <dmalcolm@redhat.com>
|
||
|
||
PR analyzer/104270
|
||
* doc/invoke.texi (-ftrivial-auto-var-init=): Add reference to
|
||
-Wanalyzer-use-of-uninitialized-value to paragraph documenting that
|
||
-ftrivial-auto-var-init= doesn't suppress warnings.
|
||
|
||
2022-02-02 Martin Liska <mliska@suse.cz>
|
||
|
||
* dwarf2out.cc (TEXT_SECTION_NAME): Remove unused macro.
|
||
|
||
2022-02-02 Bernd Kuhls <bernd.kuhls@t-online.de>
|
||
|
||
PR target/94372
|
||
* config/or1k/linux.h (CPP_SPEC): Define.
|
||
|
||
2022-02-02 Tamar Christina <tamar.christina@arm.com>
|
||
|
||
PR tree-optimization/102819
|
||
PR tree-optimization/103169
|
||
* config/arm/vec-common.md (cml<fcmac1><conj_op><mode>4): Use
|
||
canonical order.
|
||
|
||
2022-02-02 Tamar Christina <tamar.christina@arm.com>
|
||
|
||
PR tree-optimization/102819
|
||
PR tree-optimization/103169
|
||
* config/aarch64/aarch64-simd.md (cml<fcmac1><conj_op><mode>4): Use
|
||
canonical order.
|
||
* config/aarch64/aarch64-sve.md (cml<fcmac1><conj_op><mode>4): Likewise.
|
||
|
||
2022-02-02 Tamar Christina <tamar.christina@arm.com>
|
||
|
||
PR tree-optimization/102819
|
||
PR tree-optimization/103169
|
||
* doc/md.texi: Update docs for cfms, cfma.
|
||
* tree-data-ref.h (same_data_refs): Accept optional offset.
|
||
* tree-vect-slp-patterns.cc (is_linear_load_p): Fix issue with repeating
|
||
patterns.
|
||
(vect_normalize_conj_loc): Remove.
|
||
(is_eq_or_top): Change to take two nodes.
|
||
(enum _conj_status, compatible_complex_nodes_p,
|
||
vect_validate_multiplication): New.
|
||
(class complex_add_pattern, complex_add_pattern::matches,
|
||
complex_add_pattern::recognize, class complex_mul_pattern,
|
||
complex_mul_pattern::recognize, class complex_fms_pattern,
|
||
complex_fms_pattern::recognize, class complex_operations_pattern,
|
||
complex_operations_pattern::recognize, addsub_pattern::recognize): Pass
|
||
new cache.
|
||
(complex_fms_pattern::matches, complex_mul_pattern::matches): Pass new
|
||
cache and use new validation code.
|
||
* tree-vect-slp.cc (vect_match_slp_patterns_2, vect_match_slp_patterns,
|
||
vect_analyze_slp): Pass along cache.
|
||
(compatible_calls_p): Expose.
|
||
* tree-vectorizer.h (compatible_calls_p, slp_node_hash,
|
||
slp_compat_nodes_map_t): New.
|
||
(class vect_pattern): Update signatures include new cache.
|
||
|
||
2022-02-02 Hans-Peter Nilsson <hp@axis.com>
|
||
|
||
* config/cris/cris.cc (cris_preferred_reload_class): Reject
|
||
"eliminated" registers and small-enough constants unless
|
||
reloaded into a class that is a subset of GENERAL_REGS.
|
||
* config/cris/cris.md (attribute "cpu_variant"): New.
|
||
(attribute "enabled"): Conditionalize on a matching attribute
|
||
cpu_variant, if specified.
|
||
("*movsi_internal<setcc><setnz><setnzvc>"): For moves to and from
|
||
memory, add cpu-variant-enabled variants for "r" alternatives on
|
||
the far side of the "x" alternatives, preferring the "x" ones
|
||
only for variants where MOF is present (in addition to SRP).
|
||
|
||
2022-02-02 Hans-Peter Nilsson <hp@axis.com>
|
||
|
||
* config/cris/cris.cc (cris_register_move_cost): Remove special pre-ira
|
||
extra cost for ALL_REGS.
|
||
|
||
2022-02-02 Hans-Peter Nilsson <hp@axis.com>
|
||
|
||
* config/cris/constraints.md (define_register_constraint "b"): Now
|
||
GENERAL_REGS.
|
||
* config/cris/cris.md (CRIS_ACR_REGNUM): Remove.
|
||
* config/cris/cris.h: (reg_class, REG_CLASS_NAMES)
|
||
(REG_CLASS_CONTENTS): Remove ACR_REGS, SPEC_ACR_REGS, GENNONACR_REGS,
|
||
and SPEC_GENNONACR_REGS.
|
||
* config/cris/cris.cc (cris_preferred_reload_class): Don't mention
|
||
ACR_REGS and return GENERAL_REGS instead of GENNONACR_REGS.
|
||
|
||
2022-02-02 Hans-Peter Nilsson <hp@axis.com>
|
||
|
||
* config/cris/cris.md ("*movsi_internal<setcc><setnz><setnzvc>"):
|
||
Conditionalize on (sub-)register operands or operand 1 being 0.
|
||
|
||
2022-02-02 Hans-Peter Nilsson <hp@axis.com>
|
||
|
||
* config/cris/cris.h (TARGET_DEFAULT): Don't include MASK_MUL_BUG.
|
||
(MUL_BUG_ASM_DEFAULT): New macro.
|
||
(MAYBE_AS_NO_MUL_BUG_ABORT): Define in terms of MUL_BUG_ASM_DEFAULT.
|
||
* doc/invoke.texi (CRIS Options, -mmul-bug-workaround): Adjust
|
||
accordingly.
|
||
|
||
2022-02-01 Eugene Rozenfeld <erozen@microsoft.com>
|
||
|
||
* opts.cc (common_handle_option): Don't set param_early_inliner_max_iterations
|
||
to 10 for AutoFDO.
|
||
|
||
2022-02-01 Eugene Rozenfeld <erozen@microsoft.com>
|
||
|
||
* auto-profile.cc (auto_profile): Hard-code the number of iterations (10).
|
||
|
||
2022-02-01 Andrew Pinski <apinski@marvell.com>
|
||
|
||
* doc/install.texi:
|
||
|
||
2022-02-01 Ilya Leoshkevich <iii@linux.ibm.com>
|
||
|
||
* config/s390/s390.cc (s390_code_end): Do not switch back to
|
||
code section.
|
||
|
||
2022-02-01 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR target/104323
|
||
* config/rs6000/t-rs6000 (EXTRA_GTYPE_DEPS): Append rs6000-builtins.h
|
||
rather than $(srcdir)/config/rs6000/rs6000-builtins.def.
|
||
* config/rs6000/rs6000-gen-builtins.cc (write_decls): Don't use
|
||
GTY((user)) for struct bifdata and struct ovlddata. Instead add
|
||
GTY((skip(""))) to members with pointer and enum types that don't need
|
||
to be tracked. Add GTY(()) to rs6000_builtin_info and rs6000_instance_info
|
||
declarations. Don't emit gt_ggc_mx and gt_pch_nx declarations.
|
||
(write_extern_fntype, write_fntype): Remove.
|
||
(write_fntype_init): Emit the fntype vars as automatic vars instead
|
||
of file scope ones.
|
||
(write_header_file): Don't iterate with write_extern_fntype.
|
||
(write_init_file): Don't iterate with write_fntype. Don't emit
|
||
gt_ggc_mx and gt_pch_nx definitions.
|
||
|
||
2022-02-01 Jason Merrill <jason@redhat.com>
|
||
|
||
* tree.h (struct tree_vec_map_cache_hasher): Move from...
|
||
* tree.cc (struct tree_vec_map_cache_hasher): ...here.
|
||
|
||
2022-02-01 Tom de Vries <tdevries@suse.de>
|
||
|
||
* config/nvptx/nvptx.cc (nvptx_single): Use nvptx_uniform_warp_check.
|
||
* config/nvptx/nvptx.md (define_c_enum "unspecv"): Add
|
||
UNSPECV_UNIFORM_WARP_CHECK.
|
||
(define_insn "nvptx_uniform_warp_check"): New define_insn.
|
||
|
||
2022-02-01 Tom de Vries <tdevries@suse.de>
|
||
|
||
* config/nvptx/nvptx.cc (nvptx_single): Use nvptx_warpsync.
|
||
* config/nvptx/nvptx.md (define_c_enum "unspecv"): Add
|
||
UNSPECV_WARPSYNC.
|
||
(define_insn "nvptx_warpsync"): New define_insn.
|
||
|
||
2022-02-01 Tom de Vries <tdevries@suse.de>
|
||
|
||
* config/nvptx/nvptx.opt (mptx): Set to PTX_VERSION_6_3 by default.
|
||
|
||
2022-02-01 Tom de Vries <tdevries@suse.de>
|
||
|
||
* config/nvptx/nvptx-opts.h (enum ptx_version): Add PTX_VERSION_6_0.
|
||
* config/nvptx/nvptx.h (TARGET_PTX_6_0): New macro.
|
||
* config/nvptx/nvptx.md (define_insn "nvptx_barsync"): Use barrier
|
||
insn for TARGET_PTX_6_0.
|
||
|
||
2022-02-01 Tom de Vries <tdevries@suse.de>
|
||
|
||
PR target/100428
|
||
* config/nvptx/nvptx.cc (prevent_branch_around_nothing): Handle nop
|
||
insn.
|
||
|
||
2022-02-01 Tom de Vries <tdevries@suse.de>
|
||
|
||
* config/nvptx/nvptx.md (define_insn "atomic_compare_and_swap<mode>_1")
|
||
(define_insn "atomic_exchange<mode>")
|
||
(define_insn "atomic_fetch_add<mode>")
|
||
(define_insn "atomic_fetch_addsf")
|
||
(define_insn "atomic_fetch_<logic><mode>"): Output non-atomic version
|
||
if memory operands is frame-relative.
|
||
|
||
2022-02-01 Tom de Vries <tdevries@suse.de>
|
||
|
||
* config/nvptx/nvptx.cc (enum nvptx_builtins): Add
|
||
NVPTX_BUILTIN_MEMBAR_GL and NVPTX_BUILTIN_MEMBAR_CTA.
|
||
(VOID): New macro.
|
||
(nvptx_init_builtins): Add MEMBAR_GL and MEMBAR_CTA.
|
||
(nvptx_expand_builtin): Handle NVPTX_BUILTIN_MEMBAR_GL and
|
||
NVPTX_BUILTIN_MEMBAR_CTA.
|
||
(nvptx_lockfull_update): Add level parameter. Emit barriers.
|
||
(nvptx_reduction_update, nvptx_goacc_reduction_fini): Update call to
|
||
nvptx_lockfull_update.
|
||
* config/nvptx/nvptx.md (define_c_enum "unspecv"): Add
|
||
UNSPECV_MEMBAR_GL.
|
||
(define_expand "nvptx_membar_gl"): New expand.
|
||
(define_insn "*nvptx_membar_gl"): New insn.
|
||
|
||
2022-02-01 Martin Liska <mliska@suse.cz>
|
||
|
||
* doc/install.texi: Remove option for GCC < 4.8.
|
||
|
||
2022-02-01 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR middle-end/104307
|
||
* tree-vect-generic.cc (expand_vector_comparison): Don't push debug
|
||
stmts to uses vector, just set vec_cond_expr_only to false for
|
||
non-VEC_COND_EXPRs instead of pushing them into uses. Treat
|
||
VEC_COND_EXPRs that use lhs not just in rhs1, but rhs2 or rhs3 too
|
||
like non-VEC_COND_EXPRs.
|
||
|
||
2022-02-01 Bill Schmidt <wschmidt@linux.ibm.com>
|
||
|
||
* config/rs6000/rs6000-overload.def (VEC_ABSD): Remove #ifdef token.
|
||
(VEC_BLENDV): Likewise.
|
||
(VEC_BPERM): Likewise.
|
||
(VEC_CFUGE): Likewise.
|
||
(VEC_CIPHER_BE): Likewise.
|
||
(VEC_CIPHERLAST_BE): Likewise.
|
||
(VEC_CLRL): Likewise.
|
||
(VEC_CLRR): Likewise.
|
||
(VEC_CMPNEZ): Likewise.
|
||
(VEC_CNTLZ): Likewise.
|
||
(VEC_CNTLZM): Likewise.
|
||
(VEC_CNTTZM): Likewise.
|
||
(VEC_CNTLZ_LSBB): Likewise.
|
||
(VEC_CNTM): Likewise.
|
||
(VEC_CNTTZ): Likewise.
|
||
(VEC_CNTTZ_LSBB): Likewise.
|
||
(VEC_CONVERT_4F32_8F16): Likewise.
|
||
(VEC_DIV): Likewise.
|
||
(VEC_DIVE): Likewise.
|
||
(VEC_EQV): Likewise.
|
||
(VEC_EXPANDM): Likewise.
|
||
(VEC_EXTRACT_FP_FROM_SHORTH): Likewise.
|
||
(VEC_EXTRACT_FP_FROM_SHORTL): Likewise.
|
||
(VEC_EXTRACTH): Likewise.
|
||
(VEC_EXTRACTL): Likewise.
|
||
(VEC_EXTRACTM): Likewise.
|
||
(VEC_EXTRACT4B): Likewise.
|
||
(VEC_EXTULX): Likewise.
|
||
(VEC_EXTURX): Likewise.
|
||
(VEC_FIRSTMATCHINDEX): Likewise.
|
||
(VEC_FIRSTMACHOREOSINDEX): Likewise.
|
||
(VEC_FIRSTMISMATCHINDEX): Likewise.
|
||
(VEC_FIRSTMISMATCHOREOSINDEX): Likewise.
|
||
(VEC_GB): Likewise.
|
||
(VEC_GENBM): Likewise.
|
||
(VEC_GENHM): Likewise.
|
||
(VEC_GENWM): Likewise.
|
||
(VEC_GENDM): Likewise.
|
||
(VEC_GENQM): Likewise.
|
||
(VEC_GENPCVM): Likewise.
|
||
(VEC_GNB): Likewise.
|
||
(VEC_INSERTH): Likewise.
|
||
(VEC_INSERTL): Likewise.
|
||
(VEC_INSERT4B): Likewise.
|
||
(VEC_LXVL): Likewise.
|
||
(VEC_MERGEE): Likewise.
|
||
(VEC_MERGEO): Likewise.
|
||
(VEC_MOD): Likewise.
|
||
(VEC_MSUB): Likewise.
|
||
(VEC_MULH): Likewise.
|
||
(VEC_NAND): Likewise.
|
||
(VEC_NCIPHER_BE): Likewise.
|
||
(VEC_NCIPHERLAST_BE): Likewise.
|
||
(VEC_NEARBYINT): Likewise.
|
||
(VEC_NMADD): Likewise.
|
||
(VEC_ORC): Likewise.
|
||
(VEC_PDEP): Likewise.
|
||
(VEC_PERMX): Likewise.
|
||
(VEC_PEXT): Likewise.
|
||
(VEC_POPCNT): Likewise.
|
||
(VEC_PARITY_LSBB): Likewise.
|
||
(VEC_REPLACE_ELT): Likewise.
|
||
(VEC_REPLACE_UN): Likewise.
|
||
(VEC_REVB): Likewise.
|
||
(VEC_RINT): Likewise.
|
||
(VEC_RLMI): Likewise.
|
||
(VEC_RLNM): Likewise.
|
||
(VEC_SBOX_BE): Likewise.
|
||
(VEC_SIGNEXTI): Likewise.
|
||
(VEC_SIGNEXTLL): Likewise.
|
||
(VEC_SIGNEXTQ): Likewise.
|
||
(VEC_SLDB): Likewise.
|
||
(VEC_SLV): Likewise.
|
||
(VEC_SPLATI): Likewise.
|
||
(VEC_SPLATID): Likewise.
|
||
(VEC_SPLATI_INS): Likewise.
|
||
(VEC_SQRT): Likewise.
|
||
(VEC_SRDB): Likewise.
|
||
(VEC_SRV): Likewise.
|
||
(VEC_STRIL): Likewise.
|
||
(VEC_STRIL_P): Likewise.
|
||
(VEC_STRIR): Likewise.
|
||
(VEC_STRIR_P): Likewise.
|
||
(VEC_STXVL): Likewise.
|
||
(VEC_TERNARYLOGIC): Likewise.
|
||
(VEC_TEST_LSBB_ALL_ONES): Likewise.
|
||
(VEC_TEST_LSBB_ALL_ZEROS): Likewise.
|
||
(VEC_VEE): Likewise.
|
||
(VEC_VES): Likewise.
|
||
(VEC_VIE): Likewise.
|
||
(VEC_VPRTYB): Likewise.
|
||
(VEC_VSCEEQ): Likewise.
|
||
(VEC_VSCEGT): Likewise.
|
||
(VEC_VSCELT): Likewise.
|
||
(VEC_VSCEUO): Likewise.
|
||
(VEC_VSEE): Likewise.
|
||
(VEC_VSES): Likewise.
|
||
(VEC_VSIE): Likewise.
|
||
(VEC_VSTDC): Likewise.
|
||
(VEC_VSTDCN): Likewise.
|
||
(VEC_VTDC): Likewise.
|
||
(VEC_XL): Likewise.
|
||
(VEC_XL_BE): Likewise.
|
||
(VEC_XL_LEN_R): Likewise.
|
||
(VEC_XL_SEXT): Likewise.
|
||
(VEC_XL_ZEXT): Likewise.
|
||
(VEC_XST): Likewise.
|
||
(VEC_XST_BE): Likewise.
|
||
(VEC_XST_LEN_R): Likewise.
|
||
(VEC_XST_TRUNC): Likewise.
|
||
(VEC_XXPERMDI): Likewise.
|
||
(VEC_XXSLDWI): Likewise.
|
||
(VEC_TSTSFI_EQ_DD): Likewise.
|
||
(VEC_TSTSFI_EQ_TD): Likewise.
|
||
(VEC_TSTSFI_GT_DD): Likewise.
|
||
(VEC_TSTSFI_GT_TD): Likewise.
|
||
(VEC_TSTSFI_LT_DD): Likewise.
|
||
(VEC_TSTSFI_LT_TD): Likewise.
|
||
(VEC_TSTSFI_OV_DD): Likewise.
|
||
(VEC_TSTSFI_OV_TD): Likewise.
|
||
(VEC_VADDCUQ): Likewise.
|
||
(VEC_VADDECUQ): Likewise.
|
||
(VEC_VADDEUQM): Likewise.
|
||
(VEC_VADDUDM): Likewise.
|
||
(VEC_VADDUQM): Likewise.
|
||
(VEC_VBPERMQ): Likewise.
|
||
(VEC_VCLZB): Likewise.
|
||
(VEC_VCLZD): Likewise.
|
||
(VEC_VCLZH): Likewise.
|
||
(VEC_VCLZW): Likewise.
|
||
(VEC_VCTZB): Likewise.
|
||
(VEC_VCTZD): Likewise.
|
||
(VEC_VCTZH): Likewise.
|
||
(VEC_VCTZW): Likewise.
|
||
(VEC_VEEDP): Likewise.
|
||
(VEC_VEESP): Likewise.
|
||
(VEC_VESDP): Likewise.
|
||
(VEC_VESSP): Likewise.
|
||
(VEC_VIEDP): Likewise.
|
||
(VEC_VIESP): Likewise.
|
||
(VEC_VPKSDSS): Likewise.
|
||
(VEC_VPKSDUS): Likewise.
|
||
(VEC_VPKUDUM): Likewise.
|
||
(VEC_VPKUDUS): Likewise.
|
||
(VEC_VPOPCNT): Likewise.
|
||
(VEC_VPOPCNTB): Likewise.
|
||
(VEC_VPOPCNTD): Likewise.
|
||
(VEC_VPOPCNTH): Likewise.
|
||
(VEC_VPOPCNTW): Likewise.
|
||
(VEC_VPRTYBD): Likewise.
|
||
(VEC_VPRTYBQ): Likewise.
|
||
(VEC_VPRTYBW): Likewise.
|
||
(VEC_VRLD): Likewise.
|
||
(VEC_VSLD): Likewise.
|
||
(VEC_VSRAD): Likewise.
|
||
(VEC_VSRD): Likewise.
|
||
(VEC_VSTDCDP): Likewise.
|
||
(VEC_VSTDCNDP): Likewise.
|
||
(VEC_VSTDCNQP): Likewise.
|
||
(VEC_VSTDCNSP): Likewise.
|
||
(VEC_VSTDCQP): Likewise.
|
||
(VEC_VSTDCSP): Likewise.
|
||
(VEC_VSUBECUQ): Likewise.
|
||
(VEC_VSUBEUQM): Likewise.
|
||
(VEC_VSUBUDM): Likewise.
|
||
(VEC_VSUBUQM): Likewise.
|
||
(VEC_VTDCDP): Likewise.
|
||
(VEC_VTDCSP): Likewise.
|
||
(VEC_VUPKHSW): Likewise.
|
||
(VEC_VUPKLSW): Likewise.
|
||
|
||
2022-02-01 Andreas Krebbel <krebbel@linux.ibm.com>
|
||
|
||
PR rtl-optimization/101260
|
||
* regcprop.cc (maybe_mode_change): Invoke mode_change_ok also for
|
||
copy_regno.
|
||
|
||
2022-02-01 Xi Ruoyao <xry111@mengyan1223.wang>
|
||
|
||
PR middle-end/95115
|
||
* fold-const.cc (const_binop): Do not fold NaN result from
|
||
non-NaN operands.
|
||
|
||
2022-02-01 Tom de Vries <tdevries@suse.de>
|
||
|
||
* tree-loop-distribution.cc (generate_reduction_builtin_1): Check for
|
||
-ftree-loop-distribute-patterns.
|
||
(loop_distribution::execute): Don't call transform_reduction_loop for
|
||
-fno-tree-loop-distribute-patterns.
|
||
|
||
2022-01-31 Andrew Pinski <apinski@marvell.com>
|
||
|
||
* fold-const.h (operand_compare::operand_equal_p):
|
||
Fix comment about OEP_* flags.
|
||
|
||
2022-01-31 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR target/104298
|
||
* config/rs6000/aix.h (OPTION_GLIBC): Remove.
|
||
* config/rs6000/darwin.h (OPTION_GLIBC): Likewise.
|
||
* config/rs6000/option-defaults.h (OPTION_GLIBC): Define to 0
|
||
if not already defined.
|
||
|
||
2022-01-31 Martin Sebor <msebor@redhat.com>
|
||
|
||
PR middle-end/104232
|
||
* gimple-ssa-warn-access.cc (pointers_related_p): Add argument.
|
||
Handle PHIs. Add a synonymous overload.
|
||
(pass_waccess::check_pointer_uses): Call pointers_related_p.
|
||
|
||
2022-01-31 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/100499
|
||
* fold-const.cc (multiple_of_p): Pass the correct type of
|
||
the expression to the recursive invocation of multiple_of_p
|
||
for conversions and use CASE_CONVERT.
|
||
|
||
2022-01-31 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
PR target/104189
|
||
* config/sparc/linux64.h (TARGET_DEFAULT): Add MASK_V8PLUS.
|
||
|
||
2022-01-31 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/100499
|
||
* tree-cfg.cc (verify_gimple_assign_ternary): Use multiple_p
|
||
on poly-ints instead of multiple_of_p.
|
||
* tree-ssa.cc (maybe_rewrite_mem_ref_base): Likewise.
|
||
(non_rewritable_mem_ref_base): Likewise.
|
||
(non_rewritable_lvalue_p): Likewise.
|
||
(execute_update_addresses_taken): Likewise.
|
||
|
||
2022-01-29 Jakub Jelinek <jakub@redhat.com>
|
||
Andrew Pinski <apinski@marvell.com>
|
||
|
||
PR tree-optimization/104279
|
||
PR tree-optimization/104280
|
||
PR tree-optimization/104281
|
||
* match.pd (1 / X -> X == 1 for unsigned X): Build eq with
|
||
boolean_type_node and convert to type. Formatting fixes.
|
||
|
||
2022-01-28 Yoshinori Sato <yo-satoh@sios.com>
|
||
|
||
* config/sh/t-linux (MULTILIB_EXCEPTIONS): Add m1, mb/m1 and m2a.
|
||
|
||
2022-01-28 Navid Rahimi <navidrahimi@microsoft.com>
|
||
|
||
PR tree-optimization/103514
|
||
* match.pd (a & b) ^ (a == b) -> !(a | b): New optimization.
|
||
(a & b) == (a ^ b) -> !(a | b): New optimization.
|
||
|
||
2022-01-28 Marek Polacek <polacek@redhat.com>
|
||
|
||
* doc/invoke.texi: Update -Wbidi-chars documentation.
|
||
|
||
2022-01-28 Iain Sandoe <iain@sandoe.co.uk>
|
||
|
||
* config/rs6000/darwin.h (OPTION_GLIBC): Define to 0.
|
||
|
||
2022-01-28 Zhao Wei Liew <zhaoweiliew@gmail.com>
|
||
|
||
PR tree-optimization/95424
|
||
* match.pd: Simplify 1 / X where X is an integer.
|
||
|
||
2022-01-28 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR tree-optimization/104263
|
||
* gimple-ssa-store-merging.cc (get_status_for_store_merging): For
|
||
cfun->can_throw_non_call_exceptions && cfun->eh test whether
|
||
last non-debug stmt in the bb is store_valid_for_store_merging_p
|
||
rather than last stmt.
|
||
|
||
2022-01-28 Martin Liska <mliska@suse.cz>
|
||
|
||
* diagnostic.cc (diagnostic_action_after_output): Remove extra
|
||
newline.
|
||
|
||
2022-01-28 Martin Liska <mliska@suse.cz>
|
||
|
||
* config/rs6000/host-darwin.cc (segv_crash_handler):
|
||
Do not use leading capital letter.
|
||
(segv_handler): Likewise.
|
||
* ipa-sra.cc (verify_splitting_accesses): Likewise.
|
||
* varasm.cc (get_section): Likewise.
|
||
|
||
2022-01-28 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/104267
|
||
* tree-vect-stmts.cc (vectorizable_call): Properly use the
|
||
per-argument determined vector type for externals and
|
||
invariants.
|
||
|
||
2022-01-28 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/104263
|
||
* tree-cfg.cc (gimple_purge_dead_abnormal_call_edges):
|
||
Purge edges also when !cfun->has_nonlocal_label
|
||
and !cfun->calls_setjmp.
|
||
|
||
2022-01-28 Maciej W. Rozycki <macro@embecosm.com>
|
||
|
||
* config/riscv/riscv.md: Document `auipc' and `bitmanip' `type'
|
||
attributes.
|
||
|
||
2022-01-28 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR lto/104237
|
||
* cfgrtl.cc (loc_equal): New function.
|
||
(unique_locus_on_edge_between_p): Use it.
|
||
|
||
2022-01-28 Richard Biener <rguenther@suse.de>
|
||
|
||
* cfganal.h (mark_dfs_back_edges): Provide API with struct
|
||
function argument.
|
||
* cfganal.cc (mark_dfs_back_edges): Take a struct function
|
||
to work on, add a wrapper passing cfun.
|
||
* graph.cc (draw_cfg_nodes_no_loops): Replace stray cfun
|
||
uses with fun which is already passed.
|
||
(draw_cfg_edges): Likewise.
|
||
(draw_cfg_nodes_for_loop): Do not use draw_cfg_nodes_for_loop
|
||
for fun != cfun.
|
||
|
||
2022-01-27 Patrick Palka <ppalka@redhat.com>
|
||
|
||
PR c++/99895
|
||
* tree.cc (build_call_vec): Add const to second parameter.
|
||
* tree.h (build_call_vec): Likewise.
|
||
|
||
2022-01-27 Martin Liska <mliska@suse.cz>
|
||
|
||
PR web/104254
|
||
* diagnostic.cc (diagnostic_initialize):
|
||
Initialize report_bug flag.
|
||
(diagnostic_action_after_output):
|
||
Explain that -freport-bug option can be used for pre-processed
|
||
file creation. Make the message shorter.
|
||
(error_recursion): Rename Internal to internal.
|
||
* diagnostic.h (struct diagnostic_context): New field.
|
||
* opts.cc (common_handle_option): Init the field here.
|
||
|
||
2022-01-27 Kewen Lin <linkw@linux.ibm.com>
|
||
|
||
PR target/103702
|
||
* config/rs6000/rs6000.cc
|
||
(rs6000_cost_data::update_target_cost_per_stmt): Fix one wrong
|
||
assertion with early return.
|
||
|
||
2022-01-27 Chung-Lin Tang <cltang@codesourcery.com>
|
||
|
||
PR middle-end/103642
|
||
* gimplify.cc (gimplify_scan_omp_clauses): Do not do indir_p handling
|
||
for non-pointer or non-reference-to-pointer cases.
|
||
|
||
2022-01-27 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR tree-optimization/104196
|
||
* gimple-fold.h (rewrite_to_defined_overflow): Add IN_PLACE argument.
|
||
* gimple-fold.cc (rewrite_to_defined_overflow): Likewise. If true,
|
||
return NULL and emit needed stmts before and after stmt.
|
||
* tree-ssa-reassoc.cc (update_range_test): For inter-bb range opt
|
||
pick as operand_entry that will hold the merged test the one feeding
|
||
earliest condition, ensure that by swapping range->idx with some
|
||
other range's idx if needed. If seq is non-NULL, don't actually swap
|
||
it but instead rewrite stmts with undefined overflow in between
|
||
the two locations.
|
||
(maybe_optimize_range_tests): Set ops[]->id to bb->index with the
|
||
corresponding condition even if they have non-NULL ops[]->op.
|
||
Formatting fix.
|
||
|
||
2022-01-26 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR target/104239
|
||
* config/rs6000/emmintrin.h (_mm_sad_epu8): Use __asm__ instead of
|
||
asm.
|
||
* config/rs6000/smmintrin.h (_mm_minpos_epu16): Declare iterator
|
||
before for loop instead of for init clause.
|
||
* config/rs6000/bmi2intrin.h (_pext_u64): Likewise.
|
||
|
||
2022-01-26 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR target/104239
|
||
* config/rs6000/bmiintrin.h: Test _X86GPRINTRIN_H_INCLUDED instead of
|
||
_X86INTRIN_H_INCLUDED and adjust #error wording.
|
||
* config/rs6000/bmi2intrin.h: Likewise.
|
||
|
||
2022-01-26 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR debug/104194
|
||
* dwarf2out.cc (long_double_as_float128): New function.
|
||
(modified_type_die): For powerpc64le IEEE 754 quad long double
|
||
and complex long double emit those as DW_TAG_typedef to
|
||
_Float128 or complex _Float128 base type.
|
||
|
||
2022-01-26 Marek Polacek <polacek@redhat.com>
|
||
|
||
PR target/104213
|
||
* gimple-ssa-warn-access.cc (pass_waccess::warn_invalid_pointer): Don't
|
||
warn when the SSA_NAME_VAR of REF has supressed -Wuse-after-free.
|
||
|
||
2022-01-26 Martin Liska <mliska@suse.cz>
|
||
|
||
* ipa-modref-tree.cc (modref_access_node::update):
|
||
Remove "--param param=foo" with "--param foo".
|
||
(modref_access_node::insert): Likewise.
|
||
(modref_access_node::insert_kill): Likewise.
|
||
* ipa-modref-tree.h (struct modref_ref_node): Likewise.
|
||
(struct modref_base_node): Likewise.
|
||
(struct modref_tree): Likewise.
|
||
|
||
2022-01-26 Raoni Fassina Firmino <raoni@linux.ibm.com>
|
||
|
||
PR target/94193
|
||
* builtins.cc (expand_builtin_feclear_feraise_except): Add op0
|
||
predicate check.
|
||
|
||
2022-01-25 Martin Sebor <msebor@redhat.com>
|
||
|
||
PR tree-optimization/104203
|
||
* gimple-ssa-warn-access.cc (pass_data pass_data_waccess): Use
|
||
TV_WARN_ACCESS.
|
||
* pointer-query.cc (access_ref::merge_ref): Change return type.
|
||
Convert failure to a conservative success.
|
||
(access_ref::get_ref): Adjust to the change above. Short-circuit
|
||
PHI evaluation after first failure turned into conservative success.
|
||
* pointer-query.h (access_ref::merge_ref): Change return type.
|
||
* timevar.def (TV_WARN_ACCESS): New timer variable.
|
||
|
||
2022-01-25 David Edelsohn <dje.gcc@gmail.com>
|
||
|
||
* config/rs6000/aix.h (OPTION_GLIBC): Define as 0.
|
||
|
||
2022-01-25 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/104214
|
||
* tree-ssa-loop-niter.cc (number_of_iterations_cond): Use
|
||
stronger guarantees for relational pointer compares when
|
||
rewriting BASE0 + STEP0 cmp BASE1 + STEP1 as
|
||
BASE0 + STEP0 - STEP1 cmp BASE1.
|
||
|
||
2022-01-25 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR target/104172
|
||
* config/rs6000/rs6000-internal.h (rs6000_passes_ieee128): Don't
|
||
declare.
|
||
* config/rs6000/rs6000.cc (rs6000_passes_ieee128,
|
||
ieee128_mangling_gcc_8_1): Remove.
|
||
(TARGET_ASM_GLOBALIZE_DECL_NAME): Don't redefine.
|
||
(rs6000_mangle_type): Return "u9__ieee128" instead of
|
||
ieee128_mangling_gcc_8_1 ? "U10__float128" : "u9__ieee128".
|
||
(rs6000_globalize_decl_name): Remove.
|
||
* config/rs6000/rs6000-call.cc (init_cumulative_args,
|
||
rs6000_function_arg_advance_1): Don't set rs6000_passes_ieee128.
|
||
|
||
2022-01-24 Martin Sebor <msebor@redhat.com>
|
||
|
||
* pointer-query.cc (pointer_query::dump): Remove duplicate
|
||
block.
|
||
|
||
2022-01-24 Marek Polacek <polacek@redhat.com>
|
||
|
||
PR preprocessor/104030
|
||
* doc/invoke.texi: Update documentation for -Wbidi-chars.
|
||
|
||
2022-01-24 Raoni Fassina Firmino <raoni@linux.ibm.com>
|
||
|
||
PR target/94193
|
||
* builtins.cc (expand_builtin_fegetround): New function.
|
||
(expand_builtin_feclear_feraise_except): New function.
|
||
(expand_builtin): Add cases for BUILT_IN_FEGETROUND,
|
||
BUILT_IN_FECLEAREXCEPT and BUILT_IN_FERAISEEXCEPT.
|
||
* config/rs6000/rs6000.md (fegetroundsi): New pattern.
|
||
(feclearexceptsi): New Pattern.
|
||
(feraiseexceptsi): New Pattern.
|
||
* doc/extend.texi: Add a new introductory paragraph about the
|
||
new builtins.
|
||
* doc/md.texi: (fegetround@var{m}): Document new optab.
|
||
(feclearexcept@var{m}): Document new optab.
|
||
(feraiseexcept@var{m}): Document new optab.
|
||
* optabs.def (fegetround_optab): New optab.
|
||
(feclearexcept_optab): New optab.
|
||
(feraiseexcept_optab): New optab.
|
||
|
||
2022-01-24 Richard Biener <rguenther@suse.de>
|
||
Jiufu Guo <guojiufu@linux.ibm.com>
|
||
|
||
PR tree-optimization/100740
|
||
PR tree-optimization/101508
|
||
PR tree-optimization/101972
|
||
PR tree-optimization/102131
|
||
* tree-ssa-loop-niter.cc (number_of_iterations_cond): Properly
|
||
constrain BASE0 + STEP0 cmp BASE1 + STEP1 to
|
||
BASE0 + STEP0 - STEP1 cmp BASE1 transform.
|
||
|
||
2022-01-24 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR sanitizer/104158
|
||
* opt-functions.awk (var_set): Handle EnumBitSet property.
|
||
* optc-gen.awk: Don't disallow RejectNegative if EnumBitSet is
|
||
specified.
|
||
* opts.h (enum cl_enum_var_value): New type.
|
||
* opts-common.cc (decode_cmdline_option): Use CLEV_* values.
|
||
Handle CLEV_BITSET.
|
||
(cmdline_handle_error): Handle CLEV_BITSET.
|
||
* opts.cc (test_enum_sets): Also test EnumBitSet requirements.
|
||
* doc/options.texi (EnumBitSet): Document.
|
||
* common.opt (fsanitize-coverage=): Use EnumBitSet instead of
|
||
EnumSet.
|
||
(trace-pc, trace-cmp): Drop Set properties.
|
||
|
||
2022-01-24 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR sanitizer/104158
|
||
* common.opt (flag_sanitize_coverage): Remove Variable entry.
|
||
(fsanitize-coverage=): Remove RejectNegative property, add
|
||
Var(flag_sanitize_coverage) and EnumSet properties.
|
||
(trace-pc): Add Set(1) property.
|
||
(trace-cmp): Add Set(2) property.
|
||
* opts.cc (common_handle_option): Don't handle
|
||
OPT_fsanitize_coverage_.
|
||
|
||
2022-01-24 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR sanitizer/104158
|
||
* opt-functions.awk (var_set): Handle EnumSet property.
|
||
* optc-gen.awk: Don't disallow RejectNegative if EnumSet is
|
||
specified.
|
||
* opt-read.awk: Handle Set property.
|
||
* opts.h (CL_ENUM_SET_SHIFT, CL_ERR_ENUM_SET_ARG): Define.
|
||
(struct cl_decoded_option): Mention enum in value description.
|
||
Add mask member.
|
||
(set_option): Add mask argument defaulted to 0.
|
||
* opts.cc (test_enum_sets): New function.
|
||
(opts_cc_tests): Call it.
|
||
* opts-common.cc (enum_arg_to_value): Change return argument
|
||
from bool to int, on success return index into the cl_enum_arg
|
||
array, on failure -1. Add len argument, if non-0, use strncmp
|
||
instead of strcmp.
|
||
(opt_enum_arg_to_value): Adjust caller.
|
||
(decode_cmdline_option): Handle EnumSet represented as
|
||
CLVC_ENUM with non-zero var_value. Initialize decoded->mask.
|
||
(decode_cmdline_options_to_array): CLear opt_array[0].mask.
|
||
(handle_option): Pass decoded->mask to set_options last argument.
|
||
(generate_option): Clear decoded->mask.
|
||
(generate_option_input_file): Likewise.
|
||
(cmdline_handle_error): Handle CL_ERR_ENUM_SET_ARG.
|
||
(set_option): Add mask argument, use it for CLVC_ENUM.
|
||
(control_warning_option): Adjust enum_arg_to_value caller.
|
||
* doc/options.texi: Document Set and EnumSet properties.
|
||
|
||
2022-01-24 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR bootstrap/104170
|
||
* config/linux.h (OPTION_GLIBC_P, OPTION_UCLIBC_P,
|
||
OPTION_BIONIC_P, OPTION_MUSL_P): Define.
|
||
(OPTION_GLIBC, OPTION_UCLIBC, OPTION_BIONIC, OPTION_MUSL): Redefine
|
||
using OPTION_*_P macros.
|
||
* config/alpha/linux.h (OPTION_GLIBC_P, OPTION_UCLIBC_P,
|
||
OPTION_BIONIC_P, OPTION_MUSL_P): Define.
|
||
(OPTION_GLIBC, OPTION_UCLIBC, OPTION_BIONIC, OPTION_MUSL): Redefine
|
||
using OPTION_*_P macros.
|
||
* config/rs6000/linux.h (OPTION_GLIBC_P, OPTION_UCLIBC_P,
|
||
OPTION_BIONIC_P, OPTION_MUSL_P): Define.
|
||
(OPTION_GLIBC, OPTION_UCLIBC, OPTION_BIONIC, OPTION_MUSL): Redefine
|
||
using OPTION_*_P macros.
|
||
* config/rs6000/linux64.h (OPTION_GLIBC_P, OPTION_UCLIBC_P,
|
||
OPTION_BIONIC_P, OPTION_MUSL_P): Define.
|
||
(OPTION_GLIBC, OPTION_UCLIBC, OPTION_BIONIC, OPTION_MUSL): Redefine
|
||
using OPTION_*_P macros.
|
||
* config/fuchsia.h (OPTION_MUSL_P): Redefine.
|
||
* config/glibc-stdint.h (OPTION_MUSL_P): Define if not defined.
|
||
* common/config/s390/s390-common.cc (s390_supports_split_stack): Re-add
|
||
ATTRIBUTE_UNUSED to opts parameter. If OPTION_GLIBC_P is defined, use
|
||
OPTION_GLIBC_P (opts) as condition, otherwise assume if (false).
|
||
* common/config/i386/i386-common.cc (ix86_supports_split_stack): If
|
||
OPTION_GLIBC_P is defined use !OPTION_GLIBC_P (opts) as condition,
|
||
otherwise assume if (true).
|
||
|
||
2022-01-24 Kito Cheng <kito.cheng@sifive.com>
|
||
|
||
* common/config/riscv/riscv-common.cc (riscv_subset_list::to_string):
|
||
Skip zicsr and zifencei if I-ext is 2.0.
|
||
|
||
2022-01-24 Jia-Wei Chen <jiawei@iscas.ac.cn>
|
||
|
||
* config.gcc: Modify default isa_spec version.
|
||
|
||
2022-01-24 Jiufu Guo <guojiufu@linux.ibm.com>
|
||
|
||
PR tree-optimization/102087
|
||
* tree-ssa-loop-niter.cc (number_of_iterations_until_wrap):
|
||
Correct PLUS result type.
|
||
|
||
2022-01-24 H.J. Lu <hjl.tools@gmail.com>
|
||
|
||
PR target/104188
|
||
* config/i386/predicates.md (bcst_mem_operand): Also check mode
|
||
of memory broadcast.
|
||
|
||
2022-01-23 Andrew Pinski <apinski@marvell.com>
|
||
|
||
PR target/64821
|
||
* config/aarch64/aarch64-builtins.cc
|
||
(aarch64_general_gimple_fold_builtin): Handle
|
||
__builtin_aarch64_sqrt* and simplify into SQRT internal
|
||
function.
|
||
|
||
2022-01-22 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR other/104176
|
||
* opts-global.cc (handle_common_deferred_options): Quote
|
||
--enable-plugin in diagnostics to avoid -Werror=format-diag.
|
||
|
||
2022-01-21 Michael Meissner <meissner@the-meissners.org>
|
||
|
||
PR target/104136
|
||
* config/rs6000/rs6000-protos.h (prefixed_xxsplti_p): Delete.
|
||
* config/rs6000/rs6000.cc (prefixed_xxsplti_p): Delete.
|
||
* config/rs6000/rs6000.md (prefixed attribute): Delete section
|
||
that sets the prefixed attribute for xxspltiw, xxspltidp, and
|
||
xxsplti32dx instructions.
|
||
(movsf_hardfloat): Explicitly set the prefixed attribute
|
||
when xxspltiw and xxspltidp instructions are generated.
|
||
(mov<mode>_hardfloat32): Likewise.
|
||
(mov<mode>_hardfloat64): Likewise.
|
||
* config/rs6000/vsx.md (vsx_mov<mode>_64bit): Explicitly set the
|
||
prefixed attribute for xxspltiw and xxspltidp instructions.
|
||
(vsx_mov<mode>_32bit): Likewise.
|
||
|
||
2022-01-21 H.J. Lu <hjl.tools@gmail.com>
|
||
|
||
PR bootstrap/104170
|
||
* common/config/i386/i386-common.cc (ix86_supports_split_stack):
|
||
Return true only on glibc.
|
||
* config/i386/gnu-user-common.h (STACK_CHECK_STATIC_BUILTIN):
|
||
Revert commit c163647ffbc.
|
||
* config/i386/gnu.h (TARGET_LIBC_PROVIDES_SSP): Likewise.
|
||
|
||
2022-01-21 Sören Tempel <soeren@soeren-tempel.net>
|
||
|
||
* common/config/s390/s390-common.cc (s390_supports_split_stack):
|
||
Only support split-stack on glibc targets.
|
||
* config/i386/gnu-user-common.h (STACK_CHECK_STATIC_BUILTIN): Ditto.
|
||
* config/i386/gnu.h (defined): Ditto.
|
||
|
||
2022-01-21 Bill Schmidt <wschmidt@linux.ibm.com>
|
||
|
||
* config/rs6000/rs6000-overload.def (VEC_SLDW): Add instances for
|
||
vector float and vector double.
|
||
|
||
2022-01-21 Bill Seurer <seurer@gcc.gnu.org>
|
||
|
||
* config/rs6000/rs6000.cc (rs6000_get_function_versions_dispatcher):
|
||
Fix mention of ifunc in string.
|
||
|
||
2022-01-21 Roger Sayle <roger@nextmovesoftware.com>
|
||
|
||
PR middle-end/104140
|
||
* tree-ssa-math-opts.cc (convert_mult_to_highpart): Check that the
|
||
operands of the widening multiplication are either both signed or
|
||
both unsigned, and abort the conversion if mismatched.
|
||
* doc/generic.texi (WIDEN_MULT_EXPR): Describe expression node.
|
||
(MULT_HIGHPART_EXPR): Clarify that operands must have the same
|
||
signedness.
|
||
* tree.def (MULT_HIGHPART_EXPR): Document both operands must have
|
||
integer types with the same precision and signedness.
|
||
(WIDEN_MULT_EXPR): Document that operands must have integer types
|
||
with the same precision, but possibly differing signedness.
|
||
* config/riscv/riscv-c.cc (riscv_cpu_cpp_builtins): Defend against
|
||
riscv_current_subset_list returning a NULL pointer (empty list).
|
||
|
||
2022-01-21 Vladimir N. Makarov <vmakarov@redhat.com>
|
||
|
||
PR target/103676
|
||
* ira.h (struct target_ira): Add member
|
||
x_ira_exclude_class_mode_regs.
|
||
(ira_exclude_class_mode_regs): New macro.
|
||
* lra.h (lra_create_new_reg): Add arg exclude_start_hard_regs and
|
||
move from here ...
|
||
* lra-int.h: ... to here.
|
||
(lra_create_new_reg_with_unique_value): Add arg
|
||
exclude_start_hard_regs.
|
||
(class lra_reg): Add member exclude_start_hard_regs.
|
||
* lra-assigns.cc (find_hard_regno_for_1): Setup
|
||
impossible_start_hard_regs from exclude_start_hard_regs.
|
||
* lra-constraints.cc (get_reload_reg): Add arg exclude_start_hard_regs and pass
|
||
it lra_create_new_reg[_with_unique_value].
|
||
(match_reload): Ditto.
|
||
(check_and_process_move): Pass NULL
|
||
exclude_start_hard_regs to lra_create_new_reg_with_unique_value.
|
||
(goal_alt_exclude_start_hard_regs): New static variable.
|
||
(process_addr_reg, simplify_operand_subreg): Pass NULL
|
||
exclude_start_hard_regs to lra_create_new_reg_with_unique_value
|
||
and get_reload_reg.
|
||
(process_alt_operands): Setup goal_alt_exclude_start_hard_regs.
|
||
Use this_alternative_exclude_start_hard_regs additionally to find
|
||
winning operand alternative.
|
||
(base_to_reg, base_plus_disp_to_reg, index_part_to_reg): Pass NULL
|
||
exclude_start_hard_regs to lra_create_new_reg.
|
||
(process_address_1, emit_inc): Ditto.
|
||
(curr_insn_transform): Pass exclude_start_hard_regs value to
|
||
lra_create_new_reg, get_reload_reg, match_reload.
|
||
(inherit_reload_reg, split_reg): Pass NULL exclude_start_hard_regs
|
||
to lra_create_new_reg.
|
||
(process_invariant_for_inheritance): Ditto.
|
||
* lra-remat.cc (update_scratch_ops): Ditto.
|
||
* lra.cc (lra_create_new_reg_with_unique_value): Add arg
|
||
exclude_start_hard_regs. Setup the corresponding member of
|
||
lra reg info.
|
||
(lra_create_new_reg): Add arg exclude_start_hard_regs and pass it
|
||
to lra_create_new_reg_with_unique_value.
|
||
(initialize_lra_reg_info_element): Initialize member
|
||
exclude_start_hard_regs.
|
||
(get_scratch_reg): Pass NULL to lra_create_new_reg.
|
||
* ira.cc (setup_prohibited_class_mode_regs): Rename to
|
||
setup_prohibited_and_exclude_class_mode_regs and calculate
|
||
ira_exclude_class_mode_regs.
|
||
|
||
2022-01-21 Martin Liska <mliska@suse.cz>
|
||
|
||
* configure.ac: Detect ld_is_mold and use it for
|
||
comdat_group=yes and gcc_cv_ld_hidden=yes.
|
||
* configure: Regenerate.
|
||
|
||
2022-01-21 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/100089
|
||
* tree-vect-slp.cc (vect_slp_region): Reject BB vectorization
|
||
of if-converted loops with unvectorized COND_EXPRs for
|
||
all but the unlimited cost models.
|
||
|
||
2022-01-21 Ard Biesheuvel <ardb@kernel.org>
|
||
|
||
* config/arm/arm-opts.h (enum stack_protector_guard): New.
|
||
* config/arm/arm-protos.h (arm_stack_protect_tls_canary_mem):
|
||
New.
|
||
* config/arm/arm.cc (TARGET_STACK_PROTECT_GUARD): Define.
|
||
(arm_option_override_internal): Handle and put in error checks.
|
||
for stack protector guard options.
|
||
(arm_option_reconfigure_globals): Likewise.
|
||
(arm_stack_protect_tls_canary_mem): New.
|
||
(arm_stack_protect_guard): New.
|
||
* config/arm/arm.md (stack_protect_set): New.
|
||
(stack_protect_set_tls): Likewise.
|
||
(stack_protect_test): Likewise.
|
||
(stack_protect_test_tls): Likewise.
|
||
(reload_tp_hard): Likewise.
|
||
* config/arm/arm.opt (-mstack-protector-guard): New
|
||
(-mstack-protector-guard-offset): New.
|
||
* doc/invoke.texi: Document new options.
|
||
|
||
2022-01-21 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/104156
|
||
* tree-ssa-loop-unswitch.cc (tree_unswitch_outer_loop):
|
||
Collect and reset debug stmts with out-of-loop uses when
|
||
hoisting guards.
|
||
(find_loop_guard): Adjust.
|
||
(empty_bb_without_guard_p): Likewise. Ignore debug stmts.
|
||
(used_outside_loop_p): Push debug uses to a vector of
|
||
debug stmts to reset.
|
||
(hoist_guard): Adjust -fopt-info category.
|
||
|
||
2022-01-21 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/104152
|
||
* tree-vect-slp.cc (vect_build_slp_tree_2): Add missing
|
||
can_duplicate_and_interleave_p check.
|
||
|
||
2022-01-21 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
* gimple-ssa-warn-access.cc (pass_waccess::warn_invalid_pointer):
|
||
Avoid passing var to warning_at when the format string doesn't
|
||
refer to it.
|
||
|
||
2022-01-21 Aldy Hernandez <aldyh@redhat.com>
|
||
|
||
PR tree-optimization/103721
|
||
* gimple-range-path.cc
|
||
(path_range_query::relations_may_be_invalidated): New.
|
||
(path_range_query::compute_ranges_in_block): Reset relations if
|
||
they may be invalidated.
|
||
(path_range_query::maybe_register_phi_relation): Exit if relations
|
||
may be invalidated on incoming edge.
|
||
(path_range_query::compute_phi_relations): Pass incoming PHI edge
|
||
to maybe_register_phi_relation.
|
||
* gimple-range-path.h (relations_may_be_invalidated): New.
|
||
(maybe_register_phi_relation): Pass edge instead of tree.
|
||
* tree-ssa-threadbackward.cc (back_threader::back_threader):
|
||
Mark DFS edges.
|
||
* value-relation.cc (path_oracle::path_oracle): Call
|
||
mark_dfs_back_edges.
|
||
(path_oracle::register_relation): Add SSA names to m_registered
|
||
bitmap.
|
||
(path_oracle::reset_path): Clear m_registered bitmap.
|
||
* value-relation.h (path_oracle::set_root_oracle): New.
|
||
|
||
2022-01-21 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR rtl-optimization/102478
|
||
* optabs.cc (prepare_cmp_insn): If !can_create_pseudo_p (), don't
|
||
force_reg constants and for -fnon-call-exceptions fail if copy_to_reg
|
||
would be needed.
|
||
|
||
2022-01-20 Richard Biener <rguenther@suse.de>
|
||
|
||
PR middle-end/100786
|
||
* gimple-fold.cc (get_symbol_constant_value): Only return
|
||
values of compatible type to the symbol.
|
||
|
||
2022-01-20 Andrew MacLeod <amacleod@redhat.com>
|
||
|
||
* value-relation.cc (relation_oracle::valid_equivs): Query and add
|
||
if valid members of a set.
|
||
(equiv_oracle::register_equiv): Call valid_equivs rather than
|
||
bitmap direct operations.
|
||
(path_oracle::register_equiv): Ditto.
|
||
* value-relation.h (relation_oracle::valid_equivs): New prototype.
|
||
|
||
2022-01-20 Richard Biener <rguenther@suse.de>
|
||
|
||
PR target/100784
|
||
* config/i386/i386.cc (ix86_gimple_fold_builtin): Check for
|
||
LHS before folding __builtin_ia32_shufpd and friends.
|
||
|
||
2022-01-20 Richard Earnshaw <rearnsha@arm.com>
|
||
|
||
* config/arm/crypto.md (aes_op_protect): Allow moves from core
|
||
registers and from memory.
|
||
(aes_op_protect_misalign_load): New pattern.
|
||
(aes_op_protect_neon_vld1v16qi): New pattern.
|
||
|
||
2022-01-20 Richard Earnshaw <rearnsha@arm.com>
|
||
|
||
* config/arm/crypto.md (crypto_<CRYPTO_AESMC:crypto_pattern>_protected):
|
||
New pattern.
|
||
(aarch32_crypto_aese_fused_protected): Likewise.
|
||
(aarch32_crypto_aesd_fused_protected): Likewise.
|
||
|
||
2022-01-20 Richard Earnshaw <rearnsha@arm.com>
|
||
|
||
* config/arm/crypto.md (crypto_<CRYPTO_AES:crypto_pattern>): Convert
|
||
to define_expand. Add mitigation for the Cortex-A AES erratum
|
||
when enabled.
|
||
(*crypto_<CRYPTO_AES:crypto_pattern>_insn): New pattern, based
|
||
on original crypto_<CRYPTO_AES:crypto_pattern> insn.
|
||
(aes_op_protect): New pattern.
|
||
* config/arm/unspecs.md (unspec): Add UNSPEC_AES_PROTECT.
|
||
|
||
2022-01-20 Richard Earnshaw <rearnsha@arm.com>
|
||
|
||
* config/arm/arm-cpus.in (quirk_aes_1742098): New quirk feature
|
||
(ALL_QUIRKS): Add it.
|
||
(cortex-a57, cortex-a72): Enable it.
|
||
(cortex-a57.cortex-a53, cortex-a72.cortex-a53): Likewise.
|
||
* config/arm/arm.opt (mfix-cortex-a57-aes-1742098): New command-line
|
||
option.
|
||
(mfix-cortex-a72-aes-1655431): New option alias.
|
||
* config/arm/arm.cc (arm_option_override): Handle default settings
|
||
for AES erratum switch.
|
||
* doc/invoke.texi (Arm Options): Document new options.
|
||
|
||
2022-01-20 Richard Earnshaw <rearnsha@arm.com>
|
||
|
||
* config/arm/crypto.md (crypto_<CYRPTO_AES:crypto_pattern>): Use
|
||
<crypto_mode> rather than hard-coding the mode.
|
||
(crypto_<CRYPTO_AESMC:crypto_pattern>): Fix white space.
|
||
(crypto_<CRYPTO_AES:crypto_pattern>): Likewise.
|
||
(*aarch32_crypto_aese_fused): Likewise.
|
||
(*aarch32_crypto_aesd_fused): Likewise.
|
||
(crypto_<CRYPTO_BINARY:crypto_pattern>): Likewise.
|
||
(crypto_<CRYPTO_TERNARY:crypto_pattern>): Likewise.
|
||
(crypto_sha1h_lb): Likewise.
|
||
(crypto_vmullp64): Likewise.
|
||
(crypto_<CRYPTO_SELECTING:crypto_pattern>): Likewise.
|
||
(crypto_<CRYPTO_SELECTING:crypto_pattern>_lb): Likewise.
|
||
|
||
2022-01-20 Richard Earnshaw <rearnsha@arm.com>
|
||
|
||
* config/arm/crypto.md (crypto_<CRYPTO_AESMC:crypto_pattern>): Add
|
||
iterator to pattern name to disambiguate.
|
||
(crypto_<CRYPTO_AES:crypto_pattern>): Likewise.
|
||
(crypto_<CRYPTO_BINARY:crypto_pattern>): Likewise.
|
||
(crypto_<CRYPTO_TERNARY:crypto_pattern>): Likewise.
|
||
(crypto_<CRYPTO_SELECTING:crypto_pattern>): Likewise.
|
||
(crypto_<CRYPTO_SELECTING:crypto_pattern>_lb): Likewise.
|
||
|
||
2022-01-20 Martin Liska <mliska@suse.cz>
|
||
|
||
PR bootstrap/104135
|
||
* emit-rtl.cc (make_insn_raw): Fix -Wformat-diag warnings.
|
||
* rtl.cc: Partially disable -Wformat-diag for RTL checking
|
||
error messages.
|
||
|
||
2022-01-20 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR debug/103874
|
||
* dwarf2out.cc (index_rnglists): For !HAVE_AS_LEB128 and
|
||
block_num > 0, index entry even if !have_multiple_function_sections.
|
||
|
||
2022-01-20 liuhongt <hongtao.liu@intel.com>
|
||
|
||
PR target/103771
|
||
* tree-vect-stmts.cc (supportable_narrowing_operation): Enhance
|
||
integral mode mask pack by multi steps which takes
|
||
vec_pack_sbool_trunc_optab as start when elements number is
|
||
less than BITS_PER_UNITS.
|
||
|
||
2022-01-20 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/104114
|
||
* tree-vect-generic.cc (expand_vector_piecewise): Do not diagnose
|
||
single element vector decomposition.
|
||
|
||
2022-01-19 Robin Dapp <rdapp@linux.ibm.com>
|
||
|
||
* ifcvt.cc (noce_convert_multiple_sets_1): New function.
|
||
(noce_convert_multiple_sets): Call function a second time if we can
|
||
improve the first try.
|
||
|
||
2022-01-19 Robin Dapp <rdapp@linux.ibm.com>
|
||
|
||
* ifcvt.cc (cond_exec_get_condition): New parameter to allow getting the
|
||
reversed comparison.
|
||
(try_emit_cmove_seq): New function to facilitate creating a cmov
|
||
sequence.
|
||
(noce_convert_multiple_sets): Create two sequences and use the less
|
||
expensive one.
|
||
|
||
2022-01-19 Robin Dapp <rdapp@linux.ibm.com>
|
||
|
||
* rtl.h (struct rtx_comparison): New struct that holds an rtx
|
||
comparison.
|
||
* config/rs6000/rs6000.cc (rs6000_emit_minmax): Use struct instead of
|
||
single parameters.
|
||
(rs6000_emit_swsqrt): Likewise.
|
||
* expmed.cc (expand_sdiv_pow2): Likewise.
|
||
(emit_store_flag): Likewise.
|
||
* expr.cc (expand_cond_expr_using_cmove): Likewise.
|
||
(expand_expr_real_2): Likewise.
|
||
* ifcvt.cc (noce_emit_cmove): Add compare and reversed compare
|
||
parameters.
|
||
* optabs.cc (emit_conditional_move_1): New function.
|
||
(expand_doubleword_shift_condmove): Use struct.
|
||
(emit_conditional_move): Use struct and allow to call directly
|
||
without going through preparation steps.
|
||
* optabs.h (emit_conditional_move): Use struct.
|
||
|
||
2022-01-19 Robin Dapp <rdapp@linux.ibm.com>
|
||
|
||
* ifcvt.cc (bb_ok_for_noce_convert_multiple_sets): Estimate insns costs.
|
||
(noce_process_if_block): Use potential costs.
|
||
|
||
2022-01-19 Robin Dapp <rdapp@linux.ibm.com>
|
||
|
||
* ifcvt.cc (noce_convert_multiple_sets): Allow constants.
|
||
(bb_ok_for_noce_convert_multiple_sets): Likewise.
|
||
|
||
2022-01-19 Robin Dapp <rdapp@linux.ibm.com>
|
||
|
||
* ifcvt.cc (need_cmov_or_rewire): New function.
|
||
(noce_convert_multiple_sets): Call it.
|
||
|
||
2022-01-19 David Malcolm <dmalcolm@redhat.com>
|
||
|
||
* attribs.cc (attribute_c_tests): Rename to...
|
||
(attribs_cc_tests): ...this.
|
||
* bitmap.cc (bitmap_c_tests): Rename to...
|
||
(bitmap_cc_tests): ...this.
|
||
* cgraph.cc (cgraph_c_finalize): Rename to...
|
||
(cgraph_cc_finalize): ...this.
|
||
(cgraph_c_tests): Rename to...
|
||
(cgraph_cc_tests): ...this.
|
||
* cgraph.h (cgraph_c_finalize): Rename to...
|
||
(cgraph_cc_finalize): ...this.
|
||
(cgraphunit_c_finalize): Rename to...
|
||
(cgraphunit_cc_finalize): ...this.
|
||
* cgraphunit.cc (cgraphunit_c_finalize): Rename to...
|
||
(cgraphunit_cc_finalize): ...this.
|
||
* convert.cc (convert_c_tests): Rename to...
|
||
(convert_cc_tests): ...this.
|
||
* dbgcnt.cc (dbgcnt_c_tests): Rename to...
|
||
(dbgcnt_cc_tests): ...this.
|
||
* diagnostic-show-locus.cc (diagnostic_show_locus_c_tests): Rename to...
|
||
(diagnostic_show_locus_cc_tests): ...this.
|
||
* diagnostic.cc (diagnostic_c_tests): Rename to...
|
||
(diagnostic_cc_tests): ...this.
|
||
* dumpfile.cc (dumpfile_c_tests): Rename to...
|
||
(dumpfile_cc_tests): ...this.
|
||
* dwarf2out.cc (dwarf2out_c_finalize): Rename to...
|
||
(dwarf2out_cc_finalize): ...this.
|
||
* dwarf2out.h (dwarf2out_c_finalize): Rename to...
|
||
(dwarf2out_cc_finalize): ...this.
|
||
* edit-context.cc (edit_context_c_tests): Rename to...
|
||
(edit_context_cc_tests): ...this.
|
||
* et-forest.cc (et_forest_c_tests): Rename to...
|
||
(et_forest_cc_tests): ...this.
|
||
* fibonacci_heap.cc (fibonacci_heap_c_tests): Rename to...
|
||
(fibonacci_heap_cc_tests): ...this.
|
||
* fold-const.cc (fold_const_c_tests): Rename to...
|
||
(fold_const_cc_tests): ...this.
|
||
* function-tests.cc (function_tests_c_tests): Rename to...
|
||
(function_tests_cc_tests): ...this.
|
||
* gcse.cc (gcse_c_finalize): Rename to...
|
||
(gcse_cc_finalize): ...this.
|
||
* gcse.h (gcse_c_finalize): Rename to...
|
||
(gcse_cc_finalize): ...this.
|
||
* ggc-tests.cc (ggc_tests_c_tests): Rename to...
|
||
(ggc_tests_cc_tests): ...this.
|
||
* gimple-ssa-store-merging.cc (store_merging_c_tests): Rename to...
|
||
(store_merging_cc_tests): ...this.
|
||
* gimple.cc (gimple_c_tests): Rename to...
|
||
(gimple_cc_tests): ...this.
|
||
* hash-map-tests.cc (hash_map_tests_c_tests): Rename to...
|
||
(hash_map_tests_cc_tests): ...this.
|
||
* hash-set-tests.cc (hash_set_tests_c_tests): Rename to...
|
||
(hash_set_tests_cc_tests): ...this.
|
||
* input.cc (input_c_tests): Rename to...
|
||
(input_cc_tests): ...this.
|
||
* ipa-cp.cc (ipa_cp_c_finalize): Rename to...
|
||
(ipa_cp_cc_finalize): ...this.
|
||
* ipa-fnsummary.cc (ipa_fnsummary_c_finalize): Rename to...
|
||
(ipa_fnsummary_cc_finalize): ...this.
|
||
* ipa-fnsummary.h (ipa_fnsummary_c_finalize): Rename to...
|
||
(ipa_fnsummary_cc_finalize): ...this.
|
||
* ipa-modref-tree.cc (ipa_modref_tree_c_tests): Rename to...
|
||
(ipa_modref_tree_cc_tests): ...this.
|
||
* ipa-modref-tree.h (modref_c_tests): Delete bogus decl.
|
||
* ipa-modref.cc (ipa_modref_c_finalize): Rename to...
|
||
(ipa_modref_cc_finalize): ...this.
|
||
* ipa-modref.h (ipa_modref_c_finalize): Rename to...
|
||
(ipa_modref_cc_finalize): ...this.
|
||
* ipa-prop.h (ipa_cp_c_finalize): Rename to...
|
||
(ipa_cp_cc_finalize): ...this.
|
||
* ipa-reference.cc (ipa_reference_c_finalize): Rename to...
|
||
(ipa_reference_cc_finalize): ...this.
|
||
* ipa-reference.h (ipa_reference_c_finalize): Rename to...
|
||
(ipa_reference_cc_finalize): ...this.
|
||
* ira-costs.cc (ira_costs_c_finalize): Rename to...
|
||
(ira_costs_cc_finalize): ...this.
|
||
* ira.h (ira_costs_c_finalize): Rename to...
|
||
(ira_costs_cc_finalize): ...this.
|
||
* opt-suggestions.cc (opt_proposer_c_tests): Rename to...
|
||
(opt_suggestions_cc_tests): ...this.
|
||
* opts.cc (opts_c_tests): Rename to...
|
||
(opts_cc_tests): ...this.
|
||
* predict.cc (predict_c_tests): Rename to...
|
||
(predict_cc_tests): ...this.
|
||
* pretty-print.cc (pretty_print_c_tests): Rename to...
|
||
(pretty_print_cc_tests): ...this.
|
||
* read-rtl-function.cc (read_rtl_function_c_tests): Rename to...
|
||
(read_rtl_function_cc_tests): ...this.
|
||
* rtl-tests.cc (rtl_tests_c_tests): Rename to...
|
||
(rtl_tests_cc_tests): ...this.
|
||
* sbitmap.cc (sbitmap_c_tests): Rename to...
|
||
(sbitmap_cc_tests): ...this.
|
||
* selftest-run-tests.cc (selftest::run_tests): Update calls for
|
||
_c_ to _cc_ function renamings; fix names of attribs and
|
||
opt-suggestions tests.
|
||
* selftest.cc (selftest_c_tests): Rename to...
|
||
(selftest_cc_tests): ...this.
|
||
* selftest.h (attribute_c_tests): Rename to...
|
||
(attribs_cc_tests): ...this.
|
||
(bitmap_c_tests): Rename to...
|
||
(bitmap_cc_tests): ...this.
|
||
(cgraph_c_tests): Rename to...
|
||
(cgraph_cc_tests): ...this.
|
||
(convert_c_tests): Rename to...
|
||
(convert_cc_tests): ...this.
|
||
(diagnostic_c_tests): Rename to...
|
||
(diagnostic_cc_tests): ...this.
|
||
(diagnostic_show_locus_c_tests): Rename to...
|
||
(diagnostic_show_locus_cc_tests): ...this.
|
||
(dumpfile_c_tests): Rename to...
|
||
(dumpfile_cc_tests): ...this.
|
||
(edit_context_c_tests): Rename to...
|
||
(edit_context_cc_tests): ...this.
|
||
(et_forest_c_tests): Rename to...
|
||
(et_forest_cc_tests): ...this.
|
||
(fibonacci_heap_c_tests): Rename to...
|
||
(fibonacci_heap_cc_tests): ...this.
|
||
(fold_const_c_tests): Rename to...
|
||
(fold_const_cc_tests): ...this.
|
||
(function_tests_c_tests): Rename to...
|
||
(function_tests_cc_tests): ...this.
|
||
(ggc_tests_c_tests): Rename to...
|
||
(ggc_tests_cc_tests): ...this.
|
||
(gimple_c_tests): Rename to...
|
||
(gimple_cc_tests): ...this.
|
||
(hash_map_tests_c_tests): Rename to...
|
||
(hash_map_tests_cc_tests): ...this.
|
||
(hash_set_tests_c_tests): Rename to...
|
||
(hash_set_tests_cc_tests): ...this.
|
||
(input_c_tests): Rename to...
|
||
(input_cc_tests): ...this.
|
||
(opts_c_tests): Rename to...
|
||
(opts_cc_tests): ...this.
|
||
(predict_c_tests): Rename to...
|
||
(predict_cc_tests): ...this.
|
||
(pretty_print_c_tests): Rename to...
|
||
(pretty_print_cc_tests): ...this.
|
||
(read_rtl_function_c_tests): Rename to...
|
||
(read_rtl_function_cc_tests): ...this.
|
||
(rtl_tests_c_tests): Rename to...
|
||
(rtl_tests_cc_tests): ...this.
|
||
(sbitmap_c_tests): Rename to...
|
||
(sbitmap_cc_tests): ...this.
|
||
(selftest_c_tests): Rename to...
|
||
(selftest_cc_tests): ...this.
|
||
(simplify_rtx_c_tests): Rename to...
|
||
(simplify_rtx_cc_tests): ...this.
|
||
(spellcheck_c_tests): Rename to...
|
||
(spellcheck_cc_tests): ...this.
|
||
(spellcheck_tree_c_tests): Rename to...
|
||
(spellcheck_tree_cc_tests): ...this.
|
||
(sreal_c_tests): Rename to...
|
||
(sreal_cc_tests): ...this.
|
||
(store_merging_c_tests): Rename to...
|
||
(store_merging_cc_tests): ...this.
|
||
(tree_c_tests): Rename to...
|
||
(tree_cc_tests): ...this.
|
||
(tree_cfg_c_tests): Rename to...
|
||
(tree_cfg_cc_tests): ...this.
|
||
(typed_splay_tree_c_tests): Rename to...
|
||
(typed_splay_tree_cc_tests): ...this.
|
||
(vec_c_tests): Rename to...
|
||
(vec_cc_tests): ...this.
|
||
(vec_perm_indices_c_tests): Rename to...
|
||
(vec_perm_indices_cc_tests): ..this.
|
||
(opt_proposer_c_tests): Rename to...
|
||
(opt_suggestions_cc_tests): ...this.
|
||
(dbgcnt_c_tests): Rename to...
|
||
(dbgcnt_cc_tests): ...this.
|
||
(ipa_modref_tree_c_tests): Rename to...
|
||
(ipa_modref_tree_cc_tests): ...this.
|
||
* simplify-rtx.cc (simplify_rtx_c_tests): Rename to...
|
||
(simplify_rtx_cc_tests): ...this.
|
||
* spellcheck-tree.cc (spellcheck_tree_c_tests): Rename to...
|
||
(spellcheck_tree_cc_tests): ...this.
|
||
* spellcheck.cc (spellcheck_c_tests): Rename to...
|
||
(spellcheck_cc_tests): ...this.
|
||
* sreal.cc (sreal_c_tests): Rename to...
|
||
(sreal_cc_tests): ...this.
|
||
* toplev.cc (toplev::finalize): Update calls for _c_ to _cc_
|
||
function renamings.
|
||
* tree-cfg.cc (tree_cfg_c_tests): Rename to...
|
||
(tree_cfg_cc_tests): ...this.
|
||
* tree.cc (tree_c_tests): Rename to...
|
||
(tree_cc_tests): ...this.
|
||
* typed-splay-tree.cc (typed_splay_tree_c_tests): Rename to...
|
||
(typed_splay_tree_cc_tests): ...this.
|
||
* vec-perm-indices.cc (vec_perm_indices_c_tests): Rename to...
|
||
(vec_perm_indices_cc_tests): ...this.
|
||
* vec.cc (vec_c_tests): Rename to...
|
||
(vec_cc_tests): ...this.
|
||
|
||
2022-01-19 Andre Vieira <andre.simoesdiasvieira@arm.com>
|
||
|
||
PR tree-optimization/103997
|
||
* tree-vect-loop.cc (vect_analyze_loop): Fix mode skipping for epilogue
|
||
vectorization.
|
||
|
||
2022-01-19 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR middle-end/102860
|
||
* match.pd (x %[fl] y -> x % y): New simplification for
|
||
unsigned integral types.
|
||
* optabs-tree.cc (optab_for_tree_code): Return unknown_optab
|
||
for {CEIL,FLOOR,ROUND}_{DIV,MOD}_EXPR with VECTOR_TYPE.
|
||
|
||
2022-01-19 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/104112
|
||
* tree-vect-loop.cc (vect_find_reusable_accumulator): Check
|
||
for required intermediate vector types.
|
||
|
||
2022-01-19 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
* config/rs6000/rs6000.cc (rs6000_machine_from_flags): Add default:.
|
||
|
||
2022-01-19 Martin Liska <mliska@suse.cz>
|
||
|
||
* configure.ac: Remove -Wno-error=format-diag.
|
||
* configure: Regenerate.
|
||
|
||
2022-01-19 Martin Liska <mliska@suse.cz>
|
||
|
||
* config/riscv/riscv.cc (riscv_handle_type_attribute):
|
||
Update one -Wformat-diag string in warning message.
|
||
|
||
2022-01-19 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR middle-end/104103
|
||
* gimple-ssa-warn-access.cc (pass_waccess::check_call): Don't check
|
||
.ASAN_MARK calls.
|
||
|
||
2022-01-19 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR c++/89074
|
||
* fold-const.cc (address_compare): Consider different STRING_CSTs
|
||
with the same lengths that memcmp the same as equal, not different.
|
||
|
||
2022-01-19 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
* config/i386/sse.md (*aes<aeswideklvariant>u*): Use %0 instead of
|
||
{%0}.
|
||
|
||
2022-01-19 Martin Liska <mliska@suse.cz>
|
||
Thomas Schwinge <thomas@codesourcery.com>
|
||
|
||
* config/nvptx/nvptx.cc (nvptx_goacc_validate_dims_1): Update
|
||
warning messages.
|
||
|
||
2022-01-19 Sebastian Huber <sebastian.huber@embedded-brains.de>
|
||
|
||
PR target/104090
|
||
* config/rs6000/rs6000.cc (rs6000_machine_from_flags): Use also
|
||
rs6000_cpu.
|
||
|
||
2022-01-19 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR target/104104
|
||
* config/i386/sse.md
|
||
(<avx512>_<complexopname>_<mode><maskc_name><round_name>,
|
||
avx512fp16_<complexopname>sh_v8hf<mask_scalarc_name><round_scalarcz_name>,
|
||
avx512dq_mul<mode>3<mask_name>, <avx2_avx512>_permvar<mode><mask_name>,
|
||
avx2_perm<mode>_1<mask_name>, avx512f_perm<mode>_1<mask_name>,
|
||
avx512dq_rangep<mode><mask_name><round_saeonly_name>,
|
||
avx512dq_ranges<mode><mask_scalar_name><round_saeonly_scalar_name>,
|
||
<avx512>_getmant<mode><mask_name><round_saeonly_name>,
|
||
avx512f_vgetmant<mode><mask_scalar_name><round_saeonly_scalar_name>):
|
||
Use vxorps\t%x0, %x0, %x0 instead of vxorps\t{%x0, %x0, %x0}.
|
||
|
||
2022-01-19 Martin Sebor <msebor@redhat.com>
|
||
|
||
PR middle-end/104069
|
||
* gimple-ssa-warn-access.cc (pointers_related_p): Return false for
|
||
an unknown result as documented.
|
||
|
||
2022-01-18 Andrew Pinski <apinski@marvell.com>
|
||
|
||
* ipa-split.cc (visit_bb): Fix comment before the
|
||
warning/error attribute checking code.
|
||
|
||
2022-01-18 David Faust <david.faust@oracle.com>
|
||
|
||
* config/bpf/coreout.cc (bpf_core_reloc_add): Do not account
|
||
for base strtab offset yet as it may change.
|
||
(output_asm_btfext_core_reloc): Do so here instead.
|
||
(output_btfext_core_sections): Likewise.
|
||
|
||
2022-01-18 David Faust <david.faust@oracle.com>
|
||
|
||
* config/bpf/coreout.cc (output_btfext_header): Account for
|
||
4-byte record size in core_relo_len.
|
||
(output_btfext_core_sections): Only write record size once.
|
||
* config/bpf/coreout.h (btf_ext_section_header): Delete unused
|
||
member.
|
||
|
||
2022-01-18 Maciej W. Rozycki <macro@embecosm.com>
|
||
|
||
* common/config/riscv/riscv-common.cc
|
||
(riscv_subset_list::parse_multiletter_ext): Move pointer
|
||
arithmetic ahead of `free'.
|
||
|
||
2022-01-18 Jason Merrill <jason@redhat.com>
|
||
|
||
PR c++/104007
|
||
* gimplify.cc (gimple_push_cleanup): Handle eh_only in conditional
|
||
context.
|
||
|
||
2022-01-18 Sandra Loosemore <sandra@codesourcery.com>
|
||
|
||
PR middle-end/103163
|
||
* emit-rtl.cc (init_emit_regs): Initialize stack_limit_rtx here...
|
||
(init_emit_once): ...not here.
|
||
|
||
2022-01-18 Martin Liska <mliska@suse.cz>
|
||
|
||
* collect2.cc (scan_libraries): Fix -Wformat-diag issues.
|
||
* config/aarch64/aarch64-builtins.cc (aarch64_simd_expand_builtin): Likewise.
|
||
* config/arc/arc.md: Likewise.
|
||
* config/avr/avr.cc (avr_section_type_flags): Likewise.
|
||
* config/bfin/bfin.cc (bfin_option_override): Likewise.
|
||
(bfin_handle_longcall_attribute): Likewise.
|
||
* config/cris/cris.h (FUNCTION_PROFILER): Likewise.
|
||
* config/frv/frv.cc (frv_expand_builtin): Likewise.
|
||
* config/ia64/ia64-c.cc (ia64_hpux_handle_builtin_pragma): Likewise.
|
||
* config/iq2000/iq2000.cc (save_restore_insns): Likewise.
|
||
(iq2000_print_operand_address): Likewise.
|
||
(iq2000_print_operand): Likewise.
|
||
* config/m32c/m32c-pragma.cc (m32c_pragma_memregs): Likewise.
|
||
(m32c_pragma_address): Likewise.
|
||
* config/m68k/m68k.cc (m68k_handle_fndecl_attribute): Likewise.
|
||
* config/mips/mips.cc (mips_handle_interrupt_attr): Likewise.
|
||
(mips_set_compression_mode): Likewise.
|
||
* config/mmix/mmix.cc (mmix_function_profiler): Likewise.
|
||
(mmix_print_operand): Likewise.
|
||
(mmix_output_shiftvalue_op_from_str): Likewise.
|
||
(mmix_output_shifted_value): Likewise.
|
||
* config/msp430/driver-msp430.cc (msp430_select_hwmult_lib): Likewise.
|
||
* config/msp430/msp430.cc (msp430_option_override): Likewise.
|
||
(msp430_attr): Likewise.
|
||
(msp430_expand_delay_cycles): Likewise.
|
||
(msp430_expand_builtin): Likewise.
|
||
* config/rs6000/aix73.h: Likewise.
|
||
* config/rs6000/rtems.h (INVALID_64BIT): Likewise.
|
||
* config/rx/rx.cc (rx_expand_builtin_mvtc): Likewise.
|
||
(valid_psw_flag): Likewise.
|
||
* config/sh/sh.cc (parse_validate_atomic_model_option): Likewise.
|
||
* config/stormy16/stormy16.cc (xstormy16_function_profiler): Likewise.
|
||
(xstormy16_expand_builtin_va_start): Likewise.
|
||
(xstormy16_handle_below100_attribute): Likewise.
|
||
|
||
2022-01-18 Martin Liska <mliska@suse.cz>
|
||
|
||
* config/vms/vms-c.cc (vms_pragma_nostandard): Fix -Wformat-diag
|
||
warning.
|
||
(vms_pragma_standard): Likewise.
|
||
(vms_pragma_extern_prefix): Likewise.
|
||
|
||
2022-01-18 Martin Liska <mliska@suse.cz>
|
||
|
||
* config/xtensa/xtensa.cc (print_operand): Fix warnings.
|
||
(print_operand_address): Likewise.
|
||
(xtensa_multibss_section_type_flags): Likewise.
|
||
|
||
2022-01-18 Martin Liska <mliska@suse.cz>
|
||
|
||
* config/rs6000/rs6000-call.cc (rs6000_invalid_builtin): Change
|
||
wording of an error message.
|
||
|
||
2022-01-18 Martin Liska <mliska@suse.cz>
|
||
|
||
* config/v850/v850-c.cc (pop_data_area): Fix -Wformat-diag
|
||
warning.
|
||
(ghs_pragma_section): Likewise.
|
||
(ghs_pragma_interrupt): Likewise.
|
||
(ghs_pragma_starttda): Likewise.
|
||
(ghs_pragma_startsda): Likewise.
|
||
(ghs_pragma_startzda): Likewise.
|
||
(ghs_pragma_endtda): Likewise.
|
||
(ghs_pragma_endsda): Likewise.
|
||
(ghs_pragma_endzda): Likewise.
|
||
|
||
2022-01-18 Martin Liska <mliska@suse.cz>
|
||
|
||
* config/nds32/nds32-intrinsic.cc (nds32_expand_builtin_impl):
|
||
Fix warnings.
|
||
* config/nds32/nds32-intrinsic.md: Likewise.
|
||
* config/nds32/nds32-isr.cc (nds32_check_isr_attrs_conflict): Likewise.
|
||
* config/nds32/nds32.cc (nds32_print_operand): Likewise.
|
||
(nds32_insert_attributes): Likewise.
|
||
|
||
2022-01-18 Martin Liska <mliska@suse.cz>
|
||
|
||
* config/nvptx/nvptx.cc (nvptx_goacc_validate_dims_1): Wrap
|
||
keyword.
|
||
* config/nvptx/nvptx.md: Remove trailing dot.
|
||
|
||
2022-01-18 Martin Liska <mliska@suse.cz>
|
||
|
||
* common/config/riscv/riscv-common.cc (riscv_subset_list::add):
|
||
Wrap keywords with quotes and remove trailing dots.
|
||
(riscv_subset_list::parsing_subset_version): Likewise.
|
||
(riscv_subset_list::parse_std_ext): Likewise.
|
||
(riscv_subset_list::parse_multiletter_ext): Likewise.
|
||
* config/riscv/riscv.cc (riscv_handle_type_attribute): Likewise.
|
||
|
||
2022-01-18 Andre Vieira <andre.simoesdiasvieira@arm.com>
|
||
|
||
* tree-vect-loop.cc (vect_estimate_min_profitable_iters): Pass new
|
||
argument suggested_unroll_factor.
|
||
(vect_analyze_loop_costing): Likewise.
|
||
(_loop_vec_info::_loop_vec_info): Initialize new member
|
||
suggested_unroll_factor.
|
||
(vect_determine_partial_vectors_and_peeling): Make epilogue of unrolled
|
||
main loop use partial vectors.
|
||
(vect_analyze_loop_2): Pass and use new argument
|
||
suggested_unroll_factor.
|
||
(vect_analyze_loop_1): Change to intialize local
|
||
suggested_unroll_factor and use it.
|
||
(vectorizable_reduction): Don't use single_defuse_cycle when unrolling.
|
||
* tree-vectorizer.h (_loop_vec_info::_loop_vec_info): Add new member
|
||
suggested_unroll_factor.
|
||
(vector_costs::vector_costs): Add new member m_suggested_unroll_factor.
|
||
(vector_costs::suggested_unroll_factor): New getter function.
|
||
(finish_cost): Set return argument suggested_unroll_factor.
|
||
|
||
2022-01-18 Andrew MacLeod <amacleod@redhat.com>
|
||
|
||
PR tree-optimization/104038
|
||
* doc/invoke.texi (relation-block-limit): New.
|
||
* params.opt (relation-block-limit): New.
|
||
* value-relation.cc (dom_oracle::register_relation): Check for NULL
|
||
record before invoking transitive registery.
|
||
(dom_oracle::set_one_relation): Check limit before creating record.
|
||
(dom_oracle::register_transitives): Stop when no record created.
|
||
* value-relation.h (relation_chain_head::m_num_relations): New.
|
||
|
||
2022-01-18 Richard Biener <rguenther@suse.de>
|
||
|
||
PR ipa/103989
|
||
* ipa-inline.cc (inline_small_functions): Do not enqueue call
|
||
edges originating in functions compiled with -Og.
|
||
|
||
2022-01-18 Richard Biener <rguenther@suse.de>
|
||
|
||
PR ipa/103989
|
||
* passes.def (pass_all_optimizations_g): Remove pass_modref
|
||
and pass_local_pure_const.
|
||
|
||
2022-01-18 Martin Liska <mliska@suse.cz>
|
||
|
||
* config/s390/s390.cc: Fix -Wformat-diag warnings.
|
||
|
||
2022-01-18 Martin Liska <mliska@suse.cz>
|
||
|
||
* config/s390/s390-c.cc (s390_expand_overloaded_builtin): Wrap
|
||
keyword in quotes.
|
||
(s390_resolve_overloaded_builtin): Remove trailing dot.
|
||
* config/s390/s390.cc (s390_const_operand_ok): Use - for range.
|
||
(s390_expand_builtin): Remove trailing dot.
|
||
(s390_emit_prologue): Likewise, use semicolon.
|
||
(s390_option_override_internal): Update keyword.
|
||
* varasm.cc (do_assemble_alias): Wrap keyword in quotes.
|
||
|
||
2022-01-18 Martin Liska <mliska@suse.cz>
|
||
|
||
* config/rs6000/rs6000-call.cc (rs6000_expand_builtin): Wrap
|
||
keywords and use %qs instead of %<%s%>.
|
||
|
||
2022-01-18 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/103987
|
||
* tree-ssa-dse.cc (dse_optimize_call): Properly guard modref
|
||
query with a pointer check.
|
||
|
||
2022-01-18 Richard Sandiford <richard.sandiford@arm.com>
|
||
|
||
PR target/104005
|
||
* config/aarch64/aarch64.cc (aarch64_check_consecutive_mems):
|
||
When using MEM_EXPR, require the base to be a decl.
|
||
|
||
2022-01-18 Richard Biener <rguenther@suse.de>
|
||
|
||
* cgraph.h (struct cgraph_simd_clone_arg): Re-arrange fields to
|
||
avoid padding.
|
||
* function.h (struct function): Likewise.
|
||
|
||
2022-01-18 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* doc/install.texi: Update prerequisites for GNAT
|
||
|
||
2022-01-18 Andrew Pinski <apinski@marvell.com>
|
||
|
||
PR tree-optimization/101941
|
||
* ipa-split.cc (visit_bb): Disallow function calls where
|
||
the function has either error or warning attribute.
|
||
|
||
2022-01-18 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/104064
|
||
* tree-vect-data-refs.cc (vect_analyze_data_ref_accesses): Check
|
||
DR_INIT fits in a signed HWI, represent the difference from the
|
||
first DR in unsigned.
|
||
|
||
2022-01-17 Martin Liska <mliska@suse.cz>
|
||
|
||
* Makefile.in: Rename .c names to .cc.
|
||
* config.gcc: Likewise.
|
||
* configure: Regenerate. Likewise.
|
||
* configure.ac: Likewise.
|
||
* gengtype.cc (set_gc_used): Likewise.
|
||
(source_dot_c_frul): Likewise.
|
||
(source_dot_cc_frul): Likewise.
|
||
(struct file_rule_st): Likewise.
|
||
(close_output_files): Likewise.
|
||
* config/avr/t-avr: Use CXXFLAGS_* and CXX_FOR_BUILD.
|
||
|
||
2022-01-17 Martin Liska <mliska@suse.cz>
|
||
|
||
* Makefile.in: Rename .c names to .cc.
|
||
* alias.h: Likewise.
|
||
* asan.cc: Likewise.
|
||
* auto-profile.h: Likewise.
|
||
* basic-block.h (struct basic_block_d): Likewise.
|
||
* btfout.cc: Likewise.
|
||
* builtins.cc (expand_builtin_longjmp): Likewise.
|
||
(validate_arg): Likewise.
|
||
(access_ref::offset_bounded): Likewise.
|
||
* caller-save.cc (reg_restore_code): Likewise.
|
||
(setup_save_areas): Likewise.
|
||
* calls.cc (initialize_argument_information): Likewise.
|
||
(expand_call): Likewise.
|
||
(emit_library_call_value_1): Likewise.
|
||
* cfg-flags.def (RTL): Likewise.
|
||
(SIBCALL): Likewise.
|
||
(CAN_FALLTHRU): Likewise.
|
||
* cfganal.cc (post_order_compute): Likewise.
|
||
* cfgcleanup.cc (try_simplify_condjump): Likewise.
|
||
(merge_blocks_move_predecessor_nojumps): Likewise.
|
||
(merge_blocks_move_successor_nojumps): Likewise.
|
||
(merge_blocks_move): Likewise.
|
||
(old_insns_match_p): Likewise.
|
||
(try_crossjump_bb): Likewise.
|
||
* cfgexpand.cc (expand_gimple_stmt): Likewise.
|
||
* cfghooks.cc (split_block_before_cond_jump): Likewise.
|
||
(profile_record_check_consistency): Likewise.
|
||
* cfghooks.h: Likewise.
|
||
* cfgrtl.cc (pass_free_cfg::execute): Likewise.
|
||
(rtl_can_merge_blocks): Likewise.
|
||
(try_redirect_by_replacing_jump): Likewise.
|
||
(make_pass_outof_cfg_layout_mode): Likewise.
|
||
(cfg_layout_can_merge_blocks_p): Likewise.
|
||
* cgraph.cc (release_function_body): Likewise.
|
||
(cgraph_node::get_fun): Likewise.
|
||
* cgraph.h (struct cgraph_node): Likewise.
|
||
(asmname_hasher::equal): Likewise.
|
||
(cgraph_inline_failed_type): Likewise.
|
||
(thunk_adjust): Likewise.
|
||
(dump_callgraph_transformation): Likewise.
|
||
(record_references_in_initializer): Likewise.
|
||
(ipa_discover_variable_flags): Likewise.
|
||
* cgraphclones.cc (GTY): Likewise.
|
||
* cgraphunit.cc (symbol_table::finalize_compilation_unit): Likewise.
|
||
* collect-utils.h (GCC_COLLECT_UTILS_H): Likewise.
|
||
* collect2-aix.h (GCC_COLLECT2_AIX_H): Likewise.
|
||
* collect2.cc (maybe_run_lto_and_relink): Likewise.
|
||
* combine-stack-adj.cc: Likewise.
|
||
* combine.cc (setup_incoming_promotions): Likewise.
|
||
(combine_simplify_rtx): Likewise.
|
||
(count_rtxs): Likewise.
|
||
* common.opt: Likewise.
|
||
* common/config/aarch64/aarch64-common.cc: Likewise.
|
||
* common/config/arm/arm-common.cc (arm_asm_auto_mfpu): Likewise.
|
||
* common/config/avr/avr-common.cc: Likewise.
|
||
* common/config/i386/i386-isas.h (struct _isa_names_table): Likewise.
|
||
* conditions.h: Likewise.
|
||
* config.gcc: Likewise.
|
||
* config/aarch64/aarch64-builtins.cc (aarch64_resolve_overloaded_memtag): Likewise.
|
||
* config/aarch64/aarch64-protos.h (aarch64_classify_address): Likewise.
|
||
(aarch64_get_extension_string_for_isa_flags): Likewise.
|
||
* config/aarch64/aarch64-sve-builtins.cc (function_builder::add_function): Likewise.
|
||
* config/aarch64/aarch64.cc (aarch64_regmode_natural_size): Likewise.
|
||
(aarch64_sched_first_cycle_multipass_dfa_lookahead): Likewise.
|
||
(aarch64_option_valid_attribute_p): Likewise.
|
||
(aarch64_short_vector_p): Likewise.
|
||
(aarch64_float_const_representable_p): Likewise.
|
||
* config/aarch64/aarch64.h (DBX_REGISTER_NUMBER): Likewise.
|
||
(ASM_OUTPUT_POOL_EPILOGUE): Likewise.
|
||
(GTY): Likewise.
|
||
* config/aarch64/cortex-a57-fma-steering.cc: Likewise.
|
||
* config/aarch64/driver-aarch64.cc (contains_core_p): Likewise.
|
||
* config/aarch64/t-aarch64: Likewise.
|
||
* config/aarch64/x-aarch64: Likewise.
|
||
* config/aarch64/x-darwin: Likewise.
|
||
* config/alpha/alpha-protos.h: Likewise.
|
||
* config/alpha/alpha.cc (alpha_scalar_mode_supported_p): Likewise.
|
||
* config/alpha/alpha.h (LONG_DOUBLE_TYPE_SIZE): Likewise.
|
||
(enum reg_class): Likewise.
|
||
* config/alpha/alpha.md: Likewise.
|
||
* config/alpha/driver-alpha.cc (AMASK_LOCKPFTCHOK): Likewise.
|
||
* config/alpha/x-alpha: Likewise.
|
||
* config/arc/arc-protos.h (arc_eh_uses): Likewise.
|
||
* config/arc/arc.cc (ARC_OPT): Likewise.
|
||
(arc_ccfsm_advance): Likewise.
|
||
(arc_arg_partial_bytes): Likewise.
|
||
(conditionalize_nonjump): Likewise.
|
||
* config/arc/arc.md: Likewise.
|
||
* config/arc/builtins.def: Likewise.
|
||
* config/arc/t-arc: Likewise.
|
||
* config/arm/arm-c.cc (arm_resolve_overloaded_builtin): Likewise.
|
||
(arm_pragma_target_parse): Likewise.
|
||
* config/arm/arm-protos.h (save_restore_target_globals): Likewise.
|
||
(arm_cpu_cpp_builtins): Likewise.
|
||
* config/arm/arm.cc (vfp3_const_double_index): Likewise.
|
||
(shift_op): Likewise.
|
||
(thumb2_final_prescan_insn): Likewise.
|
||
(arm_final_prescan_insn): Likewise.
|
||
(arm_asm_output_labelref): Likewise.
|
||
(arm_small_register_classes_for_mode_p): Likewise.
|
||
* config/arm/arm.h: Likewise.
|
||
* config/arm/arm.md: Likewise.
|
||
* config/arm/driver-arm.cc: Likewise.
|
||
* config/arm/symbian.h: Likewise.
|
||
* config/arm/t-arm: Likewise.
|
||
* config/arm/thumb1.md: Likewise.
|
||
* config/arm/x-arm: Likewise.
|
||
* config/avr/avr-c.cc (avr_register_target_pragmas): Likewise.
|
||
* config/avr/avr-fixed.md: Likewise.
|
||
* config/avr/avr-log.cc (avr_log_vadump): Likewise.
|
||
* config/avr/avr-mcus.def: Likewise.
|
||
* config/avr/avr-modes.def (FRACTIONAL_INT_MODE): Likewise.
|
||
* config/avr/avr-passes.def (INSERT_PASS_BEFORE): Likewise.
|
||
* config/avr/avr-protos.h (make_avr_pass_casesi): Likewise.
|
||
* config/avr/avr.cc (avr_option_override): Likewise.
|
||
(avr_build_builtin_va_list): Likewise.
|
||
(avr_mode_dependent_address_p): Likewise.
|
||
(avr_function_arg_advance): Likewise.
|
||
(avr_asm_output_aligned_decl_common): Likewise.
|
||
* config/avr/avr.h (RETURN_ADDR_RTX): Likewise.
|
||
(SUPPORTS_INIT_PRIORITY): Likewise.
|
||
* config/avr/avr.md: Likewise.
|
||
* config/avr/builtins.def: Likewise.
|
||
* config/avr/gen-avr-mmcu-specs.cc (IN_GEN_AVR_MMCU_TEXI): Likewise.
|
||
* config/avr/gen-avr-mmcu-texi.cc (IN_GEN_AVR_MMCU_TEXI): Likewise.
|
||
(main): Likewise.
|
||
* config/avr/t-avr: Likewise.
|
||
* config/bfin/bfin.cc (frame_related_constant_load): Likewise.
|
||
* config/bpf/bpf-protos.h (GCC_BPF_PROTOS_H): Likewise.
|
||
* config/bpf/bpf.h (enum reg_class): Likewise.
|
||
* config/bpf/t-bpf: Likewise.
|
||
* config/c6x/c6x-protos.h (GCC_C6X_PROTOS_H): Likewise.
|
||
* config/cr16/cr16-protos.h: Likewise.
|
||
* config/cris/cris.cc (cris_address_cost): Likewise.
|
||
(cris_side_effect_mode_ok): Likewise.
|
||
(cris_init_machine_status): Likewise.
|
||
(cris_emit_movem_store): Likewise.
|
||
* config/cris/cris.h (INDEX_REG_CLASS): Likewise.
|
||
(enum reg_class): Likewise.
|
||
(struct cum_args): Likewise.
|
||
* config/cris/cris.opt: Likewise.
|
||
* config/cris/sync.md: Likewise.
|
||
* config/csky/csky.cc (csky_expand_prologue): Likewise.
|
||
* config/darwin-c.cc: Likewise.
|
||
* config/darwin-f.cc: Likewise.
|
||
* config/darwin-sections.def (zobj_const_section): Likewise.
|
||
* config/darwin.cc (output_objc_section_asm_op): Likewise.
|
||
(fprintf): Likewise.
|
||
* config/darwin.h (GTY): Likewise.
|
||
* config/elfos.h: Likewise.
|
||
* config/epiphany/epiphany-sched.md: Likewise.
|
||
* config/epiphany/epiphany.cc (epiphany_function_value): Likewise.
|
||
* config/epiphany/epiphany.h (GTY): Likewise.
|
||
(NO_FUNCTION_CSE): Likewise.
|
||
* config/epiphany/mode-switch-use.cc: Likewise.
|
||
* config/epiphany/predicates.md: Likewise.
|
||
* config/epiphany/t-epiphany: Likewise.
|
||
* config/fr30/fr30-protos.h: Likewise.
|
||
* config/frv/frv-protos.h: Likewise.
|
||
* config/frv/frv.cc (TLS_BIAS): Likewise.
|
||
* config/frv/frv.h (ASM_OUTPUT_ALIGNED_LOCAL): Likewise.
|
||
* config/ft32/ft32-protos.h: Likewise.
|
||
* config/gcn/gcn-hsa.h (ASM_APP_OFF): Likewise.
|
||
* config/gcn/gcn.cc (gcn_init_libfuncs): Likewise.
|
||
* config/gcn/mkoffload.cc (copy_early_debug_info): Likewise.
|
||
* config/gcn/t-gcn-hsa: Likewise.
|
||
* config/gcn/t-omp-device: Likewise.
|
||
* config/h8300/h8300-protos.h (GCC_H8300_PROTOS_H): Likewise.
|
||
(same_cmp_following_p): Likewise.
|
||
* config/h8300/h8300.cc (F): Likewise.
|
||
* config/h8300/h8300.h (struct cum_arg): Likewise.
|
||
(BRANCH_COST): Likewise.
|
||
* config/i386/cygming.h (DEFAULT_PCC_STRUCT_RETURN): Likewise.
|
||
* config/i386/djgpp.h (TARGET_ASM_LTO_END): Likewise.
|
||
* config/i386/dragonfly.h (NO_PROFILE_COUNTERS): Likewise.
|
||
* config/i386/driver-i386.cc (detect_caches_intel): Likewise.
|
||
* config/i386/freebsd.h (NO_PROFILE_COUNTERS): Likewise.
|
||
* config/i386/i386-c.cc (ix86_target_macros): Likewise.
|
||
* config/i386/i386-expand.cc (get_mode_wider_vector): Likewise.
|
||
* config/i386/i386-options.cc (ix86_set_func_type): Likewise.
|
||
* config/i386/i386-protos.h (ix86_extract_perm_from_pool_constant): Likewise.
|
||
(ix86_register_pragmas): Likewise.
|
||
(ix86_d_has_stdcall_convention): Likewise.
|
||
(i386_pe_seh_init_sections): Likewise.
|
||
* config/i386/i386.cc (ix86_function_arg_regno_p): Likewise.
|
||
(ix86_function_value_regno_p): Likewise.
|
||
(ix86_compute_frame_layout): Likewise.
|
||
(legitimize_pe_coff_symbol): Likewise.
|
||
(output_pic_addr_const): Likewise.
|
||
* config/i386/i386.h (defined): Likewise.
|
||
(host_detect_local_cpu): Likewise.
|
||
(CONSTANT_ADDRESS_P): Likewise.
|
||
(DEFAULT_LARGE_SECTION_THRESHOLD): Likewise.
|
||
(struct machine_frame_state): Likewise.
|
||
* config/i386/i386.md: Likewise.
|
||
* config/i386/lynx.h (ASM_OUTPUT_ALIGN): Likewise.
|
||
* config/i386/mmx.md: Likewise.
|
||
* config/i386/sse.md: Likewise.
|
||
* config/i386/t-cygming: Likewise.
|
||
* config/i386/t-djgpp: Likewise.
|
||
* config/i386/t-gnu-property: Likewise.
|
||
* config/i386/t-i386: Likewise.
|
||
* config/i386/t-intelmic: Likewise.
|
||
* config/i386/t-omp-device: Likewise.
|
||
* config/i386/winnt-cxx.cc (i386_pe_type_dllimport_p): Likewise.
|
||
(i386_pe_adjust_class_at_definition): Likewise.
|
||
* config/i386/winnt.cc (gen_stdcall_or_fastcall_suffix): Likewise.
|
||
(i386_pe_mangle_decl_assembler_name): Likewise.
|
||
(i386_pe_encode_section_info): Likewise.
|
||
* config/i386/x-cygwin: Likewise.
|
||
* config/i386/x-darwin: Likewise.
|
||
* config/i386/x-i386: Likewise.
|
||
* config/i386/x-mingw32: Likewise.
|
||
* config/i386/x86-tune-sched-core.cc: Likewise.
|
||
* config/i386/x86-tune.def: Likewise.
|
||
* config/i386/xm-djgpp.h (STANDARD_STARTFILE_PREFIX_1): Likewise.
|
||
* config/ia64/freebsd.h: Likewise.
|
||
* config/ia64/hpux.h (REGISTER_TARGET_PRAGMAS): Likewise.
|
||
* config/ia64/ia64-protos.h (ia64_except_unwind_info): Likewise.
|
||
* config/ia64/ia64.cc (ia64_function_value_regno_p): Likewise.
|
||
(ia64_secondary_reload_class): Likewise.
|
||
(bundling): Likewise.
|
||
* config/ia64/ia64.h: Likewise.
|
||
* config/ia64/ia64.md: Likewise.
|
||
* config/ia64/predicates.md: Likewise.
|
||
* config/ia64/sysv4.h: Likewise.
|
||
* config/ia64/t-ia64: Likewise.
|
||
* config/iq2000/iq2000.h (FUNCTION_MODE): Likewise.
|
||
* config/iq2000/iq2000.md: Likewise.
|
||
* config/linux.h (TARGET_HAS_BIONIC): Likewise.
|
||
(if): Likewise.
|
||
* config/m32c/m32c.cc (m32c_function_needs_enter): Likewise.
|
||
* config/m32c/m32c.h (MAX_REGS_PER_ADDRESS): Likewise.
|
||
* config/m32c/t-m32c: Likewise.
|
||
* config/m32r/m32r-protos.h: Likewise.
|
||
* config/m32r/m32r.cc (m32r_print_operand): Likewise.
|
||
* config/m32r/m32r.h: Likewise.
|
||
* config/m32r/m32r.md: Likewise.
|
||
* config/m68k/m68k-isas.def: Likewise.
|
||
* config/m68k/m68k-microarchs.def: Likewise.
|
||
* config/m68k/m68k-protos.h (strict_low_part_peephole_ok): Likewise.
|
||
(m68k_epilogue_uses): Likewise.
|
||
* config/m68k/m68k.cc (m68k_call_tls_get_addr): Likewise.
|
||
(m68k_sched_adjust_cost): Likewise.
|
||
(m68k_sched_md_init): Likewise.
|
||
* config/m68k/m68k.h (__transfer_from_trampoline): Likewise.
|
||
(enum m68k_function_kind): Likewise.
|
||
* config/m68k/m68k.md: Likewise.
|
||
* config/m68k/m68kemb.h: Likewise.
|
||
* config/m68k/uclinux.h (ENDFILE_SPEC): Likewise.
|
||
* config/mcore/mcore-protos.h: Likewise.
|
||
* config/mcore/mcore.cc (mcore_expand_insv): Likewise.
|
||
(mcore_expand_prolog): Likewise.
|
||
* config/mcore/mcore.h (TARGET_MCORE): Likewise.
|
||
* config/mcore/mcore.md: Likewise.
|
||
* config/microblaze/microblaze-protos.h: Likewise.
|
||
* config/microblaze/microblaze.cc (microblaze_legitimate_pic_operand): Likewise.
|
||
(microblaze_function_prologue): Likewise.
|
||
(microblaze_function_epilogue): Likewise.
|
||
(microblaze_select_section): Likewise.
|
||
(microblaze_asm_output_mi_thunk): Likewise.
|
||
(microblaze_eh_return): Likewise.
|
||
* config/microblaze/microblaze.h: Likewise.
|
||
* config/microblaze/microblaze.md: Likewise.
|
||
* config/microblaze/t-microblaze: Likewise.
|
||
* config/mips/driver-native.cc: Likewise.
|
||
* config/mips/loongson2ef.md: Likewise.
|
||
* config/mips/mips-protos.h (mips_expand_vec_cmp_expr): Likewise.
|
||
* config/mips/mips.cc (mips_rtx_costs): Likewise.
|
||
(mips_output_filename): Likewise.
|
||
(mips_output_function_prologue): Likewise.
|
||
(mips_output_function_epilogue): Likewise.
|
||
(mips_output_mi_thunk): Likewise.
|
||
* config/mips/mips.h: Likewise.
|
||
* config/mips/mips.md: Likewise.
|
||
* config/mips/t-mips: Likewise.
|
||
* config/mips/x-native: Likewise.
|
||
* config/mmix/mmix-protos.h: Likewise.
|
||
* config/mmix/mmix.cc (mmix_option_override): Likewise.
|
||
(mmix_dbx_register_number): Likewise.
|
||
(mmix_expand_prologue): Likewise.
|
||
* config/mmix/mmix.h: Likewise.
|
||
* config/mmix/mmix.md: Likewise.
|
||
* config/mmix/predicates.md: Likewise.
|
||
* config/mn10300/mn10300.cc (mn10300_symbolic_operand): Likewise.
|
||
(mn10300_legitimate_pic_operand_p): Likewise.
|
||
* config/mn10300/mn10300.h (enum reg_class): Likewise.
|
||
(NO_FUNCTION_CSE): Likewise.
|
||
* config/moxie/moxie-protos.h: Likewise.
|
||
* config/moxie/uclinux.h (TARGET_LIBC_HAS_FUNCTION): Likewise.
|
||
* config/msp430/msp430-devices.cc (extract_devices_dir_from_exec_prefix): Likewise.
|
||
* config/msp430/msp430.cc (msp430_gimplify_va_arg_expr): Likewise.
|
||
(msp430_incoming_return_addr_rtx): Likewise.
|
||
* config/msp430/msp430.h (msp430_get_linker_devices_include_path): Likewise.
|
||
* config/msp430/t-msp430: Likewise.
|
||
* config/nds32/nds32-cost.cc (nds32_rtx_costs_speed_prefer): Likewise.
|
||
(nds32_rtx_costs_size_prefer): Likewise.
|
||
(nds32_init_rtx_costs): Likewise.
|
||
* config/nds32/nds32-doubleword.md: Likewise.
|
||
* config/nds32/nds32.cc (nds32_memory_move_cost): Likewise.
|
||
(nds32_builtin_decl): Likewise.
|
||
* config/nds32/nds32.h (enum nds32_16bit_address_type): Likewise.
|
||
(enum nds32_isr_nested_type): Likewise.
|
||
(enum reg_class): Likewise.
|
||
* config/nds32/predicates.md: Likewise.
|
||
* config/nds32/t-nds32: Likewise.
|
||
* config/nios2/nios2.cc (nios2_pragma_target_parse): Likewise.
|
||
* config/nvptx/nvptx-protos.h: Likewise.
|
||
* config/nvptx/nvptx.cc (nvptx_goacc_expand_var_decl): Likewise.
|
||
* config/nvptx/nvptx.h (TARGET_CPU_CPP_BUILTINS): Likewise.
|
||
* config/nvptx/t-nvptx: Likewise.
|
||
* config/nvptx/t-omp-device: Likewise.
|
||
* config/pa/elf.h: Likewise.
|
||
* config/pa/pa-linux.h (GLOBAL_ASM_OP): Likewise.
|
||
* config/pa/pa-netbsd.h (GLOBAL_ASM_OP): Likewise.
|
||
* config/pa/pa-openbsd.h (TARGET_ASM_GLOBALIZE_LABEL): Likewise.
|
||
* config/pa/pa-protos.h (pa_eh_return_handler_rtx): Likewise.
|
||
(pa_legitimize_reload_address): Likewise.
|
||
(pa_can_use_return_insn): Likewise.
|
||
* config/pa/pa.cc (mem_shadd_or_shadd_rtx_p): Likewise.
|
||
(som_output_text_section_asm_op): Likewise.
|
||
* config/pa/pa.h (PROFILE_BEFORE_PROLOGUE): Likewise.
|
||
* config/pa/pa.md: Likewise.
|
||
* config/pa/som.h: Likewise.
|
||
* config/pa/t-pa: Likewise.
|
||
* config/pdp11/pdp11.cc (decode_pdp11_d): Likewise.
|
||
* config/pdp11/pdp11.h: Likewise.
|
||
* config/pdp11/pdp11.md: Likewise.
|
||
* config/pdp11/t-pdp11: Likewise.
|
||
* config/pru/pru.md: Likewise.
|
||
* config/pru/t-pru: Likewise.
|
||
* config/riscv/riscv-protos.h (NUM_SYMBOL_TYPES): Likewise.
|
||
(riscv_gpr_save_operation_p): Likewise.
|
||
(riscv_d_register_target_info): Likewise.
|
||
(riscv_init_builtins): Likewise.
|
||
* config/riscv/riscv.cc (riscv_output_mi_thunk): Likewise.
|
||
* config/riscv/riscv.h (CSW_MAX_OFFSET): Likewise.
|
||
* config/riscv/t-riscv: Likewise.
|
||
* config/rl78/rl78.cc (rl78_asm_ctor_dtor): Likewise.
|
||
* config/rl78/t-rl78: Likewise.
|
||
* config/rs6000/aix.h: Likewise.
|
||
* config/rs6000/aix71.h (ASM_SPEC_COMMON): Likewise.
|
||
* config/rs6000/aix72.h (ASM_SPEC_COMMON): Likewise.
|
||
* config/rs6000/aix73.h (ASM_SPEC_COMMON): Likewise.
|
||
* config/rs6000/darwin.h (TARGET_ASM_GLOBALIZE_LABEL): Likewise.
|
||
* config/rs6000/driver-rs6000.cc: Likewise.
|
||
* config/rs6000/freebsd.h: Likewise.
|
||
* config/rs6000/freebsd64.h: Likewise.
|
||
* config/rs6000/lynx.h (ASM_OUTPUT_ALIGN): Likewise.
|
||
* config/rs6000/rbtree.cc: Likewise.
|
||
* config/rs6000/rbtree.h: Likewise.
|
||
* config/rs6000/rs6000-c.cc (rs6000_target_modify_macros): Likewise.
|
||
* config/rs6000/rs6000-call.cc (rs6000_invalid_builtin): Likewise.
|
||
(rs6000_expand_builtin): Likewise.
|
||
(rs6000_init_builtins): Likewise.
|
||
* config/rs6000/rs6000-cpus.def: Likewise.
|
||
* config/rs6000/rs6000-gen-builtins.cc (write_init_ovld_table): Likewise.
|
||
* config/rs6000/rs6000-internal.h (ALTIVEC_REG_BIT): Likewise.
|
||
(quad_address_offset_p): Likewise.
|
||
* config/rs6000/rs6000-logue.cc (interesting_frame_related_regno): Likewise.
|
||
(rs6000_emit_epilogue): Likewise.
|
||
* config/rs6000/rs6000-overload.def: Likewise.
|
||
* config/rs6000/rs6000-p8swap.cc: Likewise.
|
||
* config/rs6000/rs6000-protos.h (GCC_RS6000_PROTOS_H): Likewise.
|
||
(rs6000_const_f32_to_i32): Likewise.
|
||
* config/rs6000/rs6000.cc (legitimate_lo_sum_address_p): Likewise.
|
||
(rs6000_debug_legitimize_address): Likewise.
|
||
(rs6000_mode_dependent_address): Likewise.
|
||
(rs6000_adjust_priority): Likewise.
|
||
(rs6000_c_mode_for_suffix): Likewise.
|
||
* config/rs6000/rs6000.h (defined): Likewise.
|
||
(LONG_DOUBLE_TYPE_SIZE): Likewise.
|
||
* config/rs6000/rs6000.md: Likewise.
|
||
* config/rs6000/sysv4.h: Likewise.
|
||
* config/rs6000/t-linux: Likewise.
|
||
* config/rs6000/t-linux64: Likewise.
|
||
* config/rs6000/t-rs6000: Likewise.
|
||
* config/rs6000/x-darwin: Likewise.
|
||
* config/rs6000/x-darwin64: Likewise.
|
||
* config/rs6000/x-rs6000: Likewise.
|
||
* config/rs6000/xcoff.h (ASM_OUTPUT_LABELREF): Likewise.
|
||
* config/rx/rx.cc (rx_expand_builtin): Likewise.
|
||
* config/s390/constraints.md: Likewise.
|
||
* config/s390/driver-native.cc: Likewise.
|
||
* config/s390/htmxlintrin.h: Likewise.
|
||
* config/s390/s390-builtins.def (B_DEF): Likewise.
|
||
(OB_DEF_VAR): Likewise.
|
||
* config/s390/s390-builtins.h: Likewise.
|
||
* config/s390/s390-c.cc: Likewise.
|
||
* config/s390/s390-opts.h: Likewise.
|
||
* config/s390/s390-protos.h (s390_check_symref_alignment): Likewise.
|
||
(s390_register_target_pragmas): Likewise.
|
||
* config/s390/s390.cc (s390_init_builtins): Likewise.
|
||
(s390_expand_plus_operand): Likewise.
|
||
(s390_expand_atomic): Likewise.
|
||
(s390_valid_target_attribute_inner_p): Likewise.
|
||
* config/s390/s390.h (LONG_DOUBLE_TYPE_SIZE): Likewise.
|
||
* config/s390/s390.md: Likewise.
|
||
* config/s390/t-s390: Likewise.
|
||
* config/s390/vx-builtins.md: Likewise.
|
||
* config/s390/x-native: Likewise.
|
||
* config/sh/divtab-sh4-300.cc (main): Likewise.
|
||
* config/sh/divtab-sh4.cc (main): Likewise.
|
||
* config/sh/divtab.cc (main): Likewise.
|
||
* config/sh/elf.h: Likewise.
|
||
* config/sh/sh-protos.h (sh_fsca_int2sf): Likewise.
|
||
* config/sh/sh.cc (SYMBOL_FLAG_FUNCVEC_FUNCTION): Likewise.
|
||
(sh_struct_value_rtx): Likewise.
|
||
(sh_remove_reg_dead_or_unused_notes): Likewise.
|
||
* config/sh/sh.h (MIN_UNITS_PER_WORD): Likewise.
|
||
* config/sh/t-sh: Likewise.
|
||
* config/sol2-protos.h (solaris_override_options): Likewise.
|
||
* config/sol2.h: Likewise.
|
||
* config/sparc/driver-sparc.cc: Likewise.
|
||
* config/sparc/freebsd.h: Likewise.
|
||
* config/sparc/sparc-protos.h (make_pass_work_around_errata): Likewise.
|
||
* config/sparc/sparc.cc (sparc_output_mi_thunk): Likewise.
|
||
(sparc_asan_shadow_offset): Likewise.
|
||
* config/sparc/sparc.h: Likewise.
|
||
* config/sparc/sparc.md: Likewise.
|
||
* config/sparc/t-sparc: Likewise.
|
||
* config/sparc/x-sparc: Likewise.
|
||
* config/stormy16/stormy16.cc (xstormy16_mode_dependent_address_p): Likewise.
|
||
* config/t-darwin: Likewise.
|
||
* config/t-dragonfly: Likewise.
|
||
* config/t-freebsd: Likewise.
|
||
* config/t-glibc: Likewise.
|
||
* config/t-linux: Likewise.
|
||
* config/t-netbsd: Likewise.
|
||
* config/t-openbsd: Likewise.
|
||
* config/t-pnt16-warn: Likewise.
|
||
* config/t-sol2: Likewise.
|
||
* config/t-vxworks: Likewise.
|
||
* config/t-winnt: Likewise.
|
||
* config/tilegx/t-tilegx: Likewise.
|
||
* config/tilegx/tilegx-c.cc: Likewise.
|
||
* config/tilegx/tilegx-protos.h (tilegx_function_profiler): Likewise.
|
||
* config/tilegx/tilegx.md: Likewise.
|
||
* config/tilepro/t-tilepro: Likewise.
|
||
* config/tilepro/tilepro-c.cc: Likewise.
|
||
* config/v850/t-v850: Likewise.
|
||
* config/v850/v850-protos.h: Likewise.
|
||
* config/v850/v850.cc (F): Likewise.
|
||
* config/v850/v850.h (enum reg_class): Likewise.
|
||
(SLOW_BYTE_ACCESS): Likewise.
|
||
* config/vax/vax.cc (vax_mode_dependent_address_p): Likewise.
|
||
* config/vax/vax.h (enum reg_class): Likewise.
|
||
* config/vax/vax.md: Likewise.
|
||
* config/visium/visium.cc (visium_legitimate_address_p): Likewise.
|
||
* config/visium/visium.h: Likewise.
|
||
* config/vms/t-vms: Likewise.
|
||
* config/vms/vms-crtlmap.map: Likewise.
|
||
* config/vms/vms-protos.h (vms_c_get_vms_ver): Likewise.
|
||
* config/vx-common.h: Likewise.
|
||
* config/x-darwin: Likewise.
|
||
* config/x-hpux: Likewise.
|
||
* config/x-linux: Likewise.
|
||
* config/x-netbsd: Likewise.
|
||
* config/x-openbsd: Likewise.
|
||
* config/x-solaris: Likewise.
|
||
* config/xtensa/xtensa-protos.h (xtensa_mem_offset): Likewise.
|
||
* config/xtensa/xtensa.cc (xtensa_option_override): Likewise.
|
||
* config/xtensa/xtensa.h: Likewise.
|
||
* configure.ac: Likewise.
|
||
* context.cc: Likewise.
|
||
* convert.h: Likewise.
|
||
* coretypes.h: Likewise.
|
||
* coverage.cc: Likewise.
|
||
* coverage.h: Likewise.
|
||
* cppdefault.h (struct default_include): Likewise.
|
||
* cprop.cc (local_cprop_pass): Likewise.
|
||
(one_cprop_pass): Likewise.
|
||
* cse.cc (hash_rtx_cb): Likewise.
|
||
(fold_rtx): Likewise.
|
||
* ctfc.h (ctfc_get_num_vlen_bytes): Likewise.
|
||
* data-streamer.h (bp_unpack_var_len_int): Likewise.
|
||
(streamer_write_widest_int): Likewise.
|
||
* dbgcnt.def: Likewise.
|
||
* dbxout.cc (dbxout_early_global_decl): Likewise.
|
||
(dbxout_common_check): Likewise.
|
||
* dbxout.h: Likewise.
|
||
* debug.h (struct gcc_debug_hooks): Likewise.
|
||
(dump_go_spec_init): Likewise.
|
||
* df-core.cc: Likewise.
|
||
* df-scan.cc (df_insn_info_delete): Likewise.
|
||
(df_insn_delete): Likewise.
|
||
* df.h (debug_df_chain): Likewise.
|
||
(can_move_insns_across): Likewise.
|
||
* dfp.cc (decimal_from_binary): Likewise.
|
||
* diagnostic-color.cc: Likewise.
|
||
* diagnostic-event-id.h: Likewise.
|
||
* diagnostic-show-locus.cc (test_one_liner_labels): Likewise.
|
||
* diagnostic.cc (bt_callback): Likewise.
|
||
(num_digits): Likewise.
|
||
* doc/avr-mmcu.texi: Likewise.
|
||
* doc/cfg.texi: Likewise.
|
||
* doc/contrib.texi: Likewise.
|
||
* doc/cppinternals.texi: Likewise.
|
||
* doc/extend.texi: Likewise.
|
||
* doc/generic.texi: Likewise.
|
||
* doc/gimple.texi: Likewise.
|
||
* doc/gty.texi: Likewise.
|
||
* doc/invoke.texi: Likewise.
|
||
* doc/loop.texi: Likewise.
|
||
* doc/lto.texi: Likewise.
|
||
* doc/match-and-simplify.texi: Likewise.
|
||
* doc/md.texi: Likewise.
|
||
* doc/optinfo.texi: Likewise.
|
||
* doc/options.texi: Likewise.
|
||
* doc/passes.texi: Likewise.
|
||
* doc/plugins.texi: Likewise.
|
||
* doc/rtl.texi: Likewise.
|
||
* doc/sourcebuild.texi: Likewise.
|
||
* doc/tm.texi: Likewise.
|
||
* doc/tm.texi.in: Likewise.
|
||
* doc/tree-ssa.texi: Likewise.
|
||
* dojump.cc (do_jump): Likewise.
|
||
* dojump.h: Likewise.
|
||
* dumpfile.cc (test_impl_location): Likewise.
|
||
(test_capture_of_dump_calls): Likewise.
|
||
* dumpfile.h (enum dump_kind): Likewise.
|
||
(class dump_location_t): Likewise.
|
||
(dump_enabled_p): Likewise.
|
||
(enable_rtl_dump_file): Likewise.
|
||
(dump_combine_total_stats): Likewise.
|
||
* dwarf2asm.cc (dw2_asm_output_delta_uleb128): Likewise.
|
||
* dwarf2ctf.h (ctf_debug_finish): Likewise.
|
||
* dwarf2out.cc (dwarf2out_begin_prologue): Likewise.
|
||
(struct loc_descr_context): Likewise.
|
||
(rtl_for_decl_location): Likewise.
|
||
(gen_subprogram_die): Likewise.
|
||
(gen_label_die): Likewise.
|
||
(is_trivial_indirect_ref): Likewise.
|
||
(dwarf2out_late_global_decl): Likewise.
|
||
(dwarf_file_hasher::hash): Likewise.
|
||
(dwarf2out_end_source_file): Likewise.
|
||
(dwarf2out_define): Likewise.
|
||
(dwarf2out_early_finish): Likewise.
|
||
* dwarf2out.h (struct dw_fde_node): Likewise.
|
||
(struct dw_discr_list_node): Likewise.
|
||
(output_loc_sequence_raw): Likewise.
|
||
* emit-rtl.cc (gen_raw_REG): Likewise.
|
||
(maybe_set_max_label_num): Likewise.
|
||
* emit-rtl.h (struct rtl_data): Likewise.
|
||
* errors.cc (internal_error): Likewise.
|
||
(trim_filename): Likewise.
|
||
* et-forest.cc: Likewise.
|
||
* except.cc (init_eh_for_function): Likewise.
|
||
* explow.cc (promote_ssa_mode): Likewise.
|
||
(get_dynamic_stack_size): Likewise.
|
||
* explow.h: Likewise.
|
||
* expmed.h: Likewise.
|
||
* expr.cc (safe_from_p): Likewise.
|
||
(expand_expr_real_2): Likewise.
|
||
(expand_expr_real_1): Likewise.
|
||
* file-prefix-map.cc (remap_filename): Likewise.
|
||
* final.cc (app_enable): Likewise.
|
||
(make_pass_compute_alignments): Likewise.
|
||
(final_scan_insn_1): Likewise.
|
||
(final_scan_insn): Likewise.
|
||
* fixed-value.h (fixed_from_string): Likewise.
|
||
* flag-types.h (NO_DEBUG): Likewise.
|
||
(DWARF2_DEBUG): Likewise.
|
||
(VMS_DEBUG): Likewise.
|
||
(BTF_DEBUG): Likewise.
|
||
(enum ctf_debug_info_levels): Likewise.
|
||
* fold-const.cc (const_binop): Likewise.
|
||
(fold_binary_loc): Likewise.
|
||
(fold_checksum_tree): Likewise.
|
||
* fp-test.cc: Likewise.
|
||
* function.cc (expand_function_end): Likewise.
|
||
* function.h (struct function): Likewise.
|
||
* fwprop.cc (should_replace_address): Likewise.
|
||
* gcc-main.cc: Likewise.
|
||
* gcc-rich-location.h (class gcc_rich_location): Likewise.
|
||
* gcc-symtab.h: Likewise.
|
||
* gcc.cc (MIN_FATAL_STATUS): Likewise.
|
||
(driver_handle_option): Likewise.
|
||
(quote_spec_arg): Likewise.
|
||
(driver::finalize): Likewise.
|
||
* gcc.h (set_input): Likewise.
|
||
* gcov-dump.cc: Likewise.
|
||
* gcov.cc (solve_flow_graph): Likewise.
|
||
* gcse-common.cc: Likewise.
|
||
* gcse.cc (make_pass_rtl_hoist): Likewise.
|
||
* genattr-common.cc: Likewise.
|
||
* genattrtab.cc (min_fn): Likewise.
|
||
(write_const_num_delay_slots): Likewise.
|
||
* genautomata.cc: Likewise.
|
||
* genconditions.cc (write_one_condition): Likewise.
|
||
* genconstants.cc: Likewise.
|
||
* genemit.cc (gen_exp): Likewise.
|
||
* generic-match-head.cc: Likewise.
|
||
* genextract.cc: Likewise.
|
||
* gengenrtl.cc (always_void_p): Likewise.
|
||
* gengtype-parse.cc (gtymarker_opt): Likewise.
|
||
* gengtype-state.cc (state_writer::state_writer): Likewise.
|
||
(write_state_trailer): Likewise.
|
||
(equals_type_number): Likewise.
|
||
(read_state): Likewise.
|
||
* gengtype.cc (open_base_files): Likewise.
|
||
(struct file_rule_st): Likewise.
|
||
(header_dot_h_frul): Likewise.
|
||
* gengtype.h: Likewise.
|
||
* genmatch.cc (main): Likewise.
|
||
* genmddeps.cc: Likewise.
|
||
* genmodes.cc (emit_mode_inner): Likewise.
|
||
(emit_mode_unit_size): Likewise.
|
||
* genpeep.cc (gen_peephole): Likewise.
|
||
* genpreds.cc (write_tm_preds_h): Likewise.
|
||
* genrecog.cc (validate_pattern): Likewise.
|
||
(write_header): Likewise.
|
||
(main): Likewise.
|
||
* gensupport.cc (change_subst_attribute): Likewise.
|
||
(traverse_c_tests): Likewise.
|
||
(add_predicate): Likewise.
|
||
(init_predicate_table): Likewise.
|
||
* gensupport.h (struct optab_pattern): Likewise.
|
||
(get_num_insn_codes): Likewise.
|
||
(maybe_eval_c_test): Likewise.
|
||
(struct pred_data): Likewise.
|
||
* ggc-internal.h: Likewise.
|
||
* gimple-fold.cc (maybe_fold_reference): Likewise.
|
||
(get_range_strlen_tree): Likewise.
|
||
* gimple-fold.h (gimple_stmt_integer_valued_real_p): Likewise.
|
||
* gimple-low.cc: Likewise.
|
||
* gimple-match-head.cc (directly_supported_p): Likewise.
|
||
* gimple-pretty-print.h: Likewise.
|
||
* gimple-ssa-sprintf.cc (format_percent): Likewise.
|
||
(adjust_range_for_overflow): Likewise.
|
||
* gimple-streamer.h: Likewise.
|
||
* gimple.h (struct GTY): Likewise.
|
||
(is_gimple_resx): Likewise.
|
||
* gimplify.cc (gimplify_expr): Likewise.
|
||
(gimplify_init_constructor): Likewise.
|
||
(omp_construct_selector_matches): Likewise.
|
||
(gimplify_omp_target_update): Likewise.
|
||
(gimplify_omp_ordered): Likewise.
|
||
(gimplify_va_arg_expr): Likewise.
|
||
* graphite-isl-ast-to-gimple.cc (should_copy_to_new_region): Likewise.
|
||
* haifa-sched.cc (increase_insn_priority): Likewise.
|
||
(try_ready): Likewise.
|
||
(sched_create_recovery_edges): Likewise.
|
||
* ifcvt.cc (find_if_case_1): Likewise.
|
||
(find_if_case_2): Likewise.
|
||
* inchash.h: Likewise.
|
||
* incpath.cc (add_env_var_paths): Likewise.
|
||
* input.cc (dump_location_info): Likewise.
|
||
(assert_loceq): Likewise.
|
||
(test_lexer_string_locations_concatenation_1): Likewise.
|
||
(test_lexer_string_locations_concatenation_2): Likewise.
|
||
(test_lexer_string_locations_concatenation_3): Likewise.
|
||
* input.h (BUILTINS_LOCATION): Likewise.
|
||
(class string_concat_db): Likewise.
|
||
* internal-fn.cc (expand_MUL_OVERFLOW): Likewise.
|
||
(expand_LOOP_VECTORIZED): Likewise.
|
||
* ipa-cp.cc (make_pass_ipa_cp): Likewise.
|
||
* ipa-fnsummary.cc (remap_freqcounting_preds_after_dup): Likewise.
|
||
(ipa_fn_summary_t::duplicate): Likewise.
|
||
(make_pass_ipa_fn_summary): Likewise.
|
||
* ipa-fnsummary.h (enum ipa_hints_vals): Likewise.
|
||
* ipa-free-lang-data.cc (fld_simplified_type): Likewise.
|
||
(free_lang_data_in_decl): Likewise.
|
||
* ipa-inline.cc (compute_inlined_call_time): Likewise.
|
||
(inline_always_inline_functions): Likewise.
|
||
* ipa-inline.h (free_growth_caches): Likewise.
|
||
(inline_account_function_p): Likewise.
|
||
* ipa-modref.cc (modref_access_analysis::analyze_stmt): Likewise.
|
||
(modref_eaf_analysis::analyze_ssa_name): Likewise.
|
||
* ipa-param-manipulation.cc (ipa_param_body_adjustments::mark_dead_statements): Likewise.
|
||
(ipa_param_body_adjustments::remap_with_debug_expressions): Likewise.
|
||
* ipa-prop.cc (ipa_set_node_agg_value_chain): Likewise.
|
||
* ipa-prop.h (IPA_UNDESCRIBED_USE): Likewise.
|
||
(unadjusted_ptr_and_unit_offset): Likewise.
|
||
* ipa-reference.cc (make_pass_ipa_reference): Likewise.
|
||
* ipa-reference.h (GCC_IPA_REFERENCE_H): Likewise.
|
||
* ipa-split.cc (consider_split): Likewise.
|
||
* ipa-sra.cc (isra_read_node_info): Likewise.
|
||
* ipa-utils.h (struct ipa_dfs_info): Likewise.
|
||
(recursive_call_p): Likewise.
|
||
(ipa_make_function_pure): Likewise.
|
||
* ira-build.cc (ira_create_allocno): Likewise.
|
||
(ira_flattening): Likewise.
|
||
* ira-color.cc (do_coloring): Likewise.
|
||
(update_curr_costs): Likewise.
|
||
* ira-conflicts.cc (process_regs_for_copy): Likewise.
|
||
* ira-int.h (struct ira_emit_data): Likewise.
|
||
(ira_prohibited_mode_move_regs): Likewise.
|
||
(ira_get_dup_out_num): Likewise.
|
||
(ira_destroy): Likewise.
|
||
(ira_tune_allocno_costs): Likewise.
|
||
(ira_implicitly_set_insn_hard_regs): Likewise.
|
||
(ira_build_conflicts): Likewise.
|
||
(ira_color): Likewise.
|
||
* ira-lives.cc (process_bb_node_lives): Likewise.
|
||
* ira.cc (class ira_spilled_reg_stack_slot): Likewise.
|
||
(setup_uniform_class_p): Likewise.
|
||
(def_dominates_uses): Likewise.
|
||
* ira.h (ira_nullify_asm_goto): Likewise.
|
||
* langhooks.cc (lhd_post_options): Likewise.
|
||
* langhooks.h (class substring_loc): Likewise.
|
||
(struct lang_hooks_for_tree_inlining): Likewise.
|
||
(struct lang_hooks_for_types): Likewise.
|
||
(struct lang_hooks): Likewise.
|
||
* libfuncs.h (synchronize_libfunc): Likewise.
|
||
* loop-doloop.cc (doloop_condition_get): Likewise.
|
||
* loop-init.cc (fix_loop_structure): Likewise.
|
||
* loop-invariant.cc: Likewise.
|
||
* lower-subreg.h: Likewise.
|
||
* lra-constraints.cc (curr_insn_transform): Likewise.
|
||
* lra-int.h (struct lra_insn_reg): Likewise.
|
||
(lra_undo_inheritance): Likewise.
|
||
(lra_setup_reload_pseudo_preferenced_hard_reg): Likewise.
|
||
(lra_split_hard_reg_for): Likewise.
|
||
(lra_coalesce): Likewise.
|
||
(lra_final_code_change): Likewise.
|
||
* lra-spills.cc (lra_final_code_change): Likewise.
|
||
* lra.cc (lra_process_new_insns): Likewise.
|
||
* lto-compress.h (struct lto_compression_stream): Likewise.
|
||
* lto-streamer-out.cc (DFS::DFS_write_tree_body): Likewise.
|
||
(write_symbol): Likewise.
|
||
* lto-streamer.h (enum LTO_tags): Likewise.
|
||
(lto_value_range_error): Likewise.
|
||
(lto_append_block): Likewise.
|
||
(lto_streamer_hooks_init): Likewise.
|
||
(stream_read_tree_ref): Likewise.
|
||
(lto_prepare_function_for_streaming): Likewise.
|
||
(select_what_to_stream): Likewise.
|
||
(omp_lto_input_declare_variant_alt): Likewise.
|
||
(cl_optimization_stream_in): Likewise.
|
||
* lto-wrapper.cc (append_compiler_options): Likewise.
|
||
* machmode.def: Likewise.
|
||
* machmode.h (struct int_n_data_t): Likewise.
|
||
* main.cc (main): Likewise.
|
||
* match.pd: Likewise.
|
||
* omp-builtins.def (BUILT_IN_GOMP_CRITICAL_NAME_END): Likewise.
|
||
(BUILT_IN_GOMP_LOOP_ULL_ORDERED_RUNTIME_NEXT): Likewise.
|
||
* omp-expand.cc (expand_omp_atomic_fetch_op): Likewise.
|
||
(make_pass_expand_omp_ssa): Likewise.
|
||
* omp-low.cc (struct omp_context): Likewise.
|
||
(struct omp_taskcopy_context): Likewise.
|
||
(lower_omp): Likewise.
|
||
* omp-oacc-neuter-broadcast.cc (omp_sese_active_worker_call): Likewise.
|
||
(mask_name): Likewise.
|
||
(omp_sese_dump_pars): Likewise.
|
||
(worker_single_simple): Likewise.
|
||
* omp-offload.cc (omp_finish_file): Likewise.
|
||
(execute_oacc_loop_designation): Likewise.
|
||
* optabs-query.cc (lshift_cheap_p): Likewise.
|
||
* optc-gen.awk: Likewise.
|
||
* optc-save-gen.awk: Likewise.
|
||
* optinfo-emit-json.cc (optrecord_json_writer::optrecord_json_writer): Likewise.
|
||
* opts-common.cc: Likewise.
|
||
* output.h (app_enable): Likewise.
|
||
(output_operand_lossage): Likewise.
|
||
(insn_current_reference_address): Likewise.
|
||
(get_insn_template): Likewise.
|
||
(output_quoted_string): Likewise.
|
||
* pass_manager.h (struct register_pass_info): Likewise.
|
||
* plugin.cc: Likewise.
|
||
* plugin.def (PLUGIN_ANALYZER_INIT): Likewise.
|
||
* plugin.h (invoke_plugin_callbacks): Likewise.
|
||
* pointer-query.cc (handle_mem_ref): Likewise.
|
||
* postreload-gcse.cc (alloc_mem): Likewise.
|
||
* predict.h (enum prediction): Likewise.
|
||
(add_reg_br_prob_note): Likewise.
|
||
* prefix.h: Likewise.
|
||
* profile.h (get_working_sets): Likewise.
|
||
* read-md.cc: Likewise.
|
||
* read-md.h (struct mapping): Likewise.
|
||
(class md_reader): Likewise.
|
||
(class noop_reader): Likewise.
|
||
* read-rtl-function.cc (function_reader::create_function): Likewise.
|
||
(function_reader::extra_parsing_for_operand_code_0): Likewise.
|
||
* read-rtl.cc (initialize_iterators): Likewise.
|
||
* real.cc: Likewise.
|
||
* real.h (struct real_value): Likewise.
|
||
(format_helper::format_helper): Likewise.
|
||
(real_hash): Likewise.
|
||
(real_can_shorten_arithmetic): Likewise.
|
||
* recog.cc (struct target_recog): Likewise.
|
||
(offsettable_nonstrict_memref_p): Likewise.
|
||
(constrain_operands): Likewise.
|
||
* recog.h (MAX_RECOG_ALTERNATIVES): Likewise.
|
||
(which_op_alt): Likewise.
|
||
(struct insn_gen_fn): Likewise.
|
||
* reg-notes.def (REG_NOTE): Likewise.
|
||
* reg-stack.cc: Likewise.
|
||
* regs.h (reg_is_parm_p): Likewise.
|
||
* regset.h: Likewise.
|
||
* reload.cc (push_reload): Likewise.
|
||
(find_reloads): Likewise.
|
||
(find_reloads_address_1): Likewise.
|
||
(find_replacement): Likewise.
|
||
(refers_to_regno_for_reload_p): Likewise.
|
||
(refers_to_mem_for_reload_p): Likewise.
|
||
* reload.h (push_reload): Likewise.
|
||
(deallocate_reload_reg): Likewise.
|
||
* reload1.cc (emit_input_reload_insns): Likewise.
|
||
* reorg.cc (relax_delay_slots): Likewise.
|
||
* rtl.def (UNKNOWN): Likewise.
|
||
(SEQUENCE): Likewise.
|
||
(BARRIER): Likewise.
|
||
(ASM_OPERANDS): Likewise.
|
||
(EQ_ATTR_ALT): Likewise.
|
||
* rtl.h (struct GTY): Likewise.
|
||
(LABEL_NAME): Likewise.
|
||
(LABEL_ALT_ENTRY_P): Likewise.
|
||
(SUBREG_BYTE): Likewise.
|
||
(get_stack_check_protect): Likewise.
|
||
(dump_rtx_statistics): Likewise.
|
||
(unwrap_const_vec_duplicate): Likewise.
|
||
(subreg_promoted_mode): Likewise.
|
||
(gen_lowpart_common): Likewise.
|
||
(operand_subword): Likewise.
|
||
(immed_wide_int_const): Likewise.
|
||
(decide_function_section): Likewise.
|
||
(active_insn_p): Likewise.
|
||
(delete_related_insns): Likewise.
|
||
(try_split): Likewise.
|
||
(val_signbit_known_clear_p): Likewise.
|
||
(simplifiable_subregs): Likewise.
|
||
(set_insn_deleted): Likewise.
|
||
(subreg_get_info): Likewise.
|
||
(remove_free_EXPR_LIST_node): Likewise.
|
||
(finish_subregs_of_mode): Likewise.
|
||
(get_mem_attrs): Likewise.
|
||
(lookup_constant_def): Likewise.
|
||
(rtx_to_tree_code): Likewise.
|
||
(hash_rtx): Likewise.
|
||
(condjump_in_parallel_p): Likewise.
|
||
(validate_subreg): Likewise.
|
||
(make_compound_operation): Likewise.
|
||
(schedule_ebbs): Likewise.
|
||
(print_inline_rtx): Likewise.
|
||
(fixup_args_size_notes): Likewise.
|
||
(expand_dec): Likewise.
|
||
(prepare_copy_insn): Likewise.
|
||
(mark_elimination): Likewise.
|
||
(valid_mode_changes_for_regno): Likewise.
|
||
(make_debug_expr_from_rtl): Likewise.
|
||
(delete_vta_debug_insns): Likewise.
|
||
(simplify_using_condition): Likewise.
|
||
(set_insn_locations): Likewise.
|
||
(fatal_insn_not_found): Likewise.
|
||
(word_register_operation_p): Likewise.
|
||
* rtlanal.cc (get_call_fndecl): Likewise.
|
||
(side_effects_p): Likewise.
|
||
(subreg_nregs): Likewise.
|
||
(rtx_cost): Likewise.
|
||
(canonicalize_condition): Likewise.
|
||
* rtlanal.h (rtx_properties::try_to_add_note): Likewise.
|
||
* run-rtl-passes.cc (run_rtl_passes): Likewise.
|
||
* sanitizer.def (BUILT_IN_ASAN_VERSION_MISMATCH_CHECK): Likewise.
|
||
* sched-deps.cc (add_dependence_1): Likewise.
|
||
* sched-ebb.cc (begin_move_insn): Likewise.
|
||
(add_deps_for_risky_insns): Likewise.
|
||
(advance_target_bb): Likewise.
|
||
* sched-int.h (reemit_notes): Likewise.
|
||
(struct _haifa_insn_data): Likewise.
|
||
(HID): Likewise.
|
||
(DEP_CANCELLED): Likewise.
|
||
(debug_ds): Likewise.
|
||
(number_in_ready): Likewise.
|
||
(schedule_ebbs_finish): Likewise.
|
||
(find_modifiable_mems): Likewise.
|
||
* sched-rgn.cc (debug_rgn_dependencies): Likewise.
|
||
* sel-sched-dump.cc (dump_lv_set): Likewise.
|
||
* sel-sched-dump.h: Likewise.
|
||
* sel-sched-ir.cc (sel_insn_rtx_cost): Likewise.
|
||
(setup_id_reg_sets): Likewise.
|
||
(has_dependence_p): Likewise.
|
||
(sel_num_cfg_preds_gt_1): Likewise.
|
||
(bb_ends_ebb_p): Likewise.
|
||
* sel-sched-ir.h (struct _list_node): Likewise.
|
||
(struct idata_def): Likewise.
|
||
(bb_next_bb): Likewise.
|
||
* sel-sched.cc (vinsn_writes_one_of_regs_p): Likewise.
|
||
(choose_best_pseudo_reg): Likewise.
|
||
(verify_target_availability): Likewise.
|
||
(can_speculate_dep_p): Likewise.
|
||
(sel_rank_for_schedule): Likewise.
|
||
* selftest-run-tests.cc (selftest::run_tests): Likewise.
|
||
* selftest.h (class auto_fix_quotes): Likewise.
|
||
* shrink-wrap.cc (handle_simple_exit): Likewise.
|
||
* shrink-wrap.h: Likewise.
|
||
* simplify-rtx.cc (simplify_context::simplify_associative_operation): Likewise.
|
||
(simplify_context::simplify_gen_vec_select): Likewise.
|
||
* spellcheck-tree.h: Likewise.
|
||
* spellcheck.h: Likewise.
|
||
* statistics.h (struct function): Likewise.
|
||
* stmt.cc (conditional_probability): Likewise.
|
||
* stmt.h: Likewise.
|
||
* stor-layout.h: Likewise.
|
||
* streamer-hooks.h: Likewise.
|
||
* stringpool.h: Likewise.
|
||
* symtab.cc (symbol_table::change_decl_assembler_name): Likewise.
|
||
* target.def (HOOK_VECTOR_END): Likewise.
|
||
(type.): Likewise.
|
||
* target.h (union cumulative_args_t): Likewise.
|
||
(by_pieces_ninsns): Likewise.
|
||
(class predefined_function_abi): Likewise.
|
||
* targhooks.cc (default_translate_mode_attribute): Likewise.
|
||
* timevar.def: Likewise.
|
||
* timevar.h (class timer): Likewise.
|
||
* toplev.h (enable_rtl_dump_file): Likewise.
|
||
* trans-mem.cc (collect_bb2reg): Likewise.
|
||
* tree-call-cdce.cc (gen_conditions_for_pow): Likewise.
|
||
* tree-cfg.cc (remove_bb): Likewise.
|
||
(verify_gimple_debug): Likewise.
|
||
(remove_edge_and_dominated_blocks): Likewise.
|
||
(push_fndecl): Likewise.
|
||
* tree-cfgcleanup.h (GCC_TREE_CFGCLEANUP_H): Likewise.
|
||
* tree-complex.cc (expand_complex_multiplication): Likewise.
|
||
(expand_complex_div_straight): Likewise.
|
||
* tree-core.h (enum tree_index): Likewise.
|
||
(enum operand_equal_flag): Likewise.
|
||
* tree-eh.cc (honor_protect_cleanup_actions): Likewise.
|
||
* tree-if-conv.cc (if_convertible_gimple_assign_stmt_p): Likewise.
|
||
* tree-inline.cc (initialize_inlined_parameters): Likewise.
|
||
* tree-inline.h (force_value_to_type): Likewise.
|
||
* tree-nested.cc (get_chain_decl): Likewise.
|
||
(walk_all_functions): Likewise.
|
||
* tree-object-size.h: Likewise.
|
||
* tree-outof-ssa.cc: Likewise.
|
||
* tree-parloops.cc (create_parallel_loop): Likewise.
|
||
* tree-pretty-print.cc (print_generic_expr_to_str): Likewise.
|
||
(dump_generic_node): Likewise.
|
||
* tree-profile.cc (tree_profiling): Likewise.
|
||
* tree-sra.cc (maybe_add_sra_candidate): Likewise.
|
||
* tree-ssa-address.cc: Likewise.
|
||
* tree-ssa-alias.cc: Likewise.
|
||
* tree-ssa-alias.h (ao_ref::max_size_known_p): Likewise.
|
||
(dump_alias_stats): Likewise.
|
||
* tree-ssa-ccp.cc: Likewise.
|
||
* tree-ssa-coalesce.h: Likewise.
|
||
* tree-ssa-live.cc (remove_unused_scope_block_p): Likewise.
|
||
* tree-ssa-loop-manip.cc (copy_phi_node_args): Likewise.
|
||
* tree-ssa-loop-unswitch.cc: Likewise.
|
||
* tree-ssa-math-opts.cc: Likewise.
|
||
* tree-ssa-operands.cc (class operands_scanner): Likewise.
|
||
* tree-ssa-pre.cc: Likewise.
|
||
* tree-ssa-reassoc.cc (optimize_ops_list): Likewise.
|
||
(debug_range_entry): Likewise.
|
||
* tree-ssa-sccvn.cc (eliminate_dom_walker::eliminate_stmt): Likewise.
|
||
* tree-ssa-sccvn.h (TREE_SSA_SCCVN_H): Likewise.
|
||
* tree-ssa-scopedtables.cc (add_expr_commutative): Likewise.
|
||
(equal_mem_array_ref_p): Likewise.
|
||
* tree-ssa-strlen.cc (is_strlen_related_p): Likewise.
|
||
* tree-ssa-strlen.h (get_range_strlen_dynamic): Likewise.
|
||
* tree-ssa-tail-merge.cc (stmt_local_def): Likewise.
|
||
* tree-ssa-ter.h: Likewise.
|
||
* tree-ssa-threadupdate.h (enum bb_dom_status): Likewise.
|
||
* tree-streamer-in.cc (lto_input_ts_block_tree_pointers): Likewise.
|
||
* tree-streamer-out.cc (pack_ts_block_value_fields): Likewise.
|
||
(write_ts_block_tree_pointers): Likewise.
|
||
* tree-streamer.h (struct streamer_tree_cache_d): Likewise.
|
||
(streamer_read_tree_bitfields): Likewise.
|
||
(streamer_write_integer_cst): Likewise.
|
||
* tree-vect-patterns.cc (apply_binop_and_append_stmt): Likewise.
|
||
(vect_synth_mult_by_constant): Likewise.
|
||
* tree-vect-stmts.cc (vectorizable_operation): Likewise.
|
||
* tree-vectorizer.cc: Likewise.
|
||
* tree-vectorizer.h (class auto_purge_vect_location): Likewise.
|
||
(vect_update_inits_of_drs): Likewise.
|
||
(vect_get_mask_type_for_stmt): Likewise.
|
||
(vect_rgroup_iv_might_wrap_p): Likewise.
|
||
(cse_and_gimplify_to_preheader): Likewise.
|
||
(vect_free_slp_tree): Likewise.
|
||
(vect_pattern_recog): Likewise.
|
||
(vect_stmt_dominates_stmt_p): Likewise.
|
||
* tree.cc (initialize_tree_contains_struct): Likewise.
|
||
(need_assembler_name_p): Likewise.
|
||
(type_with_interoperable_signedness): Likewise.
|
||
* tree.def (SWITCH_EXPR): Likewise.
|
||
* tree.h (TYPE_SYMTAB_ADDRESS): Likewise.
|
||
(poly_int_tree_p): Likewise.
|
||
(inlined_function_outer_scope_p): Likewise.
|
||
(tree_code_for_canonical_type_merging): Likewise.
|
||
* value-prof.cc: Likewise.
|
||
* value-prof.h (get_nth_most_common_value): Likewise.
|
||
(find_func_by_profile_id): Likewise.
|
||
* value-range.cc (vrp_operand_equal_p): Likewise.
|
||
* value-range.h: Likewise.
|
||
* var-tracking.cc: Likewise.
|
||
* varasm.cc (default_function_section): Likewise.
|
||
(function_section_1): Likewise.
|
||
(assemble_variable): Likewise.
|
||
(handle_vtv_comdat_section): Likewise.
|
||
* vec.h (struct vec_prefix): Likewise.
|
||
* vmsdbgout.cc (full_name): Likewise.
|
||
* vtable-verify.cc: Likewise.
|
||
* vtable-verify.h (struct vtv_graph_node): Likewise.
|
||
* xcoffout.cc: Likewise.
|
||
* xcoffout.h (DEBUG_SYMS_TEXT): Likewise.
|
||
|
||
2022-01-17 Martin Liska <mliska@suse.cz>
|
||
|
||
* adjust-alignment.c: Moved to...
|
||
* adjust-alignment.cc: ...here.
|
||
* alias.c: Moved to...
|
||
* alias.cc: ...here.
|
||
* alloc-pool.c: Moved to...
|
||
* alloc-pool.cc: ...here.
|
||
* asan.c: Moved to...
|
||
* asan.cc: ...here.
|
||
* attribs.c: Moved to...
|
||
* attribs.cc: ...here.
|
||
* auto-inc-dec.c: Moved to...
|
||
* auto-inc-dec.cc: ...here.
|
||
* auto-profile.c: Moved to...
|
||
* auto-profile.cc: ...here.
|
||
* bb-reorder.c: Moved to...
|
||
* bb-reorder.cc: ...here.
|
||
* bitmap.c: Moved to...
|
||
* bitmap.cc: ...here.
|
||
* btfout.c: Moved to...
|
||
* btfout.cc: ...here.
|
||
* builtins.c: Moved to...
|
||
* builtins.cc: ...here.
|
||
* caller-save.c: Moved to...
|
||
* caller-save.cc: ...here.
|
||
* calls.c: Moved to...
|
||
* calls.cc: ...here.
|
||
* ccmp.c: Moved to...
|
||
* ccmp.cc: ...here.
|
||
* cfg.c: Moved to...
|
||
* cfg.cc: ...here.
|
||
* cfganal.c: Moved to...
|
||
* cfganal.cc: ...here.
|
||
* cfgbuild.c: Moved to...
|
||
* cfgbuild.cc: ...here.
|
||
* cfgcleanup.c: Moved to...
|
||
* cfgcleanup.cc: ...here.
|
||
* cfgexpand.c: Moved to...
|
||
* cfgexpand.cc: ...here.
|
||
* cfghooks.c: Moved to...
|
||
* cfghooks.cc: ...here.
|
||
* cfgloop.c: Moved to...
|
||
* cfgloop.cc: ...here.
|
||
* cfgloopanal.c: Moved to...
|
||
* cfgloopanal.cc: ...here.
|
||
* cfgloopmanip.c: Moved to...
|
||
* cfgloopmanip.cc: ...here.
|
||
* cfgrtl.c: Moved to...
|
||
* cfgrtl.cc: ...here.
|
||
* cgraph.c: Moved to...
|
||
* cgraph.cc: ...here.
|
||
* cgraphbuild.c: Moved to...
|
||
* cgraphbuild.cc: ...here.
|
||
* cgraphclones.c: Moved to...
|
||
* cgraphclones.cc: ...here.
|
||
* cgraphunit.c: Moved to...
|
||
* cgraphunit.cc: ...here.
|
||
* collect-utils.c: Moved to...
|
||
* collect-utils.cc: ...here.
|
||
* collect2-aix.c: Moved to...
|
||
* collect2-aix.cc: ...here.
|
||
* collect2.c: Moved to...
|
||
* collect2.cc: ...here.
|
||
* combine-stack-adj.c: Moved to...
|
||
* combine-stack-adj.cc: ...here.
|
||
* combine.c: Moved to...
|
||
* combine.cc: ...here.
|
||
* common/common-targhooks.c: Moved to...
|
||
* common/common-targhooks.cc: ...here.
|
||
* common/config/aarch64/aarch64-common.c: Moved to...
|
||
* common/config/aarch64/aarch64-common.cc: ...here.
|
||
* common/config/alpha/alpha-common.c: Moved to...
|
||
* common/config/alpha/alpha-common.cc: ...here.
|
||
* common/config/arc/arc-common.c: Moved to...
|
||
* common/config/arc/arc-common.cc: ...here.
|
||
* common/config/arm/arm-common.c: Moved to...
|
||
* common/config/arm/arm-common.cc: ...here.
|
||
* common/config/avr/avr-common.c: Moved to...
|
||
* common/config/avr/avr-common.cc: ...here.
|
||
* common/config/bfin/bfin-common.c: Moved to...
|
||
* common/config/bfin/bfin-common.cc: ...here.
|
||
* common/config/bpf/bpf-common.c: Moved to...
|
||
* common/config/bpf/bpf-common.cc: ...here.
|
||
* common/config/c6x/c6x-common.c: Moved to...
|
||
* common/config/c6x/c6x-common.cc: ...here.
|
||
* common/config/cr16/cr16-common.c: Moved to...
|
||
* common/config/cr16/cr16-common.cc: ...here.
|
||
* common/config/cris/cris-common.c: Moved to...
|
||
* common/config/cris/cris-common.cc: ...here.
|
||
* common/config/csky/csky-common.c: Moved to...
|
||
* common/config/csky/csky-common.cc: ...here.
|
||
* common/config/default-common.c: Moved to...
|
||
* common/config/default-common.cc: ...here.
|
||
* common/config/epiphany/epiphany-common.c: Moved to...
|
||
* common/config/epiphany/epiphany-common.cc: ...here.
|
||
* common/config/fr30/fr30-common.c: Moved to...
|
||
* common/config/fr30/fr30-common.cc: ...here.
|
||
* common/config/frv/frv-common.c: Moved to...
|
||
* common/config/frv/frv-common.cc: ...here.
|
||
* common/config/gcn/gcn-common.c: Moved to...
|
||
* common/config/gcn/gcn-common.cc: ...here.
|
||
* common/config/h8300/h8300-common.c: Moved to...
|
||
* common/config/h8300/h8300-common.cc: ...here.
|
||
* common/config/i386/i386-common.c: Moved to...
|
||
* common/config/i386/i386-common.cc: ...here.
|
||
* common/config/ia64/ia64-common.c: Moved to...
|
||
* common/config/ia64/ia64-common.cc: ...here.
|
||
* common/config/iq2000/iq2000-common.c: Moved to...
|
||
* common/config/iq2000/iq2000-common.cc: ...here.
|
||
* common/config/lm32/lm32-common.c: Moved to...
|
||
* common/config/lm32/lm32-common.cc: ...here.
|
||
* common/config/m32r/m32r-common.c: Moved to...
|
||
* common/config/m32r/m32r-common.cc: ...here.
|
||
* common/config/m68k/m68k-common.c: Moved to...
|
||
* common/config/m68k/m68k-common.cc: ...here.
|
||
* common/config/mcore/mcore-common.c: Moved to...
|
||
* common/config/mcore/mcore-common.cc: ...here.
|
||
* common/config/microblaze/microblaze-common.c: Moved to...
|
||
* common/config/microblaze/microblaze-common.cc: ...here.
|
||
* common/config/mips/mips-common.c: Moved to...
|
||
* common/config/mips/mips-common.cc: ...here.
|
||
* common/config/mmix/mmix-common.c: Moved to...
|
||
* common/config/mmix/mmix-common.cc: ...here.
|
||
* common/config/mn10300/mn10300-common.c: Moved to...
|
||
* common/config/mn10300/mn10300-common.cc: ...here.
|
||
* common/config/msp430/msp430-common.c: Moved to...
|
||
* common/config/msp430/msp430-common.cc: ...here.
|
||
* common/config/nds32/nds32-common.c: Moved to...
|
||
* common/config/nds32/nds32-common.cc: ...here.
|
||
* common/config/nios2/nios2-common.c: Moved to...
|
||
* common/config/nios2/nios2-common.cc: ...here.
|
||
* common/config/nvptx/nvptx-common.c: Moved to...
|
||
* common/config/nvptx/nvptx-common.cc: ...here.
|
||
* common/config/or1k/or1k-common.c: Moved to...
|
||
* common/config/or1k/or1k-common.cc: ...here.
|
||
* common/config/pa/pa-common.c: Moved to...
|
||
* common/config/pa/pa-common.cc: ...here.
|
||
* common/config/pdp11/pdp11-common.c: Moved to...
|
||
* common/config/pdp11/pdp11-common.cc: ...here.
|
||
* common/config/pru/pru-common.c: Moved to...
|
||
* common/config/pru/pru-common.cc: ...here.
|
||
* common/config/riscv/riscv-common.c: Moved to...
|
||
* common/config/riscv/riscv-common.cc: ...here.
|
||
* common/config/rs6000/rs6000-common.c: Moved to...
|
||
* common/config/rs6000/rs6000-common.cc: ...here.
|
||
* common/config/rx/rx-common.c: Moved to...
|
||
* common/config/rx/rx-common.cc: ...here.
|
||
* common/config/s390/s390-common.c: Moved to...
|
||
* common/config/s390/s390-common.cc: ...here.
|
||
* common/config/sh/sh-common.c: Moved to...
|
||
* common/config/sh/sh-common.cc: ...here.
|
||
* common/config/sparc/sparc-common.c: Moved to...
|
||
* common/config/sparc/sparc-common.cc: ...here.
|
||
* common/config/tilegx/tilegx-common.c: Moved to...
|
||
* common/config/tilegx/tilegx-common.cc: ...here.
|
||
* common/config/tilepro/tilepro-common.c: Moved to...
|
||
* common/config/tilepro/tilepro-common.cc: ...here.
|
||
* common/config/v850/v850-common.c: Moved to...
|
||
* common/config/v850/v850-common.cc: ...here.
|
||
* common/config/vax/vax-common.c: Moved to...
|
||
* common/config/vax/vax-common.cc: ...here.
|
||
* common/config/visium/visium-common.c: Moved to...
|
||
* common/config/visium/visium-common.cc: ...here.
|
||
* common/config/xstormy16/xstormy16-common.c: Moved to...
|
||
* common/config/xstormy16/xstormy16-common.cc: ...here.
|
||
* common/config/xtensa/xtensa-common.c: Moved to...
|
||
* common/config/xtensa/xtensa-common.cc: ...here.
|
||
* compare-elim.c: Moved to...
|
||
* compare-elim.cc: ...here.
|
||
* config/aarch64/aarch64-bti-insert.c: Moved to...
|
||
* config/aarch64/aarch64-bti-insert.cc: ...here.
|
||
* config/aarch64/aarch64-builtins.c: Moved to...
|
||
* config/aarch64/aarch64-builtins.cc: ...here.
|
||
* config/aarch64/aarch64-c.c: Moved to...
|
||
* config/aarch64/aarch64-c.cc: ...here.
|
||
* config/aarch64/aarch64-d.c: Moved to...
|
||
* config/aarch64/aarch64-d.cc: ...here.
|
||
* config/aarch64/aarch64.c: Moved to...
|
||
* config/aarch64/aarch64.cc: ...here.
|
||
* config/aarch64/cortex-a57-fma-steering.c: Moved to...
|
||
* config/aarch64/cortex-a57-fma-steering.cc: ...here.
|
||
* config/aarch64/driver-aarch64.c: Moved to...
|
||
* config/aarch64/driver-aarch64.cc: ...here.
|
||
* config/aarch64/falkor-tag-collision-avoidance.c: Moved to...
|
||
* config/aarch64/falkor-tag-collision-avoidance.cc: ...here.
|
||
* config/aarch64/host-aarch64-darwin.c: Moved to...
|
||
* config/aarch64/host-aarch64-darwin.cc: ...here.
|
||
* config/alpha/alpha.c: Moved to...
|
||
* config/alpha/alpha.cc: ...here.
|
||
* config/alpha/driver-alpha.c: Moved to...
|
||
* config/alpha/driver-alpha.cc: ...here.
|
||
* config/arc/arc-c.c: Moved to...
|
||
* config/arc/arc-c.cc: ...here.
|
||
* config/arc/arc.c: Moved to...
|
||
* config/arc/arc.cc: ...here.
|
||
* config/arc/driver-arc.c: Moved to...
|
||
* config/arc/driver-arc.cc: ...here.
|
||
* config/arm/aarch-common.c: Moved to...
|
||
* config/arm/aarch-common.cc: ...here.
|
||
* config/arm/arm-builtins.c: Moved to...
|
||
* config/arm/arm-builtins.cc: ...here.
|
||
* config/arm/arm-c.c: Moved to...
|
||
* config/arm/arm-c.cc: ...here.
|
||
* config/arm/arm-d.c: Moved to...
|
||
* config/arm/arm-d.cc: ...here.
|
||
* config/arm/arm.c: Moved to...
|
||
* config/arm/arm.cc: ...here.
|
||
* config/arm/driver-arm.c: Moved to...
|
||
* config/arm/driver-arm.cc: ...here.
|
||
* config/avr/avr-c.c: Moved to...
|
||
* config/avr/avr-c.cc: ...here.
|
||
* config/avr/avr-devices.c: Moved to...
|
||
* config/avr/avr-devices.cc: ...here.
|
||
* config/avr/avr-log.c: Moved to...
|
||
* config/avr/avr-log.cc: ...here.
|
||
* config/avr/avr.c: Moved to...
|
||
* config/avr/avr.cc: ...here.
|
||
* config/avr/driver-avr.c: Moved to...
|
||
* config/avr/driver-avr.cc: ...here.
|
||
* config/avr/gen-avr-mmcu-specs.c: Moved to...
|
||
* config/avr/gen-avr-mmcu-specs.cc: ...here.
|
||
* config/avr/gen-avr-mmcu-texi.c: Moved to...
|
||
* config/avr/gen-avr-mmcu-texi.cc: ...here.
|
||
* config/bfin/bfin.c: Moved to...
|
||
* config/bfin/bfin.cc: ...here.
|
||
* config/bpf/bpf.c: Moved to...
|
||
* config/bpf/bpf.cc: ...here.
|
||
* config/bpf/coreout.c: Moved to...
|
||
* config/bpf/coreout.cc: ...here.
|
||
* config/c6x/c6x.c: Moved to...
|
||
* config/c6x/c6x.cc: ...here.
|
||
* config/cr16/cr16.c: Moved to...
|
||
* config/cr16/cr16.cc: ...here.
|
||
* config/cris/cris.c: Moved to...
|
||
* config/cris/cris.cc: ...here.
|
||
* config/csky/csky.c: Moved to...
|
||
* config/csky/csky.cc: ...here.
|
||
* config/darwin-c.c: Moved to...
|
||
* config/darwin-c.cc: ...here.
|
||
* config/darwin-d.c: Moved to...
|
||
* config/darwin-d.cc: ...here.
|
||
* config/darwin-driver.c: Moved to...
|
||
* config/darwin-driver.cc: ...here.
|
||
* config/darwin-f.c: Moved to...
|
||
* config/darwin-f.cc: ...here.
|
||
* config/darwin.c: Moved to...
|
||
* config/darwin.cc: ...here.
|
||
* config/default-c.c: Moved to...
|
||
* config/default-c.cc: ...here.
|
||
* config/default-d.c: Moved to...
|
||
* config/default-d.cc: ...here.
|
||
* config/dragonfly-d.c: Moved to...
|
||
* config/dragonfly-d.cc: ...here.
|
||
* config/epiphany/epiphany.c: Moved to...
|
||
* config/epiphany/epiphany.cc: ...here.
|
||
* config/epiphany/mode-switch-use.c: Moved to...
|
||
* config/epiphany/mode-switch-use.cc: ...here.
|
||
* config/epiphany/resolve-sw-modes.c: Moved to...
|
||
* config/epiphany/resolve-sw-modes.cc: ...here.
|
||
* config/fr30/fr30.c: Moved to...
|
||
* config/fr30/fr30.cc: ...here.
|
||
* config/freebsd-d.c: Moved to...
|
||
* config/freebsd-d.cc: ...here.
|
||
* config/frv/frv.c: Moved to...
|
||
* config/frv/frv.cc: ...here.
|
||
* config/ft32/ft32.c: Moved to...
|
||
* config/ft32/ft32.cc: ...here.
|
||
* config/gcn/driver-gcn.c: Moved to...
|
||
* config/gcn/driver-gcn.cc: ...here.
|
||
* config/gcn/gcn-run.c: Moved to...
|
||
* config/gcn/gcn-run.cc: ...here.
|
||
* config/gcn/gcn-tree.c: Moved to...
|
||
* config/gcn/gcn-tree.cc: ...here.
|
||
* config/gcn/gcn.c: Moved to...
|
||
* config/gcn/gcn.cc: ...here.
|
||
* config/gcn/mkoffload.c: Moved to...
|
||
* config/gcn/mkoffload.cc: ...here.
|
||
* config/glibc-c.c: Moved to...
|
||
* config/glibc-c.cc: ...here.
|
||
* config/glibc-d.c: Moved to...
|
||
* config/glibc-d.cc: ...here.
|
||
* config/h8300/h8300.c: Moved to...
|
||
* config/h8300/h8300.cc: ...here.
|
||
* config/host-darwin.c: Moved to...
|
||
* config/host-darwin.cc: ...here.
|
||
* config/host-hpux.c: Moved to...
|
||
* config/host-hpux.cc: ...here.
|
||
* config/host-linux.c: Moved to...
|
||
* config/host-linux.cc: ...here.
|
||
* config/host-netbsd.c: Moved to...
|
||
* config/host-netbsd.cc: ...here.
|
||
* config/host-openbsd.c: Moved to...
|
||
* config/host-openbsd.cc: ...here.
|
||
* config/host-solaris.c: Moved to...
|
||
* config/host-solaris.cc: ...here.
|
||
* config/i386/djgpp.c: Moved to...
|
||
* config/i386/djgpp.cc: ...here.
|
||
* config/i386/driver-i386.c: Moved to...
|
||
* config/i386/driver-i386.cc: ...here.
|
||
* config/i386/driver-mingw32.c: Moved to...
|
||
* config/i386/driver-mingw32.cc: ...here.
|
||
* config/i386/gnu-property.c: Moved to...
|
||
* config/i386/gnu-property.cc: ...here.
|
||
* config/i386/host-cygwin.c: Moved to...
|
||
* config/i386/host-cygwin.cc: ...here.
|
||
* config/i386/host-i386-darwin.c: Moved to...
|
||
* config/i386/host-i386-darwin.cc: ...here.
|
||
* config/i386/host-mingw32.c: Moved to...
|
||
* config/i386/host-mingw32.cc: ...here.
|
||
* config/i386/i386-builtins.c: Moved to...
|
||
* config/i386/i386-builtins.cc: ...here.
|
||
* config/i386/i386-c.c: Moved to...
|
||
* config/i386/i386-c.cc: ...here.
|
||
* config/i386/i386-d.c: Moved to...
|
||
* config/i386/i386-d.cc: ...here.
|
||
* config/i386/i386-expand.c: Moved to...
|
||
* config/i386/i386-expand.cc: ...here.
|
||
* config/i386/i386-features.c: Moved to...
|
||
* config/i386/i386-features.cc: ...here.
|
||
* config/i386/i386-options.c: Moved to...
|
||
* config/i386/i386-options.cc: ...here.
|
||
* config/i386/i386.c: Moved to...
|
||
* config/i386/i386.cc: ...here.
|
||
* config/i386/intelmic-mkoffload.c: Moved to...
|
||
* config/i386/intelmic-mkoffload.cc: ...here.
|
||
* config/i386/msformat-c.c: Moved to...
|
||
* config/i386/msformat-c.cc: ...here.
|
||
* config/i386/winnt-cxx.c: Moved to...
|
||
* config/i386/winnt-cxx.cc: ...here.
|
||
* config/i386/winnt-d.c: Moved to...
|
||
* config/i386/winnt-d.cc: ...here.
|
||
* config/i386/winnt-stubs.c: Moved to...
|
||
* config/i386/winnt-stubs.cc: ...here.
|
||
* config/i386/winnt.c: Moved to...
|
||
* config/i386/winnt.cc: ...here.
|
||
* config/i386/x86-tune-sched-atom.c: Moved to...
|
||
* config/i386/x86-tune-sched-atom.cc: ...here.
|
||
* config/i386/x86-tune-sched-bd.c: Moved to...
|
||
* config/i386/x86-tune-sched-bd.cc: ...here.
|
||
* config/i386/x86-tune-sched-core.c: Moved to...
|
||
* config/i386/x86-tune-sched-core.cc: ...here.
|
||
* config/i386/x86-tune-sched.c: Moved to...
|
||
* config/i386/x86-tune-sched.cc: ...here.
|
||
* config/ia64/ia64-c.c: Moved to...
|
||
* config/ia64/ia64-c.cc: ...here.
|
||
* config/ia64/ia64.c: Moved to...
|
||
* config/ia64/ia64.cc: ...here.
|
||
* config/iq2000/iq2000.c: Moved to...
|
||
* config/iq2000/iq2000.cc: ...here.
|
||
* config/linux.c: Moved to...
|
||
* config/linux.cc: ...here.
|
||
* config/lm32/lm32.c: Moved to...
|
||
* config/lm32/lm32.cc: ...here.
|
||
* config/m32c/m32c-pragma.c: Moved to...
|
||
* config/m32c/m32c-pragma.cc: ...here.
|
||
* config/m32c/m32c.c: Moved to...
|
||
* config/m32c/m32c.cc: ...here.
|
||
* config/m32r/m32r.c: Moved to...
|
||
* config/m32r/m32r.cc: ...here.
|
||
* config/m68k/m68k.c: Moved to...
|
||
* config/m68k/m68k.cc: ...here.
|
||
* config/mcore/mcore.c: Moved to...
|
||
* config/mcore/mcore.cc: ...here.
|
||
* config/microblaze/microblaze-c.c: Moved to...
|
||
* config/microblaze/microblaze-c.cc: ...here.
|
||
* config/microblaze/microblaze.c: Moved to...
|
||
* config/microblaze/microblaze.cc: ...here.
|
||
* config/mips/driver-native.c: Moved to...
|
||
* config/mips/driver-native.cc: ...here.
|
||
* config/mips/frame-header-opt.c: Moved to...
|
||
* config/mips/frame-header-opt.cc: ...here.
|
||
* config/mips/mips-d.c: Moved to...
|
||
* config/mips/mips-d.cc: ...here.
|
||
* config/mips/mips.c: Moved to...
|
||
* config/mips/mips.cc: ...here.
|
||
* config/mmix/mmix.c: Moved to...
|
||
* config/mmix/mmix.cc: ...here.
|
||
* config/mn10300/mn10300.c: Moved to...
|
||
* config/mn10300/mn10300.cc: ...here.
|
||
* config/moxie/moxie.c: Moved to...
|
||
* config/moxie/moxie.cc: ...here.
|
||
* config/msp430/driver-msp430.c: Moved to...
|
||
* config/msp430/driver-msp430.cc: ...here.
|
||
* config/msp430/msp430-c.c: Moved to...
|
||
* config/msp430/msp430-c.cc: ...here.
|
||
* config/msp430/msp430-devices.c: Moved to...
|
||
* config/msp430/msp430-devices.cc: ...here.
|
||
* config/msp430/msp430.c: Moved to...
|
||
* config/msp430/msp430.cc: ...here.
|
||
* config/nds32/nds32-cost.c: Moved to...
|
||
* config/nds32/nds32-cost.cc: ...here.
|
||
* config/nds32/nds32-fp-as-gp.c: Moved to...
|
||
* config/nds32/nds32-fp-as-gp.cc: ...here.
|
||
* config/nds32/nds32-intrinsic.c: Moved to...
|
||
* config/nds32/nds32-intrinsic.cc: ...here.
|
||
* config/nds32/nds32-isr.c: Moved to...
|
||
* config/nds32/nds32-isr.cc: ...here.
|
||
* config/nds32/nds32-md-auxiliary.c: Moved to...
|
||
* config/nds32/nds32-md-auxiliary.cc: ...here.
|
||
* config/nds32/nds32-memory-manipulation.c: Moved to...
|
||
* config/nds32/nds32-memory-manipulation.cc: ...here.
|
||
* config/nds32/nds32-pipelines-auxiliary.c: Moved to...
|
||
* config/nds32/nds32-pipelines-auxiliary.cc: ...here.
|
||
* config/nds32/nds32-predicates.c: Moved to...
|
||
* config/nds32/nds32-predicates.cc: ...here.
|
||
* config/nds32/nds32-relax-opt.c: Moved to...
|
||
* config/nds32/nds32-relax-opt.cc: ...here.
|
||
* config/nds32/nds32-utils.c: Moved to...
|
||
* config/nds32/nds32-utils.cc: ...here.
|
||
* config/nds32/nds32.c: Moved to...
|
||
* config/nds32/nds32.cc: ...here.
|
||
* config/netbsd-d.c: Moved to...
|
||
* config/netbsd-d.cc: ...here.
|
||
* config/netbsd.c: Moved to...
|
||
* config/netbsd.cc: ...here.
|
||
* config/nios2/nios2.c: Moved to...
|
||
* config/nios2/nios2.cc: ...here.
|
||
* config/nvptx/mkoffload.c: Moved to...
|
||
* config/nvptx/mkoffload.cc: ...here.
|
||
* config/nvptx/nvptx-c.c: Moved to...
|
||
* config/nvptx/nvptx-c.cc: ...here.
|
||
* config/nvptx/nvptx.c: Moved to...
|
||
* config/nvptx/nvptx.cc: ...here.
|
||
* config/openbsd-d.c: Moved to...
|
||
* config/openbsd-d.cc: ...here.
|
||
* config/or1k/or1k.c: Moved to...
|
||
* config/or1k/or1k.cc: ...here.
|
||
* config/pa/pa-d.c: Moved to...
|
||
* config/pa/pa-d.cc: ...here.
|
||
* config/pa/pa.c: Moved to...
|
||
* config/pa/pa.cc: ...here.
|
||
* config/pdp11/pdp11.c: Moved to...
|
||
* config/pdp11/pdp11.cc: ...here.
|
||
* config/pru/pru-passes.c: Moved to...
|
||
* config/pru/pru-passes.cc: ...here.
|
||
* config/pru/pru-pragma.c: Moved to...
|
||
* config/pru/pru-pragma.cc: ...here.
|
||
* config/pru/pru.c: Moved to...
|
||
* config/pru/pru.cc: ...here.
|
||
* config/riscv/riscv-builtins.c: Moved to...
|
||
* config/riscv/riscv-builtins.cc: ...here.
|
||
* config/riscv/riscv-c.c: Moved to...
|
||
* config/riscv/riscv-c.cc: ...here.
|
||
* config/riscv/riscv-d.c: Moved to...
|
||
* config/riscv/riscv-d.cc: ...here.
|
||
* config/riscv/riscv-shorten-memrefs.c: Moved to...
|
||
* config/riscv/riscv-shorten-memrefs.cc: ...here.
|
||
* config/riscv/riscv-sr.c: Moved to...
|
||
* config/riscv/riscv-sr.cc: ...here.
|
||
* config/riscv/riscv.c: Moved to...
|
||
* config/riscv/riscv.cc: ...here.
|
||
* config/rl78/rl78-c.c: Moved to...
|
||
* config/rl78/rl78-c.cc: ...here.
|
||
* config/rl78/rl78.c: Moved to...
|
||
* config/rl78/rl78.cc: ...here.
|
||
* config/rs6000/driver-rs6000.c: Moved to...
|
||
* config/rs6000/driver-rs6000.cc: ...here.
|
||
* config/rs6000/host-darwin.c: Moved to...
|
||
* config/rs6000/host-darwin.cc: ...here.
|
||
* config/rs6000/host-ppc64-darwin.c: Moved to...
|
||
* config/rs6000/host-ppc64-darwin.cc: ...here.
|
||
* config/rs6000/rbtree.c: Moved to...
|
||
* config/rs6000/rbtree.cc: ...here.
|
||
* config/rs6000/rs6000-c.c: Moved to...
|
||
* config/rs6000/rs6000-c.cc: ...here.
|
||
* config/rs6000/rs6000-call.c: Moved to...
|
||
* config/rs6000/rs6000-call.cc: ...here.
|
||
* config/rs6000/rs6000-d.c: Moved to...
|
||
* config/rs6000/rs6000-d.cc: ...here.
|
||
* config/rs6000/rs6000-gen-builtins.c: Moved to...
|
||
* config/rs6000/rs6000-gen-builtins.cc: ...here.
|
||
* config/rs6000/rs6000-linux.c: Moved to...
|
||
* config/rs6000/rs6000-linux.cc: ...here.
|
||
* config/rs6000/rs6000-logue.c: Moved to...
|
||
* config/rs6000/rs6000-logue.cc: ...here.
|
||
* config/rs6000/rs6000-p8swap.c: Moved to...
|
||
* config/rs6000/rs6000-p8swap.cc: ...here.
|
||
* config/rs6000/rs6000-pcrel-opt.c: Moved to...
|
||
* config/rs6000/rs6000-pcrel-opt.cc: ...here.
|
||
* config/rs6000/rs6000-string.c: Moved to...
|
||
* config/rs6000/rs6000-string.cc: ...here.
|
||
* config/rs6000/rs6000.c: Moved to...
|
||
* config/rs6000/rs6000.cc: ...here.
|
||
* config/rx/rx.c: Moved to...
|
||
* config/rx/rx.cc: ...here.
|
||
* config/s390/driver-native.c: Moved to...
|
||
* config/s390/driver-native.cc: ...here.
|
||
* config/s390/s390-c.c: Moved to...
|
||
* config/s390/s390-c.cc: ...here.
|
||
* config/s390/s390-d.c: Moved to...
|
||
* config/s390/s390-d.cc: ...here.
|
||
* config/s390/s390.c: Moved to...
|
||
* config/s390/s390.cc: ...here.
|
||
* config/sh/divtab-sh4-300.c: Moved to...
|
||
* config/sh/divtab-sh4-300.cc: ...here.
|
||
* config/sh/divtab-sh4.c: Moved to...
|
||
* config/sh/divtab-sh4.cc: ...here.
|
||
* config/sh/divtab.c: Moved to...
|
||
* config/sh/divtab.cc: ...here.
|
||
* config/sh/sh-c.c: Moved to...
|
||
* config/sh/sh-c.cc: ...here.
|
||
* config/sh/sh.c: Moved to...
|
||
* config/sh/sh.cc: ...here.
|
||
* config/sol2-c.c: Moved to...
|
||
* config/sol2-c.cc: ...here.
|
||
* config/sol2-cxx.c: Moved to...
|
||
* config/sol2-cxx.cc: ...here.
|
||
* config/sol2-d.c: Moved to...
|
||
* config/sol2-d.cc: ...here.
|
||
* config/sol2-stubs.c: Moved to...
|
||
* config/sol2-stubs.cc: ...here.
|
||
* config/sol2.c: Moved to...
|
||
* config/sol2.cc: ...here.
|
||
* config/sparc/driver-sparc.c: Moved to...
|
||
* config/sparc/driver-sparc.cc: ...here.
|
||
* config/sparc/sparc-c.c: Moved to...
|
||
* config/sparc/sparc-c.cc: ...here.
|
||
* config/sparc/sparc-d.c: Moved to...
|
||
* config/sparc/sparc-d.cc: ...here.
|
||
* config/sparc/sparc.c: Moved to...
|
||
* config/sparc/sparc.cc: ...here.
|
||
* config/stormy16/stormy16.c: Moved to...
|
||
* config/stormy16/stormy16.cc: ...here.
|
||
* config/tilegx/mul-tables.c: Moved to...
|
||
* config/tilegx/mul-tables.cc: ...here.
|
||
* config/tilegx/tilegx-c.c: Moved to...
|
||
* config/tilegx/tilegx-c.cc: ...here.
|
||
* config/tilegx/tilegx.c: Moved to...
|
||
* config/tilegx/tilegx.cc: ...here.
|
||
* config/tilepro/mul-tables.c: Moved to...
|
||
* config/tilepro/mul-tables.cc: ...here.
|
||
* config/tilepro/tilepro-c.c: Moved to...
|
||
* config/tilepro/tilepro-c.cc: ...here.
|
||
* config/tilepro/tilepro.c: Moved to...
|
||
* config/tilepro/tilepro.cc: ...here.
|
||
* config/v850/v850-c.c: Moved to...
|
||
* config/v850/v850-c.cc: ...here.
|
||
* config/v850/v850.c: Moved to...
|
||
* config/v850/v850.cc: ...here.
|
||
* config/vax/vax.c: Moved to...
|
||
* config/vax/vax.cc: ...here.
|
||
* config/visium/visium.c: Moved to...
|
||
* config/visium/visium.cc: ...here.
|
||
* config/vms/vms-c.c: Moved to...
|
||
* config/vms/vms-c.cc: ...here.
|
||
* config/vms/vms-f.c: Moved to...
|
||
* config/vms/vms-f.cc: ...here.
|
||
* config/vms/vms.c: Moved to...
|
||
* config/vms/vms.cc: ...here.
|
||
* config/vxworks-c.c: Moved to...
|
||
* config/vxworks-c.cc: ...here.
|
||
* config/vxworks.c: Moved to...
|
||
* config/vxworks.cc: ...here.
|
||
* config/winnt-c.c: Moved to...
|
||
* config/winnt-c.cc: ...here.
|
||
* config/xtensa/xtensa.c: Moved to...
|
||
* config/xtensa/xtensa.cc: ...here.
|
||
* context.c: Moved to...
|
||
* context.cc: ...here.
|
||
* convert.c: Moved to...
|
||
* convert.cc: ...here.
|
||
* coverage.c: Moved to...
|
||
* coverage.cc: ...here.
|
||
* cppbuiltin.c: Moved to...
|
||
* cppbuiltin.cc: ...here.
|
||
* cppdefault.c: Moved to...
|
||
* cppdefault.cc: ...here.
|
||
* cprop.c: Moved to...
|
||
* cprop.cc: ...here.
|
||
* cse.c: Moved to...
|
||
* cse.cc: ...here.
|
||
* cselib.c: Moved to...
|
||
* cselib.cc: ...here.
|
||
* ctfc.c: Moved to...
|
||
* ctfc.cc: ...here.
|
||
* ctfout.c: Moved to...
|
||
* ctfout.cc: ...here.
|
||
* data-streamer-in.c: Moved to...
|
||
* data-streamer-in.cc: ...here.
|
||
* data-streamer-out.c: Moved to...
|
||
* data-streamer-out.cc: ...here.
|
||
* data-streamer.c: Moved to...
|
||
* data-streamer.cc: ...here.
|
||
* dbgcnt.c: Moved to...
|
||
* dbgcnt.cc: ...here.
|
||
* dbxout.c: Moved to...
|
||
* dbxout.cc: ...here.
|
||
* dce.c: Moved to...
|
||
* dce.cc: ...here.
|
||
* ddg.c: Moved to...
|
||
* ddg.cc: ...here.
|
||
* debug.c: Moved to...
|
||
* debug.cc: ...here.
|
||
* df-core.c: Moved to...
|
||
* df-core.cc: ...here.
|
||
* df-problems.c: Moved to...
|
||
* df-problems.cc: ...here.
|
||
* df-scan.c: Moved to...
|
||
* df-scan.cc: ...here.
|
||
* dfp.c: Moved to...
|
||
* dfp.cc: ...here.
|
||
* diagnostic-color.c: Moved to...
|
||
* diagnostic-color.cc: ...here.
|
||
* diagnostic-show-locus.c: Moved to...
|
||
* diagnostic-show-locus.cc: ...here.
|
||
* diagnostic-spec.c: Moved to...
|
||
* diagnostic-spec.cc: ...here.
|
||
* diagnostic.c: Moved to...
|
||
* diagnostic.cc: ...here.
|
||
* dojump.c: Moved to...
|
||
* dojump.cc: ...here.
|
||
* dominance.c: Moved to...
|
||
* dominance.cc: ...here.
|
||
* domwalk.c: Moved to...
|
||
* domwalk.cc: ...here.
|
||
* double-int.c: Moved to...
|
||
* double-int.cc: ...here.
|
||
* dse.c: Moved to...
|
||
* dse.cc: ...here.
|
||
* dumpfile.c: Moved to...
|
||
* dumpfile.cc: ...here.
|
||
* dwarf2asm.c: Moved to...
|
||
* dwarf2asm.cc: ...here.
|
||
* dwarf2cfi.c: Moved to...
|
||
* dwarf2cfi.cc: ...here.
|
||
* dwarf2ctf.c: Moved to...
|
||
* dwarf2ctf.cc: ...here.
|
||
* dwarf2out.c: Moved to...
|
||
* dwarf2out.cc: ...here.
|
||
* early-remat.c: Moved to...
|
||
* early-remat.cc: ...here.
|
||
* edit-context.c: Moved to...
|
||
* edit-context.cc: ...here.
|
||
* emit-rtl.c: Moved to...
|
||
* emit-rtl.cc: ...here.
|
||
* errors.c: Moved to...
|
||
* errors.cc: ...here.
|
||
* et-forest.c: Moved to...
|
||
* et-forest.cc: ...here.
|
||
* except.c: Moved to...
|
||
* except.cc: ...here.
|
||
* explow.c: Moved to...
|
||
* explow.cc: ...here.
|
||
* expmed.c: Moved to...
|
||
* expmed.cc: ...here.
|
||
* expr.c: Moved to...
|
||
* expr.cc: ...here.
|
||
* fibonacci_heap.c: Moved to...
|
||
* fibonacci_heap.cc: ...here.
|
||
* file-find.c: Moved to...
|
||
* file-find.cc: ...here.
|
||
* file-prefix-map.c: Moved to...
|
||
* file-prefix-map.cc: ...here.
|
||
* final.c: Moved to...
|
||
* final.cc: ...here.
|
||
* fixed-value.c: Moved to...
|
||
* fixed-value.cc: ...here.
|
||
* fold-const-call.c: Moved to...
|
||
* fold-const-call.cc: ...here.
|
||
* fold-const.c: Moved to...
|
||
* fold-const.cc: ...here.
|
||
* fp-test.c: Moved to...
|
||
* fp-test.cc: ...here.
|
||
* function-tests.c: Moved to...
|
||
* function-tests.cc: ...here.
|
||
* function.c: Moved to...
|
||
* function.cc: ...here.
|
||
* fwprop.c: Moved to...
|
||
* fwprop.cc: ...here.
|
||
* gcc-ar.c: Moved to...
|
||
* gcc-ar.cc: ...here.
|
||
* gcc-main.c: Moved to...
|
||
* gcc-main.cc: ...here.
|
||
* gcc-rich-location.c: Moved to...
|
||
* gcc-rich-location.cc: ...here.
|
||
* gcc.c: Moved to...
|
||
* gcc.cc: ...here.
|
||
* gcov-dump.c: Moved to...
|
||
* gcov-dump.cc: ...here.
|
||
* gcov-io.c: Moved to...
|
||
* gcov-io.cc: ...here.
|
||
* gcov-tool.c: Moved to...
|
||
* gcov-tool.cc: ...here.
|
||
* gcov.c: Moved to...
|
||
* gcov.cc: ...here.
|
||
* gcse-common.c: Moved to...
|
||
* gcse-common.cc: ...here.
|
||
* gcse.c: Moved to...
|
||
* gcse.cc: ...here.
|
||
* genattr-common.c: Moved to...
|
||
* genattr-common.cc: ...here.
|
||
* genattr.c: Moved to...
|
||
* genattr.cc: ...here.
|
||
* genattrtab.c: Moved to...
|
||
* genattrtab.cc: ...here.
|
||
* genautomata.c: Moved to...
|
||
* genautomata.cc: ...here.
|
||
* gencfn-macros.c: Moved to...
|
||
* gencfn-macros.cc: ...here.
|
||
* gencheck.c: Moved to...
|
||
* gencheck.cc: ...here.
|
||
* genchecksum.c: Moved to...
|
||
* genchecksum.cc: ...here.
|
||
* gencodes.c: Moved to...
|
||
* gencodes.cc: ...here.
|
||
* genconditions.c: Moved to...
|
||
* genconditions.cc: ...here.
|
||
* genconfig.c: Moved to...
|
||
* genconfig.cc: ...here.
|
||
* genconstants.c: Moved to...
|
||
* genconstants.cc: ...here.
|
||
* genemit.c: Moved to...
|
||
* genemit.cc: ...here.
|
||
* genenums.c: Moved to...
|
||
* genenums.cc: ...here.
|
||
* generic-match-head.c: Moved to...
|
||
* generic-match-head.cc: ...here.
|
||
* genextract.c: Moved to...
|
||
* genextract.cc: ...here.
|
||
* genflags.c: Moved to...
|
||
* genflags.cc: ...here.
|
||
* gengenrtl.c: Moved to...
|
||
* gengenrtl.cc: ...here.
|
||
* gengtype-parse.c: Moved to...
|
||
* gengtype-parse.cc: ...here.
|
||
* gengtype-state.c: Moved to...
|
||
* gengtype-state.cc: ...here.
|
||
* gengtype.c: Moved to...
|
||
* gengtype.cc: ...here.
|
||
* genhooks.c: Moved to...
|
||
* genhooks.cc: ...here.
|
||
* genmatch.c: Moved to...
|
||
* genmatch.cc: ...here.
|
||
* genmddeps.c: Moved to...
|
||
* genmddeps.cc: ...here.
|
||
* genmddump.c: Moved to...
|
||
* genmddump.cc: ...here.
|
||
* genmodes.c: Moved to...
|
||
* genmodes.cc: ...here.
|
||
* genopinit.c: Moved to...
|
||
* genopinit.cc: ...here.
|
||
* genoutput.c: Moved to...
|
||
* genoutput.cc: ...here.
|
||
* genpeep.c: Moved to...
|
||
* genpeep.cc: ...here.
|
||
* genpreds.c: Moved to...
|
||
* genpreds.cc: ...here.
|
||
* genrecog.c: Moved to...
|
||
* genrecog.cc: ...here.
|
||
* gensupport.c: Moved to...
|
||
* gensupport.cc: ...here.
|
||
* gentarget-def.c: Moved to...
|
||
* gentarget-def.cc: ...here.
|
||
* genversion.c: Moved to...
|
||
* genversion.cc: ...here.
|
||
* ggc-common.c: Moved to...
|
||
* ggc-common.cc: ...here.
|
||
* ggc-none.c: Moved to...
|
||
* ggc-none.cc: ...here.
|
||
* ggc-page.c: Moved to...
|
||
* ggc-page.cc: ...here.
|
||
* ggc-tests.c: Moved to...
|
||
* ggc-tests.cc: ...here.
|
||
* gimple-builder.c: Moved to...
|
||
* gimple-builder.cc: ...here.
|
||
* gimple-expr.c: Moved to...
|
||
* gimple-expr.cc: ...here.
|
||
* gimple-fold.c: Moved to...
|
||
* gimple-fold.cc: ...here.
|
||
* gimple-iterator.c: Moved to...
|
||
* gimple-iterator.cc: ...here.
|
||
* gimple-laddress.c: Moved to...
|
||
* gimple-laddress.cc: ...here.
|
||
* gimple-loop-jam.c: Moved to...
|
||
* gimple-loop-jam.cc: ...here.
|
||
* gimple-low.c: Moved to...
|
||
* gimple-low.cc: ...here.
|
||
* gimple-match-head.c: Moved to...
|
||
* gimple-match-head.cc: ...here.
|
||
* gimple-pretty-print.c: Moved to...
|
||
* gimple-pretty-print.cc: ...here.
|
||
* gimple-ssa-backprop.c: Moved to...
|
||
* gimple-ssa-backprop.cc: ...here.
|
||
* gimple-ssa-evrp-analyze.c: Moved to...
|
||
* gimple-ssa-evrp-analyze.cc: ...here.
|
||
* gimple-ssa-evrp.c: Moved to...
|
||
* gimple-ssa-evrp.cc: ...here.
|
||
* gimple-ssa-isolate-paths.c: Moved to...
|
||
* gimple-ssa-isolate-paths.cc: ...here.
|
||
* gimple-ssa-nonnull-compare.c: Moved to...
|
||
* gimple-ssa-nonnull-compare.cc: ...here.
|
||
* gimple-ssa-split-paths.c: Moved to...
|
||
* gimple-ssa-split-paths.cc: ...here.
|
||
* gimple-ssa-sprintf.c: Moved to...
|
||
* gimple-ssa-sprintf.cc: ...here.
|
||
* gimple-ssa-store-merging.c: Moved to...
|
||
* gimple-ssa-store-merging.cc: ...here.
|
||
* gimple-ssa-strength-reduction.c: Moved to...
|
||
* gimple-ssa-strength-reduction.cc: ...here.
|
||
* gimple-ssa-warn-alloca.c: Moved to...
|
||
* gimple-ssa-warn-alloca.cc: ...here.
|
||
* gimple-ssa-warn-restrict.c: Moved to...
|
||
* gimple-ssa-warn-restrict.cc: ...here.
|
||
* gimple-streamer-in.c: Moved to...
|
||
* gimple-streamer-in.cc: ...here.
|
||
* gimple-streamer-out.c: Moved to...
|
||
* gimple-streamer-out.cc: ...here.
|
||
* gimple-walk.c: Moved to...
|
||
* gimple-walk.cc: ...here.
|
||
* gimple-warn-recursion.c: Moved to...
|
||
* gimple-warn-recursion.cc: ...here.
|
||
* gimple.c: Moved to...
|
||
* gimple.cc: ...here.
|
||
* gimplify-me.c: Moved to...
|
||
* gimplify-me.cc: ...here.
|
||
* gimplify.c: Moved to...
|
||
* gimplify.cc: ...here.
|
||
* godump.c: Moved to...
|
||
* godump.cc: ...here.
|
||
* graph.c: Moved to...
|
||
* graph.cc: ...here.
|
||
* graphds.c: Moved to...
|
||
* graphds.cc: ...here.
|
||
* graphite-dependences.c: Moved to...
|
||
* graphite-dependences.cc: ...here.
|
||
* graphite-isl-ast-to-gimple.c: Moved to...
|
||
* graphite-isl-ast-to-gimple.cc: ...here.
|
||
* graphite-optimize-isl.c: Moved to...
|
||
* graphite-optimize-isl.cc: ...here.
|
||
* graphite-poly.c: Moved to...
|
||
* graphite-poly.cc: ...here.
|
||
* graphite-scop-detection.c: Moved to...
|
||
* graphite-scop-detection.cc: ...here.
|
||
* graphite-sese-to-poly.c: Moved to...
|
||
* graphite-sese-to-poly.cc: ...here.
|
||
* graphite.c: Moved to...
|
||
* graphite.cc: ...here.
|
||
* haifa-sched.c: Moved to...
|
||
* haifa-sched.cc: ...here.
|
||
* hash-map-tests.c: Moved to...
|
||
* hash-map-tests.cc: ...here.
|
||
* hash-set-tests.c: Moved to...
|
||
* hash-set-tests.cc: ...here.
|
||
* hash-table.c: Moved to...
|
||
* hash-table.cc: ...here.
|
||
* hooks.c: Moved to...
|
||
* hooks.cc: ...here.
|
||
* host-default.c: Moved to...
|
||
* host-default.cc: ...here.
|
||
* hw-doloop.c: Moved to...
|
||
* hw-doloop.cc: ...here.
|
||
* hwint.c: Moved to...
|
||
* hwint.cc: ...here.
|
||
* ifcvt.c: Moved to...
|
||
* ifcvt.cc: ...here.
|
||
* inchash.c: Moved to...
|
||
* inchash.cc: ...here.
|
||
* incpath.c: Moved to...
|
||
* incpath.cc: ...here.
|
||
* init-regs.c: Moved to...
|
||
* init-regs.cc: ...here.
|
||
* input.c: Moved to...
|
||
* input.cc: ...here.
|
||
* internal-fn.c: Moved to...
|
||
* internal-fn.cc: ...here.
|
||
* intl.c: Moved to...
|
||
* intl.cc: ...here.
|
||
* ipa-comdats.c: Moved to...
|
||
* ipa-comdats.cc: ...here.
|
||
* ipa-cp.c: Moved to...
|
||
* ipa-cp.cc: ...here.
|
||
* ipa-devirt.c: Moved to...
|
||
* ipa-devirt.cc: ...here.
|
||
* ipa-fnsummary.c: Moved to...
|
||
* ipa-fnsummary.cc: ...here.
|
||
* ipa-icf-gimple.c: Moved to...
|
||
* ipa-icf-gimple.cc: ...here.
|
||
* ipa-icf.c: Moved to...
|
||
* ipa-icf.cc: ...here.
|
||
* ipa-inline-analysis.c: Moved to...
|
||
* ipa-inline-analysis.cc: ...here.
|
||
* ipa-inline-transform.c: Moved to...
|
||
* ipa-inline-transform.cc: ...here.
|
||
* ipa-inline.c: Moved to...
|
||
* ipa-inline.cc: ...here.
|
||
* ipa-modref-tree.c: Moved to...
|
||
* ipa-modref-tree.cc: ...here.
|
||
* ipa-modref.c: Moved to...
|
||
* ipa-modref.cc: ...here.
|
||
* ipa-param-manipulation.c: Moved to...
|
||
* ipa-param-manipulation.cc: ...here.
|
||
* ipa-polymorphic-call.c: Moved to...
|
||
* ipa-polymorphic-call.cc: ...here.
|
||
* ipa-predicate.c: Moved to...
|
||
* ipa-predicate.cc: ...here.
|
||
* ipa-profile.c: Moved to...
|
||
* ipa-profile.cc: ...here.
|
||
* ipa-prop.c: Moved to...
|
||
* ipa-prop.cc: ...here.
|
||
* ipa-pure-const.c: Moved to...
|
||
* ipa-pure-const.cc: ...here.
|
||
* ipa-ref.c: Moved to...
|
||
* ipa-ref.cc: ...here.
|
||
* ipa-reference.c: Moved to...
|
||
* ipa-reference.cc: ...here.
|
||
* ipa-split.c: Moved to...
|
||
* ipa-split.cc: ...here.
|
||
* ipa-sra.c: Moved to...
|
||
* ipa-sra.cc: ...here.
|
||
* ipa-utils.c: Moved to...
|
||
* ipa-utils.cc: ...here.
|
||
* ipa-visibility.c: Moved to...
|
||
* ipa-visibility.cc: ...here.
|
||
* ipa.c: Moved to...
|
||
* ipa.cc: ...here.
|
||
* ira-build.c: Moved to...
|
||
* ira-build.cc: ...here.
|
||
* ira-color.c: Moved to...
|
||
* ira-color.cc: ...here.
|
||
* ira-conflicts.c: Moved to...
|
||
* ira-conflicts.cc: ...here.
|
||
* ira-costs.c: Moved to...
|
||
* ira-costs.cc: ...here.
|
||
* ira-emit.c: Moved to...
|
||
* ira-emit.cc: ...here.
|
||
* ira-lives.c: Moved to...
|
||
* ira-lives.cc: ...here.
|
||
* ira.c: Moved to...
|
||
* ira.cc: ...here.
|
||
* jump.c: Moved to...
|
||
* jump.cc: ...here.
|
||
* langhooks.c: Moved to...
|
||
* langhooks.cc: ...here.
|
||
* lcm.c: Moved to...
|
||
* lcm.cc: ...here.
|
||
* lists.c: Moved to...
|
||
* lists.cc: ...here.
|
||
* loop-doloop.c: Moved to...
|
||
* loop-doloop.cc: ...here.
|
||
* loop-init.c: Moved to...
|
||
* loop-init.cc: ...here.
|
||
* loop-invariant.c: Moved to...
|
||
* loop-invariant.cc: ...here.
|
||
* loop-iv.c: Moved to...
|
||
* loop-iv.cc: ...here.
|
||
* loop-unroll.c: Moved to...
|
||
* loop-unroll.cc: ...here.
|
||
* lower-subreg.c: Moved to...
|
||
* lower-subreg.cc: ...here.
|
||
* lra-assigns.c: Moved to...
|
||
* lra-assigns.cc: ...here.
|
||
* lra-coalesce.c: Moved to...
|
||
* lra-coalesce.cc: ...here.
|
||
* lra-constraints.c: Moved to...
|
||
* lra-constraints.cc: ...here.
|
||
* lra-eliminations.c: Moved to...
|
||
* lra-eliminations.cc: ...here.
|
||
* lra-lives.c: Moved to...
|
||
* lra-lives.cc: ...here.
|
||
* lra-remat.c: Moved to...
|
||
* lra-remat.cc: ...here.
|
||
* lra-spills.c: Moved to...
|
||
* lra-spills.cc: ...here.
|
||
* lra.c: Moved to...
|
||
* lra.cc: ...here.
|
||
* lto-cgraph.c: Moved to...
|
||
* lto-cgraph.cc: ...here.
|
||
* lto-compress.c: Moved to...
|
||
* lto-compress.cc: ...here.
|
||
* lto-opts.c: Moved to...
|
||
* lto-opts.cc: ...here.
|
||
* lto-section-in.c: Moved to...
|
||
* lto-section-in.cc: ...here.
|
||
* lto-section-out.c: Moved to...
|
||
* lto-section-out.cc: ...here.
|
||
* lto-streamer-in.c: Moved to...
|
||
* lto-streamer-in.cc: ...here.
|
||
* lto-streamer-out.c: Moved to...
|
||
* lto-streamer-out.cc: ...here.
|
||
* lto-streamer.c: Moved to...
|
||
* lto-streamer.cc: ...here.
|
||
* lto-wrapper.c: Moved to...
|
||
* lto-wrapper.cc: ...here.
|
||
* main.c: Moved to...
|
||
* main.cc: ...here.
|
||
* mcf.c: Moved to...
|
||
* mcf.cc: ...here.
|
||
* mode-switching.c: Moved to...
|
||
* mode-switching.cc: ...here.
|
||
* modulo-sched.c: Moved to...
|
||
* modulo-sched.cc: ...here.
|
||
* multiple_target.c: Moved to...
|
||
* multiple_target.cc: ...here.
|
||
* omp-expand.c: Moved to...
|
||
* omp-expand.cc: ...here.
|
||
* omp-general.c: Moved to...
|
||
* omp-general.cc: ...here.
|
||
* omp-low.c: Moved to...
|
||
* omp-low.cc: ...here.
|
||
* omp-offload.c: Moved to...
|
||
* omp-offload.cc: ...here.
|
||
* omp-simd-clone.c: Moved to...
|
||
* omp-simd-clone.cc: ...here.
|
||
* opt-suggestions.c: Moved to...
|
||
* opt-suggestions.cc: ...here.
|
||
* optabs-libfuncs.c: Moved to...
|
||
* optabs-libfuncs.cc: ...here.
|
||
* optabs-query.c: Moved to...
|
||
* optabs-query.cc: ...here.
|
||
* optabs-tree.c: Moved to...
|
||
* optabs-tree.cc: ...here.
|
||
* optabs.c: Moved to...
|
||
* optabs.cc: ...here.
|
||
* opts-common.c: Moved to...
|
||
* opts-common.cc: ...here.
|
||
* opts-global.c: Moved to...
|
||
* opts-global.cc: ...here.
|
||
* opts.c: Moved to...
|
||
* opts.cc: ...here.
|
||
* passes.c: Moved to...
|
||
* passes.cc: ...here.
|
||
* plugin.c: Moved to...
|
||
* plugin.cc: ...here.
|
||
* postreload-gcse.c: Moved to...
|
||
* postreload-gcse.cc: ...here.
|
||
* postreload.c: Moved to...
|
||
* postreload.cc: ...here.
|
||
* predict.c: Moved to...
|
||
* predict.cc: ...here.
|
||
* prefix.c: Moved to...
|
||
* prefix.cc: ...here.
|
||
* pretty-print.c: Moved to...
|
||
* pretty-print.cc: ...here.
|
||
* print-rtl-function.c: Moved to...
|
||
* print-rtl-function.cc: ...here.
|
||
* print-rtl.c: Moved to...
|
||
* print-rtl.cc: ...here.
|
||
* print-tree.c: Moved to...
|
||
* print-tree.cc: ...here.
|
||
* profile-count.c: Moved to...
|
||
* profile-count.cc: ...here.
|
||
* profile.c: Moved to...
|
||
* profile.cc: ...here.
|
||
* read-md.c: Moved to...
|
||
* read-md.cc: ...here.
|
||
* read-rtl-function.c: Moved to...
|
||
* read-rtl-function.cc: ...here.
|
||
* read-rtl.c: Moved to...
|
||
* read-rtl.cc: ...here.
|
||
* real.c: Moved to...
|
||
* real.cc: ...here.
|
||
* realmpfr.c: Moved to...
|
||
* realmpfr.cc: ...here.
|
||
* recog.c: Moved to...
|
||
* recog.cc: ...here.
|
||
* ree.c: Moved to...
|
||
* ree.cc: ...here.
|
||
* reg-stack.c: Moved to...
|
||
* reg-stack.cc: ...here.
|
||
* regcprop.c: Moved to...
|
||
* regcprop.cc: ...here.
|
||
* reginfo.c: Moved to...
|
||
* reginfo.cc: ...here.
|
||
* regrename.c: Moved to...
|
||
* regrename.cc: ...here.
|
||
* regstat.c: Moved to...
|
||
* regstat.cc: ...here.
|
||
* reload.c: Moved to...
|
||
* reload.cc: ...here.
|
||
* reload1.c: Moved to...
|
||
* reload1.cc: ...here.
|
||
* reorg.c: Moved to...
|
||
* reorg.cc: ...here.
|
||
* resource.c: Moved to...
|
||
* resource.cc: ...here.
|
||
* rtl-error.c: Moved to...
|
||
* rtl-error.cc: ...here.
|
||
* rtl-tests.c: Moved to...
|
||
* rtl-tests.cc: ...here.
|
||
* rtl.c: Moved to...
|
||
* rtl.cc: ...here.
|
||
* rtlanal.c: Moved to...
|
||
* rtlanal.cc: ...here.
|
||
* rtlhash.c: Moved to...
|
||
* rtlhash.cc: ...here.
|
||
* rtlhooks.c: Moved to...
|
||
* rtlhooks.cc: ...here.
|
||
* rtx-vector-builder.c: Moved to...
|
||
* rtx-vector-builder.cc: ...here.
|
||
* run-rtl-passes.c: Moved to...
|
||
* run-rtl-passes.cc: ...here.
|
||
* sancov.c: Moved to...
|
||
* sancov.cc: ...here.
|
||
* sanopt.c: Moved to...
|
||
* sanopt.cc: ...here.
|
||
* sbitmap.c: Moved to...
|
||
* sbitmap.cc: ...here.
|
||
* sched-deps.c: Moved to...
|
||
* sched-deps.cc: ...here.
|
||
* sched-ebb.c: Moved to...
|
||
* sched-ebb.cc: ...here.
|
||
* sched-rgn.c: Moved to...
|
||
* sched-rgn.cc: ...here.
|
||
* sel-sched-dump.c: Moved to...
|
||
* sel-sched-dump.cc: ...here.
|
||
* sel-sched-ir.c: Moved to...
|
||
* sel-sched-ir.cc: ...here.
|
||
* sel-sched.c: Moved to...
|
||
* sel-sched.cc: ...here.
|
||
* selftest-diagnostic.c: Moved to...
|
||
* selftest-diagnostic.cc: ...here.
|
||
* selftest-rtl.c: Moved to...
|
||
* selftest-rtl.cc: ...here.
|
||
* selftest-run-tests.c: Moved to...
|
||
* selftest-run-tests.cc: ...here.
|
||
* selftest.c: Moved to...
|
||
* selftest.cc: ...here.
|
||
* sese.c: Moved to...
|
||
* sese.cc: ...here.
|
||
* shrink-wrap.c: Moved to...
|
||
* shrink-wrap.cc: ...here.
|
||
* simplify-rtx.c: Moved to...
|
||
* simplify-rtx.cc: ...here.
|
||
* sparseset.c: Moved to...
|
||
* sparseset.cc: ...here.
|
||
* spellcheck-tree.c: Moved to...
|
||
* spellcheck-tree.cc: ...here.
|
||
* spellcheck.c: Moved to...
|
||
* spellcheck.cc: ...here.
|
||
* sreal.c: Moved to...
|
||
* sreal.cc: ...here.
|
||
* stack-ptr-mod.c: Moved to...
|
||
* stack-ptr-mod.cc: ...here.
|
||
* statistics.c: Moved to...
|
||
* statistics.cc: ...here.
|
||
* stmt.c: Moved to...
|
||
* stmt.cc: ...here.
|
||
* stor-layout.c: Moved to...
|
||
* stor-layout.cc: ...here.
|
||
* store-motion.c: Moved to...
|
||
* store-motion.cc: ...here.
|
||
* streamer-hooks.c: Moved to...
|
||
* streamer-hooks.cc: ...here.
|
||
* stringpool.c: Moved to...
|
||
* stringpool.cc: ...here.
|
||
* substring-locations.c: Moved to...
|
||
* substring-locations.cc: ...here.
|
||
* symtab.c: Moved to...
|
||
* symtab.cc: ...here.
|
||
* target-globals.c: Moved to...
|
||
* target-globals.cc: ...here.
|
||
* targhooks.c: Moved to...
|
||
* targhooks.cc: ...here.
|
||
* timevar.c: Moved to...
|
||
* timevar.cc: ...here.
|
||
* toplev.c: Moved to...
|
||
* toplev.cc: ...here.
|
||
* tracer.c: Moved to...
|
||
* tracer.cc: ...here.
|
||
* trans-mem.c: Moved to...
|
||
* trans-mem.cc: ...here.
|
||
* tree-affine.c: Moved to...
|
||
* tree-affine.cc: ...here.
|
||
* tree-call-cdce.c: Moved to...
|
||
* tree-call-cdce.cc: ...here.
|
||
* tree-cfg.c: Moved to...
|
||
* tree-cfg.cc: ...here.
|
||
* tree-cfgcleanup.c: Moved to...
|
||
* tree-cfgcleanup.cc: ...here.
|
||
* tree-chrec.c: Moved to...
|
||
* tree-chrec.cc: ...here.
|
||
* tree-complex.c: Moved to...
|
||
* tree-complex.cc: ...here.
|
||
* tree-data-ref.c: Moved to...
|
||
* tree-data-ref.cc: ...here.
|
||
* tree-dfa.c: Moved to...
|
||
* tree-dfa.cc: ...here.
|
||
* tree-diagnostic.c: Moved to...
|
||
* tree-diagnostic.cc: ...here.
|
||
* tree-dump.c: Moved to...
|
||
* tree-dump.cc: ...here.
|
||
* tree-eh.c: Moved to...
|
||
* tree-eh.cc: ...here.
|
||
* tree-emutls.c: Moved to...
|
||
* tree-emutls.cc: ...here.
|
||
* tree-if-conv.c: Moved to...
|
||
* tree-if-conv.cc: ...here.
|
||
* tree-inline.c: Moved to...
|
||
* tree-inline.cc: ...here.
|
||
* tree-into-ssa.c: Moved to...
|
||
* tree-into-ssa.cc: ...here.
|
||
* tree-iterator.c: Moved to...
|
||
* tree-iterator.cc: ...here.
|
||
* tree-loop-distribution.c: Moved to...
|
||
* tree-loop-distribution.cc: ...here.
|
||
* tree-nested.c: Moved to...
|
||
* tree-nested.cc: ...here.
|
||
* tree-nrv.c: Moved to...
|
||
* tree-nrv.cc: ...here.
|
||
* tree-object-size.c: Moved to...
|
||
* tree-object-size.cc: ...here.
|
||
* tree-outof-ssa.c: Moved to...
|
||
* tree-outof-ssa.cc: ...here.
|
||
* tree-parloops.c: Moved to...
|
||
* tree-parloops.cc: ...here.
|
||
* tree-phinodes.c: Moved to...
|
||
* tree-phinodes.cc: ...here.
|
||
* tree-predcom.c: Moved to...
|
||
* tree-predcom.cc: ...here.
|
||
* tree-pretty-print.c: Moved to...
|
||
* tree-pretty-print.cc: ...here.
|
||
* tree-profile.c: Moved to...
|
||
* tree-profile.cc: ...here.
|
||
* tree-scalar-evolution.c: Moved to...
|
||
* tree-scalar-evolution.cc: ...here.
|
||
* tree-sra.c: Moved to...
|
||
* tree-sra.cc: ...here.
|
||
* tree-ssa-address.c: Moved to...
|
||
* tree-ssa-address.cc: ...here.
|
||
* tree-ssa-alias.c: Moved to...
|
||
* tree-ssa-alias.cc: ...here.
|
||
* tree-ssa-ccp.c: Moved to...
|
||
* tree-ssa-ccp.cc: ...here.
|
||
* tree-ssa-coalesce.c: Moved to...
|
||
* tree-ssa-coalesce.cc: ...here.
|
||
* tree-ssa-copy.c: Moved to...
|
||
* tree-ssa-copy.cc: ...here.
|
||
* tree-ssa-dce.c: Moved to...
|
||
* tree-ssa-dce.cc: ...here.
|
||
* tree-ssa-dom.c: Moved to...
|
||
* tree-ssa-dom.cc: ...here.
|
||
* tree-ssa-dse.c: Moved to...
|
||
* tree-ssa-dse.cc: ...here.
|
||
* tree-ssa-forwprop.c: Moved to...
|
||
* tree-ssa-forwprop.cc: ...here.
|
||
* tree-ssa-ifcombine.c: Moved to...
|
||
* tree-ssa-ifcombine.cc: ...here.
|
||
* tree-ssa-live.c: Moved to...
|
||
* tree-ssa-live.cc: ...here.
|
||
* tree-ssa-loop-ch.c: Moved to...
|
||
* tree-ssa-loop-ch.cc: ...here.
|
||
* tree-ssa-loop-im.c: Moved to...
|
||
* tree-ssa-loop-im.cc: ...here.
|
||
* tree-ssa-loop-ivcanon.c: Moved to...
|
||
* tree-ssa-loop-ivcanon.cc: ...here.
|
||
* tree-ssa-loop-ivopts.c: Moved to...
|
||
* tree-ssa-loop-ivopts.cc: ...here.
|
||
* tree-ssa-loop-manip.c: Moved to...
|
||
* tree-ssa-loop-manip.cc: ...here.
|
||
* tree-ssa-loop-niter.c: Moved to...
|
||
* tree-ssa-loop-niter.cc: ...here.
|
||
* tree-ssa-loop-prefetch.c: Moved to...
|
||
* tree-ssa-loop-prefetch.cc: ...here.
|
||
* tree-ssa-loop-split.c: Moved to...
|
||
* tree-ssa-loop-split.cc: ...here.
|
||
* tree-ssa-loop-unswitch.c: Moved to...
|
||
* tree-ssa-loop-unswitch.cc: ...here.
|
||
* tree-ssa-loop.c: Moved to...
|
||
* tree-ssa-loop.cc: ...here.
|
||
* tree-ssa-math-opts.c: Moved to...
|
||
* tree-ssa-math-opts.cc: ...here.
|
||
* tree-ssa-operands.c: Moved to...
|
||
* tree-ssa-operands.cc: ...here.
|
||
* tree-ssa-phiopt.c: Moved to...
|
||
* tree-ssa-phiopt.cc: ...here.
|
||
* tree-ssa-phiprop.c: Moved to...
|
||
* tree-ssa-phiprop.cc: ...here.
|
||
* tree-ssa-pre.c: Moved to...
|
||
* tree-ssa-pre.cc: ...here.
|
||
* tree-ssa-propagate.c: Moved to...
|
||
* tree-ssa-propagate.cc: ...here.
|
||
* tree-ssa-reassoc.c: Moved to...
|
||
* tree-ssa-reassoc.cc: ...here.
|
||
* tree-ssa-sccvn.c: Moved to...
|
||
* tree-ssa-sccvn.cc: ...here.
|
||
* tree-ssa-scopedtables.c: Moved to...
|
||
* tree-ssa-scopedtables.cc: ...here.
|
||
* tree-ssa-sink.c: Moved to...
|
||
* tree-ssa-sink.cc: ...here.
|
||
* tree-ssa-strlen.c: Moved to...
|
||
* tree-ssa-strlen.cc: ...here.
|
||
* tree-ssa-structalias.c: Moved to...
|
||
* tree-ssa-structalias.cc: ...here.
|
||
* tree-ssa-tail-merge.c: Moved to...
|
||
* tree-ssa-tail-merge.cc: ...here.
|
||
* tree-ssa-ter.c: Moved to...
|
||
* tree-ssa-ter.cc: ...here.
|
||
* tree-ssa-threadbackward.c: Moved to...
|
||
* tree-ssa-threadbackward.cc: ...here.
|
||
* tree-ssa-threadedge.c: Moved to...
|
||
* tree-ssa-threadedge.cc: ...here.
|
||
* tree-ssa-threadupdate.c: Moved to...
|
||
* tree-ssa-threadupdate.cc: ...here.
|
||
* tree-ssa-uncprop.c: Moved to...
|
||
* tree-ssa-uncprop.cc: ...here.
|
||
* tree-ssa-uninit.c: Moved to...
|
||
* tree-ssa-uninit.cc: ...here.
|
||
* tree-ssa.c: Moved to...
|
||
* tree-ssa.cc: ...here.
|
||
* tree-ssanames.c: Moved to...
|
||
* tree-ssanames.cc: ...here.
|
||
* tree-stdarg.c: Moved to...
|
||
* tree-stdarg.cc: ...here.
|
||
* tree-streamer-in.c: Moved to...
|
||
* tree-streamer-in.cc: ...here.
|
||
* tree-streamer-out.c: Moved to...
|
||
* tree-streamer-out.cc: ...here.
|
||
* tree-streamer.c: Moved to...
|
||
* tree-streamer.cc: ...here.
|
||
* tree-switch-conversion.c: Moved to...
|
||
* tree-switch-conversion.cc: ...here.
|
||
* tree-tailcall.c: Moved to...
|
||
* tree-tailcall.cc: ...here.
|
||
* tree-vect-data-refs.c: Moved to...
|
||
* tree-vect-data-refs.cc: ...here.
|
||
* tree-vect-generic.c: Moved to...
|
||
* tree-vect-generic.cc: ...here.
|
||
* tree-vect-loop-manip.c: Moved to...
|
||
* tree-vect-loop-manip.cc: ...here.
|
||
* tree-vect-loop.c: Moved to...
|
||
* tree-vect-loop.cc: ...here.
|
||
* tree-vect-patterns.c: Moved to...
|
||
* tree-vect-patterns.cc: ...here.
|
||
* tree-vect-slp-patterns.c: Moved to...
|
||
* tree-vect-slp-patterns.cc: ...here.
|
||
* tree-vect-slp.c: Moved to...
|
||
* tree-vect-slp.cc: ...here.
|
||
* tree-vect-stmts.c: Moved to...
|
||
* tree-vect-stmts.cc: ...here.
|
||
* tree-vector-builder.c: Moved to...
|
||
* tree-vector-builder.cc: ...here.
|
||
* tree-vectorizer.c: Moved to...
|
||
* tree-vectorizer.cc: ...here.
|
||
* tree-vrp.c: Moved to...
|
||
* tree-vrp.cc: ...here.
|
||
* tree.c: Moved to...
|
||
* tree.cc: ...here.
|
||
* tsan.c: Moved to...
|
||
* tsan.cc: ...here.
|
||
* typed-splay-tree.c: Moved to...
|
||
* typed-splay-tree.cc: ...here.
|
||
* ubsan.c: Moved to...
|
||
* ubsan.cc: ...here.
|
||
* valtrack.c: Moved to...
|
||
* valtrack.cc: ...here.
|
||
* value-prof.c: Moved to...
|
||
* value-prof.cc: ...here.
|
||
* var-tracking.c: Moved to...
|
||
* var-tracking.cc: ...here.
|
||
* varasm.c: Moved to...
|
||
* varasm.cc: ...here.
|
||
* varpool.c: Moved to...
|
||
* varpool.cc: ...here.
|
||
* vec-perm-indices.c: Moved to...
|
||
* vec-perm-indices.cc: ...here.
|
||
* vec.c: Moved to...
|
||
* vec.cc: ...here.
|
||
* vmsdbgout.c: Moved to...
|
||
* vmsdbgout.cc: ...here.
|
||
* vr-values.c: Moved to...
|
||
* vr-values.cc: ...here.
|
||
* vtable-verify.c: Moved to...
|
||
* vtable-verify.cc: ...here.
|
||
* web.c: Moved to...
|
||
* web.cc: ...here.
|
||
* xcoffout.c: Moved to...
|
||
* xcoffout.cc: ...here.
|
||
|
||
2022-01-17 qing zhao <qing.zhao@oracle.com>
|
||
|
||
* tree-ssa-uninit.c (warn_uninit): Delete the 4th parameter. Handle
|
||
.DEFERRED_INIT call with an anonymous SSA_NAME specially.
|
||
(check_defs): Handle .DEFERRED_INIT call with an anonymous SSA_NAME
|
||
specially.
|
||
(warn_uninit_phi_uses): Delete the 4th actual when call warn_uninit.
|
||
(warn_uninitialized_vars): Likewise.
|
||
(warn_uninitialized_phi): Likewise.
|
||
|
||
2022-01-17 Jason Merrill <jason@redhat.com>
|
||
|
||
* diagnostic.h (struct diagnostic_context): Add includes_seen.
|
||
* diagnostic.c (diagnostic_initialize): Initialize it.
|
||
(diagnostic_finish): Clean it up.
|
||
(includes_seen): New function.
|
||
(diagnostic_report_current_module): Use it.
|
||
|
||
2022-01-17 Richard Biener <rguenther@suse.de>
|
||
|
||
PR middle-end/101292
|
||
* diagnostic-spec.c (copy_warning): Make sure to not
|
||
reference old hashtable content on possible resize.
|
||
* warning-control.cc (copy_warning): Likewise.
|
||
|
||
2022-01-17 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR target/103973
|
||
* tree-cfg.h (cond_only_block_p): Declare.
|
||
* tree-ssa-phiopt.c (cond_only_block_p): Move function to ...
|
||
* tree-cfg.c (cond_only_block_p): ... here. No longer static.
|
||
* optabs.def (spaceship_optab): New optab.
|
||
* internal-fn.def (SPACESHIP): New internal function.
|
||
* internal-fn.h (expand_SPACESHIP): Declare.
|
||
* internal-fn.c (expand_PHI): Formatting fix.
|
||
(expand_SPACESHIP): New function.
|
||
* tree-ssa-math-opts.c (optimize_spaceship): New function.
|
||
(math_opts_dom_walker::after_dom_children): Use it.
|
||
* config/i386/i386.md (spaceship<mode>3): New define_expand.
|
||
* config/i386/i386-protos.h (ix86_expand_fp_spaceship): Declare.
|
||
* config/i386/i386-expand.c (ix86_expand_fp_spaceship): New function.
|
||
* doc/md.texi (spaceship@var{m}3): Document.
|
||
|
||
2022-01-17 Kewen Lin <linkw@linux.ibm.com>
|
||
|
||
* config/rs6000/altivec.md (altivec_vreveti2): Remove.
|
||
* config/rs6000/vsx.md (*vsx_extract_si, *vsx_extract_si_<uns>float_df,
|
||
*vsx_extract_si_<uns>float_<mode>, *vsx_insert_extract_v4sf_p9): Use
|
||
known constant values to simplify code.
|
||
|
||
2022-01-17 Haochen Gui <guihaoc@gcc.gnu.org>
|
||
|
||
PR target/103124
|
||
* config/rs6000/vsx.md (split pattern for TI to V1TI move): Defined.
|
||
|
||
2022-01-16 wwwhhhyyy <hongyu.wang@intel.com>
|
||
|
||
* config/i386/i386.h (TARGET_DEST_FALSE_DEP_FOR_GLC): New macro.
|
||
* config/i386/sse.md (<avx512>_<complexopname>_<mode><maskc_name><round_name>):
|
||
Insert zero-idiom in output template when attr enabled, set new attribute to
|
||
true for non-mask/maskz insn.
|
||
(avx512fp16_<complexopname>sh_v8hf<mask_scalarc_name><round_scalarcz_name>):
|
||
Likewise.
|
||
(avx512dq_mul<mode>3<mask_name>): Likewise.
|
||
(<avx2_avx512>_permvar<mode><mask_name>): Likewise.
|
||
(avx2_perm<mode>_1<mask_name>): Likewise.
|
||
(avx512f_perm<mode>_1<mask_name>): Likewise.
|
||
(avx512dq_rangep<mode><mask_name><round_saeonly_name>): Likewise.
|
||
(avx512dq_ranges<mode><mask_scalar_name><round_saeonly_scalar_name>):
|
||
Likewise.
|
||
(<avx512>_getmant<mode><mask_name><round_saeonly_name>): Likewise.
|
||
(avx512f_vgetmant<mode><mask_scalar_name><round_saeonly_scalar_name>):
|
||
Likewise.
|
||
* config/i386/subst.md (mask3_dest_false_dep_for_glc_cond): New
|
||
subst_attr.
|
||
(mask4_dest_false_dep_for_glc_cond): Likewise.
|
||
(mask6_dest_false_dep_for_glc_cond): Likewise.
|
||
(mask10_dest_false_dep_for_glc_cond): Likewise.
|
||
(maskc_dest_false_dep_for_glc_cond): Likewise.
|
||
(mask_scalar4_dest_false_dep_for_glc_cond): Likewise.
|
||
(mask_scalarc_dest_false_dep_for_glc_cond): Likewise.
|
||
* config/i386/x86-tune.def (X86_TUNE_DEST_FALSE_DEP_FOR_GLC): New
|
||
DEF_TUNE enabled for m_SAPPHIRERAPIDS and m_ALDERLAKE
|
||
|
||
2022-01-15 Martin Sebor <msebor@redhat.com>
|
||
|
||
PR c/63272
|
||
* diagnostic-spec.c (nowarn_spec_t::nowarn_spec_t): Handle
|
||
-Wdangling-pointer.
|
||
* doc/invoke.texi (-Wdangling-pointer): Document new option.
|
||
* gimple-ssa-warn-access.cc (pass_waccess::clone): Set new member.
|
||
(pass_waccess::check_pointer_uses): New function.
|
||
(pass_waccess::gimple_call_return_arg): New function.
|
||
(pass_waccess::gimple_call_return_arg_ref): New function.
|
||
(pass_waccess::check_call_dangling): New function.
|
||
(pass_waccess::check_dangling_uses): New function overloads.
|
||
(pass_waccess::check_dangling_stores): New function.
|
||
(pass_waccess::check_dangling_stores): New function.
|
||
(pass_waccess::m_clobbers): New data member.
|
||
(pass_waccess::m_func): New data member.
|
||
(pass_waccess::m_run_number): New data member.
|
||
(pass_waccess::m_check_dangling_p): New data member.
|
||
(pass_waccess::check_alloca): Check m_early_checks_p.
|
||
(pass_waccess::check_alloc_size_call): Same.
|
||
(pass_waccess::check_strcat): Same.
|
||
(pass_waccess::check_strncat): Same.
|
||
(pass_waccess::check_stxcpy): Same.
|
||
(pass_waccess::check_stxncpy): Same.
|
||
(pass_waccess::check_strncmp): Same.
|
||
(pass_waccess::check_memop_access): Same.
|
||
(pass_waccess::check_read_access): Same.
|
||
(pass_waccess::check_builtin): Call check_pointer_uses.
|
||
(pass_waccess::warn_invalid_pointer): Add arguments.
|
||
(is_auto_decl): New function.
|
||
(pass_waccess::check_stmt): New function.
|
||
(pass_waccess::check_block): Call check_stmt.
|
||
(pass_waccess::execute): Call check_dangling_uses,
|
||
check_dangling_stores. Empty m_clobbers.
|
||
* passes.def (pass_warn_access): Invoke pass two more times.
|
||
|
||
2022-01-15 Martin Sebor <msebor@redhat.com>
|
||
|
||
PR tree-optimization/80532
|
||
* common.opt (-Wuse-after-free): New options.
|
||
* diagnostic-spec.c (nowarn_spec_t::nowarn_spec_t): Handle
|
||
OPT_Wreturn_local_addr and OPT_Wuse_after_free_.
|
||
* diagnostic-spec.h (NW_DANGLING): New enumerator.
|
||
* doc/invoke.texi (-Wuse-after-free): Document new option.
|
||
* gimple-ssa-warn-access.cc (pass_waccess::check_call): Rename...
|
||
(pass_waccess::check_call_access): ...to this.
|
||
(pass_waccess::check): Rename...
|
||
(pass_waccess::check_block): ...to this.
|
||
(pass_waccess::check_pointer_uses): New function.
|
||
(pass_waccess::gimple_call_return_arg): New function.
|
||
(pass_waccess::warn_invalid_pointer): New function.
|
||
(pass_waccess::check_builtin): Handle free and realloc.
|
||
(gimple_use_after_inval_p): New function.
|
||
(get_realloc_lhs): New function.
|
||
(maybe_warn_mismatched_realloc): New function.
|
||
(pointers_related_p): New function.
|
||
(pass_waccess::check_call): Call check_pointer_uses.
|
||
(pass_waccess::execute): Compute and free dominance info.
|
||
|
||
2022-01-15 Uroš Bizjak <ubizjak@gmail.com>
|
||
|
||
* config/i386/i386-expand.c (ix86_expand_sse_movcc): Use
|
||
expand_simple_unop and expand_simple_binop instead of manually
|
||
constructing NOT, AND and IOR RTXes. Use vector_all_ones_operand
|
||
consistently. Eliminate common subexpressions and simplify code.
|
||
* config/i386/sse.md (<any_logic:code><MODEF:mode>3): New expander.
|
||
(<any_logic:code><MODEF:mode>3): Make public.
|
||
|
||
2022-01-14 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* ipa-param-manipulation.c (ipa_dump_adjusted_parameters): Dump
|
||
reverse flag as "reverse" for the sake of consistency.
|
||
* ipa-sra.c: Fix copyright year.
|
||
(ipa_sra_function_summaries::duplicate): Copy the reverse flag.
|
||
(dump_isra_access): Tweak dump line.
|
||
(isra_write_node_summary): Write the reverse flag.
|
||
(isra_read_node_info): Read it.
|
||
(pull_accesses_from_callee): Test its consistency and copy it.
|
||
|
||
2022-01-14 Richard Sandiford <richard.sandiford@arm.com>
|
||
|
||
PR middle-end/104026
|
||
* tree-vect-loop.c (_loop_vec_info::_loop_vec_info): Initialize
|
||
partial_load_store_bias.
|
||
|
||
2022-01-14 Martin Sebor <msebor@redhat.com>
|
||
|
||
PR middle-end/101475
|
||
* pointer-query.cc (handle_component_ref): Use the size of
|
||
the enclosing object if it's smaller than the member.
|
||
|
||
2022-01-14 Martin Liska <mliska@suse.cz>
|
||
|
||
* configure: Regenerate.
|
||
|
||
2022-01-14 Uroš Bizjak <ubizjak@gmail.com>
|
||
|
||
* config/i386/i386.md (*add<mode>_1_slp"):
|
||
Mark alternative 1 output operand earlyclobbered.
|
||
(*sub<mode>_1_slp): Ditto.
|
||
(*and<mode>_1_slp): Ditto.
|
||
(*<code><mode>_1_slp): Ditto.
|
||
(*neg<mode>_1_slp): Ditto.
|
||
(*one_cmpl<mode>_1_slp): Ditto.
|
||
(*ashl<mode>3_1_slp): Ditto.
|
||
(*<insn><mode>3_1_slp): Ditto.
|
||
(*<insn><mode>3_1_slp): Ditto.
|
||
|
||
2022-01-14 Kewen Lin <linkw@linux.ibm.com>
|
||
|
||
PR tree-optimization/104015
|
||
* tree-vect-loop.c (vect_analyze_loop): Check
|
||
param_vect_partial_vector_usage for supports_partial_vectors.
|
||
|
||
2022-01-14 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR c++/89074
|
||
* fold-const.c (address_compare): Punt on comparison of address of
|
||
one object with address of end of another object if
|
||
folding_initializer.
|
||
|
||
2022-01-14 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR target/98737
|
||
* tree-ssa-forwprop.c (simplify_builtin_call): Canonicalize
|
||
__atomic_fetch_op (p, x, y) op x into __atomic_op_fetch (p, x, y)
|
||
and __atomic_op_fetch (p, x, y) iop x into
|
||
__atomic_fetch_op (p, x, y).
|
||
|
||
2022-01-14 Claudiu Zissulescu <claziss@synopsys.com>
|
||
|
||
* config/arc/arc.h (DWARF_FRAME_REGNUM): Update definition.
|
||
(DWARF_FRAME_RETURN_COLUMN): Use RETURN_ADDR_REGNUM macro.
|
||
(INCOMING_RETURN_ADDR_RTX): Likewise.
|
||
(DWARF_ALT_FRAME_RETURN_COLUMN): Define.
|
||
|
||
2022-01-14 Claudiu Zissulescu <claziss@synopsys.com>
|
||
|
||
* config/arc/arc.c (arc_compute_frame_size): Remove condition when
|
||
computin checking accumulator regs.
|
||
(arc_expand_prologue): Update comments.
|
||
(arc_expand_epilogue): Likewise.
|
||
|
||
2022-01-14 Roger Sayle <roger@nextmovesoftware.com>
|
||
Uroš Bizjak <ubizjak@gmail.com>
|
||
|
||
* config/i386/i386-expand.c (ix86_expand_v1ti_to_ti): Use force_reg.
|
||
(ix86_expand_ti_to_v1ti): Use force_reg.
|
||
(ix86_expand_v1ti_shift): Use force_reg.
|
||
(ix86_expand_v1ti_rotate): Use force_reg.
|
||
(ix86_expand_v1ti_ashiftrt): Provide new three operation
|
||
implementations for shifts by 111..126 bits. Use force_reg.
|
||
|
||
2022-01-14 Martin Liska <mliska@suse.cz>
|
||
|
||
* common/config/arm/arm-common.c (arm_target_mode): Fix
|
||
warning: unterminated quoting directive [-Wformat=].
|
||
|
||
2022-01-14 Siddhesh Poyarekar <siddhesh@gotplt.org>
|
||
|
||
PR tree-optimization/104009
|
||
* tree-object-size.c (compute_builtin_object_size): Bail out on
|
||
negative offset.
|
||
(plus_stmt_object_size): Return maximum of wholesize and minimum
|
||
of 0 for negative offset.
|
||
|
||
2022-01-14 liuhongt <hongtao.liu@intel.com>
|
||
|
||
PR target/104001
|
||
PR target/94790
|
||
PR target/104014
|
||
* config/i386/i386.md (*xor2andn): Refine predicate of
|
||
operands[0] from nonimmediate_operand to
|
||
register_operand, remove TARGET_AVX512BW from condition.
|
||
|
||
2022-01-14 David Malcolm <dmalcolm@redhat.com>
|
||
|
||
* doc/extend.texi (Function Attributes): Note that "tainted_args" can
|
||
be used on field decls.
|
||
(Common Function Attributes): Add entry on "tainted_args" attribute.
|
||
|
||
2022-01-13 Anthony Sharp <anthonysharp15@gmail.com>
|
||
Jason Merrill <jason@redhat.com>
|
||
|
||
PR c++/70417
|
||
* doc/invoke.texi: Documentation for Wmissing-template-keyword.
|
||
|
||
2022-01-13 Uroš Bizjak <ubizjak@gmail.com>
|
||
|
||
PR target/103861
|
||
* config/i386/i386.md (*ashlqi_ext<mode>_2): New insn pattern.
|
||
(*<any_shiftrt:insn>qi_ext<mode>_2): Ditto.
|
||
* config/i386/mmx.md (<any_shift:insn>v2qi):
|
||
New insn_and_split pattern.
|
||
|
||
2022-01-13 Robin Dapp <rdapp@linux.ibm.com>
|
||
|
||
* internal-fn.c (expand_partial_load_optab_fn): Add bias.
|
||
(expand_partial_store_optab_fn): Likewise.
|
||
(internal_len_load_store_bias): New function.
|
||
* internal-fn.h (VECT_PARTIAL_BIAS_UNSUPPORTED): New define.
|
||
(internal_len_load_store_bias): New function.
|
||
* tree-vect-loop-manip.c (vect_set_loop_controls_directly): Set bias.
|
||
(vect_set_loop_condition_partial_vectors): Add header_seq parameter.
|
||
* tree-vect-loop.c (vect_verify_loop_lens): Verify bias.
|
||
(vect_estimate_min_profitable_iters): Account for bias.
|
||
(vect_get_loop_len): Add bias-adjusted length.
|
||
* tree-vect-stmts.c (vectorizable_store): Use.
|
||
(vectorizable_load): Use.
|
||
* tree-vectorizer.h (struct rgroup_controls): Add bias-adjusted length.
|
||
(LOOP_VINFO_PARTIAL_LOAD_STORE_BIAS): New macro.
|
||
* config/rs6000/vsx.md: Use const0 bias predicate.
|
||
* doc/md.texi: Document bias value.
|
||
|
||
2022-01-13 Andrew MacLeod <amacleod@redhat.com>
|
||
|
||
PR tree-optimization/83072
|
||
PR tree-optimization/83073
|
||
PR tree-optimization/97909
|
||
* fold-const.c (expr_not_equal_to): Use a multi-range class.
|
||
|
||
2022-01-13 Andrew MacLeod <amacleod@redhat.com>
|
||
|
||
PR tree-optimization/96707
|
||
* range-op.cc (operator_rshift::lhs_op1_relation): New.
|
||
|
||
2022-01-13 Uroš Bizjak <ubizjak@gmail.com>
|
||
|
||
* config/i386/mmx.md (negv2qi): Disparage GPR alternative a bit.
|
||
Disable for TARGET_PARTIAL_REG_STALL unless optimizing for size.
|
||
(negv2qi splitters): Use lowpart_subreg instead of
|
||
gen_lowpart to create subreg.
|
||
(<plusminus:insn>v2qi3): Disparage GPR alternative a bit.
|
||
Disable for TARGET_PARTIAL_REG_STALL unless optimizing for size.
|
||
(<plusminus:insn>v2qi3 splitters): Use lowpart_subreg instead of
|
||
gen_lowpart to create subreg.
|
||
* config/i386/i386.md (*subqi_ext<mode>_2): Move.
|
||
|
||
2022-01-13 Uroš Bizjak <ubizjak@gmail.com>
|
||
|
||
PR target/104003
|
||
* config/i386/mmx.md (*xop_pcmov_<mode>): Use VI_16_32 mode iterator.
|
||
|
||
2022-01-13 Martin Liska <mliska@suse.cz>
|
||
|
||
* common/config/arm/arm-common.c (arm_target_mode): Wrap
|
||
keywords with %<, %> and remove trailing punctuation char.
|
||
(arm_canon_arch_option_1): Likewise.
|
||
(arm_asm_auto_mfpu): Likewise.
|
||
* config/arm/arm-builtins.c (arm_expand_builtin): Likewise.
|
||
* config/arm/arm.c (arm_options_perform_arch_sanity_checks): Likewise.
|
||
(use_vfp_abi): Likewise.
|
||
(aapcs_vfp_is_call_or_return_candidate): Likewise.
|
||
(arm_handle_cmse_nonsecure_entry): Likewise.
|
||
(arm_handle_cmse_nonsecure_call): Likewise.
|
||
(thumb1_md_asm_adjust): Likewise.
|
||
|
||
2022-01-13 Paul A. Clarke <pc@us.ibm.com>
|
||
|
||
* config/rs6000/smmintrin.h (_mm_round_pd, _mm_round_ps,
|
||
_mm_round_sd, _mm_round_ss, _MM_FROUND_TO_NEAREST_INT,
|
||
_MM_FROUND_TO_ZERO, _MM_FROUND_TO_POS_INF, _MM_FROUND_TO_NEG_INF,
|
||
_MM_FROUND_CUR_DIRECTION, _MM_FROUND_RAISE_EXC, _MM_FROUND_NO_EXC,
|
||
_MM_FROUND_NINT, _MM_FROUND_FLOOR, _MM_FROUND_CEIL, _MM_FROUND_TRUNC,
|
||
_MM_FROUND_RINT, _MM_FROUND_NEARBYINT): New.
|
||
(_mm_ceil_pd, _mm_ceil_ps, _mm_ceil_sd, _mm_ceil_ss, _mm_floor_pd,
|
||
_mm_floor_ps, _mm_floor_sd, _mm_floor_ss): Convert from function to
|
||
macro.
|
||
|
||
2022-01-13 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR tree-optimization/103989
|
||
* tree-inline.c (setup_one_parameter): Don't copy parms with
|
||
empty type.
|
||
|
||
2022-01-13 Thomas Schwinge <thomas@codesourcery.com>
|
||
|
||
* tree-streamer-out.c (pack_ts_base_value_fields): Don't pack
|
||
'TYPE_ADDR_SPACE' for offloading.
|
||
* tree-streamer-in.c (unpack_ts_base_value_fields): Don't unpack
|
||
'TYPE_ADDR_SPACE' for offloading.
|
||
|
||
2022-01-13 Julian Brown <julian@codesourcery.com>
|
||
Thomas Schwinge <thomas@codesourcery.com>
|
||
|
||
* omp-oacc-kernels-decompose.cc (add_wait): New function, split out
|
||
of...
|
||
(add_async_clauses_and_wait): ...here. Call new outlined function.
|
||
(decompose_kernels_region_body): Add wait at the end of
|
||
explicitly-asynchronous kernels regions.
|
||
|
||
2022-01-13 Thomas Schwinge <thomas@codesourcery.com>
|
||
|
||
PR middle-end/100280
|
||
* omp-oacc-kernels-decompose.cc (maybe_build_inner_data_region):
|
||
Mark variables used in synthesized data clauses as addressable.
|
||
|
||
2022-01-13 Martin Liska <mliska@suse.cz>
|
||
|
||
* config/epiphany/epiphany.c (epiphany_mode_priority):
|
||
Use gcc_unreachable for not handled cases.
|
||
|
||
2022-01-13 Martin Liska <mliska@suse.cz>
|
||
|
||
* config/epiphany/epiphany.c (epiphany_handle_interrupt_attribute):
|
||
Use %qs format specifier.
|
||
(epiphany_override_options): Wrap keyword in %<, %>.
|
||
|
||
2022-01-13 Haochen Jiang <haochen.jiang@intel.com>
|
||
|
||
PR target/94790
|
||
* config/i386/i386.md (*xor2andn): New define_insn_and_split.
|
||
|
||
2022-01-13 Xionghu Luo <luoxhu@linux.ibm.com>
|
||
|
||
* config/rs6000/altivec.md (sldoi_to_mov<mode>): New.
|
||
|
||
2022-01-12 Uroš Bizjak <ubizjak@gmail.com>
|
||
|
||
PR target/100637
|
||
PR target/103861
|
||
* config/i386/i386-expand.c (ix86_emit_vec_binop): New static function.
|
||
(ix86_expand_sse_movcc): Use ix86_emit_vec_binop instead of gen_rtx_X
|
||
when constructing vector logic RTXes.
|
||
(expand_vec_perm_pshufb2): Ditto.
|
||
* config/i386/mmx.md (negv2qi): Disparage GPR alternative a bit.
|
||
(<plusminus:insn>v2qi3): Ditto.
|
||
(vcond<mode><mode>): Re-enable for TARGET_SSE2.
|
||
(vcondu<mode><mode>): Ditto.
|
||
(vcond_mask_<mode><mode>): Ditto.
|
||
(one_cmpl<VI_32:mode>2): Remove expander.
|
||
(one_cmpl<VI_16_32:mode>2): Rename from one_cmplv2qi.
|
||
Use VI_16_32 mode iterator.
|
||
(one_cmpl<VI_16_32:mode>2 splitters): Use VI_16_32 mode iterator.
|
||
Use lowpart_subreg instead of gen_lowpart to create subreg.
|
||
(*andnot<VI_16_32:mode>3): Merge from "*andnot<VI_32:mode>" and
|
||
"*andnotv2qi3" insn patterns using VI_16_32 mode iterator.
|
||
Disparage GPR alternative a bit. Add CC clobber.
|
||
(*andnot<VI_16_32:mode>3 splitters): Use VI_16_32 mode iterator.
|
||
Use lowpart_subreg instead of gen_lowpart to create subreg.
|
||
(*<any_logic:code><VI_16_32:mode>3): Merge from
|
||
"*<any_logic:code><VI_32:mode>" and "*<any_logic:code>v2qi3" insn patterns
|
||
using VI_16_32 mode iterator. Disparage GPR alternative a bit.
|
||
Add CC clobber.
|
||
(*<any_logic:code><VI_16_32:mode>3 splitters):Use VI_16_32 mode
|
||
iterator. Use lowpart_subreg instead of gen_lowpart to create subreg.
|
||
|
||
2022-01-12 Clément Chigot <clement.chigot@atos.net>
|
||
|
||
* configure.ac: Check sizeof ino_t and dev_t.
|
||
(HOST_STAT_FOR_64BIT_INODES): New AC_DEFINE to provide stat
|
||
syscall being able to handle 64bit inodes.
|
||
* config.in: Regenerate.
|
||
* configure: Regenerate.
|
||
* incpath.c (HOST_STAT_FOR_64BIT_INODES): New define.
|
||
(remove_duplicates): Use it.
|
||
|
||
2022-01-12 Andrew MacLeod <amacleod@redhat.com>
|
||
|
||
PR tree-optimization/103551
|
||
* tree-vrp.c (execute_ranger_vrp): Always set EDGE_EXECUTABLE.
|
||
|
||
2022-01-12 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/103990
|
||
* tree-pass.h (tail_merge_optimize): Drop unused argument.
|
||
* tree-ssa-tail-merge.c (tail_merge_optimize): Likewise.
|
||
* tree-ssa-pre.c (pass_pre::execute): Retain TODO_cleanup_cfg
|
||
and adjust call to tail_merge_optimize.
|
||
|
||
2022-01-12 Andre Vieira <andre.simoesdiasvieira@arm.com>
|
||
|
||
* tree-vect-loop.c (vect-analyze-loop): Handle scenario where target
|
||
does not add autovectorize_vector_modes.
|
||
|
||
2022-01-12 Martin Liska <mliska@suse.cz>
|
||
|
||
* config/aarch64/aarch64.c (aarch64_parse_boolean_options): Use
|
||
%qs where possible.
|
||
(aarch64_parse_sve_width_string): Likewise.
|
||
(aarch64_override_options_internal): Likewise.
|
||
(aarch64_print_hint_for_extensions): Likewise.
|
||
(aarch64_validate_sls_mitigation): Likewise.
|
||
(aarch64_handle_attr_arch): Likewise.
|
||
(aarch64_handle_attr_cpu): Likewise.
|
||
(aarch64_handle_attr_tune): Likewise.
|
||
(aarch64_handle_attr_isa_flags): Likewise.
|
||
|
||
2022-01-12 Martin Liska <mliska@suse.cz>
|
||
|
||
* config.gcc: Include elfos.h before ${tm_file}.
|
||
|
||
2022-01-12 Hans-Peter Nilsson <hp@axis.com>
|
||
|
||
* config/cris/cris.c: Quote identifiers in parameters to error
|
||
and internal_error, and remove extraneous spaces with punctuation.
|
||
* config/cris/cris.h (CRIS_ASSERT): When passing on stringified
|
||
expression to internal_error, pass it as a parameter instead of
|
||
appending it to the format part.
|
||
|
||
2022-01-12 Hans-Peter Nilsson <hp@axis.com>
|
||
|
||
* config/cris/cris.c (cris_postdbr_cmpelim): Parenthesize
|
||
parameter to as_a.
|
||
|
||
2022-01-11 qing zhao <qing.zhao@oracle.com>
|
||
|
||
* gimplify.c (gimple_add_init_for_auto_var): Delete the 3rd argument.
|
||
Change the 3rd argument of function .DEFERRED_INIT to the name of the
|
||
decl.
|
||
(gimplify_decl_expr): Delete the 3rd argument when call
|
||
gimple_add_init_for_auto_var.
|
||
* internal-fn.c (expand_DEFERRED_INIT): Update comments to reflect
|
||
the 3rd argument change of function .DEFERRED_INIT.
|
||
* tree-cfg.c (verify_gimple_call): Update comments and verification
|
||
to reflect the 3rd argument change of function .DEFERRED_INIT.
|
||
* tree-sra.c (generate_subtree_deferred_init): Delete the 3rd argument.
|
||
(sra_modify_deferred_init): Change the 3rd argument of function
|
||
.DEFERRED_INIT to the name of the decl.
|
||
|
||
2022-01-11 Thomas Koenig <tkoenig@gcc.gnu.org>
|
||
|
||
* flag-types.h (enum gfc_convert): Add flags for
|
||
conversion.
|
||
|
||
2022-01-11 Michael Meissner <meissner@the-meissners.org>
|
||
|
||
* config/rs6000/rs6000.c (rs6000_option_override_internal): Remove
|
||
checks for only C/C++ front ends before allowing the long double
|
||
format to change without a warning.
|
||
|
||
2022-01-11 Richard Sandiford <richard.sandiford@arm.com>
|
||
|
||
PR rtl-optimization/103974
|
||
* ira-int.h (ira_subloop_allocnos_can_differ_p): Take an
|
||
extra argument, default true, that says whether old-reload
|
||
targets should be excluded.
|
||
* ira-color.c (color_pass): Pass false.
|
||
|
||
2022-01-11 Uroš Bizjak <ubizjak@gmail.com>
|
||
|
||
PR target/103861
|
||
* config/i386/mmx.md (vcond<mode><mode>):
|
||
Use VI_16_32 mode iterator. Enable for TARGET_SSE4_1.
|
||
(vcondu<mode><mode>): Ditto.
|
||
(vcond_mask_<mode><mode>): Ditto.
|
||
(mmx_pblendvb_v8qi): Rename from mmx_pblendvb64.
|
||
(mmx_pblendvb_<mode>): Rename from mmx_pblendvb32.
|
||
Use VI_16_32 mode iterator.
|
||
* config/i386/i386-expand.c (ix86_expand_sse_movcc):
|
||
Update for rename. Handle V2QImode.
|
||
(expand_vec_perm_blend): Update for rename.
|
||
|
||
2022-01-11 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR c++/101597
|
||
* tree.def (OBJ_TYPE_REF): Document type of OBJ_TYPE_REF_TOKEN.
|
||
|
||
2022-01-11 Siddhesh Poyarekar <siddhesh@gotplt.org>
|
||
|
||
PR middle-end/70090
|
||
* tree-object-size.c (size_valid_p): New function.
|
||
(size_for_offset): Remove OFFSET constness assertion.
|
||
(addr_object_size): Build dynamic expressions for object
|
||
sizes and use size_valid_p to decide if it is valid for the
|
||
given OBJECT_SIZE_TYPE.
|
||
(compute_builtin_object_size): Allow dynamic offsets when
|
||
computing size at O0.
|
||
(call_object_size): Call size_valid_p.
|
||
(plus_stmt_object_size): Allow non-constant offset and use
|
||
size_valid_p to decide if it is valid for the given
|
||
OBJECT_SIZE_TYPE.
|
||
|
||
2022-01-11 Siddhesh Poyarekar <siddhesh@gotplt.org>
|
||
|
||
PR middle-end/70090
|
||
* tree-object-size.c (alloc_object_size): Make and return
|
||
non-constant size expression.
|
||
(call_object_size): Return expression or unknown based on
|
||
whether dynamic object size is requested.
|
||
|
||
2022-01-11 Siddhesh Poyarekar <siddhesh@gotplt.org>
|
||
|
||
PR middle-end/70090
|
||
* tree-object-size.c: Include tree-dfa.h.
|
||
(parm_object_size): New function.
|
||
(collect_object_sizes_for): Call it.
|
||
|
||
2022-01-11 Siddhesh Poyarekar <siddhesh@gotplt.org>
|
||
|
||
PR middle-end/70090
|
||
* builtins.c (fold_builtin_object_size): Adjust for dynamic size
|
||
expressions.
|
||
* tree-object-size.c: Include gimplify-me.h.
|
||
(struct object_size_info): New member UNKNOWNS.
|
||
(size_initval_p, size_usable_p, object_sizes_get_raw): New
|
||
functions.
|
||
(object_sizes_get): Return suitable gimple variable for
|
||
object size.
|
||
(bundle_sizes): New function.
|
||
(object_sizes_set): Use it and handle dynamic object size
|
||
expressions.
|
||
(object_sizes_set_temp): New function.
|
||
(size_for_offset): Adjust for dynamic size expressions.
|
||
(emit_phi_nodes, propagate_unknowns, gimplify_size_expressions):
|
||
New functions.
|
||
(compute_builtin_object_size): Call gimplify_size_expressions
|
||
for OST_DYNAMIC.
|
||
(dynamic_object_size): New function.
|
||
(cond_expr_object_size): Use it.
|
||
(phi_dynamic_object_size): New function.
|
||
(collect_object_sizes_for): Call it for OST_DYNAMIC. Adjust to
|
||
accommodate dynamic object sizes.
|
||
|
||
2022-01-11 Siddhesh Poyarekar <siddhesh@gotplt.org>
|
||
Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR tree-optimization/103961
|
||
* tree-object-size.c (plus_stmt_object_size): Always avoid
|
||
computing offset for -1 size.
|
||
|
||
2022-01-11 Andrew MacLeod <amacleod@redhat.com>
|
||
|
||
PR tree-optimization/103821
|
||
* range-op.cc (range_operator::fold_range): Only do precise ranges
|
||
when there are not too many subranges.
|
||
|
||
2022-01-11 Richard Sandiford <richard.sandiford@arm.com>
|
||
|
||
* ira-costs.c (ira_tune_allocno_costs): Fix missing rclass
|
||
definition in IRA_HARD_REGNO_ADD_COST_MULTIPLIER code.
|
||
|
||
2022-01-11 Roger Sayle <roger@nextmovesoftware.com>
|
||
Richard Biener <rguenther@suse.de>
|
||
|
||
* tree-ssa-math-opts.c (struct widen_mul_stats): Add a
|
||
highpart_mults_inserted field.
|
||
(convert_mult_to_highpart): New function to convert right shift
|
||
of a widening multiply into a MULT_HIGHPART_EXPR.
|
||
(math_opts_dom_walker::after_dom_children) [RSHIFT_EXPR]:
|
||
Call new convert_mult_to_highpart function.
|
||
(pass_optimize_widening_mul::execute): Add a statistics counter
|
||
for tracking "highpart multiplications inserted" events.
|
||
|
||
2022-01-11 Xionghu Luo <luoxhu@linux.ibm.com>
|
||
|
||
PR target/102239
|
||
* config/rs6000/rs6000-protos.h (rs6000_is_valid_rotate_dot_mask): New
|
||
declare.
|
||
* config/rs6000/rs6000.c (rs6000_is_valid_rotate_dot_mask): New
|
||
function.
|
||
* config/rs6000/rs6000.md (*branch_anddi3_dot): New.
|
||
|
||
2022-01-11 Olivier Hainque <hainque@adacore.com>
|
||
|
||
* gcc.c (driver_handle_option): State --sysroot as
|
||
validated.
|
||
|
||
2022-01-11 Kewen Lin <linkw@linux.ibm.com>
|
||
|
||
* config/rs6000/rs6000.c (rs6000_disable_incompatible_switches): Remove
|
||
useless related to option -mno-power10.
|
||
|
||
2022-01-11 Haochen Jiang <haochen.jiang@intel.com>
|
||
|
||
PR target/53652
|
||
* config/i386/sse.md (*andnot<mode>3): Extend predicate of
|
||
operands[1] from register_operand to vector_operand.
|
||
|
||
2022-01-10 Uroš Bizjak <ubizjak@gmail.com>
|
||
|
||
PR target/103861
|
||
* config/i386/i386-expand.c (ix86_expand_int_sse_cmp):
|
||
Handle V2QImode.
|
||
* config/i386/mmx.md (<sat_plusminus:insn><mode>3):
|
||
Use VI1_16_32 mode iterator.
|
||
(*eq<mode>3): Ditto.
|
||
(*gt<mode>3): Ditto.
|
||
(*xop_maskcmp<mode>3): Ditto.
|
||
(*xop_maskcmp_uns<mode>3): Ditto.
|
||
(vec_cmp<mode><mode>): Ditto.
|
||
(vec_cmpu<mode><mode>): Ditto.
|
||
|
||
2022-01-10 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/103948
|
||
* tree-vect-generic.c (expand_vector_condition): Return true if
|
||
all ones vector is returned for true, all zeros vector for false
|
||
and the target defines corresponding vec_cmp{,u}MN named RTX pattern.
|
||
|
||
2022-01-10 Paul A. Clarke <pc@us.ibm.com>
|
||
|
||
* config/rs6000/smmintrin.h (_mm_blendv_epi8): Use vec_blendv
|
||
when _ARCH_PWR10. Use signed types.
|
||
(_mm_blendv_ps): Use vec_blendv when _ARCH_PWR10.
|
||
(_mm_blendv_pd): Likewise.
|
||
|
||
2022-01-10 Andre Vieira <andre.simoesdiasvieira@arm.com>
|
||
|
||
* tree-vectorizer.c (better_epilogue_loop_than_p): Round factors up for
|
||
epilogue costing.
|
||
* tree-vect-loop.c (vect_analyze_loop): Re-analyze all modes for
|
||
epilogues, unless we are guaranteed that we can't have partial vectors.
|
||
* genopinit.c: (partial_vectors_supported): Generate new function.
|
||
|
||
2022-01-10 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR target/102024
|
||
* config/i386/i386.c (classify_argument): Add zero_width_bitfields
|
||
argument, when seeing DECL_FIELD_CXX_ZERO_WIDTH_BIT_FIELD bitfields,
|
||
always ignore them, when seeing other zero sized bitfields, either
|
||
set zero_width_bitfields to 1 and ignore it or if equal to 2 process
|
||
it. Pass it to recursive calls. Add wrapper
|
||
with old arguments and diagnose ABI differences for C structures
|
||
with zero width bitfields. Formatting fixes.
|
||
|
||
2022-01-10 Richard Sandiford <richard.sandiford@arm.com>
|
||
|
||
PR rtl-optimization/98782
|
||
* ira-int.h (ira_soft_conflict): Declare.
|
||
* ira-color.c (max_soft_conflict_loop_depth): New constant.
|
||
(ira_soft_conflict): New function.
|
||
(spill_soft_conflicts): Likewise.
|
||
(assign_hard_reg): Use them to handle the case described by
|
||
the comment above ira_soft_conflict.
|
||
(improve_allocation): Likewise.
|
||
* ira.c (check_allocation): Allow allocnos with "soft" conflicts
|
||
to share the same register.
|
||
|
||
2022-01-10 Richard Sandiford <richard.sandiford@arm.com>
|
||
|
||
PR rtl-optimization/98782
|
||
* ira-int.h (ira_caller_save_cost): New function.
|
||
(ira_caller_save_loop_spill_p): Likewise.
|
||
* ira-build.c (ira_propagate_hard_reg_costs): Test whether it is
|
||
cheaper to spill a call-clobbered register throughout a loop rather
|
||
than spill it around each individual call. If so, treat all
|
||
call-clobbered registers as conflicts and...
|
||
(propagate_allocno_info): ...do not propagate call information
|
||
from the child to the parent.
|
||
* ira-color.c (move_spill_restore): Update accordingly.
|
||
* ira-costs.c (ira_tune_allocno_costs): Use ira_caller_save_cost.
|
||
|
||
2022-01-10 Richard Sandiford <richard.sandiford@arm.com>
|
||
|
||
PR rtl-optimization/98782
|
||
* ira-int.h (ira_allocno::might_conflict_with_parent_p): New field.
|
||
(ALLOCNO_MIGHT_CONFLICT_WITH_PARENT_P): New macro.
|
||
(ira_single_region_allocno_p): New function.
|
||
(ira_total_conflict_hard_regs): Likewise.
|
||
* ira-build.c (ira_create_allocno): Initialize
|
||
ALLOCNO_MIGHT_CONFLICT_WITH_PARENT_P.
|
||
(ira_propagate_hard_reg_costs): New function.
|
||
(propagate_allocno_info): Use it. Try to avoid propagating
|
||
hard register conflicts to parent allocnos if we can handle
|
||
the conflicts by spilling instead. Limit the propagated
|
||
register costs to the cost of spilling throughout the child loop.
|
||
* ira-color.c (color_pass): Use ira_single_region_allocno_p to
|
||
test whether a child and parent allocno can share the same
|
||
register.
|
||
(move_spill_restore): Adjust for the new behavior of
|
||
propagate_allocno_info.
|
||
|
||
2022-01-10 Richard Sandiford <richard.sandiford@arm.com>
|
||
|
||
PR rtl-optimization/98782
|
||
* ira-int.h (ira_subloop_allocnos_can_differ_p): New function,
|
||
extracted from...
|
||
* ira-color.c (color_pass): ...here.
|
||
|
||
2022-01-10 Richard Sandiford <richard.sandiford@arm.com>
|
||
|
||
PR rtl-optimization/98782
|
||
* ira-color.c (color_pass): Add comments to describe the spill costs.
|
||
(move_spill_restore): Likewise. Fix reversed calculation.
|
||
|
||
2022-01-10 Richard Sandiford <richard.sandiford@arm.com>
|
||
|
||
PR rtl-optimization/98782
|
||
* ira-int.h (ira_loop_border_costs): New class.
|
||
* ira-color.c (ira_loop_border_costs::ira_loop_border_costs):
|
||
New constructor.
|
||
(calculate_allocno_spill_cost): Use ira_loop_border_costs.
|
||
(color_pass): Likewise.
|
||
(move_spill_restore): Likewise.
|
||
|
||
2022-01-10 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
PR target/103465
|
||
* coretypes.h (unwind_info_type): Swap UI_SEH and UI_TARGET.
|
||
|
||
2022-01-10 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/100359
|
||
* tree-ssa-loop-ivcanon.c (try_unroll_loop_completely):
|
||
Allow non-growing peeling with !allow_peel and UL_ALL.
|
||
|
||
2022-01-08 Roger Sayle <roger@nextmovesoftware.com>
|
||
|
||
* config/i386/i386-expand.c (ix86_expand_vector_move): Add
|
||
special case for TImode to V1TImode moves, going via V2DImode.
|
||
|
||
2022-01-08 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR c++/89074
|
||
* match.pd ((ptr) (x p+ y) p+ z -> (ptr) (x p+ (y + z))): New GENERIC
|
||
simplification.
|
||
|
||
2022-01-08 David Malcolm <dmalcolm@redhat.com>
|
||
|
||
* doc/analyzer.texi
|
||
(Special Functions for Debugging the Analyzer): Document
|
||
__analyzer_dump_escaped.
|
||
|
||
2022-01-08 David Malcolm <dmalcolm@redhat.com>
|
||
|
||
* doc/analyzer.texi (Other Debugging Techniques): Document
|
||
region::is_named_decl_p.
|
||
|
||
2022-01-07 Andrew Pinski <apinski@marvell.com>
|
||
|
||
PR target/102941
|
||
* config/arm/aarch-common.c (arm_md_asm_adjust):
|
||
Use a temp if !REG_P.
|
||
|
||
2022-01-07 Uroš Bizjak <ubizjak@gmail.com>
|
||
|
||
* config/i386/mmx.md (*move<V_32:mode>_internal): Add isa attribute.
|
||
(*movv2qi_internal): Remve sse2 requirement for alternatives 4,5.
|
||
|
||
2022-01-07 liuhongt <hongtao.liu@intel.com>
|
||
|
||
PR rtl-optimization/103750
|
||
* fwprop.c (forward_propagate_into): Allow propagations from
|
||
inner loop to outer loop.
|
||
|
||
2022-01-07 Roger Sayle <roger@nextmovesoftware.com>
|
||
|
||
* config/nvptx/nvptx.md (*cnot<mode>2): New define_insn.
|
||
|
||
2022-01-07 Haochen Gui <guihaoc@gcc.gnu.org>
|
||
|
||
* config/rs6000/rs6000.md (rs6000_mffscrni): Define.
|
||
(rs6000_set_fpscr_rn): Change the type of operand[0] from DI to SI.
|
||
Call gen_rs6000_mffscrni when operand[0] is a const_0_to_3_operand.
|
||
|
||
2022-01-07 liuhongt <hongtao.liu@intel.com>
|
||
|
||
* config/i386/sse.md
|
||
(*<avx512>_eq<mode>3<mask_scalar_merge_name>_1): Extend to
|
||
UNSPEC_PCMP_UNSIGNED.
|
||
|
||
2022-01-07 liuhongt <hongtao.liu@intel.com>
|
||
|
||
PR target/103753
|
||
* config/i386/i386-expand.c (ix86_expand_vector_set): Not use
|
||
gen_avx2_pblendph_1 when elt == 0.
|
||
* config/i386/sse.md (avx2_pblendph): Rename to ..
|
||
(avx2_pblend<ssemodesuffix>_1).. this, and extend to V16HI.
|
||
(*avx2_pblendw): Rename to ..
|
||
(*avx2_pblend<ssemodesuffix>): .. this, and extend to V16HF.
|
||
(avx2_pblendw): Rename to ..
|
||
(*avx2_pblend<ssemodesuffix>): .. this, and extend to V16HF.
|
||
(blendsuf): Removed.
|
||
(sse4_1_pblend<blendsuf>): Renamed to ..
|
||
(sse4_1_pblend<ssemodesuffix>): .. this.
|
||
|
||
2022-01-06 H.J. Lu <hjl.tools@gmail.com>
|
||
|
||
PR target/103925
|
||
* config/i386/i386.c (ix86_output_indirect_function_return):
|
||
Generate INT3 after indirect jmp for -mharden-sls=indirect-jmp.
|
||
|
||
2022-01-06 H.J. Lu <hjl.tools@gmail.com>
|
||
|
||
PR target/102952
|
||
* config/i386/i386-opts.h (harden_sls): Replace
|
||
harden_sls_indirect_branch with harden_sls_indirect_jmp.
|
||
* config/i386/i386.c (ix86_output_jmp_thunk_or_indirect):
|
||
Likewise.
|
||
(ix86_output_indirect_jmp): Likewise.
|
||
(ix86_output_call_insn): Likewise.
|
||
* config/i386/i386.opt: Replace indirect-branch with
|
||
indirect-jmp. Replace harden_sls_indirect_branch with
|
||
harden_sls_indirect_jmp.
|
||
* doc/invoke.texi (-harden-sls=): Replace indirect-branch with
|
||
indirect-jmp.
|
||
|
||
2022-01-06 Uroš Bizjak <ubizjak@gmail.com>
|
||
|
||
* config/i386/i386.c (ix86_output_ssemov) <MODE_DI>:
|
||
Add %q modifier for operands in general registers.
|
||
<MODE_SI>: Add %q modifier for operands in general registers.
|
||
* config/i386/i386.md (*movhi_internal): Change type attribute of
|
||
xmm-gpr interunit alternatives 9,10 to ssemov and mode attribute
|
||
to SImode for non-avx512fp16 targets.
|
||
(*movhf_internal): Ditto for xmm-gpr interunit alternatives 6,8.
|
||
* config/i386/mmx.md (*movv2qi_internal):
|
||
Ditto for xmm-gpr interunit alternatives 8,9.
|
||
|
||
2022-01-06 Kito Cheng <kito.cheng@sifive.com>
|
||
|
||
* common/config/riscv/riscv-common.c (riscv_implied_info): Add
|
||
vector extensions.
|
||
(riscv_ext_version_table): Add version info for vector extensions.
|
||
(riscv_ext_flag_table): Add option mask for vector extensions.
|
||
* config/riscv/riscv-opts.h (MASK_VECTOR_EEW_32): New.
|
||
(MASK_VECTOR_EEW_64): New.
|
||
(MASK_VECTOR_EEW_FP_32): New.
|
||
(MASK_VECTOR_EEW_FP_64): New.
|
||
(MASK_ZVL32B): New.
|
||
(MASK_ZVL64B): New.
|
||
(MASK_ZVL128B): New.
|
||
(MASK_ZVL256B): New.
|
||
(MASK_ZVL512B): New.
|
||
(MASK_ZVL1024B): New.
|
||
(MASK_ZVL2048B): New.
|
||
(MASK_ZVL4096B): New.
|
||
(MASK_ZVL8192B): New.
|
||
(MASK_ZVL16384B): New.
|
||
(MASK_ZVL32768B): New.
|
||
(MASK_ZVL65536B): New.
|
||
(TARGET_ZVL32B): New.
|
||
(TARGET_ZVL64B): New.
|
||
(TARGET_ZVL128B): New.
|
||
(TARGET_ZVL256B): New.
|
||
(TARGET_ZVL512B): New.
|
||
(TARGET_ZVL1024B): New.
|
||
(TARGET_ZVL2048B): New.
|
||
(TARGET_ZVL4096B): New.
|
||
(TARGET_ZVL8192B): New.
|
||
(TARGET_ZVL16384B): New.
|
||
(TARGET_ZVL32768B): New.
|
||
(TARGET_ZVL65536B): New.
|
||
* config/riscv/riscv.opt (Mask(VECTOR)): New.
|
||
(riscv_vector_eew_flags): New.
|
||
(riscv_zvl_flags): New.
|
||
|
||
2022-01-06 Kito Cheng <kito.cheng@sifive.com>
|
||
|
||
* common/config/riscv/riscv-common.c
|
||
(riscv_subset_list::parse_multiletter_ext): Allow ext. name has
|
||
digit.
|
||
|
||
2022-01-06 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR tree-optimization/103899
|
||
* expr.c (expand_expr_real_1): Add a workaround for bogus uninit
|
||
warning by moving context variable to the only spot where it is used
|
||
and moving gcc_assert into if body.
|
||
|
||
2022-01-06 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR rtl-optimization/103908
|
||
* ifcvt.c (bb_valid_for_noce_process_p): Punt on bbs ending with
|
||
asm goto.
|
||
|
||
2022-01-05 Bill Schmidt <wschmidt@linux.ibm.com>
|
||
|
||
PR target/103622
|
||
* config/rs6000/rs6000-c.c (altivec_resolve_overloaded_builtin):
|
||
Skip over instances with undefined function types.
|
||
|
||
2022-01-05 Andrew Pinski <apinski@marvell.com>
|
||
|
||
PR target/103910
|
||
* config/i386/i386.h (x86_mfence): Mark with GTY.
|
||
|
||
2022-01-05 Uroš Bizjak <ubizjak@gmail.com>
|
||
|
||
PR target/103861
|
||
* config/i386/mmx.md (VI_16_32): New mode iterator.
|
||
(VI1_16_32): Ditto.
|
||
(mmxvecsize): Handle V2QI mode.
|
||
(<smaxmin:code><mode>3): Rename from <smaxmin:code>v4qi3.
|
||
Use VI1_16_32 mode iterator.
|
||
(<umaxmin:code><mode>3): Rename from <umaxmin:code>v4qi3.
|
||
Use VI1_16_32 mode iterator.
|
||
(abs<mode>2): Use VI_16_32 mode iterator.
|
||
(uavgv2qi3_ceil): New insn pattern.
|
||
|
||
2022-01-05 Martin Sebor <msebor@redhat.com>
|
||
|
||
* gimple-ssa-warn-access.cc (pass_waccess::maybe_warn_memmodel): Use
|
||
%qs to avoid -Wformat-diag.
|
||
|
||
2022-01-05 Uroš Bizjak <ubizjak@gmail.com>
|
||
|
||
PR target/103915
|
||
* config/i386/mmx.md (one_cmplv2qi2): Change
|
||
alternatives 1,2 type from sselog to sselog1.
|
||
|
||
2022-01-05 Uroš Bizjak <ubizjak@gmail.com>
|
||
|
||
PR target/103905
|
||
* config/i386/i386-expand.c (expand_vec_perm_pshufb): Fix number of
|
||
narrow mode remapped elements for !one_operand_p case.
|
||
|
||
2022-01-05 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/103816
|
||
* tree-vect-data-refs.c (vect_analyze_group_access_1): Also
|
||
check DR_GROUP_GAP compute for overflow and representability.
|
||
|
||
2022-01-05 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR fortran/103691
|
||
* gimple-fold.c (fold_stmt_1): Don't call maybe_fold_reference
|
||
for DEBUG stmts with ADDR_EXPR gimple_debug_bind_get_value,
|
||
it can do unwanted rhs folding like &a[0] into &2.0 etc.
|
||
|
||
2022-01-05 Kewen Lin <linkw@linux.ibm.com>
|
||
|
||
PR ipa/102059
|
||
* config/rs6000/rs6000.c (TARGET_NEED_IPA_FN_TARGET_INFO): New macro.
|
||
(TARGET_UPDATE_IPA_FN_TARGET_INFO): Likewise.
|
||
(rs6000_need_ipa_fn_target_info): New function.
|
||
(rs6000_update_ipa_fn_target_info): Likewise.
|
||
(rs6000_can_inline_p): Adjust for ipa function summary target info.
|
||
* config/rs6000/rs6000.h (RS6000_FN_TARGET_INFO_HTM): New macro.
|
||
* ipa-fnsummary.c (ipa_dump_fn_summary): Adjust for ipa function
|
||
summary target info.
|
||
(analyze_function_body): Adjust for ipa function summary target info
|
||
and call hook rs6000_need_ipa_fn_target_info and
|
||
rs6000_update_ipa_fn_target_info.
|
||
(ipa_merge_fn_summary_after_inlining): Adjust for ipa function summary
|
||
target info.
|
||
(inline_read_section): Likewise.
|
||
(ipa_fn_summary_write): Likewise.
|
||
* ipa-fnsummary.h (ipa_fn_summary::target_info): New member.
|
||
* doc/tm.texi: Regenerate.
|
||
* doc/tm.texi.in (TARGET_UPDATE_IPA_FN_TARGET_INFO): Document new hook.
|
||
(TARGET_NEED_IPA_FN_TARGET_INFO): Likewise.
|
||
* target.def (update_ipa_fn_target_info): New hook.
|
||
(need_ipa_fn_target_info): Likewise.
|
||
* targhooks.c (default_need_ipa_fn_target_info): New function.
|
||
(default_update_ipa_fn_target_info): Likewise.
|
||
* targhooks.h (default_update_ipa_fn_target_info): New declare.
|
||
(default_need_ipa_fn_target_info): Likewise.
|
||
|
||
2022-01-04 Martin Sebor <msebor@redhat.com>
|
||
|
||
PR middle-end/99612
|
||
* builtins.c (get_memmodel): Move warning code to
|
||
gimple-ssa-warn-access.cc.
|
||
(expand_builtin_atomic_compare_exchange): Same.
|
||
(expand_ifn_atomic_compare_exchange): Same.
|
||
(expand_builtin_atomic_load): Same.
|
||
(expand_builtin_atomic_store): Same.
|
||
(expand_builtin_atomic_clear): Same.
|
||
* doc/extend.texi (__atomic_exchange_n): Update valid memory
|
||
models.
|
||
* gimple-ssa-warn-access.cc (memmodel_to_uhwi): New function.
|
||
(struct memmodel_pair): New struct.
|
||
(memmodel_name): New function.
|
||
(pass_waccess::maybe_warn_memmodel): New function.
|
||
(pass_waccess::check_atomic_memmodel): New function.
|
||
(pass_waccess::check_atomic_builtin): Handle memory model.
|
||
* input.c (expansion_point_location_if_in_system_header): Return
|
||
original location if expansion location is in a system header.
|
||
|
||
2022-01-04 Uroš Bizjak <ubizjak@gmail.com>
|
||
|
||
PR target/103861
|
||
* config/i386/mmx.md (one_cmplv2qi3): New insn pattern.
|
||
(one_cmplv2qi3 splitters): New post-reload splitters.
|
||
(*andnotv2qi3): New insn pattern.
|
||
(andnotv2qi3 splitters): New post-reload splitters.
|
||
(<any_logic:code>v2qi3): New insn pattern.
|
||
(<any_logic:insn>v2qi3 splitters): New post-reload splitters.
|
||
|
||
2022-01-04 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/103800
|
||
* tree-vect-loop.c (vectorizable_phi): Remove assert and
|
||
expand comment.
|
||
|
||
2022-01-04 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/103690
|
||
* tree-pass.h (tail_merge_optimize): Adjust.
|
||
* tree-ssa-tail-merge.c (tail_merge_optimize): Pass in whether
|
||
to re-split critical edges, move CFG cleanup ...
|
||
* tree-ssa-pre.c (pass_pre::execute): ... here, before
|
||
simple_dce_from_worklist and delay freeing inserted_exprs from
|
||
...
|
||
(fini_pre): .. here.
|
||
|
||
2022-01-04 Roger Sayle <roger@nextmovesoftware.com>
|
||
|
||
* config/nvptx/nvptx.h (STORE_FLAG_VALUE): Change to 1.
|
||
* config/nvptx/nvptx.md (movbi): Use P1 constraint for true.
|
||
(setcc_from_bi): Remove SImode specific pattern.
|
||
(setcc<mode>_from_bi): Provide more general HSDIM pattern.
|
||
(extendbi<mode>2, zeroextendbi<mode>2): Provide instructions
|
||
for sign- and zero-extending BImode predicates to integers.
|
||
(setcc_int<mode>): Remove previous (-1-based) instructions.
|
||
(cstorebi4): Remove BImode to SImode specific expander.
|
||
(cstore<mode>4): Fix indentation. Expand using setccsi_from_bi.
|
||
(cstore<mode>4): For both integer and floating point modes.
|
||
|
||
2022-01-04 Olivier Hainque <hainque@adacore.com>
|
||
|
||
* gcc.c (driver_handle_option): do_save --sysroot.
|
||
|
||
2022-01-04 Richard Biener <rguenther@suse.de>
|
||
|
||
PR tree-optimization/103864
|
||
PR tree-optimization/103544
|
||
* tree-vect-slp.c (vect_analyze_slp_instance): Exclude
|
||
reductions wrapped in conversions from SLP handling.
|
||
(vect_analyze_slp): Revert PR103544 change.
|
||
|
||
2022-01-04 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR rtl-optimization/103860
|
||
* shrink-wrap.c (try_shrink_wrapping): Don't call can_get_prologue
|
||
uselessly for blocks for which it has been called already.
|
||
|
||
2022-01-04 Cui,Lili <lili.cui@intel.com>
|
||
|
||
* common/config/i386/cpuinfo.h (get_intel_cpu): Add new model values
|
||
to Alderlake and Rocketlake.
|
||
|
||
2022-01-04 Chung-Lin Tang <cltang@codesourcery.com>
|
||
|
||
PR middle-end/103643
|
||
* gimplify.c (gimplify_omp_affinity): Adjust gimplify_expr of entire
|
||
OMP_CLAUSE_DECL to use 'is_gimple_lvalue, fb_lvalue'
|
||
|
||
2022-01-04 liuhongt <hongtao.liu@intel.com>
|
||
|
||
PR target/103895
|
||
* config/i386/sse.md (*bit_and_float_vector_all_ones):
|
||
Force_reg operand 1 to avoid ICE.
|
||
|
||
2022-01-04 Jason Merrill <jason@redhat.com>
|
||
|
||
* tree-pretty-print.c (do_niy): Add spc parameter.
|
||
(NIY): Pass it.
|
||
(print_call_name): Add spc local variable.
|
||
|
||
2022-01-03 Uroš Bizjak <ubizjak@gmail.com>
|
||
|
||
PR target/103894
|
||
* config/i386/mmx.md (mov<V_32:mode>): Remove TARGET_SSE2 constraint.
|
||
(mov<V_32:mode>_internal): Ditto.
|
||
(*push<V_32:mode>_rex64): Ditto.
|
||
(movmisalign<V_32:mode>): Ditto.
|
||
(*push<V_32:mode>_rex64 splitter): Enable for
|
||
TARGET_64BIT && TARGET_SSE.
|
||
(*push<V_32:mode>2): Remove insn pattern.
|
||
|
||
2022-01-03 Andrew Pinski <apinski@marvell.com>
|
||
|
||
PR c/33193
|
||
* doc/extend.texi: Extend the documentation about Complex
|
||
types for casting and also rewrite the __real__/__imag__
|
||
expression portion to use tables.
|
||
Move __builtin_complex to the Complex type section.
|
||
|
||
2022-01-03 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR target/98737
|
||
* internal-fn.def (ATOMIC_ADD_FETCH_CMP_0, ATOMIC_SUB_FETCH_CMP_0,
|
||
ATOMIC_AND_FETCH_CMP_0, ATOMIC_OR_FETCH_CMP_0, ATOMIC_XOR_FETCH_CMP_0):
|
||
New internal fns.
|
||
* internal-fn.h (ATOMIC_OP_FETCH_CMP_0_EQ, ATOMIC_OP_FETCH_CMP_0_NE,
|
||
ATOMIC_OP_FETCH_CMP_0_LT, ATOMIC_OP_FETCH_CMP_0_LE,
|
||
ATOMIC_OP_FETCH_CMP_0_GT, ATOMIC_OP_FETCH_CMP_0_GE): New enumerators.
|
||
* internal-fn.c (expand_ATOMIC_ADD_FETCH_CMP_0,
|
||
expand_ATOMIC_SUB_FETCH_CMP_0, expand_ATOMIC_AND_FETCH_CMP_0,
|
||
expand_ATOMIC_OR_FETCH_CMP_0, expand_ATOMIC_XOR_FETCH_CMP_0): New
|
||
functions.
|
||
* optabs.def (atomic_add_fetch_cmp_0_optab,
|
||
atomic_sub_fetch_cmp_0_optab, atomic_and_fetch_cmp_0_optab,
|
||
atomic_or_fetch_cmp_0_optab, atomic_xor_fetch_cmp_0_optab): New
|
||
direct optabs.
|
||
* builtins.h (expand_ifn_atomic_op_fetch_cmp_0): Declare.
|
||
* builtins.c (expand_ifn_atomic_op_fetch_cmp_0): New function.
|
||
* tree-ssa-ccp.c: Include internal-fn.h.
|
||
(optimize_atomic_bit_test_and): Add . before internal fn call
|
||
in function comment. Change return type from void to bool and
|
||
return true only if successfully replaced.
|
||
(optimize_atomic_op_fetch_cmp_0): New function.
|
||
(pass_fold_builtins::execute): Use optimize_atomic_op_fetch_cmp_0
|
||
for BUILT_IN_ATOMIC_{ADD,SUB,AND,OR,XOR}_FETCH_{1,2,4,8,16} and
|
||
BUILT_IN_SYNC_{ADD,SUB,AND,OR,XOR}_AND_FETCH_{1,2,4,8,16},
|
||
for *XOR* ones only if optimize_atomic_bit_test_and failed.
|
||
* config/i386/sync.md (atomic_<plusminus_mnemonic>_fetch_cmp_0<mode>,
|
||
atomic_<logic>_fetch_cmp_0<mode>): New define_expand patterns.
|
||
(atomic_add_fetch_cmp_0<mode>_1, atomic_sub_fetch_cmp_0<mode>_1,
|
||
atomic_<logic>_fetch_cmp_0<mode>_1): New define_insn patterns.
|
||
* doc/md.texi (atomic_add_fetch_cmp_0<mode>,
|
||
atomic_sub_fetch_cmp_0<mode>, atomic_and_fetch_cmp_0<mode>,
|
||
atomic_or_fetch_cmp_0<mode>, atomic_xor_fetch_cmp_0<mode>): Document
|
||
new named patterns.
|
||
|
||
2022-01-03 Richard Biener <rguenther@suse.de>
|
||
|
||
PR middle-end/103851
|
||
* tree-cfg.c (move_sese_region_to_fn): Always release SSA names.
|
||
|
||
2022-01-03 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR c++/94716
|
||
* symtab.c: Include fold-const.h.
|
||
(symtab_node::equal_address_to): If folding_initializer is true,
|
||
handle it like memory_accessed. Simplify.
|
||
|
||
2022-01-03 Martin Liska <mliska@suse.cz>
|
||
|
||
* doc/extend.texi: Use ; for function declarations.
|
||
|
||
2022-01-03 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR c++/103600
|
||
* symtab.c (symtab_node::equal_address_to): Return 0 if one of
|
||
VAR_DECLs has "non overlapping" attribute and rs1 != rs2.
|
||
|
||
2022-01-03 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
* gcc.c (process_command): Update copyright notice dates.
|
||
* gcov-dump.c (print_version): Ditto.
|
||
* gcov.c (print_version): Ditto.
|
||
* gcov-tool.c (print_version): Ditto.
|
||
* gengtype.c (create_file): Ditto.
|
||
* doc/cpp.texi: Bump @copying's copyright year.
|
||
* doc/cppinternals.texi: Ditto.
|
||
* doc/gcc.texi: Ditto.
|
||
* doc/gccint.texi: Ditto.
|
||
* doc/gcov.texi: Ditto.
|
||
* doc/install.texi: Ditto.
|
||
* doc/invoke.texi: Ditto.
|
||
|
||
2022-01-02 Uroš Bizjak <ubizjak@gmail.com>
|
||
|
||
PR target/103861
|
||
* config/i386/i386.h (VALID_SSE2_REG_MODE): Add V2QImode.
|
||
(VALID_INT_MODE_P): Ditto.
|
||
* config/i386/i386.c (ix86_secondary_reload): Handle
|
||
V2QImode reloads from SSE register to memory.
|
||
(vector_mode_supported_p): Always return true for V2QImode.
|
||
* config/i386/i386.md (*subqi_ext<mode>_2): New insn pattern.
|
||
(*negqi_ext<mode>_2): Ditto.
|
||
* config/i386/mmx.md (movv2qi): New expander.
|
||
(movmisalignv2qi): Ditto.
|
||
(*movv2qi_internal): New insn pattern.
|
||
(*pushv2qi2): Ditto.
|
||
(negv2qi2 and splitters): Ditto.
|
||
(<plusminus:insn>v2qi3 and splitters): Ditto.
|
||
|
||
2022-01-02 John David Anglin <danglin@gcc.gnu.org>
|
||
|
||
* config/pa/pa.md (atomic_storeq): Use optab_libfunc to access
|
||
sync_lock_test_and_set libfunc. Call convert_memory_address to
|
||
convert memory address to Pmode.
|
||
(atomic_storehi, atomic_storesi, atomic_storedi): Likewise.
|
||
|
||
|
||
Copyright (C) 2022 Free Software Foundation, Inc.
|
||
|
||
Copying and distribution of this file, with or without modification,
|
||
are permitted in any medium without royalty provided the copyright
|
||
notice and this notice are preserved.
|