[Bug target/103275] [11/12 Regression] don't generate kmov with IE model relocations

cvs-commit at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Mon Nov 22 03:36:48 GMT 2021


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

--- Comment #15 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:b5844cb0bc8c7d9be2ff1ecded249cad82b9b71c

commit r12-5445-gb5844cb0bc8c7d9be2ff1ecded249cad82b9b71c
Author: liuhongt <hongtao.liu@intel.com>
Date:   Wed Nov 17 15:48:37 2021 +0800

    Don't allow mask/sse/mmx mov in TLS code sequences.

    As change in assembler, refer to [1], this patch disallow mask/sse/mmx
    mov in TLS code sequences which require integer MOV instructions.

    [1]
https://sourceware.org/git/?p=binutils-gdb.git;a=patch;h=d7e3e627027fcf37d63e284144fe27ff4eba36b5

    gcc/ChangeLog:

            PR target/103275
            * config/i386/constraints.md (Bk): New
            define_memory_constraint.
            * config/i386/i386-protos.h (ix86_gpr_tls_address_pattern_p):
            Declare.
            * config/i386/i386.c (ix86_gpr_tls_address_pattern_p): New
            function.
            * config/i386/i386.md (*movsi_internal): Don't allow
            mask/sse/mmx move in TLS code sequences.
            (*movdi_internal): Ditto.

    gcc/testsuite/ChangeLog:

            * gcc.target/i386/pr103275.c: New test.


More information about the Gcc-bugs mailing list