llvm/llvm-project

[X86] SimplifyDemandedBitsForTargetNode - add X86ISD::BZHI handling

Open

#177.369 geöffnet am 22. Jan. 2026

Auf GitHub ansehen
 (5 Kommentare) (1 Reaktion) (1 zugewiesene Person)C++ (10.782 Forks)batch import
backend:X86good first issue

Repository-Metriken

Stars
 (26.378 Stars)
PR-Merge-Metriken
 (Durchschn. Merge 1T 2h) (1.000 gemergte PRs in 30 T)

Beschreibung

  • Only the bottom 8 bits of the mask (second operand) are required
  • Based off the known bits of the mask, we can tweak the src DemandedBits - as well as the incoming DemandedBits mask, if the 8 bit mask is known to be less than bitwidth (getMaxValue.ult(BitWidth)) then bits above getMaxValue are not demanded.

Supporting tests can be added to combine-bzhi.ll

See also #177347 and #177364 for refs

https://www.intel.com/content/www/us/en/docs/intrinsics-guide/index.html#text=bzhi&ig_expand=634,633,5,634

Contributor Guide