[Bug target/71453] Spills to vector registers are sub-optimal.

cvs-commit at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Fri Aug 21 04:50:02 GMT 2020


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

--- Comment #6 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by hongtao Liu <liuhongt@gcc.gnu.org>:

https://gcc.gnu.org/g:00cb3494cab397b5655ab42fd69310883c12137c

commit r11-2793-g00cb3494cab397b5655ab42fd69310883c12137c
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Tue Sep 3 14:41:02 2019 -0700

    x86: Add cost model for operation of mask registers.

    gcc/

            PR target/71453
            * config/i386/i386.h (struct processor_costs): Add member
            mask_to_integer, integer_to_mask, mask_load[3], mask_store[3],
            mask_move.
            * config/i386/x86-tune-costs.h (ix86_size_cost, i386_cost,
            i386_cost, pentium_cost, lakemont_cost, pentiumpro_cost,
            geode_cost, k6_cost, athlon_cost, k8_cost, amdfam10_cost,
            bdver_cost, znver1_cost, znver2_cost, skylake_cost,
            btver1_cost, btver2_cost, pentium4_cost, nocona_cost,
            atom_cost, slm_cost, intel_cost, generic_cost, core_cost):
            Initialize mask_load[3], mask_store[3], mask_move,
            integer_to_mask, mask_to_integer for all target costs.
            * config/i386/i386.c (ix86_register_move_cost): Using cost
            model of mask registers.
            (inline_memory_move_cost): Ditto.
            (ix86_register_move_cost): Ditto.


More information about the Gcc-bugs mailing list