Landing: 086b41669e64

Project / Subsystem

gcc / x86

Date

2026-08-20

Author

H.J. Lu

Commit

086b41669e64fda333cd91144070314912ae4ae9

Source

github

Perf win

Yes

Breaking

No

All attributes

project
gcc
subsystem
x86
patch_id
—
commit_hash
086b41669e64fda333cd91144070314912ae4ae9
source_type
github
headline
Allow minus ones and constants for MASK/SSE registers.
tldr
Enables direct loading of -1 into mask registers and constants into SSE registers on x86.
author
H.J. Lu
outcome
committed
performance_win
true
breaking_change
false
series_id
—
series_parts
[]
tags
  • • x86
  • • optimization
  • • AVX512
discussion_id_link
—
bugzilla_pr
—
date
2026-08-20T00:00:00.000Z

The x86 backend now allows direct loading of minus ones into MASK registers and standard constants into SSE registers. This change replaces memory loads with more efficient register operations, such as using kxnor %k0, %k0, %k0 to load -1 into a mask register, which can improve performance for certain instruction sequences. Several test cases have been added to verify this functionality.