Add cases of fused fmul+fadd/fsub with f16 and f64 operands to cost model.
Also added operations with contract attribute.
Fixed line endings in test.
Paths
| Differential D84995
[AMDGPU][CostModel] Add f16, f64 and contract cases to fused costs estimation. ClosedPublic Authored by dfukalov on Jul 30 2020, 5:57 PM.
Details Summary Add cases of fused fmul+fadd/fsub with f16 and f64 operands to cost model. Fixed line endings in test.
Diff Detail
Unit TestsFailed
Event Timeline
dfukalov added inline comments.
This revision is now accepted and ready to land.Aug 6 2020, 9:22 AM This revision was landed with ongoing or failed builds.Aug 6 2020, 11:43 AM Closed by commit rG4ccc38813eb7: [AMDGPU][CostModel] Add f16, f64 and contract cases to fused costs estimation. (authored by dfukalov). · Explain Why This revision was automatically updated to reflect the committed changes.
Revision Contents
Diff 283410 llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.h
llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
llvm/test/Analysis/CostModel/AMDGPU/fused_costs.ll |
I think we don't actually need the hasOneUse case. Only with the conditionally available 2-operand VOP2 forms is there a code size savings by not fusing