| 2022-12-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> |
| Iain Sandoe <iain@sandoe.co.uk> |
| |
| PR modula2/107612 |
| * Makefile.in: Make the configured libintl includes avaiable in INCINTL. |
| (BUILD_CPPFLAGS): Use INCINTL. |
| |
| 2022-12-30 Alexandre Oliva <oliva@adacore.com> |
| |
| * hash-table.h (check_complete_insertion, check_insert_slot): |
| New hash_table methods. |
| (m_inserting_slot): New hash_table field. |
| (begin, hash_table ctors, ~hash_table): Check previous insert. |
| (expand, empty_slow, clear_slot, find_with_hash): Likewise. |
| (remote_elt_with_hash, traverse_noresize): Likewise. |
| (gt_pch_nx): Likewise. |
| (find_slot_with_hash): Likewise. Record requested insert. |
| |
| 2022-12-30 Stam Markianos-Wright <stam.markianos-wright@arm.com> |
| |
| PR target/107714 |
| * config/arm/arm-protos.h (mve_struct_mem_operand): New protoype. |
| * config/arm/arm.cc (mve_struct_mem_operand): New function. |
| * config/arm/constraints.md (Ug): New constraint. |
| * config/arm/mve.md (mve_vst4q<mode>): Change constraint. |
| (mve_vst2q<mode>): Likewise. |
| (mve_vld4q<mode>): Likewise. |
| (mve_vld2q<mode>): Likewise. |
| * config/arm/predicates.md (mve_struct_operand): New predicate. |
| |
| 2022-12-29 Alexandre Oliva <oliva@adacore.com> |
| |
| * hash-map.h (put, get_or_insert): Check that added entry |
| doesn't look deleted either. |
| * hash-set.h (add): Likewise. |
| |
| 2022-12-29 Alexandre Oliva <oliva@adacore.com> |
| |
| * tree-parloops.cc (take_address_of): Skip INSERT if !gsi. |
| |
| 2022-12-29 Alexandre Oliva <oliva@adacore.com> |
| |
| * hash-map.h (put, get_or_insert): Check that entry does not |
| look empty after insertion. |
| |
| 2022-12-29 Alexandre Oliva <oliva@adacore.com> |
| |
| * hash-set.h (add): Check that the inserted entry does not |
| look empty. |
| |
| 2022-12-29 Alexandre Oliva <oliva@adacore.com> |
| |
| * trans-mem.cc (split_bb_make_tm_edge): Record new node in |
| tm_restart. |
| |
| 2022-12-29 Alexandre Oliva <oliva@adacore.com> |
| |
| * postreload-gcse.cc (lookup_expr_in_table): Use NO_INSERT. |
| |
| 2022-12-29 Alexandre Oliva <oliva@adacore.com> |
| |
| * tree-inline.cc (declare_return_variable): Don't remap NULL |
| default def of result. |
| |
| 2022-12-29 Alexandre Oliva <oliva@adacore.com> |
| |
| * tree-ssa-loop-niter.cc (expand_simple_operands): Refrain |
| from caching NULL TREE_OPERANDs. |
| |
| 2022-12-29 Alexandre Oliva <oliva@adacore.com> |
| |
| * tree-inline.cc (insert_decl_map): Skip mapping a NULL decl |
| as value to itself. |
| |
| 2022-12-29 Alexandre Oliva <oliva@adacore.com> |
| |
| * varpool.cc (symbol_table::remove_unreferenced_decls): Do not |
| add NULL vnodes to referenced table. |
| |
| 2022-12-29 Alexandre Oliva <oliva@adacore.com> |
| |
| * tree-ssa-scopedtables.cc |
| (avail_exprs_stack::lookup_avail_expr): Finish hash table |
| insertion before further lookups. |
| |
| 2022-12-29 Max Filippov <jcmvbkbc@gmail.com> |
| |
| * config/xtensa/xtensa.cc (xtensa_return_in_memory): Use |
| GP_RETURN_* instead of magic constant. |
| |
| 2022-12-29 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> |
| |
| * config/xtensa/xtensa.cc (xtensa_expand_prologue): Fix to check |
| DF availability before use of DF_* macros. |
| |
| 2022-12-28 Roger Sayle <roger@nextmovesoftware.com> |
| |
| * config/i386/i386.md (*clzsi2_lzcnt_zext_2): define_insn_and_split |
| to match ZERO_EXTEND form of *clzsi2_lzcnt_zext. |
| (*clzsi2_lzcnt_zext_2_falsedep): Likewise, new define_insn to match |
| ZERO_EXTEND form of *clzsi2_lzcnt_zext_falsedep. |
| (*bmi2_bzhi_zero_extendsidi_5): Likewise, new define_insn to match |
| ZERO_EXTEND form of *bmi2_bzhi_zero_extendsidi. |
| (*popcountsi2_zext_2): Likewise, new define_insn_and_split to match |
| ZERO_EXTEND form of *popcountsi2_zext. |
| (*popcountsi2_zext_2_falsedep): Likewise, new define_insn to match |
| ZERO_EXTEND form of *popcountsi2_zext_falsedep. |
| (*popcounthi2_2): Likewise, new define_insn_and_split to match |
| ZERO_EXTEND form of *popcounthi2. |
| (define_peephole2): ZERO_EXTEND variant of HImode popcount&1 using |
| parity flag peephole2. |
| |
| 2022-12-28 Roger Sayle <roger@nextmovesoftware.com> |
| |
| * config/i386/i386-expand.cc (ix86_split_ashl): Call |
| ix86_expand_clear to generate an xor instruction. |
| |
| 2022-12-28 Martin Liska <mliska@suse.cz> |
| |
| PR tree-optimization/108137 |
| * tree-ssa-strlen.cc (get_range_strlen_phi): Reject anything |
| different from INTEGER_CST. |
| |
| 2022-12-28 Kito Cheng <kito.cheng@sifive.com> |
| |
| * config/riscv/riscv-vsetvl.h (vl_vtype_info::get_avl_info): |
| Return const reference rather than value. |
| |
| 2022-12-27 Jeff Law <jlaw@ventanamicro.com> |
| |
| * config/riscv/riscv.md: Add missing modes to last patch.t |
| |
| 2022-12-27 Raphael Moreira Zinsly <rzinsly@ventanamicro.com> |
| |
| PR target/95632 |
| PR target/106602 |
| * config/riscv/riscv.md: New pattern to simulate complex |
| const_int loads. |
| |
| 2022-12-27 Christoph Müllner <christoph.muellner@vrull.eu> |
| |
| * config/riscv/riscv.cc (riscv_next_saved_reg): New function. |
| (riscv_is_eh_return_data_register): New function. |
| (riscv_for_each_saved_reg): Restructure loop. |
| |
| 2022-12-27 Christoph Müllner <christoph.muellner@vrull.eu> |
| |
| * config/riscv/riscv.md: Sync comments with code. |
| |
| 2022-12-27 jinma <jinma@linux.alibaba.com> |
| |
| * common/config/riscv/riscv-common.cc: |
| |
| 2022-12-27 Jonathan Yong <10walls@gmail.com> |
| |
| * configure.ac: use grep -i for case insensitive test. |
| * configure: Regenerate. |
| |
| 2022-12-27 Max Filippov <jcmvbkbc@gmail.com> |
| |
| * config/xtensa/xtensa.md (unspec): Extract UNSPEC_* constants |
| into this enum. |
| (unspecv): Extract UNSPECV_* constants into this enum. |
| |
| 2022-12-27 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> |
| |
| * config/xtensa/xtensa.md (set_frame_ptr): Fix to reflect |
| TARGET_DENSITY. |
| |
| 2022-12-27 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> |
| |
| * config/xtensa/xtensa.h (GP_RETURN, GP_RETURN_REG_COUNT): |
| Change to GP_RETURN_FIRST and GP_RETURN_LAST, respectively. |
| * config/xtensa/xtensa.cc (xtensa_function_value, |
| xtensa_libcall_value, xtensa_function_value_regno_p): Ditto. |
| |
| 2022-12-27 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> |
| |
| * config/xtensa/xtensa.cc (xtensa_expand_prologue): Modify to |
| exit the inspection loops as soon as the necessity of stack |
| pointer is found. |
| |
| 2022-12-27 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> |
| |
| * config/xtensa/elf.h: Tabify, and trim trailing spaces. |
| * config/xtensa/linux.h: Likewise. |
| * config/xtensa/uclinux.h: Likewise. |
| * config/xtensa/xtensa-dynconfig.c: Likewise. |
| * config/xtensa/xtensa.cc: Likewise. |
| * config/xtensa/xtensa.h: Likewise. |
| * config/xtensa/xtensa.md: Likewise. |
| |
| 2022-12-27 Ju-Zhe Zhong <juzhe.zhong@rivai.ai> |
| |
| * config/riscv/riscv-vsetvl.cc |
| (pass_vsetvl::compute_global_backward_infos): Change to visit CFG. |
| (pass_vsetvl::prune_expressions): Ditto. |
| |
| 2022-12-27 Ju-Zhe Zhong <juzhe.zhong@rivai.ai> |
| |
| * config/riscv/riscv-vsetvl.cc (change_insn): Remove pp_print. |
| (avl_info::avl_info): Add copy function. |
| (vector_insn_info::dump): Remove pp_print. |
| * config/riscv/riscv-vsetvl.h: Add copy function. |
| |
| 2022-12-27 Kewen Lin <linkw@linux.ibm.com> |
| |
| PR target/106680 |
| * common/config/rs6000/rs6000-common.cc (rs6000_handle_option): Remove |
| the adjustment for option powerpc64 in -m64 handling, and remove the |
| whole -m32 handling. |
| * config/rs6000/rs6000.cc (rs6000_option_override_internal): When no |
| explicit powerpc64 option is provided, enable it for -m64. For 32 bit |
| and OS_MISSING_POWERPC64, disable powerpc64 if it's enabled but not |
| specified explicitly. |
| |
| 2022-12-26 liuhongt <hongtao.liu@intel.com> |
| |
| PR target/55522 |
| PR target/36821 |
| * config/i386/gnu-user-common.h (GNU_USER_TARGET_MATHFILE_SPEC): |
| Link crtfastmath.o whenever -mdaz-ftz is specified. Don't link |
| crtfastmath.o when -share or -mno-daz-ftz is specified. |
| * config/i386/i386.opt (mdaz-ftz): New option. |
| * doc/invoke.texi (x86 options): Document mftz-daz. |
| |
| 2022-12-25 Roger Sayle <roger@nextmovesoftware.com> |
| Uroš Bizjak <ubizjak@gmail.com> |
| |
| * config/i386/i386-builtin.def (__builtin_ia32_movss): Update |
| CODE_FOR_sse_movss to CODE_FOR_sse_movss_v4sf. |
| (__builtin_ia32_movsd): Likewise, update CODE_FOR_sse2_movsd to |
| CODE_FOR_sse2_movsd_v2df. |
| * config/i386/i386-expand.cc (split_convert_uns_si_sse): Update |
| gen_sse_movss call to gen_sse_movss_v4sf, and gen_sse2_movsd call |
| to gen_sse2_movsd_v2df. |
| (expand_vec_perm_movs): Also allow V4SImode with TARGET_SSE and |
| V2DImode with TARGET_SSE2. |
| * config/i386/sse.md |
| (avx512fp16_fcmaddcsh_v8hf_mask3<round_expand_name>): Update |
| gen_sse_movss call to gen_sse_movss_v4sf. |
| (avx512fp16_fmaddcsh_v8hf_mask3<round_expand_name>): Likewise. |
| (sse_movss_<mode>): Renamed from sse_movss using VI4F_128 mode |
| iterator to handle both V4SF and V4SI. |
| (sse2_movsd_<mode>): Likewise, renamed from sse2_movsd using |
| VI8F_128 mode iterator to handle both V2DF and V2DI. |
| |
| 2022-12-23 Jakub Jelinek <jakub@redhat.com> |
| Aldy Hernandez <aldyh@redhat.com> |
| |
| * tree-ssa-phiopt.cc (value_replacement): Instead of resetting |
| phires range info, union it with carg. |
| |
| 2022-12-23 Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/108068 |
| * tree.h (real_maybe_zerop): Declare. |
| * tree.cc (real_maybe_zerop): Define. |
| * tree-ssa-dom.cc (record_edge_info): Use it instead of |
| real_zerop or TREE_CODE (op1) == SSA_NAME || real_zerop. Always set |
| can_infer_simple_equiv to false for decimal floating point types. |
| |
| 2022-12-23 Roger Sayle <roger@nextmovesoftware.com> |
| |
| PR target/107548 |
| * config/i386/i386-features.cc (scalar_chain::add_insn): The |
| operands of a VEC_SELECT don't need to added to the scalar chain. |
| (general_scalar_chain::compute_convert_gain) <case VEC_SELECT>: |
| Provide gains for performing STV on a VEC_SELECT. |
| (general_scalar_chain::convert_insn): Convert VEC_SELECT to pshufd, |
| psrldq or no-op. |
| (general_scalar_to_vector_candidate_p): Handle VEC_SELECT of a |
| single element from a vector register to a scalar register. |
| |
| 2022-12-23 H.J. Lu <hjl.tools@gmail.com> |
| Roger Sayle <roger@nextmovesoftware.com> |
| |
| PR target/106933 |
| PR target/106959 |
| * config/i386/i386-features.cc (single_def_chain_p): New predicate |
| function to check that a pseudo's use-def chain is in SSA form. |
| (timode_scalar_to_vector_candidate_p): Check that TImode regs that |
| are SET_DEST or SET_SRC of an insn match/are single_def_chain_p. |
| |
| 2022-12-23 Ju-Zhe Zhong <juzhe.zhong@rivai.ai> |
| |
| * config/riscv/vector.md: Fix contraints. |
| |
| 2022-12-23 Ju-Zhe Zhong <juzhe.zhong@rivai.ai> |
| |
| * config/riscv/riscv-protos.h (get_avl_type_rtx): New function. |
| * config/riscv/riscv-v.cc (get_avl_type_rtx): Ditto. |
| * config/riscv/riscv-vector-builtins-bases.cc (class loadstore): New |
| class. |
| (BASE): Ditto. |
| * config/riscv/riscv-vector-builtins-bases.h: Ditto. |
| * config/riscv/riscv-vector-builtins-functions.def (vle): Ditto. |
| (vse): Ditto. |
| * config/riscv/riscv-vector-builtins-shapes.cc (build_one): Ditto. |
| (struct loadstore_def): Ditto. |
| (SHAPE): Ditto. |
| * config/riscv/riscv-vector-builtins-shapes.h: Ditto. |
| * config/riscv/riscv-vector-builtins-types.def (DEF_RVV_U_OPS): New |
| macro. |
| (DEF_RVV_F_OPS): Ditto. |
| (vuint8mf8_t): Add corresponding mask type. |
| (vuint8mf4_t): Ditto. |
| (vuint8mf2_t): Ditto. |
| (vuint8m1_t): Ditto. |
| (vuint8m2_t): Ditto. |
| (vuint8m4_t): Ditto. |
| (vuint8m8_t): Ditto. |
| (vuint16mf4_t): Ditto. |
| (vuint16mf2_t): Ditto. |
| (vuint16m1_t): Ditto. |
| (vuint16m2_t): Ditto. |
| (vuint16m4_t): Ditto. |
| (vuint16m8_t): Ditto. |
| (vuint32mf2_t): Ditto. |
| (vuint32m1_t): Ditto. |
| (vuint32m2_t): Ditto. |
| (vuint32m4_t): Ditto. |
| (vuint32m8_t): Ditto. |
| (vuint64m1_t): Ditto. |
| (vuint64m2_t): Ditto. |
| (vuint64m4_t): Ditto. |
| (vuint64m8_t): Ditto. |
| (vfloat32mf2_t): Ditto. |
| (vfloat32m1_t): Ditto. |
| (vfloat32m2_t): Ditto. |
| (vfloat32m4_t): Ditto. |
| (vfloat32m8_t): Ditto. |
| (vfloat64m1_t): Ditto. |
| (vfloat64m2_t): Ditto. |
| (vfloat64m4_t): Ditto. |
| (vfloat64m8_t): Ditto. |
| * config/riscv/riscv-vector-builtins.cc (DEF_RVV_TYPE): Adjust for new |
| macro. |
| (DEF_RVV_I_OPS): Ditto. |
| (DEF_RVV_U_OPS): New macro. |
| (DEF_RVV_F_OPS): New macro. |
| (use_real_mask_p): New function. |
| (use_real_merge_p): Ditto. |
| (get_tail_policy_for_pred): Ditto. |
| (get_mask_policy_for_pred): Ditto. |
| (function_builder::apply_predication): Ditto. |
| (function_builder::append_base_name): Ditto. |
| (function_builder::append_sew): Ditto. |
| (function_expander::add_vundef_operand): Ditto. |
| (function_expander::add_mem_operand): Ditto. |
| (function_expander::use_contiguous_load_insn): Ditto. |
| (function_expander::use_contiguous_store_insn): Ditto. |
| * config/riscv/riscv-vector-builtins.def (DEF_RVV_TYPE): Adjust for |
| adding mask type. |
| (vbool64_t): Ditto. |
| (vbool32_t): Ditto. |
| (vbool16_t): Ditto. |
| (vbool8_t): Ditto. |
| (vbool4_t): Ditto. |
| (vbool2_t): Ditto. |
| (vbool1_t): Ditto. |
| (vint8mf8_t): Ditto. |
| (vint8mf4_t): Ditto. |
| (vint8mf2_t): Ditto. |
| (vint8m1_t): Ditto. |
| (vint8m2_t): Ditto. |
| (vint8m4_t): Ditto. |
| (vint8m8_t): Ditto. |
| (vint16mf4_t): Ditto. |
| (vint16mf2_t): Ditto. |
| (vint16m1_t): Ditto. |
| (vint16m2_t): Ditto. |
| (vint16m4_t): Ditto. |
| (vint16m8_t): Ditto. |
| (vint32mf2_t): Ditto. |
| (vint32m1_t): Ditto. |
| (vint32m2_t): Ditto. |
| (vint32m4_t): Ditto. |
| (vint32m8_t): Ditto. |
| (vint64m1_t): Ditto. |
| (vint64m2_t): Ditto. |
| (vint64m4_t): Ditto. |
| (vint64m8_t): Ditto. |
| (vfloat32mf2_t): Ditto. |
| (vfloat32m1_t): Ditto. |
| (vfloat32m2_t): Ditto. |
| (vfloat32m4_t): Ditto. |
| (vfloat32m8_t): Ditto. |
| (vfloat64m1_t): Ditto. |
| (vfloat64m4_t): Ditto. |
| * config/riscv/riscv-vector-builtins.h |
| (function_expander::add_output_operand): New function. |
| (function_expander::add_all_one_mask_operand): Ditto. |
| (function_expander::add_fixed_operand): Ditto. |
| (function_expander::vector_mode): Ditto. |
| (function_base::apply_vl_p): Ditto. |
| (function_base::can_be_overloaded_p): Ditto. |
| * config/riscv/riscv-vsetvl.cc (get_vl): Remove restrict of supporting |
| AVL is not VLMAX. |
| * config/riscv/t-riscv: Add include file. |
| |
| 2022-12-23 Ju-Zhe Zhong <juzhe.zhong@rivai.ai> |
| |
| * config/riscv/riscv-vector-builtins-shapes.cc (struct vsetvl_def): Add |
| "__riscv_" prefix. |
| |
| 2022-12-23 Ju-Zhe Zhong <juzhe.zhong@rivai.ai> |
| |
| * config/riscv/riscv-vector-builtins-bases.cc: Change it to no side effects. |
| * config/riscv/vector.md (@vsetvl<mode>_no_side_effects): New pattern. |
| |
| 2022-12-23 Ju-Zhe Zhong <juzhe.zhong@rivai.ai> |
| |
| * config/riscv/riscv-vector-builtins-bases.cc: Remove side effects. |
| |
| 2022-12-23 Ju-Zhe Zhong <juzhe.zhong@rivai.ai> |
| |
| * config/riscv/riscv-vsetvl.cc (anticipatable_occurrence_p): Fix |
| incorrect annotations. |
| (available_occurrence_p): Ditto. |
| (backward_propagate_worthwhile_p): Ditto. |
| (can_backward_propagate_p): Ditto. |
| |
| 2022-12-23 Ju-Zhe Zhong <juzhe.zhong@rivai.ai> |
| |
| * config/riscv/riscv-vsetvl.cc (vlmax_avl_insn_p): Fix multi-line |
| conditional. |
| (vsetvl_insn_p): Ditto. |
| (same_bb_and_before_p): Ditto. |
| (same_bb_and_after_or_equal_p): Ditto. |
| |
| 2022-12-22 Andrew Carlotti <andrew.carlotti@arm.com> |
| |
| * doc/md.texi: Move example code remark next to it's code block. |
| |
| 2022-12-22 Andrew Carlotti <andrew.carlotti@arm.com> |
| |
| * doc/md.texi: Fix inconsistent example name. |
| |
| 2022-12-22 Andrew Carlotti <andrew.carlotti@arm.com> |
| |
| * doc/md.texi: Fix incorrect pxref. |
| |
| 2022-12-22 Richard Biener <rguenther@suse.de> |
| |
| PR bootstrap/106482 |
| * doc/install.texi (ISO C++11 Compiler): Document GCC version |
| known to work. |
| |
| 2022-12-22 Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/108166 |
| * tree-ssa-phiopt.cc (value_replacement): For the maybe_equal_p |
| case turned into equal_p reset SSA_NAME_RANGE_INFO of phi result. |
| |
| 2022-12-22 Jakub Jelinek <jakub@redhat.com> |
| |
| PR rtl-optimization/108193 |
| * cse.cc (compute_const_anchors): Change n type to |
| unsigned HOST_WIDE_INT, adjust comparison against it to avoid |
| warnings. Formatting fix. |
| (insert_const_anchor): Use gen_int_mode instead of GEN_INT. |
| |
| 2022-12-22 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/107451 |
| * tree-vect-stmts.cc (vectorizable_load): Avoid loading |
| SLP group members from group numbers in excess of the |
| vectorization factor. |
| |
| 2022-12-22 Jakub Jelinek <jakub@redhat.com> |
| |
| * config/aarch64/t-aarch64 (TM_H): Don't add aarch64-cores.def, |
| add aarch64-fusion-pairs.def, aarch64-tuning-flags.def and |
| aarch64-option-extensions.def. |
| (OPTIONS_H_EXTRA): Don't add aarch64-fusion-pairs.def nor |
| aarch64-tuning-flags.def. |
| |
| 2022-12-22 Jan Hubicka <hubicka@ucw.cz> |
| |
| * config/i386/i386-expand.cc (ix86_expand_set_or_cpymem): Add |
| TARGET_AVX512_SPLIT_REGS |
| * config/i386/i386-options.cc (ix86_option_override_internal): |
| Honor x86_TONE_AVOID_256FMA_CHAINS. |
| * config/i386/i386.cc (ix86_vec_cost): Honor TARGET_AVX512_SPLIT_REGS. |
| (ix86_reassociation_width): Likewise. |
| * config/i386/i386.h (TARGET_AVX512_SPLIT_REGS): New tune. |
| * config/i386/x86-tune.def (X86_TUNE_USE_GATHER_2PARTS): Disable |
| for znver4. |
| (X86_TUNE_USE_GATHER_4PARTS): Likewise. |
| (X86_TUNE_AVOID_256FMA_CHAINS): Set for znver4. |
| (X86_TUNE_AVOID_512FMA_CHAINS): New utne; set for znver4. |
| (X86_TUNE_AVX256_OPTIMAL): Add znver4. |
| (X86_TUNE_AVX512_SPLIT_REGS): New tune. |
| (X86_TUNE_AVX256_MOVE_BY_PIECES): Add znver1-3. |
| (X86_TUNE_AVX256_STORE_BY_PIECES): Add znver1-3. |
| (X86_TUNE_AVX512_MOVE_BY_PIECES): Add znver4. |
| (X86_TUNE_AVX512_STORE_BY_PIECES): Add znver4. |
| |
| 2022-12-22 Jan Hubicka <hubicka@ucw.cz> |
| |
| * config/i386/x86-tune-costs.h (znver4_cost): Upate costs of FP and SSE |
| moves, division multiplication, gathers, L2 cache size, and more |
| complex FP instrutions. |
| |
| 2022-12-21 Andrew Pinski <apinski@marvell.com> |
| |
| PR tree-optimization/105532 |
| * match.pd (~(X >> Y) -> ~X >> Y): Check if it is an integral |
| type before calling tree_nonzero_bits. |
| (popcount(X) + popcount(Y)): Likewise. |
| (popcount(X&C1)): Likewise. |
| |
| 2022-12-21 Chung-Lin Tang <cltang@codesourcery.com> |
| |
| * config/nvptx/nvptx.cc (nvptx_print_operand): Add 'p' case, adjust |
| comments. |
| (enum nvptx_builtins): Add NVPTX_BUILTIN_BAR_RED_AND, |
| NVPTX_BUILTIN_BAR_RED_OR, and NVPTX_BUILTIN_BAR_RED_POPC. |
| (nvptx_expand_bar_red): New function. |
| (nvptx_init_builtins): |
| Add DEFs of __builtin_nvptx_bar_red_[and/or/popc]. |
| (nvptx_expand_builtin): Use nvptx_expand_bar_red to expand |
| NVPTX_BUILTIN_BAR_RED_[AND/OR/POPC] cases. |
| * config/nvptx/nvptx.md (define_c_enum "unspecv"): Add |
| UNSPECV_BARRED_AND, UNSPECV_BARRED_OR, and UNSPECV_BARRED_POPC. |
| (BARRED): New int iterator. |
| (barred_op,barred_mode,barred_ptxtype): New int attrs. |
| (nvptx_barred_<barred_op>): New define_insn. |
| |
| 2022-12-21 Richard Biener <rguenther@suse.de> |
| |
| PR middle-end/107994 |
| * gimplify.cc (gimplify_expr): Catch errorneous comparison |
| operand. |
| |
| 2022-12-21 Jan Hubicka <hubicka@ucw.cz> |
| |
| * lto-opts.cc (lto_write_options): Also skip -fwhole-program. |
| |
| 2022-12-21 Jan Hubicka <jh@suse.cz> |
| |
| * lto-cgraph.cc (lto_output_node): When doing WPA in incremental link |
| pass down resolution info. |
| |
| 2022-12-21 Jan Hubicka <hubicka@ucw.cz> |
| |
| * doc/invoke.texi: Fix documentation of -fwhole-program with LTO |
| and document behaviour for incremental linking. |
| |
| 2022-12-21 Kewen Lin <linkw@linux.ibm.com> |
| |
| * config/rs6000/rs6000.cc (rs6000_option_override_internal): Fix the |
| location for OPTION_MASK_P10_FUSION flag setting. |
| |
| 2022-12-21 Kewen Lin <linkw@linux.ibm.com> |
| |
| * fold-const.cc (fold_convert_const_real_from_real): Treat floating |
| point conversion to a type with same mode as copy instead of normal |
| convertFormat. |
| |
| 2022-12-21 Kewen Lin <linkw@linux.ibm.com> |
| |
| PR target/106736 |
| * config/rs6000/mma.md (define_expand movoo): Call function |
| rs6000_opaque_type_invalid_use_p to check and emit error message for |
| the invalid use of opaque type. |
| (define_expand movxo): Likewise. |
| * config/rs6000/rs6000-protos.h |
| (rs6000_opaque_type_invalid_use_p): New function declaration. |
| (currently_expanding_gimple_stmt): New extern declaration. |
| * config/rs6000/rs6000.cc (rs6000_opaque_type_invalid_use_p): New |
| function. |
| |
| 2022-12-21 Jason Merrill <jason@redhat.com> |
| |
| * fold-const.cc (fold_convert_loc): Check return value of |
| protected_set_expr_location_unshare. |
| |
| 2022-12-21 Jason Merrill <jason@redhat.com> |
| |
| PR c++/84471 |
| PR c++/107504 |
| * fold-const.cc (protected_set_expr_location_unshare): Not static. |
| * tree.h: Declare it. |
| * tree.cc (decl_value_expr_insert): Use it. |
| |
| 2022-12-20 Patrick Palka <ppalka@redhat.com> |
| |
| PR c++/101886 |
| * tree.cc (walk_tree_1) <case TREE_VEC>: Walk the elements |
| in forward instead of reverse order. |
| <case VECTOR_CST>: Likewise. |
| |
| 2022-12-20 Andrew MacLeod <amacleod@redhat.com> |
| |
| PR tree-optimization/108139 |
| * gimple-range-cache.cc (ranger_cache::fill_block_cache): Do not |
| use equivalences originating from PHIS. |
| |
| 2022-12-20 Richard Biener <rguenther@suse.de> |
| |
| PR d/104749 |
| * doc/install.texi (GDC): Document GDC 9.4 or later is required |
| to build the D language frontend. |
| |
| 2022-12-20 Jiufu Guo <guojiufu@linux.ibm.com> |
| |
| PR target/103743 |
| * config/rs6000/rs6000-protos.h (can_be_rotated_to_lowbits): New. |
| (can_be_rotated_to_positive_16bits): New. |
| (can_be_rotated_to_negative_15bits): New. |
| * config/rs6000/rs6000.cc (can_be_rotated_to_lowbits): New definition. |
| (can_be_rotated_to_positive_16bits): New definition. |
| (can_be_rotated_to_negative_15bits): New definition. |
| * config/rs6000/rs6000.md (*rotate_on_cmpdi): New define_insn_and_split. |
| (eqne): Move earlier. |
| |
| 2022-12-19 Jason Merrill <jason@redhat.com> |
| |
| * sort.cc: Disable -Wconditionally-supported in |
| CHECKING_P code. |
| |
| 2022-12-19 Jason Merrill <jason@redhat.com> |
| |
| PR c++/64867 |
| * configure.ac (strict_warn): Add -Wconditionally-supported. |
| * configure: Regenerate. |
| |
| 2022-12-19 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/108164 |
| * tree-vect-loop-manip.cc (vect_update_ivs_after_vectorizer): |
| Perform vect_step_op_add update in the appropriate type. |
| |
| 2022-12-19 Richard Earnshaw <rearnsha@arm.com> |
| |
| * config/arm/arm-c.cc (__ARM_FEATURE_CLZ): Fix definition of |
| preprocessor macro when target has CLZ in another ISA. |
| |
| 2022-12-19 Ju-Zhe Zhong <juzhe.zhong@rivai.ai> |
| |
| * config/riscv/vector.md: Remove vste. |
| |
| 2022-12-19 Ju-Zhe Zhong <juzhe.zhong@rivai.ai> |
| |
| * config.gcc: Add riscv-vsetvl.o. |
| * config/riscv/riscv-passes.def (INSERT_PASS_BEFORE): Add VSETVL PASS |
| location. |
| * config/riscv/riscv-protos.h (make_pass_vsetvl): New function. |
| (enum avl_type): New enum. |
| (get_ta): New function. |
| (get_ma): Ditto. |
| (get_avl_type): Ditto. |
| (calculate_ratio): Ditto. |
| (enum tail_policy): New enum. |
| (enum mask_policy): Ditto. |
| * config/riscv/riscv-v.cc (calculate_ratio): New function. |
| (emit_pred_op): change the VLMAX mov codgen. |
| (get_ta): New function. |
| (get_ma): Ditto. |
| (enum tail_policy): Change enum. |
| (get_prefer_tail_policy): New function. |
| (enum mask_policy): Change enum. |
| (get_prefer_mask_policy): New function. |
| * config/riscv/t-riscv: Add riscv-vsetvl.o |
| * config/riscv/vector.md: Adjust attribute and pattern for VSETVL |
| PASS. |
| (@vlmax_avl<mode>): Ditto. |
| (@vsetvl<mode>_no_side_effects): Delete. |
| (vsetvl_vtype_change_only): New MD pattern. |
| (@vsetvl_discard_result<mode>): Ditto. |
| * config/riscv/riscv-vsetvl.cc: New file. |
| * config/riscv/riscv-vsetvl.h: New file. |
| |
| 2022-12-19 Ju-Zhe Zhong <juzhe.zhong@rivai.ai> |
| |
| * config/riscv/riscv-vector-switch.def (ENTRY): Correct attributes. |
| |
| 2022-12-19 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
| |
| PR target/108140 |
| * config/aarch64/aarch64-builtins.cc |
| (aarch64_expand_builtin_data_intrinsic): Handle NULL target. |
| |
| 2022-12-19 Jakub Jelinek <jakub@redhat.com> |
| |
| * config/gnu-user.h (LIBHWASAN_EARLY_SPEC): Add libhwasan_preinit.o |
| to link spec if not -shared. |
| |
| 2022-12-19 Ju-Zhe Zhong <juzhe.zhong@rivai.ai> |
| |
| * config/riscv/riscv-v.cc (emit_vlmax_vsetvl): Pass through VLMUL enum |
| instead of machine mode. |
| * config/riscv/riscv-vector-builtins-bases.cc: Ditto. |
| * config/riscv/riscv.cc (riscv_print_operand): Print LMUL by enum vlmul |
| instead of machine mode. |
| |
| 2022-12-19 Jiufu Guo <guojiufu@linux.ibm.com> |
| |
| PR target/106708 |
| * config/rs6000/rs6000.cc (rs6000_emit_set_long_const): Add using |
| "li; x?oris" to build constant. |
| |
| 2022-12-19 liuhongt <hongtao.liu@intel.com> |
| |
| PR target/55522 |
| * config/i386/gnu-user-common.h (GNU_USER_TARGET_MATHFILE_SPEC): |
| Don't add crtfastmath.o for -shared. |
| * doc/invoke.texi (-shared): Add related documentation. |
| |
| 2022-12-18 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> |
| |
| * config.gcc: Determine Solaris minor version. |
| Obsolete *-*-solaris2.11.[0-3]*. |
| * doc/install.texi (Specific, *-*-solaris2*): Document it. |
| |
| 2022-12-17 Segher Boessenkool <segher@kernel.crashing.org> |
| |
| * config/rs6000/rs6000-logue.cc (rs6000_output_function_epilogue): |
| Handle GNU Rust for the tbtab lang field. |
| |
| 2022-12-16 John David Anglin <danglin@gcc.gnu.org> |
| |
| * config/pa/pa.cc (pa_option_override): Disable -fstack-protector. |
| |
| 2022-12-16 Vladimir N. Makarov <vmakarov@redhat.com> |
| |
| Revert: |
| 2022-12-15 Vladimir N. Makarov <vmakarov@redhat.com> |
| |
| * ira-costs.cc: Include print-rtl.h. |
| (record_reg_classes, scan_one_insn): Add code to print debug info. |
| * ira.cc (ira_init_register_move_cost): Check that at least one hard |
| reg of the mode are in the class contents to calculate the |
| register move costs. |
| |
| 2022-12-16 Qing Zhao <qing.zhao@oracle.com> |
| |
| * doc/invoke.texi: Document -Wstrict-flex-arrays option. |
| * gimple-array-bounds.cc (check_out_of_bounds_and_warn): Add two more |
| arguments. |
| (array_bounds_checker::check_array_ref): Issue warnings for |
| -Wstrict-flex-arrays. |
| * opts.cc (finish_options): Issue warning for unsupported combination |
| of -Wstrict_flex_arrays and -fstrict-flex-array. |
| * tree-vrp.cc (execute_ranger_vrp): Enable the pass when |
| warn_strict_flex_array is true. |
| |
| 2022-12-16 Palmer Dabbelt <palmer@rivosinc.com> |
| |
| * config/riscv/riscv.cc (riscv_option_override): Fix comment |
| wording. |
| |
| 2022-12-16 Palmer Dabbelt <palmer@rivosinc.com> |
| |
| * doc/extend.texi (__builtin_riscv_pause): Imply |
| Xgnuzihintpausestate. |
| |
| 2022-12-16 Richard Biener <rguenther@suse.de> |
| |
| PR middle-end/108086 |
| * tree-inline.cc (remap_ssa_name): Do not unshare the |
| result from the decl_map. |
| |
| 2022-12-16 Richard Biener <rguenther@suse.de> |
| |
| PR middle-end/108086 |
| * tree-inline.cc (copy_bb): Remove handling of (foo *)&this->m |
| substitution which is done in remap_gimple_op_r via |
| re-gimplifying. |
| |
| 2022-12-16 Jakub Jelinek <jakub@redhat.com> |
| |
| PR rtl-optimization/106751 |
| * loop-invariant.cc (move_invariant_reg): If preheader bb ends |
| with a JUMP_INSN, split the preheader edge and emit invariants |
| into the new preheader basic block. |
| |
| 2022-12-16 Richard Biener <rguenther@suse.de> |
| |
| PR middle-end/108086 |
| * tree-inline.cc (remap_gimple_stmt): Add stmts to the |
| sequence without updating them. Simplify x == x detection. |
| |
| 2022-12-16 Haochen Jiang <haochen.jiang@intel.com> |
| |
| * config/i386/cmpccxaddintrin.h |
| (__cmpccxadd_epi32): Rename to _cmpccxadd_epi32. |
| (__cmpccxadd_epi64): Rename to _cmpccxadd_epi64. |
| |
| 2022-12-15 Vladimir N. Makarov <vmakarov@redhat.com> |
| |
| * ira-costs.cc: Include print-rtl.h. |
| (record_reg_classes, scan_one_insn): Add code to print debug info. |
| * ira.cc (ira_init_register_move_cost): Check that at least one hard |
| reg of the mode are in the class contents to calculate the |
| register move costs. |
| |
| 2022-12-15 Siddhesh Poyarekar <siddhesh@gotplt.org> |
| |
| * doc/extend.texi (__builtin_dynamic_object_size): Document |
| builtin. |
| * doc/passes.texi |
| (Optimize calls to @code{__builtin_object_size}): Also mention |
| __builtin_dynamic_object_size. |
| |
| 2022-12-15 Siddhesh Poyarekar <siddhesh@gotplt.org> |
| |
| PR middle-end/70090 |
| * doc/invoke.texi (-fsanitize=object-size): Use |
| __builtin_dynamic_object_size instead of |
| __builtin_object_size. |
| |
| 2022-12-15 Richard Biener <rguenther@suse.de> |
| |
| PR middle-end/108086 |
| * tree-inline.cc (copy_edges_for_bb): Walk stmts backwards for |
| splitting the block to avoid quadratic behavior with setting |
| stmts BB on multliple splits. |
| |
| 2022-12-15 Spacetown <michael.foerderer@gmx.de> |
| |
| PR gcov-profile/107537 |
| * gcov.cc (output_branch_count): Add annotation '(fallthrough)' |
| or '(throw)' also to uncovered branches. |
| |
| 2022-12-15 Richard Biener <rguenther@suse.de> |
| |
| PR middle-end/108086 |
| * tree-inline.cc (copy_edges_for_bb): Do not update all |
| stmts again. |
| |
| 2022-12-15 Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/108095 |
| * tree-into-ssa.cc (maybe_register_def): Insert debug stmt |
| on all non-EH edges from asm goto if they have a single |
| predecessor rather than asserting there is at most one such edge. |
| Test whether there are no PHI nodes next to the single predecessor |
| test. |
| |
| 2022-12-14 David Faust <david.faust@oracle.com> |
| |
| PR target/106773 |
| * btfout.cc (get_section_name): New function. |
| (btf_collect_datasec): Use it here. Process functions, marking them |
| 'extern' and generating DATASEC entries for them as appropriate. Move |
| creation of BTF_KIND_FUNC records to here... |
| (btf_dtd_emit_preprocess_cb): ... from here. |
| |
| 2022-12-14 David Faust <david.faust@oracle.com> |
| |
| PR target/106773 |
| * btfout.cc (btf_collect_datasec): Correct size of void entries. |
| (btf_dvd_emit_preprocess_cb): Do not skip emitting variables which |
| refer to void types. |
| (btf_init_postprocess): Create 'const void' type record if needed and |
| adjust variables to refer to it as appropriate. |
| |
| 2022-12-14 David Faust <david.faust@oracle.com> |
| |
| PR target/106773 |
| * btfout.cc (btf_collect_datasec): Mark extern variables as such. |
| (btf_dvd_emit_preprocess_cb): Skip non-defining extern variable decl |
| if there is a defining decl for the same variable. |
| (btf_asm_varent): Accomodate 'extern' linkage. |
| |
| 2022-12-14 Martin Jambor <mjambor@suse.cz> |
| |
| * ipa-sra.cc (create_parameter_descriptors): Consider the first |
| parameter of a method safe to dereference. |
| |
| 2022-12-14 Martin Jambor <mjambor@suse.cz> |
| |
| * ipa-sra.cc (loaded_decls): Adjust comment. |
| (scan_expr_access): Also detect assignments of address of local |
| variables to a variable. Bail out early on SSA_NAMEs and |
| constants as an optimization. |
| |
| 2022-12-14 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * configure.ac (HAVE_PYTHON): Test for Python3 added. |
| * dwarf2out.cc (gen_compile_unit_die): Check language_string |
| and language to DW_LANG_Modula2. |
| * doc/install.texi: Add m2 as a language. |
| (--disable-libgm2): Documented. Add make check-m2 to testing selected |
| tests. |
| * doc/sourcebuild.texi (GM2): New prerequisite item. |
| (Python3 modules) New item. |
| (libgm2) Added. |
| (gcc/m2) Added. |
| * configure: Rebuilt. |
| * config.in: Rebuilt. |
| * doc/gm2.texi: New file. |
| |
| 2022-12-14 Martin Jambor <mjambor@suse.cz> |
| |
| * doc/invoke.texi (ipa-sra-ptrwrap-growth-factor): Fix the |
| description. |
| * params.opt (ipa-sra-ptrwrap-growth-factor): Likewise. |
| |
| 2022-12-14 Tamar Christina <tamar.christina@arm.com> |
| |
| PR target/107988 |
| * config/aarch64/aarch64.cc |
| (aarch64_vectorize_can_special_div_by_constant): Ensure input and output |
| RTL are registers. |
| |
| 2022-12-14 Martin Liska <mliska@suse.cz> |
| |
| * doc/invoke.texi: Document ipa-sra-ptrwrap-growth-factor. |
| |
| 2022-12-14 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/107617 |
| * tree-ssa-sccvn.cc (vn_walk_cb_data::push_partial_def): |
| Handle negative pd.rhs_off. |
| (vn_reference_lookup_3): Properly provide pd.rhs_off |
| for .LEN_STORE on big-endian targets. |
| |
| 2022-12-13 Martin Jambor <mjambor@suse.cz> |
| |
| * ipa-param-manipulation.cc |
| (ipa_param_body_adjustments::modify_expression): Bail out early if |
| there are no replacements. |
| (ipa_param_body_adjustments::modify_assignment): Likewise. |
| |
| 2022-12-13 Martin Jambor <mjambor@suse.cz> |
| |
| * ipa-sra.cc (isra_param_desc): New fields safe_size, |
| conditionally_dereferenceable and safe_size_set. |
| (struct gensum_param_desc): New field conditionally_dereferenceable. |
| (struct isra_param_flow): Updated comment of field unit_size. |
| (ipa_sra_function_summaries::duplicate): Copy the new fields. |
| (isra_call_summary::dump): Dump unit_size when representing safe_size. |
| (dump_gensum_param_descriptor): Dump new flag. |
| (dump_isra_param_descriptor): Dump new fields. |
| (isra_analyze_call): Fill unit_size when it represents known safe |
| size. |
| (check_gensum_access): Instead of disqualifying pointers which are not |
| always dereference, mark them as conditionally dereferencable if loads |
| are frequent enough. |
| (process_scan_results): Copy the conditionally_dereferenceable flag. |
| (isra_write_node_summary): Stream new fields, or assert they are not |
| initialized yet. |
| (isra_read_node_info): Stream new fields. |
| (update_safe_size): New function. |
| (propagate_param_hints_accross_call): Propagate safe_sizes. |
| (propagate_hints_to_all_callees): New function. |
| (adjust_parameter_descriptions): Check conditionally_dereferenceable |
| candidates, rework dumping. |
| (ipa_sra_analysis): Move most of hint propagation for one node to |
| propagate_hints_to_all_callees. Add another loop to stabilize within |
| SCCs and another one to verify. |
| |
| 2022-12-13 Martin Jambor <mjambor@suse.cz> |
| |
| * ipa-sra.cc (isra_param_desc): New field not_specially_constructed. |
| (struct isra_param_flow): New field constructed_for_calls. |
| (isra_call_summary::dump): Dump the new flag. |
| (loaded_decls): New variable. |
| (dump_isra_param_descriptor): New parameter hints, dump |
| not_specially_constructed if it is true. |
| (dump_isra_param_descriptors): New parameter hints, pass it to |
| dump_isra_param_descriptor. |
| (ipa_sra_function_summaries::duplicate): Duplicate new flag. |
| (create_parameter_descriptors): Adjust comment. |
| (get_gensum_param_desc): Bail out when decl2desc is NULL. |
| (scan_expr_access): Add loaded local variables to loaded_decls. |
| (scan_function): Survive if final_bbs is NULL. |
| (isra_analyze_call): Compute constructed_for_calls flag. |
| (process_scan_results): Be optimistic about size limits. Do not dump |
| computed param hints when dumpint IPA-SRA structures. |
| (isra_write_edge_summary): Stream constructed_for_calls. |
| (isra_read_edge_summary): Likewise. |
| (ipa_sra_dump_all_summaries): New parameter hints, pass it to |
| dump_isra_param_descriptor. |
| (flip_all_hints_pessimistic): New function. |
| (flip_all_param_hints_pessimistic): Likewise. |
| (propagate_param_hints): Likewise. |
| (disable_unavailable_parameters): Renamed to |
| adjust_parameter_descriptions. Expand size limits for parameters |
| which are specially contstructed by all callers. Check limits again.p |
| (ipa_sra_analysis): Pass required hints to ipa_sra_dump_all_summaries. |
| Add hint propagation. |
| (ipa_sra_summarize_function): Initialize and destory loaded_decls, |
| rearrange so that scan_function is called even when there are no |
| candidates. |
| * params.opt (ipa-sra-ptrwrap-growth-factor): New parameter. |
| |
| 2022-12-13 Martin Jambor <mjambor@suse.cz> |
| |
| * ipa-sra.cc (ipa_sra_analysis): Move top-down analysis before |
| bottom-up analysis. Replace FOR_EACH_VEC_ELT with C++11 iteration. |
| |
| 2022-12-13 Martin Jambor <mjambor@suse.cz> |
| |
| PR ipa/103585 |
| * params.opt (ipa-sra-deref-prob-threshold): New parameter. |
| * doc/invoke.texi (ipa-sra-deref-prob-threshold): Document it. |
| * ipa-sra.cc (struct gensum_param_access): New field load_count. |
| (struct gensum_param_desc): New field safe_ref, adjusted comments. |
| (by_ref_count): Renamed to unsafe_by_ref_count, adjusted all uses. |
| (dump_gensum_access): Dump the new field. |
| (dump_gensum_param_descriptor): Likewise. |
| (create_parameter_descriptors): Set safe_ref field, move setting |
| by_ref forward. Only increment unsafe_by_ref_count for unsafe |
| by_ref parameters. |
| (allocate_access): Initialize new field. |
| (mark_param_dereference): Adjust indentation. Only add data to |
| bb_dereferences for unsafe by_ref parameters. |
| (scan_expr_access): For loads, accumulate BB counts. |
| (dereference_probable_p): New function. |
| (check_gensum_access): Fix leading comment, add parameter FUN. |
| Check cumulative counts of loads for safe by_ref accesses instead |
| of dereferences. |
| (process_scan_results): Do not propagate dereference distances for |
| safe by_ref parameters. Pass fun to check_gensum_access. Safe |
| by_ref params do not need the postdominance check. |
| |
| 2022-12-13 Martin Jambor <mjambor@suse.cz> |
| |
| * ipa-cp.cc (clone_for_param_removal_p): New function. |
| (estimate_local_effects): Call it before considering cloning |
| just to remove unused parameters. |
| |
| 2022-12-13 Martin Jambor <mjambor@suse.cz> |
| |
| PR ipa/103227 |
| * ipa-param-manipulation.h (class ipa_param_adjustments): Removed |
| member function get_updated_index_or_split. |
| (class ipa_param_body_adjustments): New overload of |
| register_replacement, new member function append_init_stmts, new |
| member m_split_agg_csts_inits. |
| * ipa-param-manipulation.cc: Include ipa-prop.h. |
| (ipa_param_adjustments::get_updated_index_or_split): Removed. |
| (ipa_param_body_adjustments::register_replacement): New overload, use |
| it from the older one. |
| (ipa_param_body_adjustments::common_initialization): Added the |
| capability to create replacements for conflicting IPA-CP discovered |
| constants. |
| (ipa_param_body_adjustments::ipa_param_body_adjustments): Construct |
| the new member. |
| (ipa_param_body_adjustments::append_init_stmts): New function. |
| * ipa-sra.cc: Include ipa-prop.h. |
| (push_param_adjustments_for_index): Require IPA-CP transformation |
| summary as a parameter, do not create replacements which are known to |
| have constant values. |
| (process_isra_node_results): Find and pass to the above function the |
| IPA-CP transformation summary. |
| * ipa-prop.cc (adjust_agg_replacement_values): Remove the |
| functionality replacing IPA-SRA created scalar parameters with |
| constants. Simplify, do not require parameter descriptors, do not |
| return anything. |
| (ipcp_transform_function): Simplify now that |
| adjust_agg_replacement_values does not change cfg. Move definition |
| and initialization of descriptors lower. |
| * tree-inline.cc (tree_function_versioning): Call append_init_stmts of |
| param_body_adjs, if there are any. |
| |
| 2022-12-13 Martin Jambor <mjambor@suse.cz> |
| |
| * ipa-prop.cc (useful_ipcp_transformation_info_p): New function. |
| (write_ipcp_transformation_info): Added a parameter, simplified |
| given that is known not to be NULL. |
| (ipcp_write_transformation_summaries): Write out all useful |
| transformation summaries. |
| (read_ipcp_transformation_info): Simplify given that some info |
| will be read. |
| (read_replacements_section): Remove assert. |
| * lto-cgraph.cc (add_node_to): Also set encode_body for clones. |
| * lto-streamer-out.cc (lto_output): Do not output virtual clones. |
| |
| 2022-12-13 Jakub Jelinek <jakub@redhat.com> |
| |
| PR target/108044 |
| * config/i386/i386.md (*concat<half><mode>3_5, *concat<mode><dwi>3_6, |
| *concat<mode><dwi>3_7): Split alternative with =ro output constraint |
| into =r,o,o and use Wd input constraint for the last alternative which |
| is enabled for TARGET_64BIT. Reject ix86_endbr_immediate_operand |
| in the input constant. |
| |
| 2022-12-13 Tamar Christina <tamar.christina@arm.com> |
| |
| * config/aarch64/aarch64.md (tbranch_<code><mode>3): Use gen_int_mode. |
| |
| 2022-12-13 Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/108064 |
| * tree-vect-patterns.cc (vect_recog_rotate_pattern): Pass uvectype |
| as 4th argument to append_pattern_def_seq for statements with lhs |
| with utype type. |
| |
| 2022-12-13 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/105801 |
| * tree-ssa-ccp.cc (likely_value): .DEFERRED_INIT produces |
| UNDEFINED. |
| * doc/invoke.texi (ftrivial-auto-var-init): Explicitely |
| mention we treat variables without an initializer as |
| undefined also for optimization purposes. |
| |
| 2022-12-13 Tom Tromey <tom@tromey.com> |
| Mark Wielaard <mark@klomp.org> |
| Marc Poulhiès <dkm@kataplop.net> |
| |
| * dwarf2out.cc (is_rust): New. |
| (base_type_die): Use DW_ATE_UTF for the Rust 'char' type. |
| (gen_compile_unit_die): Handle "GNU Rust". |
| |
| 2022-12-13 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/108076 |
| * tree-if-conv.cc (if_convertible_loop_p_1): Reject blocks |
| with non-local or forced labels that we later remove |
| labels from. |
| |
| 2022-12-13 Haochen Gui <guihaoc@gcc.gnu.org> |
| |
| * config/rs6000/rs6000.md (cbranchcc4): New expander. |
| |
| 2022-12-13 Haochen Gui <guihaoc@gcc.gnu.org> |
| |
| * optabs.cc (prepare_cmp_insn): Return a NULL rtx other than |
| assertion failure when targets don't have cbranch optab or |
| predicate check fails. |
| |
| 2022-12-12 Wilco Dijkstra <wilco.dijkstra@arm.com> |
| |
| * config/aarch64/aarch64.cc (aarch64_rtx_costs): Add correct costs |
| for 24-bit and 12-bit shifted immediate add/sub. |
| (TARGET_CONST_ANCHOR): Define. |
| * config/aarch64/predicates.md (aarch64_pluslong_immediate): |
| Fix range check. |
| |
| 2022-12-12 Tamar Christina <tamar.christina@arm.com> |
| |
| * match.pd: Add new rule. |
| |
| 2022-12-12 Tamar Christina <tamar.christina@arm.com> |
| |
| * config/aarch64/aarch64.cc (aarch64_can_change_mode_class): Restrict |
| conversions between partial struct types properly. |
| |
| 2022-12-12 Tamar Christina <tamar.christina@arm.com> |
| |
| * config/aarch64/aarch64.md (*tb<optab><mode>1): Rename to... |
| (*tb<optab><ALLI:mode><GPI:mode>1): ... this. |
| (tbranch_<code><mode>4): New. |
| * config/aarch64/iterators.md(ZEROM, zerom): New. |
| |
| 2022-12-12 Tamar Christina <tamar.christina@arm.com> |
| |
| * dojump.cc (do_jump): Pass along value. |
| (do_jump_by_parts_greater_rtx): Likewise. |
| (do_jump_by_parts_zero_rtx): Likewise. |
| (do_jump_by_parts_equality_rtx): Likewise. |
| (do_compare_rtx_and_jump): Likewise. |
| (do_compare_and_jump): Likewise. |
| * dojump.h (do_compare_rtx_and_jump): New. |
| * optabs.cc (emit_cmp_and_jump_insn_1): Refactor to take optab to check. |
| (validate_test_and_branch): New. |
| (emit_cmp_and_jump_insns): Optiobally take a value, and when value is |
| supplied then check if it's suitable for tbranch. |
| * optabs.def (tbranch_eq$a4, tbranch_ne$a4): New. |
| * doc/md.texi (tbranch_@var{op}@var{mode}4): Document it. |
| * optabs.h (emit_cmp_and_jump_insns): New. |
| * tree.h (tree_zero_one_valued_p): New. |
| |
| 2022-12-12 Tamar Christina <tamar.christina@arm.com> |
| |
| * config/aarch64/aarch64-simd.md (*aarch64_simd_movv2hf): New. |
| (mov<mode>, movmisalign<mode>, aarch64_dup_lane<mode>, |
| aarch64_store_lane0<mode>, aarch64_simd_vec_set<mode>, |
| @aarch64_simd_vec_copy_lane<mode>, vec_set<mode>, |
| reduc_<optab>_scal_<mode>, reduc_<fmaxmin>_scal_<mode>, |
| aarch64_reduc_<optab>_internal<mode>, aarch64_get_lane<mode>, |
| vec_init<mode><Vel>, vec_extract<mode><Vel>): Support V2HF. |
| (aarch64_simd_dupv2hf): New. |
| * config/aarch64/aarch64.cc (aarch64_classify_vector_mode): |
| Add E_V2HFmode. |
| * config/aarch64/iterators.md (VHSDF_P): New. |
| (V2F, VMOVE, nunits, Vtype, Vmtype, Vetype, stype, VEL, |
| Vel, q, vp): Add V2HF. |
| * config/arm/types.md (neon_fp_reduc_add_h): New. |
| |
| 2022-12-12 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
| |
| * config/aarch64/aarch64-c.cc (aarch64_update_cpp_builtins): Define |
| __ARM_FEATURE_PAUTH and __ARM_FEATURE_BTI when appropriate. |
| * config/aarch64/aarch64.h (TARGET_BTI): Define. |
| |
| 2022-12-12 Richard Biener <rguenther@suse.de> |
| |
| * genmatch.cc (dt_simplify::gen): Revert last change. |
| * match.pd: Revert simplification of CONSTUCTOR leaf handling. |
| (&x cmp SSA_NAME): Handle ADDR_EXPR in SSA defs. |
| * fold-const.cc (split_address_to_core_and_offset): Handle |
| ADDR_EXPRs in SSA defs. |
| (address_compare): Likewise. |
| |
| 2022-12-12 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/89317 |
| * tree-ssa-ccp.cc (ccp_fold): Handle GIMPLE_COND via |
| gimple_fold_stmt_to_constant_1. |
| * match.pd (&a != &a + c): Apply to pointer_plus with non-ADDR_EXPR |
| base as well. |
| |
| 2022-12-11 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/89317 |
| * match.pd ((p + b) - &p->c -> b - offsetof(c)): New patterns. |
| |
| 2022-12-11 Richard Biener <rguenther@suse.de> |
| |
| * genmatch.cc (dt_node::gen_kids): Handle ADDR_EXPR in both |
| the GENERIC and GIMPLE op position. |
| (dt_simplify::gen): Capture both GENERIC and GIMPLE op |
| position for ADDR_EXPR and CONSTRUCTOR. |
| * match.pd: Simplify CONSTRUCTOR leaf handling. |
| |
| 2022-12-11 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/106904 |
| * tree.h (strip_zero_offset_components): Declare. |
| * tree.cc (strip_zero_offset_components): Define. |
| * tree-vect-data-refs.cc (vect_create_addr_base_for_vector_ref): |
| Strip zero offset components before building the address. |
| |
| 2022-12-10 Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/107997 |
| * tree-ssa-loop-ivopts.cc: Include cfganal.h. |
| (create_new_iv) <case IP_END>: If ip_end_pos bb is non-empty and ends |
| with a stmt which ends bb, instead of adding iv update after it split |
| the latch edge and insert iterator into the new latch bb. |
| |
| 2022-12-09 Jiufu Guo <guojiufu@linux.ibm.com> |
| |
| * config/rs6000/rs6000.cc (rs6000_emit_set_const): Remove copy_rtx. |
| (rs6000_emit_set_long_const): Likewise. |
| |
| 2022-12-09 Martin Liska <mliska@suse.cz> |
| |
| * config/i386/i386-builtins.cc (fold_builtin_cpu): Use same path |
| as for PR103661. |
| * doc/extend.texi: Fix "x86-64" use. |
| |
| 2022-12-09 Sebastian Huber <sebastian.huber@embedded-brains.de> |
| |
| * config/rtems.h (SUBTARGET_CC1_SPEC): Rename to... |
| (OS_CC1_SPEC): ...this. |
| * gcc.cc (SUBTARGET_CC1_SPEC): Rename to... |
| (OS_CC1_SPEC): ...this. |
| |
| 2022-12-09 David Malcolm <dmalcolm@redhat.com> |
| |
| * Makefile.in (ANALYZER_OBJS): Update for renaming of |
| analyzer/region-model-impl-calls.cc to analyzer/kf.cc. |
| |
| 2022-12-09 liuhongt <hongtao.liu@intel.com> |
| |
| * doc/invoke.texi (x86 options): Document |
| -mlam={none,u48,u57}. |
| * config/i386/i386-opts.h (enum lam_type): New enum. |
| * config/i386/i386.cc (ix86_memtag_can_tag_addresses): New. |
| (ix86_memtag_set_tag): Ditto. |
| (ix86_memtag_extract_tag): Ditto. |
| (ix86_memtag_add_tag): Ditto. |
| (ix86_memtag_tag_size): Ditto. |
| (ix86_memtag_untagged_pointer): Ditto. |
| (TARGET_MEMTAG_CAN_TAG_ADDRESSES): New. |
| (TARGET_MEMTAG_ADD_TAG): Ditto. |
| (TARGET_MEMTAG_SET_TAG): Ditto. |
| (TARGET_MEMTAG_EXTRACT_TAG): Ditto. |
| (TARGET_MEMTAG_UNTAGGED_POINTER): Ditto. |
| (TARGET_MEMTAG_TAG_SIZE): Ditto. |
| (IX86_HWASAN_SHIFT): Ditto. |
| (IX86_HWASAN_TAG_SIZE): Ditto. |
| * config/i386/i386-expand.cc (ix86_expand_call): Untag code |
| pointer. |
| * config/i386/i386-options.cc (ix86_option_override_internal): |
| Error when enable -mlam=[u48|u57] for 32-bit code. |
| * config/i386/i386.opt: Add -mlam=[none|u48|u57]. |
| * config/i386/i386-protos.h (ix86_memtag_untagged_pointer): |
| Declare. |
| (ix86_memtag_can_tag_addresses): Ditto. |
| |
| 2022-12-08 Marek Polacek <polacek@redhat.com> |
| |
| * doc/invoke.texi (-fsanitize=address): Suggest options to improve |
| stack traces. |
| |
| 2022-12-08 Eugene Rozenfeld <erozen@microsoft.com> |
| |
| PR ipa/108000 |
| * ipa-cp.cc (ipcp_propagate_stage): Fix profile count comparison |
| |
| 2022-12-08 David Faust <david.faust@oracle.com> |
| |
| * config/bpf/bpf.md (bswap<mode>2): New define_insn. |
| |
| 2022-12-08 Sebastian Pop <spop@amazon.com> |
| |
| PR target/98776 |
| * config/aarch64/aarch64-protos.h (aarch64_output_patchable_area): |
| Declared. |
| * config/aarch64/aarch64.cc (aarch64_print_patchable_function_entry): |
| Emit an UNSPECV_PATCHABLE_AREA pseudo instruction. |
| (aarch64_output_patchable_area): New. |
| * config/aarch64/aarch64.md (UNSPECV_PATCHABLE_AREA): New. |
| (patchable_area): Define. |
| |
| 2022-12-08 Jakub Jelinek <jakub@redhat.com> |
| |
| PR debug/106719 |
| * cfgbuild.cc (find_bb_boundaries): If there are NOTEs in between |
| debug_insn (seen after flow_transfer_insn) and insn, move NOTEs |
| before all the DEBUG_INSNs and split after NOTEs. If there are |
| other insns like jump table data, clear debug_insn. |
| |
| 2022-12-08 Jakub Jelinek <jakub@redhat.com> |
| |
| PR target/107627 |
| * config/i386/i386.md (HALF, half): New mode attributes. |
| (*concat<half><mode>3_5, *concat<mode><dwi>3_6, |
| *concat<mode><dwi>3_7): New define_insn_and_split patterns. |
| |
| 2022-12-08 Andrew MacLeod <amacleod@redhat.com> |
| |
| PR tree-optimization/107985 |
| * gimple-range-op.cc |
| (gimple_range_op_handler::gimple_range_op_handler): Check if type |
| of the operands is supported. |
| * gimple-range.cc (gimple_ranger::prefill_stmt_dependencies): Do |
| not assert if here is no range-op handler. |
| |
| 2022-12-08 Jiufu Guo <guojiufu@linux.ibm.com> |
| |
| * config/rs6000/predicates.md: Use sext_hwi. |
| * config/rs6000/rs6000.cc (num_insns_constant_gpr): Likewise. |
| (darwin_rs6000_legitimate_lo_sum_const_p): Likewise. |
| (mem_operand_gpr): Likewise. |
| (mem_operand_ds_form): Likewise. |
| (rs6000_legitimize_address): Likewise. |
| (rs6000_emit_set_const): Likewise. |
| (rs6000_emit_set_long_const): Likewise. |
| (print_operand): Likewise. |
| (constant_generates_xxspltiw): Remove unnecessary expressions. |
| * config/rs6000/rs6000.md: Use sext_hwi. |
| |
| 2022-12-08 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/107699 |
| * match.pd (&a !=/== &a.b + c -> (&a - &a.b) !=/== c): New |
| pattern variant. |
| |
| 2022-12-08 Jakub Jelinek <jakub@redhat.com> |
| |
| * range-op-float.cc (frange_nextafter): For MODE_COMPOSITE_P from |
| denormal or zero, use real_nextafter on DFmode with conversions |
| around it. |
| (frange_arithmetic): For mode_composite, on top of rounding in the |
| right direction accept extra 1ulp error for PLUS/MINUS_EXPR, extra |
| 2ulps error for MULT_EXPR and extra 3ulps error for RDIV_EXPR. |
| |
| 2022-12-08 Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/107967 |
| * range-op-float.cc (frange_arithmetic): Fix a thinko - if |
| inf is negative, use nextafter if !real_less (&result, &value) |
| rather than if real_less (&result, &value). If result is +-INF |
| while value is finite and -fno-rounding-math, don't do rounding |
| if !inexact or if result is significantly above max representable |
| value or below min representable value. |
| |
| 2022-12-07 Max Filippov <jcmvbkbc@gmail.com> |
| |
| * config.gcc (xtensa*-*-*): Add xtensa-dynconfig.o to extra_objs. |
| * config/xtensa/t-xtensa (TM_H): Add xtensa-dynconfig.h. |
| (xtensa-dynconfig.o): New rule. |
| * config/xtensa/xtensa-dynconfig.c: New file. |
| * config/xtensa/xtensa-protos.h (xtensa_get_config_strings): New |
| declaration. |
| * config/xtensa/xtensa.h (xtensa-config.h): Replace #include |
| with xtensa-dynconfig.h |
| (XCHAL_HAVE_MUL32_HIGH, XCHAL_HAVE_RELEASE_SYNC) |
| (XCHAL_HAVE_S32C1I, XCHAL_HAVE_THREADPTR) |
| (XCHAL_HAVE_FP_POSTINC): Drop definitions. |
| (TARGET_DIV32): Replace with __XCHAL_HAVE_DIV32. |
| (TARGET_CPU_CPP_BUILTINS): Add new 'builtin' variable and loop |
| through string array returned by the xtensa_get_config_strings |
| function call. |
| |
| 2022-12-07 Wilco Dijkstra <wilco.dijkstra@arm.com> |
| |
| PR target/108006 |
| * config/aarch64/aarch64.cc (aarch64_expand_sve_const_vector): |
| Fix call to aarch64_move_imm to use SI/DI. |
| |
| 2022-12-07 Richard Biener <rguenther@suse.de> |
| |
| PR ipa/105676 |
| * ipa-pure-const.cc (ipa_make_function_pure): Skip also |
| for functions already being const. |
| |
| 2022-12-07 Hongyu Wang <hongyu.wang@intel.com> |
| |
| * config/i386/x86-tune.def (X86_TUNE_AVOID_256FMA_CHAINS): Add |
| m_SAPPHIRERAPIDS, m_ALDERLAKE and m_CORE_ATOM. |
| |
| 2022-12-07 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org> |
| |
| PR target/107920 |
| * config/aarch64/aarch64-sve-builtins-base.cc: Use |
| gsi_replace_with_seq_vops to handle virtual operands, and gate |
| the transform on !flag_non_call_exceptions. |
| * gimple-fold.cc (gsi_replace_with_seq_vops): Make function non static. |
| * gimple-fold.h (gsi_replace_with_seq_vops): Declare. |
| |
| 2022-12-07 liuhongt <hongtao.liu@intel.com> |
| |
| PR target/107970 |
| * config/i386/mmx.md (btruncv2sf2): Add TARGET_MMX_WITH_SSE to |
| the condition. |
| |
| 2022-12-06 Wilco Dijkstra <wilco.dijkstra@arm.com> |
| |
| * config/aarch64/aarch64.cc (aarch64_bitmask_imm): Use unsigned type. |
| (aarch64_is_mov_xn_imm): New function. |
| (aarch64_move_imm): Refactor, assert mode is SImode or DImode. |
| (aarch64_internal_mov_immediate): Assert mode is SImode or DImode. |
| Simplify special cases. |
| (aarch64_uimm12_shift): Simplify code. |
| (aarch64_clamp_to_uimm12_shift): Likewise. |
| (aarch64_movw_imm): Rename to aarch64_is_movz. |
| (aarch64_float_const_rtx_p): Pass either SImode or DImode to |
| aarch64_internal_mov_immediate. |
| (aarch64_rtx_costs): Likewise. |
| * config/aarch64/aarch64.md (movdi_aarch64): Merge 'N' and 'M' |
| constraints into single 'O'. |
| (mov<mode>_aarch64): Likewise. |
| * config/aarch64/aarch64-protos.h (aarch64_move_imm): Use unsigned. |
| (aarch64_bitmask_imm): Likewise. |
| (aarch64_uimm12_shift): Likewise. |
| (aarch64_is_mov_xn_imm): New prototype. |
| * config/aarch64/constraints.md: Add 'O' for 32/64-bit immediates, |
| limit 'N' to 64-bit only moves. |
| |
| 2022-12-06 Qing Zhao <qing.zhao@oracle.com> |
| |
| * attribs.cc (strict_flex_array_level_of): New function. |
| * attribs.h (strict_flex_array_level_of): Prototype for new function. |
| * doc/invoke.texi: Update -Warray-bounds by specifying the impact from |
| -fstrict-flex-arrays. Also update -Warray-bounds=2 by eliminating its |
| impact on treating trailing arrays as flexible array members. |
| * gimple-array-bounds.cc (get_up_bounds_for_array_ref): New function. |
| (check_out_of_bounds_and_warn): New function. |
| (array_bounds_checker::check_array_ref): Update with call to the above |
| new functions. |
| * tree.cc (array_ref_flexible_size_p): Add one new argument. |
| (component_ref_sam_type): New function. |
| (component_ref_size): Control with level of strict-flex-array. |
| * tree.h (array_ref_flexible_size_p): Update prototype. |
| (enum struct special_array_member): Add two new enum values. |
| (component_ref_sam_type): New prototype. |
| |
| 2022-12-06 David Malcolm <dmalcolm@redhat.com> |
| |
| * doc/analyzer.texi: Drop out-of-date ideas for other checkers. |
| |
| 2022-12-06 David Malcolm <dmalcolm@redhat.com> |
| |
| * Makefile.in (ANALYZER_OBJS): Add analyzer/call-details.o, |
| analyzer/kf-analyzer.o, and kf-lang-cp.o. |
| |
| 2022-12-06 Marcel Vollweiler <marcel@codesourcery.com> |
| |
| * gimplify.cc (optimize_target_teams): Set initial num_teams_upper |
| to "-2" instead of "1" for non-existing num_teams clause in order to |
| disambiguate from the case of an existing num_teams clause with value 1. |
| |
| 2022-12-06 Andre Vieira <andre.simoesdiasvieira@arm.com> |
| |
| PR target/107987 |
| * config/arm/mve.md (mve_vcmp<mve_cmp_op>q_n_<mode>, |
| @mve_vcmp<mve_cmp_op>q_n_f<mode>): Apply vec_duplicate to scalar |
| operand. |
| |
| 2022-12-06 Jakub Jelinek <jakub@redhat.com> |
| |
| PR target/107969 |
| * config/i386/i386.md (cbranchbf4, cstorebf4): Guard expanders |
| with the same condition as cbranchsf4 or cstoresf4 expanders. |
| |
| 2022-12-06 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/104475 |
| * pointer-query.h (access_ref::ref_nullptr_p): New flag. |
| * pointer-query.cc (access_ref::access_ref): Initialize |
| ref_nullptr_p. |
| (compute_objsize_r): Set ref_nullptr_p if we treat it that way. |
| (access_ref::inform_access): If ref was treated as nullptr |
| based, indicate that. |
| |
| 2022-12-06 Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/107972 |
| * range-op-float.cc (frange_drop_infs): New function. |
| (float_binary_op_range_finish): Add DIV_OP2 argument. If DIV_OP2 is |
| false and lhs is finite or if DIV_OP2 is true and lhs is non-zero and |
| not NAN, r must be finite too. |
| (foperator_div::op2_range): Pass true to DIV_OP2 of |
| float_binary_op_range_finish. |
| |
| 2022-12-06 Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/107975 |
| * range-op-float.cc (foperator_mult::op1_range, |
| foperator_div::op1_range, foperator_div::op2_range): Just |
| return float_binary_op_range_finish result if lhs is known |
| NAN, or the other operand is known NAN or UNDEFINED. |
| |
| 2022-12-06 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org> |
| |
| * config/aarch64/aarch64.cc (aarch64_expand_vector_init): Use dup |
| and zip1 for interleaving elements in vector initializer. |
| |
| 2022-12-05 Richard Biener <rguenther@suse.de> |
| |
| PR middle-end/40635 |
| * tree-into-ssa.cc (rewrite_update_phi_arguments): Only |
| update the argument when the reaching definition is different |
| from the current argument. Keep an existing argument |
| location. |
| |
| 2022-12-05 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/106868 |
| * gimple-ssa-warn-access.cc (pass_waccess::gimple_call_return_arg_ref): |
| Inline into single user ... |
| (pass_waccess::check_dangling_uses): ... here and adjust the |
| call and the PHI case to require that ref.aref is the address |
| of the decl. |
| |
| 2022-12-05 Jakub Jelinek <jakub@redhat.com> |
| |
| PR middle-end/106805 |
| * match.pd (cmp @0 REAL_CST@1): Don't optimize x cmp NaN |
| or NaN cmp x to false/true for cmp >/>=/</<= if -ftrapping-math. |
| |
| 2022-12-05 Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/107879 |
| * range-op-float.cc (foperator_mult::op1_range): If both |
| lhs and op2 ranges contain zero or both ranges contain |
| some infinity, set r range to zero_to_inf_range depending on |
| signbit_known_p. |
| (foperator_div::op2_range): Similarly for lhs and op1 ranges. |
| (foperator_div::op1_range): If lhs range contains zero and op2 |
| range contains some infinity or vice versa, set r range to |
| zero_to_inf_range depending on signbit_known_p. |
| (foperator_div::rv_fold): Fix up condition for returning known NAN. |
| |
| 2022-12-05 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/107833 |
| PR tree-optimization/107839 |
| * cfghooks.cc: Include tree.h. |
| * tree-ssa-loop-im.cc (movement_possibility): Wrap and |
| make stmts using any ssa_name_maybe_undef_p operand |
| to preserve execution. |
| (loop_invariant_motion_in_fun): Call mark_ssa_maybe_undefs |
| to init maybe-undefined status. |
| * tree-ssa-loop-ivopts.cc (ssa_name_maybe_undef_p, |
| ssa_name_set_maybe_undef, ssa_name_any_use_dominates_bb_p, |
| mark_ssa_maybe_undefs): Move ... |
| * tree-ssa.cc: ... here. |
| * tree-ssa.h (ssa_name_any_use_dominates_bb_p, |
| mark_ssa_maybe_undefs): Declare. |
| (ssa_name_maybe_undef_p, ssa_name_set_maybe_undef): Define. |
| |
| 2022-12-05 Andrew Pinski <pinskia@gmail.com> |
| |
| PR tree-optimization/107956 |
| * tree-vect-patterns.cc (vect_recog_mask_conversion_pattern): |
| Check for NULL LHS on masked loads. |
| |
| 2022-12-05 Kewen Lin <linkw@linux.ibm.com> |
| Richard Sandiford <richard.sandiford@arm.com> |
| |
| PR tree-optimization/107412 |
| * gimple-fold.cc (gimple_fold_partial_load_store_mem_ref): Use |
| untruncated type for the length, and avoid to_constant and tree |
| arithmetic for subtraction. |
| |
| 2022-12-02 Bernhard Reutner-Fischer <rep.dot.nop@gmail.com> |
| Jason Merrill <jason@redhat.com> |
| |
| * function.cc (init_function_start): Use DECL_RESULT location |
| for -Waggregate-return warning. |
| |
| 2022-12-02 Andrew MacLeod <amacleod@redhat.com> |
| |
| * fold-const.cc (fold_unary_loc): Check TREE_TYPE of node. |
| (tree_invalid_nonnegative_warnv_p): Likewise. |
| |
| 2022-12-02 Jason Merrill <jason@redhat.com> |
| |
| * gcc.cc (validate_switches): Reset suffix/starred on loop. |
| |
| 2022-12-02 Vladimir N. Makarov <vmakarov@redhat.com> |
| |
| * lra-constraints.cc (curr_insn_transform): Check available hard |
| regs for pseudo and its subreg to decide what to reload. |
| |
| 2022-12-02 liuhongt <hongtao.liu@intel.com> |
| |
| * config/i386/i386-expand.cc |
| (ix86_expand_fast_convert_bf_to_sf): Use extendbfsf2_1 for |
| nonimmediate operand. |
| |
| 2022-12-02 Martin Liska <mliska@suse.cz> |
| |
| * configure: Regenerate. |
| |
| 2022-12-02 Jakub Jelinek <jakub@redhat.com> |
| |
| PR target/106577 |
| * config/i386/i386-expand.cc (ix86_vector_duplicate_value): Save/restore |
| recog_data around recog_memoized calls. |
| |
| 2022-12-02 Michael Collison <collison@rivosinc.com> |
| |
| * match.pd ((x & 0x1) == 0) ? y : z <op> y |
| -> (-(typeof(y))(x & 0x1) & z) <op> y. |
| |
| 2022-12-02 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/107946 |
| * params.opt (-param=max-unswitch-depth=): New. |
| * doc/invoke.texi (--param=max-unswitch-depth): Document. |
| * tree-ssa-loop-unswitch.cc (init_loop_unswitch_info): Honor |
| --param=max-unswitch-depth |
| |
| 2022-12-02 Eric Gallager <egallager@gcc.gnu.org> |
| |
| PR bootstrap/59447 |
| * configure: Regenerate. |
| * configure.ac: Document --with-dwarf2 flag as also |
| applying to later DWARF standards. |
| * doc/install.texi: Likewise. |
| |
| 2022-12-02 liuhongt <hongtao.liu@intel.com> |
| |
| PR target/107934 |
| * config/i386/i386.md (extendbfsf2_1): Change type from |
| sseishft to sseishft1. |
| |
| 2022-12-01 Alex Coplan <alex.coplan@arm.com> |
| |
| * varasm.cc (assemble_variable): Fix type confusion bug when |
| checking for ".vtable_map_vars" section. |
| |
| 2022-12-01 Ju-Zhe Zhong <juzhe.zhong@rivai.ai> |
| |
| * config/riscv/riscv-v.cc (emit_pred_op): Adapt for mask mode. |
| * config/riscv/vector.md: Remove Tail && make policy operand for mask mode mov. |
| |
| 2022-12-01 Ju-Zhe Zhong <juzhe.zhong@rivai.ai> |
| |
| * config/riscv/riscv-protos.h (enum vlmul_type): New enum. |
| (get_vlmul): New function. |
| (get_ratio): Ditto. |
| * config/riscv/riscv-v.cc (struct mode_vtype_group): New struct. |
| (ENTRY): Adapt for attributes. |
| (enum vlmul_type): New enum. |
| (get_vlmul): New function. |
| (get_ratio): New function. |
| * config/riscv/riscv-vector-switch.def (ENTRY): Adapt for attributes. |
| * config/riscv/riscv.cc (ENTRY): Ditto. |
| * config/riscv/vector.md (false,true): Add attributes. |
| |
| 2022-12-01 Ju-Zhe Zhong <juzhe.zhong@rivai.ai> |
| |
| * config/riscv/constraints.md (Wdm): New constraint. |
| * config/riscv/predicates.md (direct_broadcast_operand): New predicate. |
| * config/riscv/riscv-protos.h (RVV_VLMAX): New macro. |
| (emit_pred_op): Refine function. |
| * config/riscv/riscv-selftests.cc (run_const_vector_selftests): New function. |
| (run_broadcast_selftests): Ditto. |
| (BROADCAST_TEST): New tests. |
| (riscv_run_selftests): More tests. |
| * config/riscv/riscv-v.cc (emit_pred_move): Refine function. |
| (emit_vlmax_vsetvl): Ditto. |
| (emit_pred_op): Ditto. |
| (expand_const_vector): New function. |
| (legitimize_move): Add constant vector support. |
| * config/riscv/riscv.cc (riscv_print_operand): New asm print rule for const vector. |
| * config/riscv/riscv.h (X0_REGNUM): New macro. |
| * config/riscv/vector-iterators.md: New attribute. |
| * config/riscv/vector.md (vec_duplicate<mode>): New pattern. |
| (@pred_broadcast<mode>): New pattern. |
| |
| 2022-12-01 Paul-Antoine Arras <pa@codesourcery.com> |
| |
| * config/gcn/gcn-opts.h (TARGET_FIJI): -march=fiji. |
| (TARGET_VEGA10): -march=gfx900. |
| (TARGET_VEGA20): -march=gfx906. |
| (TARGET_GFX908): -march=gfx908. |
| (TARGET_GFX90a): -march=gfx90a. |
| * config/gcn/gcn.h (TARGET_CPU_CPP_BUILTINS): Define a builtin that |
| uniquely maps to '-march'. |
| |
| 2022-12-01 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/107937 |
| * gimple-predicate-analysis.h (predicate::is_true): New. |
| (predicate::is_false): Likewise. |
| (predicate::empty_val): Likewise. |
| (uninit_analysis::uninit_analysis): Properly initialize |
| def_preds. |
| * gimple-predicate-analysis.cc (simplify_1b): Indicate |
| whether the chain became empty. |
| (predicate::simplify): Release emptied chain before removing it. |
| (predicate::normalize): Replace temporary object with assertion. |
| (uninit_analysis::is_use_guarded): Deal with predicates |
| that simplify to true/false. |
| |
| 2022-12-01 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/107935 |
| * tree-ssa-sccvn.cc (visit_phi): Honor forced VARYING on |
| backedges. |
| |
| 2022-12-01 Jakub Jelinek <jakub@redhat.com> |
| |
| PR target/107627 |
| * config/i386/i386.md (*concat<mode><dwi>3_1, *concat<mode><dwi>3_2): |
| For operands which are zero_extend arguments allow memory if |
| output operand is a register. |
| (*concat<mode><dwi>3_3, *concat<mode><dwi>3_4): Likewise. If |
| both input operands are memory, use early clobber on output operand. |
| * config/i386/i386-expand.cc (split_double_concat): Deal with corner |
| cases where one input is memory and the other is not and the address |
| of the memory input uses a register we'd overwrite before loading |
| the memory into a register. |
| |
| 2022-12-01 Haochen Gui <guihaoc@gcc.gnu.org> |
| |
| * config/rs6000/rs6000-call.cc (swap_endian_selector_for_mode): |
| Corrects comments of this function and make them clear. |
| |
| 2022-12-01 liuhongt <hongtao.liu@intel.com> |
| |
| PR target/107863 |
| * config/i386/i386-expand.cc (ix86_expand_vec_set_builtin): |
| Convert op1 to target mode whenever mode mismatch. |
| |
| 2022-12-01 David Malcolm <dmalcolm@redhat.com> |
| |
| PR analyzer/106626 |
| * diagnostic-path.h |
| (diagnostic_path::get_first_event_in_a_function): New decl. |
| * diagnostic.cc (diagnostic_path::get_first_event_in_a_function): |
| New. |
| (diagnostic_path::interprocedural_p): Ignore leading events that |
| are outside of any function. |
| |
| 2022-12-01 David Malcolm <dmalcolm@redhat.com> |
| |
| * Makefile.in (ANALYZER_OBJS): Add analyzer/bounds-checking.o. |
| |
| 2022-12-01 Haochen Gui <guihaoc@gcc.gnu.org> |
| |
| PR target/100866 |
| * config/rs6000/rs6000-call.cc (swap_endian_selector_for_mode): |
| Generate permute index directly for little endian targets. |
| * config/rs6000/vsx.md (revb_<mode>): Call vprem directly with |
| corresponding permute indexes. |
| |
| 2022-11-30 John David Anglin <danglin@gcc.gnu.org> |
| |
| * config/pa/pa.md (addvdi3): Force operand 2 to a register. |
| Remove "addi,tsv,*" instruction from unamed pattern. |
| (subvdi3): Force operand 1 to a register. |
| Remove "subi,tsv" instruction from from unamed pattern. |
| |
| 2022-11-30 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
| |
| * config/aarch64/aarch64.md (aarch64_cpymemdi): Specify clobber of CC reg. |
| (*aarch64_cpymemdi): Likewise. |
| (aarch64_movmemdi): Likewise. |
| (aarch64_setmemdi): Likewise. |
| (*aarch64_setmemdi): Likewise. |
| |
| 2022-11-30 Martin Liska <mliska@suse.cz> |
| |
| * tree-switch-conversion.cc (bit_test_cluster::emit): Remove |
| dead variable bt_range. |
| |
| 2022-11-30 Iskander Shakirzyanov <iskander@ispras.ru> |
| Franz Sirl <Franz.Sirl-kernel@lauterbach.com> |
| |
| PR driver/107787 |
| * common.opt (Warray-bounds): Turn into alias of |
| -Warray-bounds=1. |
| * builtins.cc (c_strlen): Use OPT_Warray_bounds_ |
| instead of OPT_Warray_bounds. |
| * diagnostic-spec.cc (nowarn_spec_t::nowarn_spec_t): Ditto. |
| * gimple-array-bounds.cc (array_bounds_checker::check_array_ref, |
| array_bounds_checker::check_mem_ref, |
| array_bounds_checker::check_addr_expr, |
| array_bounds_checker::check_array_bounds): Ditto. |
| * gimple-ssa-warn-restrict.cc (maybe_diag_access_bounds): Ditto. |
| |
| 2022-11-30 Martin Liska <mliska@suse.cz> |
| |
| PR tree-optimization/101301 |
| PR tree-optimization/103680 |
| * tree-switch-conversion.cc (bit_test_cluster::emit): |
| Handle correctly remaining probability. |
| (switch_decision_tree::try_switch_expansion): Fix BB's count |
| where a cluster expansion happens. |
| (switch_decision_tree::emit_cmp_and_jump_insns): Fill up also |
| BB count. |
| (switch_decision_tree::do_jump_if_equal): Likewise. |
| (switch_decision_tree::emit_case_nodes): Handle special case |
| for BT expansion which can also fallback to a default BB. |
| * tree-switch-conversion.h (cluster::cluster): Add |
| m_default_prob probability. |
| |
| 2022-11-30 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/107919 |
| * gimple-predicate-analysis.cc (simplify_1): Rename to ... |
| (simplify_1a): .. this. |
| (simplify_1b): New. |
| (predicate::simplify): Call both simplify_1a and simplify_1b. |
| |
| 2022-11-30 Richard Biener <rguenther@suse.de> |
| |
| * tree-ssa-uninit.cc (find_uninit_use): Dump the edge for a |
| PHI node. |
| |
| 2022-11-30 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/107919 |
| * gimple-predicate-analysis.cc (predicate::simplify_2): |
| Handle predicates of arbitrary length. |
| |
| 2022-11-30 Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/107835 |
| * tree-chrec.cc (chrec_apply): Don't handle "{a, +, a} (x-1)" |
| as "a*x" if type is a pointer type. |
| |
| 2022-11-30 Paul-Antoine Arras <pa@codesourcery.com> |
| |
| * config/gcn/gcn.cc (gcn_omp_device_kind_arch_isa): Add gfx803. |
| * config/gcn/t-omp-device: Add gfx803. |
| |
| 2022-11-30 Lulu Cheng <chenglulu@loongson.cn> |
| |
| * config/loongarch/linux.h (STACK_CHECK_MOVING_SP): |
| Define this macro to 1. |
| * config/loongarch/loongarch.cc (STACK_CLASH_PROTECTION_GUARD_SIZE): |
| Size of guard page. |
| (loongarch_first_stack_step): Return the size of the first drop stack |
| according to whether stack checking is performed. |
| (loongarch_emit_probe_stack_range): Adjust the method of stack checking in prologue. |
| (loongarch_output_probe_stack_range): Delete useless code. |
| (loongarch_expand_prologue): Adjust the method of stack checking in prologue. |
| (loongarch_option_override_internal): Enforce that interval is the same |
| size as size so the mid-end does the right thing. |
| * config/loongarch/loongarch.h (STACK_CLASH_MAX_UNROLL_PAGES): |
| New macro decide whether to loop stack detection. |
| |
| 2022-11-30 David Malcolm <dmalcolm@redhat.com> |
| |
| PR analyzer/103546 |
| * doc/invoke.texi (Static Analyzer Options): Add isatty, ferror, |
| fileno, and getc to the list of functions known to the analyzer. |
| |
| 2022-11-29 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/107852 |
| * tree-ssa-sccvn.cc (visit_phi): Use equivalences recorded |
| as predicated values to elide more redundant PHIs. |
| |
| 2022-11-29 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/106995 |
| * tree-if-conv.cc (pass_if_conversion::execute): Also redirect the |
| versioning condition to the original loop if this very loop |
| vanished during CFG cleanup. |
| |
| 2022-11-29 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/107898 |
| * gimple-ssa-warn-alloca.cc (alloca_call_type): Check |
| the type of the alloca argument is compatible with size_t |
| before querying ranges. |
| |
| 2022-11-29 Richard Biener <rguenther@suse.de> |
| |
| PR ipa/107897 |
| * multiple_target.cc (pass_target_clone::gate): Disable |
| after errors. |
| |
| 2022-11-29 Martin Liska <mliska@suse.cz> |
| |
| * configure: Regenerate. |
| |
| 2022-11-29 YunQiang Su <yunqiang.su@cipunited.com> |
| |
| * configure.ac: add description for |
| AC_DEFINE(ENABLE_MULTIARCH, 1) |
| |
| 2022-11-28 Andrew Pinski <apinski@marvell.com> |
| |
| * match.pd ((A / (1 << B)) -> (A >> B).): |
| Fix comment. |
| |
| 2022-11-28 Sinan <sinan.lin@linux.alibaba.com> |
| |
| * config/riscv/riscv.cc (riscv_build_integer): Improve some cases |
| of loading 64bit constants for rv32. |
| |
| 2022-11-28 Maciej W. Rozycki <macro@embecosm.com> |
| |
| * config/riscv/riscv.cc (riscv_emit_int_order_test): Use EQ 0 |
| rather that XOR 1 for LE and LEU operations. |
| |
| 2022-11-28 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/107896 |
| * tree-vect-stmts.cc (supportable_widening_operation): |
| Handle non-vector mode intermediate mode. |
| |
| 2022-11-28 Frolov Daniil <frolov.da@phystech.edu> |
| |
| * gimple-ssa-sprintf.cc (fmtresult::type_max_digits): Handle |
| base == 2. |
| (tree_digits): Likewise. |
| (format_integer): Likewise. |
| (parse_directive): Add cases for %b and %B directives. |
| |
| 2022-11-28 Fei Gao <gaofei@eswincomputing.com> |
| |
| * config/riscv/riscv.cc (riscv_first_stack_step): Fix computation |
| of MIN_FIRST_STEP to cover FP save area too. |
| |
| 2022-11-28 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/107493 |
| * tree-scalar-evolution.cc (scev_dfs::follow_ssa_edge_expr): |
| Only handle no-op and sign-changing conversions. |
| |
| 2022-11-28 Tobias Burnus <tobias@codesourcery.com> |
| |
| * config/gcn/gcn.cc (gcn_expand_builtin_1): Work on s1 instead |
| of s[0:1] and use USE to prevent removal of setting that register. |
| * config/gcn/gcn.md (prologue_use_di): Remove. |
| |
| 2022-11-28 Yuri Gribov <y.gribov@samsung.com> |
| |
| PR sanitizer/106558 |
| * sanopt.cc: Do not optimize out checks for non-SSA addresses. |
| |
| 2022-11-28 Jakub Jelinek <jakub@redhat.com> |
| |
| PR target/106875 |
| * config/i386/i386.opt (x_ix86_abi): Remove TargetSave. |
| (ix86_abi): Replace it with TargetVariable. |
| * config/i386/i386-options.cc (ix86_function_specific_save, |
| ix86_function_specific_restore): Don't save and restore x_ix86_abi. |
| |
| 2022-11-28 Andrea Corallo <andrea.corallo@arm.com> |
| |
| * config/arm/mve.md (mve_vrmlaldavhq_<supf>v4si, |
| mve_vrmlaldavhaq_<supf>v4si): Fix spacing vs tabs. |
| |
| 2022-11-28 Andrea Corallo <andrea.corallo@arm.com> |
| |
| * config/arm/mve.md (mve_vmlaldavaq_<supf><mode>) |
| (mve_vmlaldavaxq_s<mode>, mve_vmlaldavaxq_p_<supf><mode>): Fix |
| spacing vs tabs. |
| |
| 2022-11-28 Andrea Corallo <andrea.corallo@arm.com> |
| |
| * config/arm/mve.md (mve_vsubq_n_f<mode>): Fix spacing. |
| |
| 2022-11-28 Andrea Corallo <andrea.corallo@arm.com> |
| |
| * config/arm/mve.md (mve_vaddlvq_p_<supf>v4si) |
| (mve_vaddq_n_<supf><mode>, mve_vaddvaq_<supf><mode>) |
| (mve_vaddlvaq_<supf>v4si, mve_vaddq_n_f<mode>) |
| (mve_vaddlvaq_p_<supf>v4si, mve_vaddq<mode>, mve_vaddq_f<mode>): |
| Fix spacing. |
| |
| 2022-11-28 Stam Markianos-Wright <stam.markianos-wright@arm.com> |
| |
| * config/arm/arm_mve.h (__arm_vsubq_x FP): New overloads. |
| (__arm_vsubq_x Integer): New. |
| |
| 2022-11-28 Stam Markianos-Wright <stam.markianos-wright@arm.com> |
| |
| PR target/107515 |
| * config/arm/arm_mve.h (__ARM_mve_typeid): Add float types. |
| |
| 2022-11-28 Stam Markianos-Wright <stam.markianos-wright@arm.com> |
| |
| PR target/96795 |
| * config/arm/arm_mve.h (__arm_vaddq): Fix Overloading. |
| (__arm_vmulq): Likewise. |
| (__arm_vcmpeqq): Likewise. |
| (__arm_vcmpneq): Likewise. |
| (__arm_vmaxnmavq): Likewise. |
| (__arm_vmaxnmvq): Likewise. |
| (__arm_vminnmavq): Likewise. |
| (__arm_vsubq): Likewise. |
| (__arm_vminnmvq): Likewise. |
| (__arm_vrshlq): Likewise. |
| (__arm_vqsubq): Likewise. |
| (__arm_vqdmulltq): Likewise. |
| (__arm_vqdmullbq): Likewise. |
| (__arm_vqdmulhq): Likewise. |
| (__arm_vqaddq): Likewise. |
| (__arm_vhaddq): Likewise. |
| (__arm_vhsubq): Likewise. |
| (__arm_vqdmlashq): Likewise. |
| (__arm_vqrdmlahq): Likewise. |
| (__arm_vmlasq): Likewise. |
| (__arm_vqdmlahq): Likewise. |
| (__arm_vmaxnmavq_p): Likewise. |
| (__arm_vmaxnmvq_p): Likewise. |
| (__arm_vminnmavq_p): Likewise. |
| (__arm_vminnmvq_p): Likewise. |
| (__arm_vfmasq_m): Likewise. |
| (__arm_vsetq_lane): Likewise. |
| (__arm_vcmpneq_m): Likewise. |
| (__arm_vhaddq_x): Likewise. |
| (__arm_vhsubq_x): Likewise. |
| (__arm_vqrdmlashq_m): Likewise. |
| (__arm_vqdmlashq_m): Likewise. |
| (__arm_vmlaldavaxq_p): Likewise. |
| (__arm_vmlasq_m): Likewise. |
| (__arm_vqdmulhq_m): Likewise. |
| (__arm_vqdmulltq_m): Likewise. |
| (__arm_viwdupq_m): Likewise. |
| (__arm_viwdupq_u16): Likewise. |
| (__arm_viwdupq_u32): Likewise. |
| (__arm_viwdupq_u8): Likewise. |
| (__arm_vdwdupq_m): Likewise. |
| (__arm_vdwdupq_u16): Likewise. |
| (__arm_vdwdupq_u32): Likewise. |
| (__arm_vdwdupq_u8): Likewise. |
| (__arm_vaddlvaq): Likewise. |
| (__arm_vaddlvaq_p): Likewise. |
| (__arm_vaddvaq): Likewise. |
| (__arm_vaddvaq_p): Likewise. |
| (__arm_vcmphiq_m): Likewise. |
| (__arm_vmladavaq_p): Likewise. |
| (__arm_vmladavaxq): Likewise. |
| (__arm_vmlaldavaxq): Likewise. |
| (__arm_vrmlaldavhaq_p): Likewise. |
| |
| 2022-11-28 Stam Markianos-Wright <stam.markianos-wright@arm.com> |
| |
| PR target/96795 |
| * config/arm/arm_mve.h (__arm_vaddq_m_n_s8): Change types. |
| (__arm_vaddq_m_n_s32): Likewise. |
| (__arm_vaddq_m_n_s16): Likewise. |
| (__arm_vaddq_m_n_u8): Likewise. |
| (__arm_vaddq_m_n_u32): Likewise. |
| (__arm_vaddq_m_n_u16): Likewise. |
| (__arm_vaddq_m): Fix Overloading. |
| (__ARM_mve_coerce3): New. |
| |
| 2022-11-28 Andrea Corallo <andrea.corallo@arm.com> |
| |
| * config/arm/mve.md (mve_vabsq_f<mode>): Fix spacing. |
| |
| 2022-11-28 Andrea Corallo <andrea.corallo@arm.com> |
| |
| * config/arm/mve.md (@mve_vcmp<mve_cmp_op>q_<mode>): Fix |
| spacing. |
| * config/arm/arm_mve.h (__arm_vcmpgtq_m, __arm_vcmpleq_m) |
| (__arm_vcmpltq_m, __arm_vcmpneq_m): Add missing defines. |
| |
| 2022-11-28 Andrea Corallo <andrea.corallo@arm.com> |
| |
| * config/arm/mve.md (mve_vdupq_n_f<mode>) |
| (mve_vdupq_n_<supf><mode>, mve_vdupq_m_n_<supf><mode>) |
| (mve_vdupq_m_n_f<mode>): Fix spacing. |
| |
| 2022-11-28 Andrea Corallo <andrea.corallo@arm.com> |
| |
| * config/arm/mve.md (mve_vdwdupq_m_wb_u<mode>_insn): Fix spacing. |
| |
| 2022-11-28 Andrea Corallo <andrea.corallo@arm.com> |
| |
| * config/arm/mve.md (mve_vddupq_u<mode>_insn): Fix 'vddup.u' |
| spacing. |
| (mve_vddupq_m_wb_u<mode>_insn): Likewise. |
| |
| 2022-11-28 Andrea Corallo <andrea.corallo@arm.com> |
| |
| * config/arm/vfp.md (*thumb2_movhi_vfp, *thumb2_movhi_fp16): Fix |
| 'vmsr' spacing and reg capitalization. |
| |
| 2022-11-28 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/107876 |
| * tree-ssa-loop-unswitch.cc (clean_up_after_unswitching): Wipe |
| dominator info if we removed an edge. |
| |
| 2022-11-28 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/107867 |
| * tree-ssa-forwprop.cc (pass_forwprop::execute): Handle |
| abnormal cleanup after substitution. |
| |
| 2022-11-28 Lulu Cheng <chenglulu@loongson.cn> |
| |
| * config/loongarch/loongarch.cc (enum loongarch_load_imm_method): |
| Remove the member METHOD_INSV that is not currently used. |
| (struct loongarch_integer_op): Define a new member curr_value, |
| that records the value of the number stored in the destination |
| register immediately after the current instruction has run. |
| (loongarch_build_integer): Assign a value to the curr_value member variable. |
| (loongarch_move_integer): Adds information for the immediate load instruction. |
| * config/loongarch/loongarch.md (*movdi_32bit): Redefine as define_insn_and_split. |
| (*movdi_64bit): Likewise. |
| (*movsi_internal): Likewise. |
| (*movhi_internal): Likewise. |
| * config/loongarch/predicates.md: Return true as long as it is CONST_INT, ensure |
| that the immediate number is not optimized by decomposition during expand |
| optimization loop. |
| |
| 2022-11-28 liuhongt <hongtao.liu@intel.com> |
| |
| PR target/107748 |
| * config/i386/avx512bf16intrin.h (_mm_cvtsbh_ss): Refined. |
| * config/i386/i386-builtin-types.def (FLOAT_FTYPE_BFLOAT16): |
| New function type. |
| * config/i386/i386-builtin.def (BDESC): New builtin. |
| * config/i386/i386-expand.cc (ix86_expand_args_builtin): |
| Handle the builtin. |
| * config/i386/i386.md (extendbfsf2): New expander. |
| (extendbfsf2_1): New define_insn. |
| (truncsfbf2): Ditto. |
| |
| 2022-11-26 Andrew Pinski <apinski@marvell.com> |
| |
| PR tree-optimization/103356 |
| * match.pd: ((~a) == b -> a ^ b): New pattern. |
| |
| 2022-11-25 Sandra Loosemore <sandra@codesourcery.com> |
| |
| * common.opt (fopenmp-target-simd-clone): New option. |
| (target_simd_clone_device): New enum to go with it. |
| * doc/invoke.texi (-fopenmp-target-simd-clone): Document. |
| * flag-types.h (enum omp_target_simd_clone_device_kind): New. |
| * omp-simd-clone.cc (auto_simd_fail): New function. |
| (auto_simd_check_stmt): New function. |
| (plausible_type_for_simd_clone): New function. |
| (ok_for_auto_simd_clone): New function. |
| (simd_clone_create): Add force_local argument, make the symbol |
| have internal linkage if it is true. |
| (expand_simd_clones): Also check for cloneable functions with |
| "omp declare target". Pass explicit_p argument to |
| simd_clone.compute_vecsize_and_simdlen target hook. |
| * opts.cc (default_options_table): Add -fopenmp-target-simd-clone. |
| * target.def (TARGET_SIMD_CLONE_COMPUTE_VECSIZE_AND_SIMDLEN): |
| Add bool explicit_p argument. |
| * doc/tm.texi: Regenerated. |
| * config/aarch64/aarch64.cc |
| (aarch64_simd_clone_compute_vecsize_and_simdlen): Update. |
| * config/gcn/gcn.cc |
| (gcn_simd_clone_compute_vecsize_and_simdlen): Update. |
| * config/i386/i386.cc |
| (ix86_simd_clone_compute_vecsize_and_simdlen): Update. |
| |
| 2022-11-25 Tamar Christina <tamar.christina@arm.com> |
| |
| PR target/107830 |
| * config/aarch64/aarch64.cc |
| (aarch64_vectorize_can_special_div_by_constant): Check validity during |
| codegen phase as well. |
| |
| 2022-11-25 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * range-op.cc (operator_bitwise_xor::op1_range): Fix thinko. |
| |
| 2022-11-25 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/107865 |
| * tree-cfg.cc (move_sese_region_to_fn): Free the number of |
| iterations of moved loops. |
| |
| 2022-11-25 Kewen.Lin <linkw@gcc.gnu.org> |
| |
| PR target/99889 |
| * config/rs6000/rs6000.cc (rs6000_print_patchable_function_entry): |
| Adjust to call function default_print_patchable_function_entry. |
| * targhooks.cc (default_print_patchable_function_entry_1): Remove and |
| move the flags preparation ... |
| (default_print_patchable_function_entry): ... here, adjust to use |
| current_function_funcdef_no for label no. |
| * targhooks.h (default_print_patchable_function_entry_1): Remove. |
| * varasm.cc (default_elf_asm_named_section): Adjust code for |
| __patchable_function_entries section support with LPFE label. |
| |
| 2022-11-24 Wilco Dijkstra <wilco.dijkstra@arm.com> |
| |
| PR tree-optimization/107413 |
| * config/aarch64/aarch64.cc (struct tune_params): Add |
| fma_reassoc_width to all CPU tuning structures. |
| (aarch64_reassociation_width): Use fma_reassoc_width. |
| * config/aarch64/aarch64-protos.h (struct tune_params): Add |
| fma_reassoc_width. |
| |
| 2022-11-24 Jakub Jelinek <jakub@redhat.com> |
| |
| PR middle-end/107317 |
| * asan.cc: Include diagnostic-core.h. |
| (asan_emit_stack_protection): Return NULL early if seen_error (). |
| |
| 2022-11-24 Aldy Hernandez <aldyh@redhat.com> |
| |
| * vr-values.cc (simplify_using_ranges::compare_names): Remove. |
| (vrp_evaluate_conditional_warnv_with_ops): Remove call to |
| compare_names. |
| (simplify_using_ranges::vrp_visit_cond_stmt): Remove use_equiv_p |
| argument to vrp_evaluate_conditional_warnv_with_ops. |
| * vr-values.h (class simplify_using_ranges): Remove |
| compare_names. |
| Remove use_equiv_p to vrp_evaluate_conditional_warnv_with_ops. |
| |
| 2022-11-24 Aldy Hernandez <aldyh@redhat.com> |
| |
| * tree-vrp.cc (overflow_comparison_p_1): Remove follow_assert_exprs. |
| (overflow_comparison_p): Remove use_equiv_p. |
| * tree-vrp.h (overflow_comparison_p): Same. |
| * vr-values.cc (vrp_evaluate_conditional_warnv_with_ops): Remove |
| use_equiv_p argument to overflow_comparison_p. |
| |
| 2022-11-24 Aldy Hernandez <aldyh@redhat.com> |
| |
| * doc/gimple.texi: Remove ASSERT_EXPR references. |
| * fold-const.cc (tree_expr_nonzero_warnv_p): Same. |
| (fold_binary_loc): Same. |
| (tree_expr_nonnegative_warnv_p): Same. |
| * gimple-array-bounds.cc (get_base_decl): Same. |
| * gimple-pretty-print.cc (dump_unary_rhs): Same. |
| * gimple.cc (get_gimple_rhs_num_ops): Same. |
| * pointer-query.cc (handle_ssa_name): Same. |
| * tree-cfg.cc (verify_gimple_assign_single): Same. |
| * tree-pretty-print.cc (dump_generic_node): Same. |
| * tree-scalar-evolution.cc (scev_dfs::follow_ssa_edge_expr):Same. |
| (interpret_rhs_expr): Same. |
| * tree-ssa-operands.cc (operands_scanner::get_expr_operands): Same. |
| * tree-ssa-propagate.cc |
| (substitute_and_fold_dom_walker::before_dom_children): Same. |
| * tree-ssa-threadedge.cc: Same. |
| * tree-vrp.cc (overflow_comparison_p): Same. |
| * tree.def (ASSERT_EXPR): Add note. |
| * tree.h (ASSERT_EXPR_VAR): Remove. |
| (ASSERT_EXPR_COND): Remove. |
| * vr-values.cc (simplify_using_ranges::vrp_visit_cond_stmt): |
| Remove comment. |
| |
| 2022-11-24 Aldy Hernandez <aldyh@redhat.com> |
| |
| * Makefile.in: Remove value-range-equiv.o |
| * gimple-array-bounds.cc |
| (array_bounds_checker::array_bounds_checker): Remove comment. |
| * tree-vrp.cc (supported_types_p): Remove use of value_range_equiv. |
| * value-query.cc (class equiv_allocator): Same. |
| (range_query::allocate_value_range_equiv): Remove. |
| (range_query::free_value_range_equiv): Remove. |
| (range_query::get_value_range): Remove. |
| * value-query.h (class range_query): Remove get_value_range. |
| Remove allocate_value_range_equiv. |
| Remove free_value_range_equiv. |
| * vr-values.cc (compare_ranges): Replace value_range_equiv with |
| value_range. |
| (simplify_using_ranges::get_vr_for_comparison): Same. |
| (simplify_using_ranges::compare_names): Same. |
| * vr-values.h: Remove value_range_equiv references. |
| * value-range-equiv.cc: Removed. |
| * value-range-equiv.h: Removed. |
| |
| 2022-11-24 Aldy Hernandez <aldyh@redhat.com> |
| |
| * doc/invoke.texi: Remove docs for max-vrp-switch-assertions, |
| vrp1-mode, and vrp2-mode. |
| * params.opt: Same. |
| * range-op.cc (masked_increment): Move from tree-vrp.cc. |
| * tree-vrp.cc (class live_names): Remove. |
| (live_names::init_bitmap_if_needed): Remove. |
| (live_names::block_has_live_names_p): Remove. |
| (live_names::clear_block): Remove. |
| (live_names::merge): Remove. |
| (live_names::set): Remove. |
| (live_names::clear): Remove. |
| (live_names::live_names): Remove. |
| (live_names::~live_names): Remove. |
| (live_names::live_on_block_p): Remove. |
| (live_names::live_on_edge_p): Remove. |
| (get_single_symbol): Make static. |
| (build_symbolic_expr): Remove. |
| (adjust_symbolic_bound): Remove. |
| (combine_bound): Remove. |
| (set_value_range_with_overflow): Remove. |
| (extract_range_from_pointer_plus_expr): Remove. |
| (extract_range_from_plus_minus_expr): Remove. |
| (drop_undefines_to_varying): Remove. |
| (range_fold_binary_symbolics_p): Remove. |
| (range_fold_unary_symbolics_p): Remove. |
| (range_fold_binary_expr): Remove. |
| (infer_value_range): Remove. |
| (dump_assert_info): Remove. |
| (dump_asserts_info): Remove. |
| (add_assert_info): Remove. |
| (extract_code_and_val_from_cond_with_ops): Remove. |
| (masked_increment): Move to range-op.cc. |
| (register_edge_assert_for_2): Remove. |
| (find_case_label_index): Remove. |
| (find_case_label_range): Remove. |
| (register_edge_assert_for_1): Remove. |
| (is_masked_range_test): Remove. |
| (register_edge_assert_for): Remove. |
| (stmt_interesting_for_vrp): Remove. |
| (struct case_info): Remove. |
| (struct assert_locus): Remove. |
| (class vrp_asserts): Remove. |
| (vrp_asserts::build_assert_expr_for): Remove. |
| (vrp_asserts::dump): Remove. |
| (vrp_asserts::register_new_assert_for): Remove. |
| (vrp_asserts::finish_register_edge_assert_for): Remove. |
| (vrp_asserts::find_conditional_asserts): Remove. |
| (vrp_asserts::compare_case_labels): Remove. |
| (vrp_asserts::find_switch_asserts): Remove. |
| (vrp_asserts::find_assert_locations_in_bb): Remove. |
| (vrp_asserts::find_assert_locations): Remove. |
| (vrp_asserts::process_assert_insertions_for): Remove. |
| (vrp_asserts::compare_assert_loc): Remove. |
| (vrp_asserts::process_assert_insertions): Remove. |
| (vrp_asserts::insert_range_assertions): Remove. |
| (vrp_asserts::all_imm_uses_in_stmt_or_feed_cond): Remove. |
| (vrp_asserts::remove_range_assertions): Remove. |
| (class vrp_prop): Remove. |
| (vrp_prop::initialize): Remove. |
| (enum ssa_prop_result): Remove. |
| (vrp_prop::visit_stmt): Remove. |
| (vrp_prop::visit_phi): Remove. |
| (vrp_prop::finalize): Remove. |
| (class vrp_folder): Remove. |
| (vrp_folder::fold_predicate_in): Remove. |
| (vrp_folder::fold_stmt): Remove. |
| (vrp_folder::simplify_casted_conds): Remove. |
| (execute_vrp): Remove. |
| * tree-vrp.h (struct assert_info): Remove. |
| (register_edge_assert_for): Remove. |
| (stmt_interesting_for_vrp): Remove. |
| (infer_value_range): Remove. |
| (get_single_symbol): Remove. |
| (masked_increment): Remove. |
| (execute_ranger_vrp): Remove. |
| * vr-values.cc (set_value_range_to_nonnegative): Remove. |
| (set_value_range_to_truthvalue): Remove. |
| (vr_values::get_lattice_entry): Remove. |
| (vr_values::get_value_range): Remove. |
| (vr_values::range_of_expr): Remove. |
| (vr_values::value_of_expr): Remove. |
| (vr_values::value_on_edge): Remove. |
| (vr_values::value_of_stmt): Remove. |
| (vr_values::set_def_to_varying): Remove. |
| (vr_values::set_defs_to_varying): Remove. |
| (vr_values::update_value_range): Remove. |
| (symbolic_range_based_on_p): Remove. |
| (gimple_assign_nonzero_p): Remove. |
| (gimple_stmt_nonzero_p): Remove. |
| (vr_values::vrp_stmt_computes_nonzero): Remove. |
| (vr_values::op_with_constant_singleton_value_range): Remove. |
| (vr_values::extract_range_for_var_from_comparison_expr): Remove. |
| (vr_values::extract_range_from_assert): Remove. |
| (vr_values::extract_range_from_ssa_name): Remove. |
| (vr_values::extract_range_from_binary_expr): Remove. |
| (vr_values::extract_range_from_unary_expr): Remove. |
| (vr_values::extract_range_from_cond_expr): Remove. |
| (vr_values::extract_range_from_comparison): Remove. |
| (vr_values::extract_range_from_ubsan_builtin): Remove. |
| (vr_values::extract_range_basic): Remove. |
| (vr_values::extract_range_from_assignment): Remove. |
| (vr_values::adjust_range_with_scev): Remove. |
| (vr_values::dump): Remove. |
| (vr_values::vr_values): Remove. |
| (vr_values::~vr_values): Remove. |
| (vrp_valueize): Remove. |
| (vrp_valueize_1): Remove. |
| (get_output_for_vrp): Remove. |
| (vr_values::vrp_visit_assignment_or_call): Remove. |
| (simplify_using_ranges::vrp_evaluate_conditional): Remove. |
| (vr_values::vrp_visit_switch_stmt): Remove. |
| (vr_values::extract_range_from_stmt): Remove. |
| (vr_values::extract_range_from_phi_node): Remove. |
| (simplify_using_ranges::fold_cond): Add FIXME note. |
| (vr_values::set_vr_value): Remove. |
| (vr_values::swap_vr_value): Remove. |
| * vr-values.h (class vr_values): Remove. |
| (get_output_for_vrp): Remove. |
| |
| 2022-11-24 Hongyu Wang <hongyu.wang@intel.com> |
| |
| PR target/107692 |
| * common/config/i386/i386-common.cc (ix86_optimization_table): |
| Enable loop unroll O2, disable -fweb and -frename-registers |
| by default. |
| * config/i386/i386-options.cc |
| (ix86_override_options_after_change): |
| Disable small loop unroll when funroll-loops enabled, reset |
| cunroll_grow_size when it is not explicitly enabled. |
| (ix86_option_override_internal): Call |
| ix86_override_options_after_change instead of calling |
| ix86_recompute_optlev_based_flags and ix86_default_align |
| separately. |
| * config/i386/i386.cc (ix86_loop_unroll_adjust): Adjust unroll |
| factor if -munroll-only-small-loops enabled. |
| * loop-init.cc (pass_rtl_unroll_loops::gate): Do not enable |
| loop unrolling for -O2-speed. |
| (pass_rtl_unroll_loops::execute): Rmove |
| targetm.loop_unroll_adjust check. |
| |
| 2022-11-23 Ramana Radhakrishnan <ramana.gcc@gmail.com> |
| |
| * config/arm/types.md: Update comment. |
| (is_neon_type): Add neon_fcmla, neon_fcadd. |
| |
| 2022-11-23 Jonathan Wakely <jwakely@redhat.com> |
| |
| * doc/invoke.texi (C++ Dialect Options): Recommend using |
| -Wdelete-non-virtual-dtor instead of -Wnon-virtual-dtor. |
| |
| 2022-11-23 Jakub Jelinek <jakub@redhat.com> |
| |
| PR bootstrap/107722 |
| * diagnostic.cc (test_diagnostic_get_location_text): Test |
| special_fname_builtin () rather than "<built-in>" and expect |
| special_fname_builtin () concatenated with ":" for it. |
| |
| 2022-11-23 Martin Liska <mliska@suse.cz> |
| |
| * Makefile.in: Set DO_LINK_MUTEX. |
| |
| 2022-11-23 Lulu Cheng <chenglulu@loongson.cn> |
| xujiahao <xujiahao@loongson.cn> |
| |
| * config/loongarch/constraints.md (ZD): New constraint. |
| * config/loongarch/loongarch-def.c: Initial number of parallel prefetch. |
| * config/loongarch/loongarch-tune.h (struct loongarch_cache): |
| Define number of parallel prefetch. |
| * config/loongarch/loongarch.cc (loongarch_option_override_internal): |
| Set up parameters to be used in prefetching algorithm. |
| * config/loongarch/loongarch.md (prefetch): New template. |
| |
| 2022-11-23 Marek Polacek <polacek@redhat.com> |
| |
| Revert: |
| 2022-11-23 Marek Polacek <polacek@redhat.com> |
| |
| * Makefile.in: Set LD_PICFLAG. Use it. Set enable_host_pie. |
| Remove NO_PIE_CFLAGS and NO_PIE_FLAG. Pass LD_PICFLAG to |
| ALL_LINKERFLAGS. Use the "pic" build of libiberty if --enable-host-pie. |
| * configure.ac (--enable-host-shared): Don't set PICFLAG here. |
| (--enable-host-pie): New check. Set PICFLAG and LD_PICFLAG after this |
| check. |
| * configure: Regenerate. |
| * doc/install.texi: Document --enable-host-pie. |
| |
| 2022-11-23 Marek Polacek <polacek@redhat.com> |
| |
| Revert: |
| 2022-11-23 Marek Polacek <polacek@redhat.com> |
| |
| * configure.ac (--enable-host-bind-now): New check. Add |
| -Wl,-z,now to LD_PICFLAG if --enable-host-bind-now. |
| * configure: Regenerate. |
| * doc/install.texi: Document --enable-host-bind-now. |
| |
| 2022-11-23 Marek Polacek <polacek@redhat.com> |
| |
| * configure.ac (--enable-host-bind-now): New check. Add |
| -Wl,-z,now to LD_PICFLAG if --enable-host-bind-now. |
| * configure: Regenerate. |
| * doc/install.texi: Document --enable-host-bind-now. |
| |
| 2022-11-23 Marek Polacek <polacek@redhat.com> |
| |
| * Makefile.in: Set LD_PICFLAG. Use it. Set enable_host_pie. |
| Remove NO_PIE_CFLAGS and NO_PIE_FLAG. Pass LD_PICFLAG to |
| ALL_LINKERFLAGS. Use the "pic" build of libiberty if --enable-host-pie. |
| * configure.ac (--enable-host-shared): Don't set PICFLAG here. |
| (--enable-host-pie): New check. Set PICFLAG and LD_PICFLAG after this |
| check. |
| * configure: Regenerate. |
| * doc/install.texi: Document --enable-host-pie. |
| |
| 2022-11-22 Jeff Law <jlaw@ventanamicro.com> |
| |
| * tree-ssa-dom.cc (record_edge_info): Fix thinko in last commit. |
| |
| 2022-11-22 Jeff Law <jlaw@ventanamicro.com> |
| |
| * tree-ssa-dom.cc (record_edge_info): Fix comment typos. |
| |
| 2022-11-22 Jeff Law <jeffreyalaw@gmail.com> |
| |
| * config/riscv/riscv.cc (riscv_get_separate_components): Do not |
| do shrink-wrapping for a frame with a variable size. |
| |
| 2022-11-22 Siddhesh Poyarekar <siddhesh@gotplt.org> |
| |
| * tree-object-size.cc (todo): New variable. |
| (object_sizes_execute): Use it. |
| (strdup_object_size): New function. |
| (call_object_size): Use it. |
| |
| 2022-11-22 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * tree-loop-distribution.cc (loop_distribution::classify_builtin_ldst): |
| Bail out if source and destination do not have the same storage order. |
| |
| 2022-11-22 Martin Jambor <mjambor@suse.cz> |
| |
| * ipa-sra.cc (ipa_sra_dump_all_summaries): Dump edge summaries even |
| for non-candidates. |
| |
| 2022-11-22 Martin Jambor <mjambor@suse.cz> |
| |
| * ipa-cp.cc (push_agg_values_from_edge): Do not consider constants |
| in unused aggregate parameters. |
| |
| 2022-11-22 Martin Jambor <mjambor@suse.cz> |
| |
| * ipa-param-manipulation.h (ipa_param_body_adjustments): Removed |
| member m_split_modifications_p. |
| * ipa-param-manipulation.cc |
| (ipa_param_body_adjustments::common_initialization): Do not set |
| m_split_modifications_p. |
| (ipa_param_body_adjustments::ipa_param_body_adjustments): Remove |
| initializations of m_split_modifications_p. |
| (ipa_param_body_adjustments::modify_call_stmt): Check that |
| m_replacements is empty instead of m_split_modifications_p. |
| |
| 2022-11-22 Martin Jambor <mjambor@suse.cz> |
| |
| PR ipa/107661 |
| * ipa-cp.cc (push_agg_values_from_edge): New parameter |
| optimize_self_recursion, use it to decide whether to pass interim to |
| the helper function. |
| (find_aggregate_values_for_callers_subset): Pass true in the new |
| parameter of push_agg_values_from_edge. |
| (cgraph_edge_brings_all_agg_vals_for_node): Pass false in the new |
| parameter of push_agg_values_from_edge. |
| |
| 2022-11-22 Tobias Burnus <tobias@codesourcery.com> |
| Andrew Stubbs <ams@codesourcery.com> |
| |
| * config/gcn/gcn-builtins.def (FIRST_CALL_THIS_THREAD_P, |
| GET_STACK_LIMIT): Add new builtins. |
| * config/gcn/gcn.cc (gcn_expand_builtin_1): Expand them. |
| * config/gcn/gcn.md (prologue_use): Add "register_operand" as |
| arg to match_operand. |
| (prologue_use_di): New; DI insn_and_split variant of the former. |
| |
| 2022-11-22 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/107803 |
| * tree-ssa-propagate.cc (substitute_and_fold_dom_walker): Add |
| need_ab_cleanup member. |
| (substitute_and_fold_dom_walker::before_dom_children): When |
| a stmt can no longer transfer control flow abnormally set |
| need_ab_cleanup. |
| (substitute_and_fold_engine::substitute_and_fold): Cleanup |
| abnormal control flow. |
| |
| 2022-11-22 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/107672 |
| * tree-vect-stmts.cc (supportable_widening_operation): Avoid |
| type_for_mode on vector modes. |
| |
| 2022-11-22 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/107766 |
| * tree-vect-slp-patterns.cc (complex_mul_pattern::matches): |
| Use *node to check for FP vector types. |
| |
| 2022-11-22 liuhongt <hongtao.liu@intel.com> |
| |
| * config/i386/mmx.md (*mov<mode>_internal): Add |
| ix86_hard_reg_move_ok to condition. |
| |
| 2022-11-22 liuhongt <hongtao.liu@intel.com> |
| |
| * config/i386/i386.cc (ix86_can_change_mode_class): Also guard |
| size of TO. |
| (ix86_hard_regno_mode_ok): Remove VALID_AVX512FP16_SCALAR_MODE |
| * config/i386/i386.h (VALID_AVX512FP16_SCALAR_MODE): Merged to |
| .. |
| (VALID_AVX512F_SCALAR_MODE): .. this, also add HImode. |
| (VALID_SSE_REG_MODE): Add DI/HImode. |
| |
| 2022-11-21 Sebastian Huber <sebastian.huber@embedded-brains.de> |
| |
| * config/rtems.h (SUBTARGET_CC1_SPEC): Undef and define. |
| |
| 2022-11-21 Sebastian Huber <sebastian.huber@embedded-brains.de> |
| |
| * gcc.cc (SUBTARGET_CC1_SPEC): Define if not defined. |
| (cc1_spec): Append SUBTARGET_CC1_SPEC. |
| |
| 2022-11-21 Dimitar Dimitrov <dimitar@dinux.eu> |
| |
| * doc/sourcebuild.texi (sockets): Document new check. |
| |
| 2022-11-21 Andrew Carlotti <andrew.carlotti@arm.com> |
| |
| * tree-ssa-loop.h (tree_niter_desc): Update comment. |
| |
| 2022-11-21 Andrew Carlotti <andrew.carlotti@arm.com> |
| |
| * tree-ssa-loop-niter.cc |
| (number_of_iterations_exit_assumptions): Modify to call... |
| (number_of_iterations_bitcount): ...this new function. |
| (number_of_iterations_popcount): Now called by the above. |
| Refactor, and extract popcount expression builder to... |
| (build_popcount_expr): this new function. |
| |
| 2022-11-21 Andrew Carlotti <andrew.carlotti@arm.com> |
| |
| * tree-ssa-loop-niter.cc (ssa_defined_by_minus_one_stmt_p): Move |
| (number_of_iterations_popcount): Move, and remove separate prototype. |
| |
| 2022-11-21 Andrew Carlotti <andrew.carlotti@arm.com> |
| |
| * tree-ssa-loop-niter.cc (number_of_iterations_exit_assumptions): |
| Move at_stmt assignment. |
| |
| 2022-11-21 Christophe Lyon <christophe.lyon@arm.com> |
| |
| * genmultilib: Fix options and dirnames/osdirnames sanity check. |
| |
| 2022-11-21 Philipp Tomsich <philipp.tomsich@vrull.eu> |
| |
| PR target/107786 |
| * config/riscv/riscv.md |
| (*branch<ANYI:mode>_shiftedarith_equals_zero): Wrap ANYI |
| in a subreg, as our branch instructions only supports X. |
| |
| 2022-11-21 Jakub Jelinek <jakub@redhat.com> |
| |
| PR target/107748 |
| * config/i386/avx512fp16intrin.h (_mm512_castph512_ph128, |
| _mm512_castph512_ph256, _mm512_castph128_ph512, |
| _mm512_castph256_ph512, _mm512_set1_pch): Uglify names of local |
| variables and union members. |
| * config/i386/avx512fp16vlintrin.h (_mm256_castph256_ph128, |
| _mm256_castph128_ph256, _mm256_set1_pch, _mm_set1_pch): Likewise. |
| * config/i386/smmintrin.h (_mm_extract_ps): Likewise. |
| |
| 2022-11-21 Christophe Lyon <christophe.lyon@arm.com> |
| |
| * genmultilib: Add sanity check. |
| |
| 2022-11-21 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * config/arm/arm.cc (arm_attribute_table) <cmse_nonsecure_call>: |
| Change decl_required field to false. |
| (arm_handle_cmse_nonsecure_call): Deal with a TYPE node. |
| |
| 2022-11-21 Andrew Pinski <apinski@marvell.com> |
| |
| * gimplify.cc (gimplify_modify_expr): If |
| either *from_p or *to_p were error_operand |
| return early. |
| |
| 2022-11-21 liuhongt <hongtao.liu@intel.com> |
| |
| * config/i386/i386-builtins.cc (def_builtin): Handle "shared" |
| avx512bf16vl-avxneconvert builtins. |
| |
| 2022-11-20 Jakub Jelinek <jakub@redhat.com> |
| |
| PR target/107183 |
| * reg-stack.cc (next_flags_user): Add DEBUG_SEEN argument. |
| If >= 0 and a DEBUG_INSN would be otherwise returned, set |
| DEBUG_SEEN to 1 and ignore it. |
| (swap_rtx_condition): Add DEBUG_SEEN argument. In >= 0 |
| mode only set DEBUG_SEEN to 1 if problematic DEBUG_ISNSs |
| were seen and revert all changes on success in that case. |
| Don't try to recog_memoized DEBUG_INSNs. |
| (compare_for_stack_reg): Adjust swap_rtx_condition caller. |
| If it returns true and debug_seen is 1, call swap_rtx_condition |
| again with debug_seen -1. |
| |
| 2022-11-20 Jeff Law <jlaw@ventanamicro.com> |
| |
| PR other/104044 |
| * config/mn10300/mn10300.cc (mn10300_print_operand): Remove |
| extraneous semicolon. |
| * config/nvptx/nvptx.cc (nvptx_goacc_reduction_fini): Likewise. |
| |
| 2022-11-19 Andrew Pinski <apinski@marvell.com> |
| |
| PR middle-end/14840 |
| * tree-core.h (tree_code_type): Constexprify |
| by including all-tree.def. |
| (tree_code_length): Likewise. |
| * tree.cc (tree_code_type): Remove. |
| (tree_code_length): Remove. |
| |
| 2022-11-19 Thomas Schwinge <thomas@codesourcery.com> |
| |
| * config/nvptx/nvptx.h (STARTFILE_SPEC): Fix 'crt0.o' for |
| '-mmainkernel'. |
| |
| 2022-11-19 Jonathan Wakely <jwakely@redhat.com> |
| LIU Hao <lh_mouse@126.com> |
| |
| * system.h [INCLUDE_MUTEX]: Include header for std::mutex. |
| |
| 2022-11-19 Jakub Jelinek <jakub@redhat.com> |
| |
| PR target/107628 |
| * config/i386/i386-protos.h (ix86_expand_fast_convert_bf_to_sf): |
| Declare. |
| * config/i386/i386-expand.cc (ix86_expand_fast_convert_bf_to_sf): New |
| function. |
| * config/i386/i386.md (cbranchbf4, cstorebf4): Use it. |
| |
| 2022-11-19 Jeff Chapman II <jchapman@lock3software.com> |
| Andrew Sutton <asutton@lock3software.com> |
| Andrew Marmaduke <amarmaduke@lock3software.com> |
| Michael Lopez <mlopez@lock3software.com> |
| Jason Merrill <jason@redhat.com> |
| |
| * doc/invoke.texi: Document contracts flags. |
| |
| 2022-11-18 Philipp Tomsich <philipp.tomsich@vrull.eu> |
| |
| * config/riscv/bitmanip.md (*minmax): Additional pattern for |
| min/max against constants that are extension-invariant. |
| * config/riscv/iterators.md (minmax_optab): Add an iterator |
| that has only min and max rtl. |
| |
| 2022-11-18 Philipp Tomsich <philipp.tomsich@vrull.eu> |
| |
| * config/riscv/bitmanip.md |
| (*branch<X:mode>_mask_twobits_equals_singlebit): |
| Handle "if ((a & T) == C)" using Zbs, when T has 2 bits set and C |
| has one of these tow bits set. |
| * config/riscv/predicates.md (const_twobits_not_arith_operand): |
| New predicate. |
| |
| 2022-11-18 Philipp Tomsich <philipp.tomsich@vrull.eu> |
| |
| * config/riscv/bitmanip.md (*<or_optab>i<mode>_extrabit): |
| New pattern for binvi+binvi/xori and bseti+bseti/ori |
| (*andi<mode>_extrabit): New pattern for bclri+bclri/andi |
| * config/riscv/iterators.md (any_or): Match or and ior |
| * config/riscv/predicates.md (const_twobits_operand): |
| New predicate. |
| (uimm_extra_bit_operand): New predicate. |
| (uimm_extra_bit_or_twobits): New predicate. |
| (not_uimm_extra_bit_operand): New predicate. |
| (not_uimm_extra_bit_or_nottwobits): New predicate. |
| * config/riscv/riscv.h (UIMM_EXTRA_BIT_OPERAND): |
| Helper for the uimm_extra_bit_operand and |
| not_uimm_extra_bit_operand predicates. |
| |
| 2022-11-18 Philipp Tomsich <philipp.tomsich@vrull.eu> |
| |
| * config/riscv/bitmanip.md: Handle corner-cases for combine |
| when chaining slli(.uw)? + addw |
| * config/riscv/riscv-protos.h (riscv_shamt_matches_mask_p): |
| Define prototype. |
| * config/riscv/riscv.cc (riscv_shamt_matches_mask_p): |
| Helper for evaluating the relationship between two operands. |
| |
| 2022-11-18 Philipp Tomsich <philipp.tomsich@vrull.eu> |
| |
| * config/riscv/bitmanip.md: Add a define_split to optimize |
| slliw + addiw + divw into sh[123]add + divw. |
| |
| 2022-11-18 Philipp Tomsich <philipp.tomsich@vrull.eu> |
| |
| * config/riscv/predicates.md (shifted_const_arith_operand): New predicate. |
| (uimm_extra_bit_operand): New predicate. |
| * config/riscv/riscv.md (*branch<ANYI:mode>_shiftedarith_equals_zero): |
| New pattern. |
| (*branch<ANYI:mode>_shiftedmask_equals_zero): New pattern. |
| |
| 2022-11-18 Philipp Tomsich <philipp.tomsich@vrull.eu> |
| |
| * config/riscv/bitmanip.md (*bsetidisi): New pattern. |
| |
| 2022-11-18 Richard Purdie <richard.purdie@linuxfoundation.org> |
| |
| * doc/invoke.texi: Document prefix-maps don't affect directives. |
| |
| 2022-11-18 Andrew Pinski <apinski@marvell.com> |
| |
| PR middle-end/107705 |
| * function.cc (aggregate_value_p): Return 0 if |
| the function type was an error operand. |
| |
| 2022-11-18 Andrew Pinski <apinski@marvell.com> |
| |
| PR c/106764 |
| PR c/106765 |
| PR c/107307 |
| * gimplify.cc (gimplify_compound_lval): Return GS_ERROR |
| if gimplify_expr had return GS_ERROR. |
| (gimplify_call_expr): Likewise. |
| |
| 2022-11-18 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
| |
| * config/aarch64/atomics.md (*aarch64_atomic_load<ALLX:mode>_rcpc_sext): |
| Use <GPI:w> for destination format. |
| * config/aarch64/iterators.md (w_sz): Delete. |
| |
| 2022-11-18 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
| |
| * config/aarch64/aarch64.h (TARGET_RCPC2): Define. |
| * config/aarch64/atomics.md (*aarch64_atomic_load<ALLX:mode>_rcpc_zext): |
| Adjust output template. |
| (*aarch64_atomic_load<ALLX:mode>_rcpc_sex): Guard on TARGET_RCPC2. |
| Adjust output template. |
| * config/aarch64/iterators.md (w_sz): New mode attr. |
| |
| 2022-11-18 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/107647 |
| * tree-vect-slp-patterns.cc (addsub_pattern::recognize): Only |
| allow FMA generation with -ffp-contract=fast for FP types. |
| (complex_mul_pattern::matches): Likewise. |
| |
| 2022-11-18 Jinyang He <hejinyang@loongson.cn> |
| |
| PR target/107713 |
| * config/loongarch/sync.md |
| (atomic_cas_value_exchange_7_<mode>): New define_insn. |
| (atomic_exchange): Use atomic_cas_value_exchange_7_si instead of |
| atomic_cas_value_cmp_and_7_si. |
| |
| 2022-11-17 Andrew Pinski <apinski@marvell.com> |
| |
| PR middle-end/107734 |
| * match.pd (perm + vector op pattern): Clear the sbitmap before |
| use. |
| |
| 2022-11-17 Aldy Hernandez <aldyh@redhat.com> |
| |
| PR tree-optimization/107732 |
| * range-op-float.cc (foperator_abs::op1_range): Early exit when |
| result is undefined. |
| |
| 2022-11-17 Philipp Tomsich <philipp.tomsich@vrull.eu> |
| |
| * config/riscv/bitmanip.md (*bclri<mode>_nottwobits): New pattern. |
| (*bclridisi_nottwobits): New pattern, handling the sign-bit. |
| * config/riscv/predicates.md (const_nottwobits_operand): |
| New predicate. |
| |
| 2022-11-17 Philipp Tomsich <philipp.tomsich@vrull.eu> |
| |
| * config/riscv/bitmanip.md: Add a splitter to generate |
| polarity-reversed masks from a set bit using bexti + addi. |
| |
| 2022-11-17 mtsamis <manolis.tsamis@vrull.eu> |
| |
| * config/riscv/riscv.cc (struct machine_function): Add array to store |
| register wrapping information. |
| (riscv_for_each_saved_reg): Skip registers that are wrapped separetely. |
| (riscv_get_separate_components): New function. |
| (riscv_components_for_bb): Likewise. |
| (riscv_disqualify_components): Likewise. |
| (riscv_process_components): Likewise. |
| (riscv_emit_prologue_components): Likewise. |
| (riscv_emit_epilogue_components): Likewise. |
| (riscv_set_handled_components): Likewise. |
| (TARGET_SHRINK_WRAP_GET_SEPARATE_COMPONENTS): Define. |
| (TARGET_SHRINK_WRAP_COMPONENTS_FOR_BB): Likewise. |
| (TARGET_SHRINK_WRAP_DISQUALIFY_COMPONENTS): Likewise. |
| (TARGET_SHRINK_WRAP_EMIT_PROLOGUE_COMPONENTS): Likewise. |
| (TARGET_SHRINK_WRAP_EMIT_EPILOGUE_COMPONENTS): Likewise. |
| (TARGET_SHRINK_WRAP_SET_HANDLED_COMPONENTS): Likewise. |
| |
| 2022-11-17 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
| |
| * config/aarch64/atomics.md (*aarch64_atomic_load<ALLX:mode>_rcpc_zext): |
| Add mode size check to condition. |
| (*aarch64_atomic_load<ALLX:mode>_rcpc_sext): Likewise. |
| |
| 2022-11-17 Aldy Hernandez <aldyh@redhat.com> |
| |
| PR tree-optimization/68097 |
| * gimple-fold.cc (gimple_stmt_nonnegative_warnv_p): Call |
| range_of_stmt for floats. |
| |
| 2022-11-17 Lili Cui <lili.cui@intel.com> |
| |
| * config/i386/x86-tune.def |
| (X86_TUNE_AVX256_MOVE_BY_PIECES): Add alderlake. |
| (X86_TUNE_AVX256_STORE_BY_PIECES): Ditto. |
| |
| 2022-11-17 Tamar Christina <tamar.christina@arm.com> |
| |
| PR tree-optimization/107717 |
| * match.pd: Ensure same SSA_NAME. |
| |
| 2022-11-17 Tamar Christina <tamar.christina@arm.com> |
| |
| * match.pd: Replace GET_MODE_WIDER_MODE with |
| custom code. |
| |
| 2022-11-17 Aldy Hernandez <aldyh@redhat.com> |
| |
| * range-op-float.cc (range_operator_float::fold_range): Make check |
| for maybe_isnan more readable. |
| |
| 2022-11-17 Kewen Lin <linkw@linux.ibm.com> |
| |
| * gimple-fold.cc (gimple_fold_partial_load_store_mem_ref): Use |
| tree_fits_shwi_p rather than tree_fits_uhwi_p as bias is signed. |
| |
| 2022-11-17 Jia-Wei Chen <jiawei@iscas.ac.cn> |
| |
| * config/riscv/riscv.cc (riscv_expand_epilogue): |
| Do not emit useless add sp, sp, 0 instrutions. |
| |
| 2022-11-17 Jeff Law <jlaw@ventanamicro.com> |
| |
| * config/sh/sh_treg_combine.cc: Include tm-preds.h. |
| (t_reg_operand): Remove bogus prototype. |
| (negt_reg_operand): Likewise. |
| |
| 2022-11-16 Marek Polacek <polacek@redhat.com> |
| |
| PR c++/106649 |
| * doc/invoke.texi: Document -Winvalid-constexpr. |
| |
| 2022-11-16 Philipp Tomsich <philipp.tomsich@vrull.eu> |
| |
| * config/riscv/bitmanip.md: Add split covering |
| "(a & (1 << BIT_NO)) ? 0 : 1". |
| |
| 2022-11-16 Philipp Tomsich <philipp.tomsich@vrull.eu> |
| |
| * config/riscv/bitmanip.md (*bext<mode>): Add an additional |
| pattern that allows the 3rd argument to zero_extract to be |
| an Xmode register operand. |
| |
| 2022-11-16 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/107686 |
| * tree-ssa-forwprop.cc (optimize_vector_load): Restrict |
| VEC_UNPACK support to integral typed bitfield refs. |
| |
| 2022-11-16 Richard Biener <rguenther@suse.de> |
| |
| PR middle-end/107679 |
| * tree-into-ssa.cc (maybe_register_def): Use new temporary if |
| we require an uninitialized value for a parameter decl. |
| |
| 2022-11-16 Alexander Monakov <amonakov@ispras.ru> |
| |
| PR target/107676 |
| * doc/invoke.texi (-mrelax-cmpxchg-loop): Reword description. |
| |
| 2022-11-16 Alexander Monakov <amonakov@ispras.ru> |
| |
| PR target/87832 |
| * config/i386/znver.md: (znver1_fp_op_mul): Correct cycles in |
| the reservation. |
| (znver1_fp_op_mul_load): Ditto. |
| (znver1_mmx_mul): Ditto. |
| (znver1_mmx_load): Ditto. |
| (znver1_ssemul_ss_ps): Ditto. |
| (znver1_ssemul_ss_ps_load): Ditto. |
| (znver1_ssemul_avx256_ps): Ditto. |
| (znver1_ssemul_avx256_ps_load): Ditto. |
| (znver1_ssemul_sd_pd): Ditto. |
| (znver1_ssemul_sd_pd_load): Ditto. |
| (znver2_ssemul_sd_pd): Ditto. |
| (znver2_ssemul_sd_pd_load): Ditto. |
| (znver1_ssemul_avx256_pd): Ditto. |
| (znver1_ssemul_avx256_pd_load): Ditto. |
| (znver1_sseimul): Ditto. |
| (znver1_sseimul_avx256): Ditto. |
| (znver1_sseimul_load): Ditto. |
| (znver1_sseimul_avx256_load): Ditto. |
| (znver1_sseimul_di): Ditto. |
| (znver1_sseimul_load_di): Ditto. |
| |
| 2022-11-16 Alexander Monakov <amonakov@ispras.ru> |
| |
| PR target/87832 |
| * config/i386/znver.md (znver1_fdiv): New automaton. |
| (znver1-fdiv): New unit. |
| (znver1_fp_op_div): Correct unit and cycles in the reservation. |
| (znver1_fp_op_div_load): Ditto. |
| (znver1_fp_op_idiv_load): Ditto. |
| (znver2_fp_op_idiv_load): Ditto. |
| (znver1_ssediv_ss_ps): Ditto. |
| (znver1_ssediv_ss_ps_load): Ditto. |
| (znver1_ssediv_sd_pd): Ditto. |
| (znver1_ssediv_sd_pd_load): Ditto. |
| (znver1_ssediv_avx256_ps): Ditto. |
| (znver1_ssediv_avx256_ps_load): Ditto. |
| (znver1_ssediv_avx256_pd): Ditto. |
| (znver1_ssediv_avx256_pd_load): Ditto. |
| |
| 2022-11-16 Tobias Burnus <tobias@codesourcery.com> |
| Andrew Stubbs <ams@codesourcery.com> |
| |
| * config/gcn/gcn-builtins.def (KERNARG_PTR): Add. |
| * config/gcn/gcn.cc (gcn_init_builtin_types): Change siptr_type_node, |
| sfptr_type_node and voidptr_type_node from FLAT to ADDR_SPACE_DEFAULT. |
| (gcn_expand_builtin_1): Handle GCN_BUILTIN_KERNARG_PTR. |
| (gcn_oacc_dim_size): Return in ADDR_SPACE_FLAT. |
| |
| 2022-11-16 David Malcolm <dmalcolm@redhat.com> |
| |
| * Makefile.in (ANALYZER_OBJS): Add analyzer/checker-event.o. |
| |
| 2022-11-16 Max Filippov <jcmvbkbc@gmail.com> |
| |
| PR target/107645 |
| * config/m68k/predicates.md (symbolic_operand): Return false |
| when UNSPEC is under the CONST node. |
| |
| 2022-11-16 Christoph Müllner <christoph.muellner@vrull.eu> |
| |
| * doc/invoke.texi: Fix PRU/RISC-V option list formatting. |
| |
| 2022-11-16 Tobias Burnus <tobias@codesourcery.com> |
| |
| * config/nvptx/mkoffload.cc (process): Recognize '$nohost$...' |
| besides tailing '$nohost' as being for reverse offload. |
| |
| 2022-11-16 Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/107668 |
| * range-op-float.cc (float_binary_op_range_finish): Set VARYING |
| also when r is UNDEFINED. |
| |
| 2022-11-16 Kewen Lin <linkw@linux.ibm.com> |
| |
| PR rtl-optimization/90259 |
| * function.cc (rest_of_handle_thread_prologue_and_epilogue): Add |
| parameter fun, and call function purge_all_dead_edges. |
| (pass_thread_prologue_and_epilogue::execute): Name unamed parameter |
| as fun, and use it for rest_of_handle_thread_prologue_and_epilogue. |
| |
| 2022-11-15 Philipp Tomsich <philipp.tomsich@vrull.eu> |
| |
| * config/riscv/riscv-builtins.cc (struct riscv_builtin_description): |
| add the pause machine-dependent builtin with no result and no |
| arguments; mark it as always present (pause is a true hint |
| that encodes into a fence-insn, if not supported with the new |
| pause semantics). |
| * config/riscv/riscv-ftypes.def: Add type for void -> void. |
| * config/riscv/riscv.md (riscv_pause): Add risc_pause and |
| UNSPECV_PAUSE |
| * doc/extend.texi: Document __builtin_riscv_pause. |
| * optabs.cc (maybe_gen_insn): Allow nops == 0 (void -> void). |
| |
| 2022-11-15 David Faust <david.faust@oracle.com> |
| |
| * config/bpf/bpf.cc (bpf_expand_builtin): Avoid use of uninitialized |
| variable in error case. |
| |
| 2022-11-15 David Malcolm <dmalcolm@redhat.com> |
| |
| PR analyzer/106140 |
| * doc/invoke.texi (Static Analyzer Options): Add |
| -Wanalyzer-fd-phase-mismatch and -Wanalyzer-fd-type-mismatch. Add |
| "socket", "bind", "listen", "accept", and "connect" to the list of |
| functions known to the analyzer. |
| |
| 2022-11-15 David Malcolm <dmalcolm@redhat.com> |
| |
| PR analyzer/106302 |
| * Makefile.in (ANALYZER_OBJS): Add analyzer/analyzer-language.o. |
| (GTFILES): Add analyzer/analyzer-language.cc. |
| * doc/analyzer.texi: Document __analyzer_dump_named_constant. |
| |
| 2022-11-15 Lewis Hyatt <lhyatt@gmail.com> |
| |
| * json.h (class string): Add M_LEN member to store the length of |
| the data. Add constructor taking an explicit length. |
| * json.cc (string::string): Implement the new constructor. |
| (string::print): Support printing strings that are not |
| null-terminated. Escape embdedded null bytes on output. |
| (test_writing_strings): Test the new null-byte-related features of |
| json::string. |
| |
| 2022-11-15 Lewis Hyatt <lhyatt@gmail.com> |
| |
| * diagnostic.cc (diagnostic_get_location_text): Use |
| special_fname_builtin () rather than a hardcoded string (which was |
| also incorrectly left untranslated previously.) |
| * input.cc (special_fname_builtin): New function. |
| (expand_location_1): Use special_fname_builtin () rather than a |
| hard-coded string. |
| (test_builtins): Likewise. |
| * input.h (special_fname_builtin): Declare. |
| |
| 2022-11-15 Lewis Hyatt <lhyatt@gmail.com> |
| |
| * tree-diagnostic.cc (maybe_unwind_expanded_macro_loc): Handle ad-hoc |
| location in return value of linemap_resolve_location(). |
| |
| 2022-11-15 Jonathan Wakely <jwakely@redhat.com> |
| |
| * doc/cpp.texi (Pragmas): Use @item and @itemx for region |
| pragmas. |
| |
| 2022-11-15 Maciej W. Rozycki <macro@embecosm.com> |
| |
| * ira-color.cc (assign_hard_reg): Remove duplicate `memset' over |
| `full_costs'. |
| |
| 2022-11-15 Andre Vieira <andre.simoesdiasvieira@arm.com> |
| |
| * config/aarch64/atomics.md |
| (*aarch64_atomic_load<ALLX:mode>_rcpc_zext): New pattern. |
| (*aarch64_atomic_load<ALLX:mode>_rcpc_sext): New pattern. |
| |
| 2022-11-15 Andre Vieira <andre.simoesdiasvieira@arm.com> |
| Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
| |
| * config/aarch64/aarch64.h (AARCH64_ISA_RCPC): New Macro. |
| (TARGET_RCPC): New Macro. |
| * config/aarch64/atomics.md (atomic_load<mode>): Change into an expand. |
| (aarch64_atomic_load<mode>_rcpc): New define_insn for ldapr. |
| (aarch64_atomic_load<mode>): Rename of old define_insn for ldar. |
| * config/aarch64/iterators.md (UNSPEC_LDAP): New unspec enum value. |
| * doc/invoke.texi (rcpc): Ammend documentation to mention the effects |
| on code generation. |
| |
| 2022-11-15 Hongyu Wang <hongyu.wang@intel.com> |
| |
| PR target/98167 |
| * match.pd: New perm + vector op patterns for int and fp vector. |
| |
| 2022-11-15 Andrew Pinski <apinski@marvell.com> |
| |
| * doc/invoke.texi: Remove Score option section. |
| |
| 2022-11-15 Andrew Pinski <apinski@marvell.com> |
| |
| * doc/extend.texi: Remove picoChip builtin section. |
| * doc/invoke.texi: Remove picoChip option section. |
| |
| 2022-11-15 Andrew Pinski <apinski@marvell.com> |
| |
| * doc/extend.texi: Remove MeP documentation. |
| * doc/invoke.texi: Remove MeP Options documentation. |
| |
| 2022-11-15 Andrew Pinski <apinski@marvell.com> |
| |
| * doc/invoke.texi: Fix opindex for mcall-aixdesc and mcall-openbsd. |
| |
| 2022-11-14 Philipp Tomsich <philipp.tomsich@vrull.eu> |
| |
| Revert: |
| 2022-11-14 Philipp Tomsich <philipp.tomsich@vrull.eu> |
| |
| * config/riscv/riscv-cores.def (RISCV_TUNE): Add ventana-vt1. |
| (RISCV_CORE): Ditto. |
| * config/riscv/riscv-opts.h (enum riscv_microarchitecture_type): Ditto. |
| * config/riscv/riscv.cc: Add tune_info for ventana-vt1. |
| * doc/invoke.texi: Document -mcpu= and -mtune with ventana-vt1. |
| |
| 2022-11-14 Philipp Tomsich <philipp.tomsich@vrull.eu> |
| |
| Revert: |
| 2022-11-14 Philipp Tomsich <philipp.tomsich@vrull.eu> |
| |
| * config/riscv/riscv.cc (enum riscv_fusion_pairs): Add symbolic |
| constants to identify supported fusion patterns. |
| (struct riscv_tune_param): Add fusible_op field. |
| (riscv_macro_fusion_p): Implement. |
| (riscv_fusion_enabled_p): Implement. |
| (riscv_macro_fusion_pair_p): Implement and recognize fusible |
| idioms for Ventana VT1. |
| (TARGET_SCHED_MACRO_FUSION_P): Point to riscv_macro_fusion_p. |
| (TARGET_SCHED_MACRO_FUSION_PAIR_P): Point to |
| riscv_macro_fusion_pair_p. |
| |
| 2022-11-14 Maciej W. Rozycki <macro@embecosm.com> |
| |
| * ira-build.cc (create_insn_allocnos): Fix documentation. |
| |
| 2022-11-14 Tamar Christina <tamar.christina@arm.com> |
| |
| * match.pd: Remove returns. |
| |
| 2022-11-14 Philipp Tomsich <philipp.tomsich@vrull.eu> |
| |
| * config/riscv/bitmanip.md (orcb<mode>2): Add orc.b as an |
| unspec. |
| * config/riscv/riscv.md: Add UNSPEC_ORC_B. |
| |
| 2022-11-14 Tamar Christina <tamar.christina@arm.com> |
| |
| * target.def: Fix typo. |
| |
| 2022-11-14 Philipp Tomsich <philipp.tomsich@vrull.eu> |
| |
| * config/riscv/riscv.cc (enum riscv_fusion_pairs): Add symbolic |
| constants to identify supported fusion patterns. |
| (struct riscv_tune_param): Add fusible_op field. |
| (riscv_macro_fusion_p): Implement. |
| (riscv_fusion_enabled_p): Implement. |
| (riscv_macro_fusion_pair_p): Implement and recognize fusible |
| idioms for Ventana VT1. |
| (TARGET_SCHED_MACRO_FUSION_P): Point to riscv_macro_fusion_p. |
| (TARGET_SCHED_MACRO_FUSION_PAIR_P): Point to |
| riscv_macro_fusion_pair_p. |
| |
| 2022-11-14 Philipp Tomsich <philipp.tomsich@vrull.eu> |
| |
| * config/riscv/riscv-cores.def (RISCV_TUNE): Add ventana-vt1. |
| (RISCV_CORE): Ditto. |
| * config/riscv/riscv-opts.h (enum riscv_microarchitecture_type): Ditto. |
| * config/riscv/riscv.cc: Add tune_info for ventana-vt1. |
| * doc/invoke.texi: Document -mcpu= and -mtune with ventana-vt1. |
| |
| 2022-11-14 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
| |
| * config/aarch64/aarch64-option-extensions.def (cssc): Define. |
| * config/aarch64/aarch64.h (AARCH64_ISA_CSSC): Define. |
| (TARGET_CSSC): Likewise. |
| * config/aarch64/aarch64.md (*aarch64_abs<mode>2_cssc_ins): New define_insn. |
| (abs<mode>2): Adjust for the above. |
| (aarch64_umax<mode>3_insn): New define_insn. |
| (umax<mode>3): Adjust for the above. |
| (*aarch64_popcount<mode>2_cssc_insn): New define_insn. |
| (popcount<mode>2): Adjust for the above. |
| (<optab><mode>3): New define_insn. |
| * config/aarch64/constraints.md (Usm): Define. |
| (Uum): Likewise. |
| * doc/invoke.texi (AArch64 options): Document +cssc. |
| * config/aarch64/iterators.md (MAXMIN_NOUMAX): New code iterator. |
| * config/aarch64/predicates.md (aarch64_sminmax_immediate): Define. |
| (aarch64_sminmax_operand): Likewise. |
| (aarch64_uminmax_immediate): Likewise. |
| (aarch64_uminmax_operand): Likewise. |
| |
| 2022-11-14 Tamar Christina <tamar.christina@arm.com> |
| |
| * config/aarch64/aarch64-sve2.md (@aarch64_bitmask_udiv<mode>3): New. |
| |
| 2022-11-14 Tamar Christina <tamar.christina@arm.com> |
| |
| * config/aarch64/aarch64-simd.md (@aarch64_bitmask_udiv<mode>3): New. |
| * config/aarch64/aarch64.cc (aarch64_vectorize_can_special_div_by_constant): New. |
| |
| 2022-11-14 Tamar Christina <tamar.christina@arm.com> |
| |
| * expmed.h (expand_divmod): Pass tree operands down in addition to RTX. |
| * expmed.cc (expand_divmod): Likewise. |
| * explow.cc (round_push, align_dynamic_address): Likewise. |
| * expr.cc (force_operand, expand_expr_divmod): Likewise. |
| * optabs.cc (expand_doubleword_mod, expand_doubleword_divmod): |
| Likewise. |
| * target.h: Include tree-core. |
| * target.def (can_special_div_by_const): New. |
| * targhooks.cc (default_can_special_div_by_const): New. |
| * targhooks.h (default_can_special_div_by_const): New. |
| * tree-vect-generic.cc (expand_vector_operation): Use it. |
| * doc/tm.texi.in: Document it. |
| * doc/tm.texi: Regenerate. |
| * tree-vect-patterns.cc (vect_recog_divmod_pattern): Check for support. |
| * tree-vect-stmts.cc (vectorizable_operation): Likewise. |
| |
| 2022-11-14 Tamar Christina <tamar.christina@arm.com> |
| |
| * generic-match-head.cc: Include langooks. |
| * gimple-match-head.cc: Likewise. |
| * match.pd: Add fneg/fadd rule. |
| |
| 2022-11-14 Srinath Parvathaneni <srinath.parvathaneni@arm.com> |
| |
| * config/arm/arm-cpus.in (cortex-x1c): Define new CPU. |
| * config/arm/arm-tables.opt: Regenerate. |
| * config/arm/arm-tune.md: Likewise. |
| * doc/invoke.texi: Document Cortex-X1C CPU. |
| |
| 2022-11-14 Srinath Parvathaneni <srinath.parvathaneni@arm.com> |
| |
| * config/aarch64/aarch64-cores.def (AARCH64_CORE): Add Cortex-X3 |
| CPU. |
| * config/aarch64/aarch64-tune.md: Regenerate. |
| * doc/invoke.texi: Document Cortex-X3 CPU. |
| |
| 2022-11-14 Andrew Pinski <apinski@marvell.com> |
| |
| * doc/invoke.texi: Fix @opindex |
| for m80387 option. |
| |
| 2022-11-14 Andrew Pinski <apinski@marvell.com> |
| |
| * doc/invoke.texi: Remove the front - from |
| some @opindex. |
| |
| 2022-11-14 Philipp Tomsich <philipp.tomsich@vrull.eu> |
| |
| * config/aarch64/aarch64-cores.def (AARCH64_CORE): Add ampere1a. |
| * config/aarch64/aarch64-cost-tables.h: Add ampere1a_extra_costs. |
| * config/aarch64/aarch64-fusion-pairs.def (AARCH64_FUSION_PAIR): |
| Define a new fusion pair for A+B+1/A-B-1 (i.e., add/subtract two |
| registers and then +1/-1). |
| * config/aarch64/aarch64-tune.md: Regenerate. |
| * config/aarch64/aarch64.cc (aarch_macro_fusion_pair_p): Implement |
| idiom-matcher for the new fusion pair. |
| * doc/invoke.texi: Add ampere1a. |
| |
| 2022-11-14 Richard Biener <rguenther@suse.de> |
| |
| * match.pd: Remove duplicates. |
| |
| 2022-11-14 Martin Liska <mliska@suse.cz> |
| |
| * doc/contrib.texi: Port from Sphinx. |
| * doc/cpp.texi: Likewise. |
| * doc/install.texi: Likewise. |
| * doc/invoke.texi: Likewise. |
| |
| 2022-11-14 Martin Liska <mliska@suse.cz> |
| |
| Revert: |
| 2022-11-14 Martin Liska <mliska@suse.cz> |
| |
| * doc/cpp/character-sets.rst: New file. |
| * doc/cpp/conditional-syntax.rst: New file. |
| * doc/cpp/conditional-uses.rst: New file. |
| * doc/cpp/conditionals.rst: New file. |
| * doc/cpp/conf.py: New file. |
| * doc/cpp/copyright.rst: New file. |
| * doc/cpp/deleted-code.rst: New file. |
| * doc/cpp/diagnostics.rst: New file. |
| * doc/cpp/environment-variables.rst: New file. |
| * doc/cpp/gnu-free-documentation-license.rst: New file. |
| * doc/cpp/header-files.rst: New file. |
| * doc/cpp/header-files/alternatives-to-wrapper-ifndef.rst: New file. |
| * doc/cpp/header-files/computed-includes.rst: New file. |
| * doc/cpp/header-files/include-operation.rst: New file. |
| * doc/cpp/header-files/include-syntax.rst: New file. |
| * doc/cpp/header-files/once-only-headers.rst: New file. |
| * doc/cpp/header-files/search-path.rst: New file. |
| * doc/cpp/header-files/system-headers.rst: New file. |
| * doc/cpp/header-files/wrapper-headers.rst: New file. |
| * doc/cpp/implementation-defined-behavior.rst: New file. |
| * doc/cpp/implementation-details.rst: New file. |
| * doc/cpp/implementation-limits.rst: New file. |
| * doc/cpp/index.rst: New file. |
| * doc/cpp/indices-and-tables.rst: New file. |
| * doc/cpp/initial-processing.rst: New file. |
| * doc/cpp/invocation.rst: New file. |
| * doc/cpp/line-control.rst: New file. |
| * doc/cpp/macros.rst: New file. |
| * doc/cpp/macros/concatenation.rst: New file. |
| * doc/cpp/macros/directives-within-macro-arguments.rst: New file. |
| * doc/cpp/macros/function-like-macros.rst: New file. |
| * doc/cpp/macros/macro-arguments.rst: New file. |
| * doc/cpp/macros/macro-pitfalls.rst: New file. |
| * doc/cpp/macros/object-like-macros.rst: New file. |
| * doc/cpp/macros/predefined-macros.rst: New file. |
| * doc/cpp/macros/stringizing.rst: New file. |
| * doc/cpp/macros/undefining-and-redefining-macros.rst: New file. |
| * doc/cpp/macros/variadic-macros.rst: New file. |
| * doc/cpp/obsolete-features.rst: New file. |
| * doc/cpp/other-directives.rst: New file. |
| * doc/cpp/overview.rst: New file. |
| * doc/cpp/pragmas.rst: New file. |
| * doc/cpp/preprocessor-output.rst: New file. |
| * doc/cpp/the-preprocessing-language.rst: New file. |
| * doc/cpp/tokenization.rst: New file. |
| * doc/cpp/traditional-lexical-analysis.rst: New file. |
| * doc/cpp/traditional-macros.rst: New file. |
| * doc/cpp/traditional-miscellany.rst: New file. |
| * doc/cpp/traditional-mode.rst: New file. |
| * doc/cpp/traditional-warnings.rst: New file. |
| * doc/cppinternals/conf.py: New file. |
| * doc/cppinternals/copyright.rst: New file. |
| * doc/cppinternals/cppinternals.rst: New file. |
| * doc/cppinternals/cpplib.rst: New file. |
| * doc/cppinternals/files.rst: New file. |
| * doc/cppinternals/index.rst: New file. |
| * doc/cppinternals/indices-and-tables.rst: New file. |
| * doc/cppinternals/internal-representation-of-macros.rst: New file. |
| * doc/cppinternals/just-which-line-number-anyway.rst: New file. |
| * doc/cppinternals/lexing-a-line.rst: New file. |
| * doc/cppinternals/lexing-a-token.rst: New file. |
| * doc/cppinternals/looking-for-a-function-like-macros-opening-parenthesis.rst: New file. |
| * doc/cppinternals/macro-expansion-overview.rst: New file. |
| * doc/cppinternals/marking-tokens-ineligible-for-future-expansion.rst: New file. |
| * doc/cppinternals/multiple-include-optimization.rst: New file. |
| * doc/cppinternals/overview.rst: New file. |
| * doc/cppinternals/representation-of-line-numbers.rst: New file. |
| * doc/cppinternals/scanning-the-replacement-list-for-macros-to-expand.rst: New file. |
| * doc/gcc/binary-compatibility.rst: New file. |
| * doc/gcc/c++-implementation-defined-behavior.rst: New file. |
| * doc/gcc/c-implementation-defined-behavior.rst: New file. |
| * doc/gcc/c-implementation-defined-behavior/architecture.rst: New file. |
| * doc/gcc/c-implementation-defined-behavior/arrays-and-pointers.rst: New file. |
| * doc/gcc/c-implementation-defined-behavior/characters.rst: New file. |
| * doc/gcc/c-implementation-defined-behavior/declarators.rst: New file. |
| * doc/gcc/c-implementation-defined-behavior/environment.rst: New file. |
| * doc/gcc/c-implementation-defined-behavior/floating-point.rst: New file. |
| * doc/gcc/c-implementation-defined-behavior/hints.rst: New file. |
| * doc/gcc/c-implementation-defined-behavior/identifiers.rst: New file. |
| * doc/gcc/c-implementation-defined-behavior/integers.rst: New file. |
| * doc/gcc/c-implementation-defined-behavior/library-functions.rst: New file. |
| * doc/gcc/c-implementation-defined-behavior/locale-specific-behavior.rst: New file. |
| * doc/gcc/c-implementation-defined-behavior/preprocessing-directives.rst: New file. |
| * doc/gcc/c-implementation-defined-behavior/qualifiers.rst: New file. |
| * doc/gcc/c-implementation-defined-behavior/statements.rst: New file. |
| * doc/gcc/c-implementation-defined-behavior/structures-unions-enumerations-and-bit-fields.rst: |
| New file. |
| * doc/gcc/c-implementation-defined-behavior/translation.rst: New file. |
| * doc/gcc/conditionally-supported-behavior.rst: New file. |
| * doc/gcc/conf.py: New file. |
| * doc/gcc/contributing-to-gcc-development.rst: New file. |
| * doc/gcc/contributors-to-gcc.rst: New file. |
| * doc/gcc/copyright.rst: New file. |
| * doc/gcc/exception-handling.rst: New file. |
| * doc/gcc/extensions-to-the-c++-language.rst: New file. |
| * doc/gcc/extensions-to-the-c++-language/backwards-compatibility.rst: New file. |
| * doc/gcc/extensions-to-the-c++-language/c++-concepts.rst: New file. |
| * doc/gcc/extensions-to-the-c++-language/c++-interface-and-implementation-pragmas.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c++-language/c++-specific-variable-function-and-type-attributes.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c++-language/deprecated-features.rst: New file. |
| * doc/gcc/extensions-to-the-c++-language/extracting-the-function-pointer-from-a-bound-pointer-to-member-function.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c++-language/function-multiversioning.rst: New file. |
| * doc/gcc/extensions-to-the-c++-language/restricting-pointer-aliasing.rst: New file. |
| * doc/gcc/extensions-to-the-c++-language/type-traits.rst: New file. |
| * doc/gcc/extensions-to-the-c++-language/vague-linkage.rst: New file. |
| * doc/gcc/extensions-to-the-c++-language/when-is-a-volatile-c++-object-accessed.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c++-language/wheres-the-template.rst: New file. |
| * doc/gcc/extensions-to-the-c-language-family.rst: New file. |
| * doc/gcc/extensions-to-the-c-language-family/128-bit-integers.rst: New file. |
| * doc/gcc/extensions-to-the-c-language-family/additional-floating-types.rst: New file. |
| * doc/gcc/extensions-to-the-c-language-family/alternate-keywords.rst: New file. |
| * doc/gcc/extensions-to-the-c-language-family/an-inline-function-is-as-fast-as-a-macro.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/arithmetic-on-void-and-function-pointers.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/arrays-of-length-zero.rst: New file. |
| * doc/gcc/extensions-to-the-c-language-family/arrays-of-variable-length.rst: New file. |
| * doc/gcc/extensions-to-the-c-language-family/attribute-syntax.rst: New file. |
| * doc/gcc/extensions-to-the-c-language-family/binary-constants-using-the-0b-prefix.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/built-in-functions-for-memory-model-aware-atomic-operations.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/built-in-functions-to-perform-arithmetic-with-overflow-checking.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/c++-style-comments.rst: New file. |
| * doc/gcc/extensions-to-the-c-language-family/case-ranges.rst: New file. |
| * doc/gcc/extensions-to-the-c-language-family/cast-to-a-union-type.rst: New file. |
| * doc/gcc/extensions-to-the-c-language-family/complex-numbers.rst: New file. |
| * doc/gcc/extensions-to-the-c-language-family/compound-literals.rst: New file. |
| * doc/gcc/extensions-to-the-c-language-family/conditionals-with-omitted-operands.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/constructing-function-calls.rst: New file. |
| * doc/gcc/extensions-to-the-c-language-family/decimal-floating-types.rst: New file. |
| * doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/aarch64-function-attributes.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/amd-gcn-function-attributes.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/arc-function-attributes.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/arm-function-attributes.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/avr-function-attributes.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/blackfin-function-attributes.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/bpf-function-attributes.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/c-sky-function-attributes.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/common-function-attributes.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/epiphany-function-attributes.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/h8-300-function-attributes.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/ia-64-function-attributes.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/m32c-function-attributes.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/m32r-d-function-attributes.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/m68k-function-attributes.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/mcore-function-attributes.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/mep-function-attributes.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/microblaze-function-attributes.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/microsoft-windows-function-attributes.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/mips-function-attributes.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/msp430-function-attributes.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/nds32-function-attributes.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/nios-ii-function-attributes.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/nvidia-ptx-function-attributes.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/powerpc-function-attributes.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/risc-v-function-attributes.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/rl78-function-attributes.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/rx-function-attributes.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/s-390-function-attributes.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/sh-function-attributes.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/symbian-os-function-attributes.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/v850-function-attributes.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/visium-function-attributes.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/x86-function-attributes.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/xstormy16-function-attributes.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/designated-initializers.rst: New file. |
| * doc/gcc/extensions-to-the-c-language-family/determining-the-alignment-of-functions-types-or-variables.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/dollar-signs-in-identifier-names.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/double-word-integers.rst: New file. |
| * doc/gcc/extensions-to-the-c-language-family/enumerator-attributes.rst: New file. |
| * doc/gcc/extensions-to-the-c-language-family/fixed-point-types.rst: New file. |
| * doc/gcc/extensions-to-the-c-language-family/format-checks-specific-to-particular-target-machines.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/function-names-as-strings.rst: New file. |
| * doc/gcc/extensions-to-the-c-language-family/getting-the-return-or-frame-address-of-a-function.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/half-precision-floating-point.rst: New file. |
| * doc/gcc/extensions-to-the-c-language-family/hex-floats.rst: New file. |
| * doc/gcc/extensions-to-the-c-language-family/how-to-use-inline-assembly-language-in-c-code.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/incomplete-enum-types.rst: New file. |
| * doc/gcc/extensions-to-the-c-language-family/label-attributes.rst: New file. |
| * doc/gcc/extensions-to-the-c-language-family/labels-as-values.rst: New file. |
| * doc/gcc/extensions-to-the-c-language-family/legacy-sync-built-in-functions-for-atomic-memory-access.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/locally-declared-labels.rst: New file. |
| * doc/gcc/extensions-to-the-c-language-family/macros-with-a-variable-number-of-arguments.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/mixed-declarations-labels-and-code.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/named-address-spaces.rst: New file. |
| * doc/gcc/extensions-to-the-c-language-family/nested-functions.rst: New file. |
| * doc/gcc/extensions-to-the-c-language-family/non-constant-initializers.rst: New file. |
| * doc/gcc/extensions-to-the-c-language-family/non-lvalue-arrays-may-have-subscripts.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/nonlocal-gotos.rst: New file. |
| * doc/gcc/extensions-to-the-c-language-family/object-size-checking-built-in-functions.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/other-built-in-functions-provided-by-gcc.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/pointer-arguments-in-variadic-functions.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/pointers-to-arrays-with-qualifiers-work-as-expected.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/pragmas-accepted-by-gcc.rst: New file. |
| * doc/gcc/extensions-to-the-c-language-family/prototypes-and-old-style-function-definitions.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/referring-to-a-type-with-typeof.rst: New file. |
| * doc/gcc/extensions-to-the-c-language-family/slightly-looser-rules-for-escaped-newlines.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/specifying-attributes-of-types.rst: New file. |
| * doc/gcc/extensions-to-the-c-language-family/specifying-attributes-of-variables.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/statement-attributes.rst: New file. |
| * doc/gcc/extensions-to-the-c-language-family/statements-and-declarations-in-expressions.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/structures-with-no-members.rst: New file. |
| * doc/gcc/extensions-to-the-c-language-family/support-for-offsetof.rst: New file. |
| * doc/gcc/extensions-to-the-c-language-family/target-builtins.rst: New file. |
| * doc/gcc/extensions-to-the-c-language-family/target-builtins/aarch64-built-in-functions.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/target-builtins/alpha-built-in-functions.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/target-builtins/altera-nios-ii-built-in-functions.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/target-builtins/arc-built-in-functions.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/target-builtins/arc-simd-built-in-functions.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/target-builtins/arm-armv8-m-security-extensions.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/target-builtins/arm-c-language-extensions-acle.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/target-builtins/arm-floating-point-status-and-control-intrinsics.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/target-builtins/arm-iwmmxt-built-in-functions.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/target-builtins/avr-built-in-functions.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/target-builtins/basic-powerpc-built-in-functions.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/target-builtins/blackfin-built-in-functions.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/target-builtins/bpf-built-in-functions.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/target-builtins/fr-v-built-in-functions.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/target-builtins/mips-dsp-built-in-functions.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/target-builtins/mips-loongson-built-in-functions.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/target-builtins/mips-paired-single-support.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/target-builtins/mips-simd-architecture-msa-support.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/target-builtins/msp430-built-in-functions.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/target-builtins/nds32-built-in-functions.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/target-builtins/other-mips-built-in-functions.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/target-builtins/picochip-built-in-functions.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/target-builtins/powerpc-altivec-vsx-built-in-functions.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/target-builtins/powerpc-atomic-memory-operation-functions.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/target-builtins/powerpc-hardware-transactional-memory-built-in-functions.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/target-builtins/powerpc-matrix-multiply-assist-built-in-functions.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/target-builtins/pru-built-in-functions.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/target-builtins/risc-v-built-in-functions.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/target-builtins/rx-built-in-functions.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/target-builtins/s-390-system-z-built-in-functions.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/target-builtins/sh-built-in-functions.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/target-builtins/sparc-vis-built-in-functions.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/target-builtins/ti-c6x-built-in-functions.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/target-builtins/x86-built-in-functions.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/target-builtins/x86-control-flow-protection-intrinsics.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/target-builtins/x86-transactional-memory-intrinsics.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/the-character-esc-in-constants.rst: New file. |
| * doc/gcc/extensions-to-the-c-language-family/thread-local-storage.rst: New file. |
| * doc/gcc/extensions-to-the-c-language-family/unnamed-structure-and-union-fields.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/using-vector-instructions-through-built-in-functions.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/when-is-a-volatile-object-accessed.rst: |
| New file. |
| * doc/gcc/extensions-to-the-c-language-family/x86-specific-memory-model-extensions-for-transactional-memory.rst: |
| New file. |
| * doc/gcc/funding.rst: New file. |
| * doc/gcc/gcc-command-options.rst: New file. |
| * doc/gcc/gcc-command-options/c++-modules.rst: New file. |
| * doc/gcc/gcc-command-options/compiling-c++-programs.rst: New file. |
| * doc/gcc/gcc-command-options/description.rst: New file. |
| * doc/gcc/gcc-command-options/environment-variables-affecting-gcc.rst: New file. |
| * doc/gcc/gcc-command-options/gcc-developer-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/aarch64-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/adapteva-epiphany-options.rst: |
| New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/amd-gcn-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/arc-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/arm-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/avr-mmcu.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/avr-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/blackfin-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/c-sky-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/c6x-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/cris-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/darwin-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/dec-alpha-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/ebpf-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/fr30-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/frv-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/ft32-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/gnu-linux-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/h8-300-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/hppa-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/ia-64-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/ibm-rs-6000-and-powerpc-options.rst: |
| New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/lm32-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/loongarch-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/m32c-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/m32r-d-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/m680x0-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/mcore-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/mep-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/microblaze-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/mips-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/mmix-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/mn10300-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/moxie-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/msp430-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/nds32-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/nios-ii-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/nvidia-ptx-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/openrisc-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/options-for-system-v.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/pdp-11-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/picochip-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/powerpc-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/pru-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/risc-v-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/rl78-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/rx-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/s-390-and-zseries-options.rst: |
| New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/score-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/sh-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/solaris-2-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/sparc-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/v850-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/vax-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/visium-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/vms-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/vxworks-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/x86-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/x86-windows-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/xstormy16-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/xtensa-options.rst: New file. |
| * doc/gcc/gcc-command-options/machine-dependent-options/zseries-options.rst: New file. |
| * doc/gcc/gcc-command-options/option-summary.rst: New file. |
| * doc/gcc/gcc-command-options/options-controlling-c++-dialect.rst: New file. |
| * doc/gcc/gcc-command-options/options-controlling-c-dialect.rst: New file. |
| * doc/gcc/gcc-command-options/options-controlling-objective-c-and-objective-c++-dialects.rst: |
| New file. |
| * doc/gcc/gcc-command-options/options-controlling-the-kind-of-output.rst: New file. |
| * doc/gcc/gcc-command-options/options-controlling-the-preprocessor.rst: New file. |
| * doc/gcc/gcc-command-options/options-for-code-generation-conventions.rst: New file. |
| * doc/gcc/gcc-command-options/options-for-debugging-your-program.rst: New file. |
| * doc/gcc/gcc-command-options/options-for-directory-search.rst: New file. |
| * doc/gcc/gcc-command-options/options-for-linking.rst: New file. |
| * doc/gcc/gcc-command-options/options-that-control-optimization.rst: New file. |
| * doc/gcc/gcc-command-options/options-that-control-static-analysis.rst: New file. |
| * doc/gcc/gcc-command-options/options-to-control-diagnostic-messages-formatting.rst: |
| New file. |
| * doc/gcc/gcc-command-options/options-to-request-or-suppress-warnings.rst: New file. |
| * doc/gcc/gcc-command-options/passing-options-to-the-assembler.rst: New file. |
| * doc/gcc/gcc-command-options/program-instrumentation-options.rst: New file. |
| * doc/gcc/gcc-command-options/specifying-subprocesses-and-the-switches-to-pass-to-them.rst: |
| New file. |
| * doc/gcc/gcc-command-options/using-precompiled-headers.rst: New file. |
| * doc/gcc/gcc.rst: New file. |
| * doc/gcc/gcov-dump.rst: New file. |
| * doc/gcc/gcov-tool.rst: New file. |
| * doc/gcc/gcov.rst: New file. |
| * doc/gcc/gcov/brief-description-of-gcov-data-files.rst: New file. |
| * doc/gcc/gcov/data-file-relocation-to-support-cross-profiling.rst: New file. |
| * doc/gcc/gcov/introduction-to-gcov.rst: New file. |
| * doc/gcc/gcov/invoking-gcov.rst: New file. |
| * doc/gcc/gcov/profiling-and-test-coverage-in-freestanding-environments.rst: New file. |
| * doc/gcc/gcov/using-gcov-with-gcc-optimization.rst: New file. |
| * doc/gcc/general-public-license-3.rst: New file. |
| * doc/gcc/gnu-free-documentation-license.rst: New file. |
| * doc/gcc/gnu-objective-c-features.rst: New file. |
| * doc/gcc/gnu-objective-c-features/compatibilityalias.rst: New file. |
| * doc/gcc/gnu-objective-c-features/constant-string-objects.rst: New file. |
| * doc/gcc/gnu-objective-c-features/exceptions.rst: New file. |
| * doc/gcc/gnu-objective-c-features/fast-enumeration.rst: New file. |
| * doc/gcc/gnu-objective-c-features/garbage-collection.rst: New file. |
| * doc/gcc/gnu-objective-c-features/gnu-objective-c-runtime-api.rst: New file. |
| * doc/gcc/gnu-objective-c-features/load-executing-code-before-main.rst: New file. |
| * doc/gcc/gnu-objective-c-features/messaging-with-the-gnu-objective-c-runtime.rst: New file. |
| * doc/gcc/gnu-objective-c-features/synchronization.rst: New file. |
| * doc/gcc/gnu-objective-c-features/type-encoding.rst: New file. |
| * doc/gcc/gnu.rst: New file. |
| * doc/gcc/have-you-found-a-bug.rst: New file. |
| * doc/gcc/how-and-where-to-report-bugs.rst: New file. |
| * doc/gcc/how-to-get-help-with-gcc.rst: New file. |
| * doc/gcc/index.rst: New file. |
| * doc/gcc/indices-and-tables.rst: New file. |
| * doc/gcc/known-causes-of-trouble-with-gcc.rst: New file. |
| * doc/gcc/known-causes-of-trouble-with-gcc/actual-bugs-we-havent-fixed-yet.rst: New file. |
| * doc/gcc/known-causes-of-trouble-with-gcc/certain-changes-we-dont-want-to-make.rst: |
| New file. |
| * doc/gcc/known-causes-of-trouble-with-gcc/common-misunderstandings-with-gnu-c.rst: |
| New file. |
| * doc/gcc/known-causes-of-trouble-with-gcc/disappointments-and-misunderstandings.rst: |
| New file. |
| * doc/gcc/known-causes-of-trouble-with-gcc/fixed-header-files.rst: New file. |
| * doc/gcc/known-causes-of-trouble-with-gcc/incompatibilities-of-gcc.rst: New file. |
| * doc/gcc/known-causes-of-trouble-with-gcc/interoperation.rst: New file. |
| * doc/gcc/known-causes-of-trouble-with-gcc/standard-libraries.rst: New file. |
| * doc/gcc/known-causes-of-trouble-with-gcc/warning-messages-and-error-messages.rst: |
| New file. |
| * doc/gcc/language-standards-supported-by-gcc.rst: New file. |
| * doc/gcc/language-standards-supported-by-gcc/c++-language.rst: New file. |
| * doc/gcc/language-standards-supported-by-gcc/c-language.rst: New file. |
| * doc/gcc/language-standards-supported-by-gcc/d-language.rst: New file. |
| * doc/gcc/language-standards-supported-by-gcc/go-language.rst: New file. |
| * doc/gcc/language-standards-supported-by-gcc/objective-c-and-objective-c++-languages.rst: |
| New file. |
| * doc/gcc/language-standards-supported-by-gcc/references-for-other-languages.rst: New file. |
| * doc/gcc/lto-dump.rst: New file. |
| * doc/gcc/programming-languages-supported-by-gcc.rst: New file. |
| * doc/gcc/reporting-bugs.rst: New file. |
| * doc/gccint/analysis-and-optimization-of-gimple-tuples.rst: New file. |
| * doc/gccint/analysis-and-optimization-of-gimple-tuples/alias-analysis.rst: New file. |
| * doc/gccint/analysis-and-optimization-of-gimple-tuples/annotations.rst: New file. |
| * doc/gccint/analysis-and-optimization-of-gimple-tuples/memory-model.rst: New file. |
| * doc/gccint/analysis-and-optimization-of-gimple-tuples/ssa-operands.rst: New file. |
| * doc/gccint/analysis-and-optimization-of-gimple-tuples/static-single-assignment.rst: |
| New file. |
| * doc/gccint/analysis-and-representation-of-loops.rst: New file. |
| * doc/gccint/analysis-and-representation-of-loops/data-dependency-analysis.rst: New file. |
| * doc/gccint/analysis-and-representation-of-loops/iv-analysis-on-rtl.rst: New file. |
| * doc/gccint/analysis-and-representation-of-loops/loop-closed-ssa-form.rst: New file. |
| * doc/gccint/analysis-and-representation-of-loops/loop-manipulation.rst: New file. |
| * doc/gccint/analysis-and-representation-of-loops/loop-querying.rst: New file. |
| * doc/gccint/analysis-and-representation-of-loops/loop-representation.rst: New file. |
| * doc/gccint/analysis-and-representation-of-loops/number-of-iterations-analysis.rst: |
| New file. |
| * doc/gccint/analysis-and-representation-of-loops/scalar-evolutions.rst: New file. |
| * doc/gccint/analyzer-internals.rst: New file. |
| * doc/gccint/collect2.rst: New file. |
| * doc/gccint/conf.py: New file. |
| * doc/gccint/contributing-to-gcc-development.rst: New file. |
| * doc/gccint/contributors-to-gcc.rst: New file. |
| * doc/gccint/control-flow-graph.rst: New file. |
| * doc/gccint/control-flow-graph/basic-blocks.rst: New file. |
| * doc/gccint/control-flow-graph/edges.rst: New file. |
| * doc/gccint/control-flow-graph/liveness-information.rst: New file. |
| * doc/gccint/control-flow-graph/maintaining-the-cfg.rst: New file. |
| * doc/gccint/control-flow-graph/profile-information.rst: New file. |
| * doc/gccint/copyright.rst: New file. |
| * doc/gccint/debugging-the-analyzer.rst: New file. |
| * doc/gccint/funding.rst: New file. |
| * doc/gccint/gcc-and-portability.rst: New file. |
| * doc/gccint/general-public-license-3.rst: New file. |
| * doc/gccint/generic.rst: New file. |
| * doc/gccint/generic/attributes-in-trees.rst: New file. |
| * doc/gccint/generic/c-and-c++-trees.rst: New file. |
| * doc/gccint/generic/declarations.rst: New file. |
| * doc/gccint/generic/deficiencies.rst: New file. |
| * doc/gccint/generic/expressions.rst: New file. |
| * doc/gccint/generic/functions.rst: New file. |
| * doc/gccint/generic/language-dependent-trees.rst: New file. |
| * doc/gccint/generic/overview.rst: New file. |
| * doc/gccint/generic/statements.rst: New file. |
| * doc/gccint/generic/types.rst: New file. |
| * doc/gccint/gimple-api.rst: New file. |
| * doc/gccint/gimple.rst: New file. |
| * doc/gccint/gimple/adding-a-new-gimple-statement-code.rst: New file. |
| * doc/gccint/gimple/class-hierarchy-of-gimple-statements.rst: New file. |
| * doc/gccint/gimple/exception-handling.rst: New file. |
| * doc/gccint/gimple/gimple-instruction-set.rst: New file. |
| * doc/gccint/gimple/gimple-sequences.rst: New file. |
| * doc/gccint/gimple/manipulating-gimple-statements.rst: New file. |
| * doc/gccint/gimple/operands.rst: New file. |
| * doc/gccint/gimple/sequence-iterators.rst: New file. |
| * doc/gccint/gimple/statement-and-operand-traversals.rst: New file. |
| * doc/gccint/gimple/temporaries.rst: New file. |
| * doc/gccint/gimple/tuple-representation.rst: New file. |
| * doc/gccint/gimple/tuple-specific-accessors.rst: New file. |
| * doc/gccint/gimple/tuple-specific-accessors/gimpleasm.rst: New file. |
| * doc/gccint/gimple/tuple-specific-accessors/gimpleassign.rst: New file. |
| * doc/gccint/gimple/tuple-specific-accessors/gimplebind.rst: New file. |
| * doc/gccint/gimple/tuple-specific-accessors/gimplecall.rst: New file. |
| * doc/gccint/gimple/tuple-specific-accessors/gimplecatch.rst: New file. |
| * doc/gccint/gimple/tuple-specific-accessors/gimplecond.rst: New file. |
| * doc/gccint/gimple/tuple-specific-accessors/gimpledebug.rst: New file. |
| * doc/gccint/gimple/tuple-specific-accessors/gimpleehfilter.rst: New file. |
| * doc/gccint/gimple/tuple-specific-accessors/gimplegoto.rst: New file. |
| * doc/gccint/gimple/tuple-specific-accessors/gimplelabel.rst: New file. |
| * doc/gccint/gimple/tuple-specific-accessors/gimplenop.rst: New file. |
| * doc/gccint/gimple/tuple-specific-accessors/gimpleompatomicload.rst: New file. |
| * doc/gccint/gimple/tuple-specific-accessors/gimpleompatomicstore.rst: New file. |
| * doc/gccint/gimple/tuple-specific-accessors/gimpleompcontinue.rst: New file. |
| * doc/gccint/gimple/tuple-specific-accessors/gimpleompcritical.rst: New file. |
| * doc/gccint/gimple/tuple-specific-accessors/gimpleompfor.rst: New file. |
| * doc/gccint/gimple/tuple-specific-accessors/gimpleompmaster.rst: New file. |
| * doc/gccint/gimple/tuple-specific-accessors/gimpleompordered.rst: New file. |
| * doc/gccint/gimple/tuple-specific-accessors/gimpleompparallel.rst: New file. |
| * doc/gccint/gimple/tuple-specific-accessors/gimpleompreturn.rst: New file. |
| * doc/gccint/gimple/tuple-specific-accessors/gimpleompsection.rst: New file. |
| * doc/gccint/gimple/tuple-specific-accessors/gimpleompsections.rst: New file. |
| * doc/gccint/gimple/tuple-specific-accessors/gimpleompsingle.rst: New file. |
| * doc/gccint/gimple/tuple-specific-accessors/gimplephi.rst: New file. |
| * doc/gccint/gimple/tuple-specific-accessors/gimpleresx.rst: New file. |
| * doc/gccint/gimple/tuple-specific-accessors/gimplereturn.rst: New file. |
| * doc/gccint/gimple/tuple-specific-accessors/gimpleswitch.rst: New file. |
| * doc/gccint/gimple/tuple-specific-accessors/gimpletry.rst: New file. |
| * doc/gccint/gimple/tuple-specific-accessors/gimplewithcleanupexpr.rst: New file. |
| * doc/gccint/gnu-free-documentation-license.rst: New file. |
| * doc/gccint/guidelines-for-diagnostics.rst: New file. |
| * doc/gccint/guidelines-for-options.rst: New file. |
| * doc/gccint/host-common.rst: New file. |
| * doc/gccint/host-configuration.rst: New file. |
| * doc/gccint/host-filesystem.rst: New file. |
| * doc/gccint/host-makefile-fragments.rst: New file. |
| * doc/gccint/host-misc.rst: New file. |
| * doc/gccint/index.rst: New file. |
| * doc/gccint/indices-and-tables.rst: New file. |
| * doc/gccint/interfacing-to-gcc-output.rst: New file. |
| * doc/gccint/introduction.rst: New file. |
| * doc/gccint/language-front-ends-in-gcc.rst: New file. |
| * doc/gccint/link-time-optimization.rst: New file. |
| * doc/gccint/link-time-optimization/design-overview.rst: New file. |
| * doc/gccint/link-time-optimization/internal-flags-controlling-lto1.rst: New file. |
| * doc/gccint/link-time-optimization/lto-file-sections.rst: New file. |
| * doc/gccint/link-time-optimization/using-summary-information-in-ipa-passes.rst: New file. |
| * doc/gccint/link-time-optimization/whole-program-assumptions-linker-plugin-and-symbol-visibilities.rst: |
| New file. |
| * doc/gccint/machine-descriptions.rst: New file. |
| * doc/gccint/machine-descriptions/c-statements-for-assembler-output.rst: New file. |
| * doc/gccint/machine-descriptions/canonicalization-of-instructions.rst: New file. |
| * doc/gccint/machine-descriptions/conditional-execution.rst: New file. |
| * doc/gccint/machine-descriptions/constant-definitions.rst: New file. |
| * doc/gccint/machine-descriptions/defining-how-to-split-instructions.rst: New file. |
| * doc/gccint/machine-descriptions/defining-jump-instruction-patterns.rst: New file. |
| * doc/gccint/machine-descriptions/defining-looping-instruction-patterns.rst: New file. |
| * doc/gccint/machine-descriptions/defining-rtl-sequences-for-code-generation.rst: New file. |
| * doc/gccint/machine-descriptions/everything-about-instruction-patterns.rst: New file. |
| * doc/gccint/machine-descriptions/example-of-defineinsn.rst: New file. |
| * doc/gccint/machine-descriptions/including-patterns-in-machine-descriptions.rst: New file. |
| * doc/gccint/machine-descriptions/instruction-attributes.rst: New file. |
| * doc/gccint/machine-descriptions/interdependence-of-patterns.rst: New file. |
| * doc/gccint/machine-descriptions/iterators.rst: New file. |
| * doc/gccint/machine-descriptions/machine-specific-peephole-optimizers.rst: New file. |
| * doc/gccint/machine-descriptions/operand-constraints.rst: New file. |
| * doc/gccint/machine-descriptions/output-templates-and-operand-substitution.rst: New file. |
| * doc/gccint/machine-descriptions/overview-of-how-the-machine-description-is-used.rst: |
| New file. |
| * doc/gccint/machine-descriptions/predicates.rst: New file. |
| * doc/gccint/machine-descriptions/rtl-template.rst: New file. |
| * doc/gccint/machine-descriptions/rtl-templates-transformations.rst: New file. |
| * doc/gccint/machine-descriptions/standard-pattern-names-for-generation.rst: New file. |
| * doc/gccint/machine-descriptions/when-the-order-of-patterns-matters.rst: New file. |
| * doc/gccint/makefile-fragments.rst: New file. |
| * doc/gccint/match-and-simplify.rst: New file. |
| * doc/gccint/memory-management-and-type-information.rst: New file. |
| * doc/gccint/memory-management-and-type-information/how-to-invoke-the-garbage-collector.rst: |
| New file. |
| * doc/gccint/memory-management-and-type-information/marking-roots-for-the-garbage-collector.rst: |
| New file. |
| * doc/gccint/memory-management-and-type-information/source-files-containing-type-information.rst: |
| New file. |
| * doc/gccint/memory-management-and-type-information/support-for-inheritance.rst: New file. |
| * doc/gccint/memory-management-and-type-information/support-for-user-provided-gc-marking-routines.rst: |
| New file. |
| * doc/gccint/memory-management-and-type-information/the-inside-of-a-gty.rst: New file. |
| * doc/gccint/memory-management-and-type-information/troubleshooting-the-garbage-collector.rst: |
| New file. |
| * doc/gccint/option-file-format.rst: New file. |
| * doc/gccint/option-properties.rst: New file. |
| * doc/gccint/option-specification-files.rst: New file. |
| * doc/gccint/passes-and-files-of-the-compiler.rst: New file. |
| * doc/gccint/passes-and-files-of-the-compiler/gimplification-pass.rst: New file. |
| * doc/gccint/passes-and-files-of-the-compiler/inter-procedural-optimization-passes.rst: |
| New file. |
| * doc/gccint/passes-and-files-of-the-compiler/optimization-info.rst: New file. |
| * doc/gccint/passes-and-files-of-the-compiler/parsing-pass.rst: New file. |
| * doc/gccint/passes-and-files-of-the-compiler/pass-manager.rst: New file. |
| * doc/gccint/passes-and-files-of-the-compiler/rtl-passes.rst: New file. |
| * doc/gccint/passes-and-files-of-the-compiler/tree-ssa-passes.rst: New file. |
| * doc/gccint/plugins.rst: New file. |
| * doc/gccint/plugins/building-gcc-plugins.rst: New file. |
| * doc/gccint/plugins/controlling-which-passes-are-being-run.rst: New file. |
| * doc/gccint/plugins/giving-information-about-a-plugin.rst: New file. |
| * doc/gccint/plugins/interacting-with-the-gcc-garbage-collector.rst: New file. |
| * doc/gccint/plugins/interacting-with-the-pass-manager.rst: New file. |
| * doc/gccint/plugins/keeping-track-of-available-passes.rst: New file. |
| * doc/gccint/plugins/loading-plugins.rst: New file. |
| * doc/gccint/plugins/plugin-api.rst: New file. |
| * doc/gccint/plugins/recording-information-about-pass-execution.rst: New file. |
| * doc/gccint/plugins/registering-custom-attributes-or-pragmas.rst: New file. |
| * doc/gccint/rtl-representation.rst: New file. |
| * doc/gccint/rtl-representation/access-to-operands.rst: New file. |
| * doc/gccint/rtl-representation/access-to-special-operands.rst: New file. |
| * doc/gccint/rtl-representation/assembler-instructions-as-expressions.rst: New file. |
| * doc/gccint/rtl-representation/bit-fields.rst: New file. |
| * doc/gccint/rtl-representation/comparison-operations.rst: New file. |
| * doc/gccint/rtl-representation/constant-expression-types.rst: New file. |
| * doc/gccint/rtl-representation/conversions.rst: New file. |
| * doc/gccint/rtl-representation/declarations.rst: New file. |
| * doc/gccint/rtl-representation/embedded-side-effects-on-addresses.rst: New file. |
| * doc/gccint/rtl-representation/flags-in-an-rtl-expression.rst: New file. |
| * doc/gccint/rtl-representation/insns.rst: New file. |
| * doc/gccint/rtl-representation/machine-modes.rst: New file. |
| * doc/gccint/rtl-representation/on-the-side-ssa-form-for-rtl.rst: New file. |
| * doc/gccint/rtl-representation/reading-rtl.rst: New file. |
| * doc/gccint/rtl-representation/registers-and-memory.rst: New file. |
| * doc/gccint/rtl-representation/rtl-classes-and-formats.rst: New file. |
| * doc/gccint/rtl-representation/rtl-expressions-for-arithmetic.rst: New file. |
| * doc/gccint/rtl-representation/rtl-object-types.rst: New file. |
| * doc/gccint/rtl-representation/rtl-representation-of-function-call-insns.rst: New file. |
| * doc/gccint/rtl-representation/side-effect-expressions.rst: New file. |
| * doc/gccint/rtl-representation/structure-sharing-assumptions.rst: New file. |
| * doc/gccint/rtl-representation/variable-location-debug-information-in-rtl.rst: New file. |
| * doc/gccint/rtl-representation/vector-operations.rst: New file. |
| * doc/gccint/sizes-and-offsets-as-runtime-invariants.rst: New file. |
| * doc/gccint/sizes-and-offsets-as-runtime-invariants/alignment-of-polyints.rst: New file. |
| * doc/gccint/sizes-and-offsets-as-runtime-invariants/arithmetic-on-polyints.rst: New file. |
| * doc/gccint/sizes-and-offsets-as-runtime-invariants/comparisons-involving-polyint.rst: |
| New file. |
| * doc/gccint/sizes-and-offsets-as-runtime-invariants/computing-bounds-on-polyints.rst: |
| New file. |
| * doc/gccint/sizes-and-offsets-as-runtime-invariants/consequences-of-using-polyint.rst: |
| New file. |
| * doc/gccint/sizes-and-offsets-as-runtime-invariants/converting-polyints.rst: New file. |
| * doc/gccint/sizes-and-offsets-as-runtime-invariants/guidelines-for-using-polyint.rst: |
| New file. |
| * doc/gccint/sizes-and-offsets-as-runtime-invariants/miscellaneous-polyint-routines.rst: |
| New file. |
| * doc/gccint/sizes-and-offsets-as-runtime-invariants/overview-of-polyint.rst: New file. |
| * doc/gccint/source-tree-structure-and-build-system.rst: New file. |
| * doc/gccint/source-tree-structure-and-build-system/configure-terms-and-history.rst: |
| New file. |
| * doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory.rst: New file. |
| * doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/anatomy-of-a-language-front-end.rst: |
| New file. |
| * doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/anatomy-of-a-target-back-end.rst: |
| New file. |
| * doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/build-system-in-the-gcc-directory.rst: |
| New file. |
| * doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/building-documentation.rst: |
| New file. |
| * doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/configuration-in-the-gcc-directory.rst: |
| New file. |
| * doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/headers-installed-by-gcc.rst: |
| New file. |
| * doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/library-source-files-and-headers-under-the-gcc-directory.rst: |
| New file. |
| * doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/makefile-targets.rst: |
| New file. |
| * doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/subdirectories-of-gcc.rst: |
| New file. |
| * doc/gccint/source-tree-structure-and-build-system/top-level-source-directory.rst: |
| New file. |
| * doc/gccint/standard-header-file-directories.rst: New file. |
| * doc/gccint/static-analyzer.rst: New file. |
| * doc/gccint/target-macros.rst: New file. |
| * doc/gccint/target-macros/adding-support-for-named-address-spaces.rst: New file. |
| * doc/gccint/target-macros/addressing-modes.rst: New file. |
| * doc/gccint/target-macros/adjusting-the-instruction-scheduler.rst: New file. |
| * doc/gccint/target-macros/anchored-addresses.rst: New file. |
| * doc/gccint/target-macros/c++-abi-parameters.rst: New file. |
| * doc/gccint/target-macros/condition-code-status.rst: New file. |
| * doc/gccint/target-macros/controlling-debugging-information-format.rst: New file. |
| * doc/gccint/target-macros/controlling-the-compilation-driver-gcc.rst: New file. |
| * doc/gccint/target-macros/cross-compilation-and-floating-point.rst: New file. |
| * doc/gccint/target-macros/d-abi-parameters.rst: New file. |
| * doc/gccint/target-macros/defining-coprocessor-specifics-for-mips-targets.rst: New file. |
| * doc/gccint/target-macros/defining-data-structures-for-per-function-information.rst: |
| New file. |
| * doc/gccint/target-macros/defining-target-specific-uses-of-attribute.rst: New file. |
| * doc/gccint/target-macros/defining-the-output-assembler-language.rst: New file. |
| * doc/gccint/target-macros/defining-the-output-assembler-language/assembler-commands-for-alignment.rst: |
| New file. |
| * doc/gccint/target-macros/defining-the-output-assembler-language/assembler-commands-for-exception-regions.rst: |
| New file. |
| * doc/gccint/target-macros/defining-the-output-assembler-language/how-initialization-functions-are-handled.rst: |
| New file. |
| * doc/gccint/target-macros/defining-the-output-assembler-language/macros-controlling-initialization-routines.rst: |
| New file. |
| * doc/gccint/target-macros/defining-the-output-assembler-language/output-and-generation-of-labels.rst: |
| New file. |
| * doc/gccint/target-macros/defining-the-output-assembler-language/output-of-assembler-instructions.rst: |
| New file. |
| * doc/gccint/target-macros/defining-the-output-assembler-language/output-of-data.rst: |
| New file. |
| * doc/gccint/target-macros/defining-the-output-assembler-language/output-of-dispatch-tables.rst: |
| New file. |
| * doc/gccint/target-macros/defining-the-output-assembler-language/output-of-uninitialized-variables.rst: |
| New file. |
| * doc/gccint/target-macros/defining-the-output-assembler-language/the-overall-framework-of-an-assembler-file.rst: |
| New file. |
| * doc/gccint/target-macros/describing-relative-costs-of-operations.rst: New file. |
| * doc/gccint/target-macros/dividing-the-output-into-sections-texts-data.rst: New file. |
| * doc/gccint/target-macros/emulating-tls.rst: New file. |
| * doc/gccint/target-macros/implementing-the-varargs-macros.rst: New file. |
| * doc/gccint/target-macros/implicit-calls-to-library-routines.rst: New file. |
| * doc/gccint/target-macros/layout-of-source-language-data-types.rst: New file. |
| * doc/gccint/target-macros/miscellaneous-parameters.rst: New file. |
| * doc/gccint/target-macros/mode-switching-instructions.rst: New file. |
| * doc/gccint/target-macros/parameters-for-precompiled-header-validity-checking.rst: |
| New file. |
| * doc/gccint/target-macros/position-independent-code.rst: New file. |
| * doc/gccint/target-macros/register-classes.rst: New file. |
| * doc/gccint/target-macros/register-usage.rst: New file. |
| * doc/gccint/target-macros/run-time-target-specification.rst: New file. |
| * doc/gccint/target-macros/stack-layout-and-calling-conventions.rst: New file. |
| * doc/gccint/target-macros/stack-layout-and-calling-conventions/basic-stack-layout.rst: |
| New file. |
| * doc/gccint/target-macros/stack-layout-and-calling-conventions/caller-saves-register-allocation.rst: |
| New file. |
| * doc/gccint/target-macros/stack-layout-and-calling-conventions/eliminating-frame-pointer-and-arg-pointer.rst: |
| New file. |
| * doc/gccint/target-macros/stack-layout-and-calling-conventions/exception-handling-support.rst: |
| New file. |
| * doc/gccint/target-macros/stack-layout-and-calling-conventions/function-entry-and-exit.rst: |
| New file. |
| * doc/gccint/target-macros/stack-layout-and-calling-conventions/generating-code-for-profiling.rst: |
| New file. |
| * doc/gccint/target-macros/stack-layout-and-calling-conventions/how-large-values-are-returned.rst: |
| New file. |
| * doc/gccint/target-macros/stack-layout-and-calling-conventions/how-scalar-function-values-are-returned.rst: |
| New file. |
| * doc/gccint/target-macros/stack-layout-and-calling-conventions/miscellaneous-register-hooks.rst: |
| New file. |
| * doc/gccint/target-macros/stack-layout-and-calling-conventions/passing-arguments-in-registers.rst: |
| New file. |
| * doc/gccint/target-macros/stack-layout-and-calling-conventions/passing-function-arguments-on-the-stack.rst: |
| New file. |
| * doc/gccint/target-macros/stack-layout-and-calling-conventions/permitting-tail-calls.rst: |
| New file. |
| * doc/gccint/target-macros/stack-layout-and-calling-conventions/registers-that-address-the-stack-frame.rst: |
| New file. |
| * doc/gccint/target-macros/stack-layout-and-calling-conventions/shrink-wrapping-separate-components.rst: |
| New file. |
| * doc/gccint/target-macros/stack-layout-and-calling-conventions/specifying-how-stack-checking-is-done.rst: |
| New file. |
| * doc/gccint/target-macros/stack-layout-and-calling-conventions/stack-smashing-protection.rst: |
| New file. |
| * doc/gccint/target-macros/storage-layout.rst: New file. |
| * doc/gccint/target-macros/support-for-nested-functions.rst: New file. |
| * doc/gccint/target-macros/the-global-targetm-variable.rst: New file. |
| * doc/gccint/target-makefile-fragments.rst: New file. |
| * doc/gccint/testsuites.rst: New test. |
| * doc/gccint/testsuites/ada-language-testsuites.rst: New test. |
| * doc/gccint/testsuites/c-language-testsuites.rst: New test. |
| * doc/gccint/testsuites/directives-used-within-dejagnu-tests.rst: New test. |
| * doc/gccint/testsuites/directives-used-within-dejagnu-tests/commands-for-use-in-dg-final.rst: |
| New test. |
| * doc/gccint/testsuites/directives-used-within-dejagnu-tests/features-for-dg-add-options.rst: |
| New test. |
| * doc/gccint/testsuites/directives-used-within-dejagnu-tests/keywords-describing-target-attributes.rst: |
| New test. |
| * doc/gccint/testsuites/directives-used-within-dejagnu-tests/selecting-targets-to-which-a-test-applies.rst: |
| New test. |
| * doc/gccint/testsuites/directives-used-within-dejagnu-tests/syntax-and-descriptions-of-test-directives.rst: |
| New test. |
| * doc/gccint/testsuites/directives-used-within-dejagnu-tests/variants-of-dg-require-support.rst: |
| New test. |
| * doc/gccint/testsuites/idioms-used-in-testsuite-code.rst: New test. |
| * doc/gccint/testsuites/support-for-testing-binary-compatibility.rst: New test. |
| * doc/gccint/testsuites/support-for-testing-gcov.rst: New test. |
| * doc/gccint/testsuites/support-for-testing-gimple-passes.rst: New test. |
| * doc/gccint/testsuites/support-for-testing-link-time-optimizations.rst: New test. |
|