llvm/llvm-project

[NVPTX] Implement `TLI.isTruncateFree(EVT, EVT)` and `TLI.isZExtFree()`

Open

#114,339 opened on Oct 31, 2024

View on GitHub
 (11 comments) (0 reactions) (2 assignees)C++ (10,782 forks)batch import
backend:NVPTXgood first issue

Repository metrics

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

Description

NVPTX currently does not override TLI.isTruncateFree(EVT, EVT) and TLI.isZExtFree(), and it probably should.

zext/truncate between i32/i64 can probably be considered free, as the values already live in separate 32-bit registers in hardware.

Originally posted by @Artem-B in https://github.com/llvm/llvm-project/pull/98666#discussion_r1681805956

Contributor guide