Details
Diff Detail
- Repository
- rL LLVM
Event Timeline
Move the expansion into the AMDGPU backend.
I wanted to implement this as a target independent expansion, however when
targets say they want to expand FP_TO_FP16 what they actually want is
the unsafe math expansion when possible and expansion to a libcall in all
other cases.
The only way to make this work as a target independent would be to add logic
to target's TargetLowering construction to mark theses nodes as Expand when
LegalizeDAG can use the unsafe expansion and mark them as LibCall when it
cannot. I think this would be possible, but I think it would be too fragile
and complex as it would require targets to keep their expansion logic up
to date with the code in LegalizeDAG.
LGTM with the test fixed
test/CodeGen/AMDGPU/trunc-store-f64-to-f16.ll | ||
---|---|---|
1 ↗ | (On Diff #76435) | Can you remove the -mcpu and add -verify-machineinstrs, also the FileCheck part is missing |
GCN-UNSAFE is never checked. did you mean GCN-FAST (or use GCN-UNSAFE in the tests)?