llvm/llvm-project

AMDGPU should implement TargetLowering::hasAndNot

Open

#112,550 opened on Oct 16, 2024

View on GitHub
 (17 comments) (0 reactions) (1 assignee)C++ (10,782 forks)batch import
backend:AMDGPUgood first issue

Repository metrics

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

Description

AMDGPU should implement this optimization hook: https://github.com/llvm/llvm-project/blob/b333edd0d6da744c099ad3ff3b5fbd2d4e4dd45a/llvm/include/llvm/CodeGen/TargetLowering.h#L797

This is available on the SALU for i32 and i64 (s_andn2_b32 and s_andn2_b64). The implementation therefore should be approximately !N->isDivergent() && (N->getValueType() == i32 || i64).

Contributor guide