Landing: 475e9efffaf8

Project / Subsystem

gcc / i386

Date

2026-08-11

Author

Hongyu Wang

Commit

475e9efffaf8de781d7e17b687faf1807e104b01

Source

github

Perf win

No

Breaking

No

All attributes

project
gcc
subsystem
i386
patch_id
—
commit_hash
475e9efffaf8de781d7e17b687faf1807e104b01
source_type
github
headline
i386: Disallow APX EGPR in FMA4/XOP instructions
tldr
Disallows use of extended general-purpose registers (EGPRs) in FMA4/XOP instructions on i386 to prevent unencodable instructions.
author
Hongyu Wang
outcome
committed
performance_win
false
breaking_change
false
series_id
—
series_parts
[]
tags
  • • i386
  • • optimization
  • • encoding
discussion_id_link
—
bugzilla_pr
—
date
2026-08-11T00:00:00.000Z

This commit prevents the use of APX EGPRs with FMA4 and XOP instructions on i386. These instructions are VEX-only and cannot be promoted to EVEX form. The change modifies instruction patterns to use a ‘jm’ constraint instead of ‘m’ and adds the ‘gpr16’ attribute to the address, thereby avoiding EGPR usage in specific scenarios and resolving an unencodable instruction issue.