[Bug target/99744] __attribute__ ((target("general-regs-only"))) doesn't work with GPR intrinsics

poulhies at adacore dot com gcc-bugzilla@gcc.gnu.org
Tue Mar 15 10:56:20 GMT 2022


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

Marc Poulhiès <poulhies at adacore dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |poulhies at adacore dot com

--- Comment #16 from Marc Poulhiès <poulhies at adacore dot com> ---
Hi!
I'm seeing regressions in pr99744-{1,2,4,5}.c for an i586 target where MMX/SSE
are not enabled.

IIUC, your patch inserts "general-regs-only" in x86gprintrin.h if MMX or SSE is
enabled and makes the inlining of the calls in theses tests (using
target("general-regs-only")) be compatible with the intrinsics defined in the
header.

In my case, MMX/SSE being both disabled, the calls can't be inlined (mismatch
of target options).

Would that still be correct to change the

     #if defined __MMX__ || defined __SSE__

by

     #if defined __i686__

?


More information about the Gcc-bugs mailing list