llvm/llvm-project

getNegatedExpression should handle FP16_TO_FP and FP_TO_FP16

Open

#177448 opened on Jan 22, 2026

View on GitHub
 (11 comments) (0 reactions) (0 assignees)C++ (26,378 stars) (10,782 forks)batch import
floating-pointgood first issuellvm:SelectionDAGmissed-optimization

Description

getNegatedExpression does not handle the opcodes FP16_TO_FP and FP_TO_FP16, but it could. This could improve use of source modifiers on AMDGPU with illegal f16.

I started implementing it in this patch, but it requires additional work to avoid regressions.

0001-DAG-Implement-getNegatedExpression-for-FP16_TO_FP.patch

Contributor guide