llvm/llvm-project

[X86] Recognise VPMADD52L/H patterns on AVX512IFMA/AVXIFMA targets

Open

#153,787 opened on Aug 15, 2025

View on GitHub
 (7 comments) (0 reactions) (1 assignee)C++ (10,782 forks)batch import
backend:X86good first issuemissed-optimization

Repository metrics

Stars
 (26,378 stars)
PR merge metrics
 (Avg merge 1d 2h) (1,000 merged PRs in 30d)

Description

AVX512IFMA/AVXIFMA targets should be able to fold vXi64 mul-add patterns assuming the multiplicands are known to be u52 integers

X86ISD::VPMADD52L patterns can be matched for (X * Y) + Z if the upper 12 bits of X, Y AND (X * Y) are all known zero

X86ISD::VPMADD52H patterns are trickier as we extract the upper 52 bits of the (X * Y) 104-bit mulu extended result, but at least basic matching might be achievable

Contributor guide