]> git.ipfire.org Git - thirdparty/gcc.git/commit
[APX] i386: Fix illegal broadcast instruction generated by intrinsic
authorHongyu Wang <hongyu.wang@intel.com>
Fri, 9 Jan 2026 08:34:55 +0000 (16:34 +0800)
committerHongyu Wang <hongyu.wang@intel.com>
Fri, 23 Jan 2026 03:22:36 +0000 (11:22 +0800)
commitbb4fbc0b2d3aed25114ac076b878b9eb82ea6712
treee7f10b947564725827a83048e0e1249016f76b39
parent2d626c4eb68a33a13a3d497364c493f3b71fb9e7
[APX] i386: Fix illegal broadcast instruction generated by intrinsic

For _mm256_broadcastsi128_si256 call with -mapxf enabled it may produce
illegal vbroadcasti128 with egpr under high register pressure. Restrict
the pattern to use "jm" and gpr16 for avx2 alternative.

gcc/ChangeLog:

* config/i386/sse.md (avx2_vbroadcasti128_<mode>): Constraint
alternative 0 with jm and add gpr16 attr to avoid egpr usage.

gcc/testsuite/ChangeLog:

* gcc.target/i386/apx-broadcast.c: New test.
gcc/config/i386/sse.md
gcc/testsuite/gcc.target/i386/apx-broadcast.c [new file with mode: 0644]