https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111370

--- Comment #2 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Tamar Christina <tnfch...@gcc.gnu.org>:

https://gcc.gnu.org/g:4b6da8e7bdb93d9bca6291157db1c936ac56e7af

commit r14-5671-g4b6da8e7bdb93d9bca6291157db1c936ac56e7af
Author: Tamar Christina <tamar.christ...@arm.com>
Date:   Tue Nov 21 13:19:36 2023 +0000

    AArch64: Refactor costs models to different files.

    This patch series attempts to move the generic cost model in AArch64 to a
new
    and modern generic standard.  The current standard is quite old and
generates
    very suboptimal code out of the box for user of GCC.

    The goal is for the new cost model to be beneficial on newer/current Arm
    Microarchitectures while not being too negative for older ones.

    It does not change any core specific optimization.  The final changes
reflect
    both performance optimizations and size optimizations.

    This first patch just re-organizes the cost structures to their own files.
    The AArch64.cc file has gotten very big and it's hard to follow.

    No functional changes are expected from this change.  Note that since all
the
    structures have private visibility I've put them in header files instead.

    gcc/ChangeLog:

            PR target/111370
            * config/aarch64/aarch64.cc (generic_addrcost_table,
            exynosm1_addrcost_table,
            xgene1_addrcost_table,
            thunderx2t99_addrcost_table,
            thunderx3t110_addrcost_table,
            tsv110_addrcost_table,
            qdf24xx_addrcost_table,
            a64fx_addrcost_table,
            neoversev1_addrcost_table,
            neoversen2_addrcost_table,
            neoversev2_addrcost_table,
            generic_regmove_cost,
            cortexa57_regmove_cost,
            cortexa53_regmove_cost,
            exynosm1_regmove_cost,
            thunderx_regmove_cost,
            xgene1_regmove_cost,
            qdf24xx_regmove_cost,
            thunderx2t99_regmove_cost,
            thunderx3t110_regmove_cost,
            tsv110_regmove_cost,
            a64fx_regmove_cost,
            neoversen2_regmove_cost,
            neoversev1_regmove_cost,
            neoversev2_regmove_cost,
            generic_vector_cost,
            a64fx_vector_cost,
            qdf24xx_vector_cost,
            thunderx_vector_cost,
            tsv110_vector_cost,
            cortexa57_vector_cost,
            exynosm1_vector_cost,
            xgene1_vector_cost,
            thunderx2t99_vector_cost,
            thunderx3t110_vector_cost,
            ampere1_vector_cost,
            generic_branch_cost,
            generic_tunings,
            cortexa35_tunings,
            cortexa53_tunings,
            cortexa57_tunings,
            cortexa72_tunings,
            cortexa73_tunings,
            exynosm1_tunings,
            thunderxt88_tunings,
            thunderx_tunings,
            tsv110_tunings,
            xgene1_tunings,
            emag_tunings,
            qdf24xx_tunings,
            saphira_tunings,
            thunderx2t99_tunings,
            thunderx3t110_tunings,
            neoversen1_tunings,
            ampere1_tunings,
            ampere1a_tunings,
            neoversev1_vector_cost,
            neoversev1_tunings,
            neoverse512tvb_vector_cost,
            neoverse512tvb_tunings,
            neoversen2_vector_cost,
            neoversen2_tunings,
            neoversev2_vector_cost,
            neoversev2_tunings
            a64fx_tunings): Split into own files.
            * config/aarch64/tuning_models/a64fx.h: New file.
            * config/aarch64/tuning_models/ampere1.h: New file.
            * config/aarch64/tuning_models/ampere1a.h: New file.
            * config/aarch64/tuning_models/cortexa35.h: New file.
            * config/aarch64/tuning_models/cortexa53.h: New file.
            * config/aarch64/tuning_models/cortexa57.h: New file.
            * config/aarch64/tuning_models/cortexa72.h: New file.
            * config/aarch64/tuning_models/cortexa73.h: New file.
            * config/aarch64/tuning_models/emag.h: New file.
            * config/aarch64/tuning_models/exynosm1.h: New file.
            * config/aarch64/tuning_models/generic.h: New file.
            * config/aarch64/tuning_models/neoverse512tvb.h: New file.
            * config/aarch64/tuning_models/neoversen1.h: New file.
            * config/aarch64/tuning_models/neoversen2.h: New file.
            * config/aarch64/tuning_models/neoversev1.h: New file.
            * config/aarch64/tuning_models/neoversev2.h: New file.
            * config/aarch64/tuning_models/qdf24xx.h: New file.
            * config/aarch64/tuning_models/saphira.h: New file.
            * config/aarch64/tuning_models/thunderx.h: New file.
            * config/aarch64/tuning_models/thunderx2t99.h: New file.
            * config/aarch64/tuning_models/thunderx3t110.h: New file.
            * config/aarch64/tuning_models/thunderxt88.h: New file.
            * config/aarch64/tuning_models/tsv110.h: New file.
            * config/aarch64/tuning_models/xgene1.h: New file.

Reply via email to