Follow patterns used for f32 and f64 types.
Details
Diff Detail
- Repository
- rG LLVM Github Monorepo
Unit Tests
Event Timeline
@arsenm Could you help me understand if my understanding is correct to fulfill your requirement of 'test globalisel'?
- change the followings under llvm/test/CodeGen/AMDGPU/GlobalISel:
- inst-select-fptosi.mir
- legalize-fptosi.mir
- inst-select-fptoui.mir
- legalize-fptoui.mir
- populate FileCheck macros with update_mir_test_checks.py
llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-fptoui.mir | ||
---|---|---|
117–122 ↗ | (On Diff #321496) | This isn't testing a target with f16 instructions |
llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-fptoui.mir | ||
---|---|---|
117–122 ↗ | (On Diff #321496) | @arsenm Could you help review if https://reviews.llvm.org/D96061 addresses your concerns? Thanks. |
llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-fptoui.mir | ||
---|---|---|
123–126 ↗ | (On Diff #321496) | Hmm. It looks like these patterns aren't working. The MIR register banks are also not what I would expect. I think this needs some up-front work in the legalizer/regbankselect to handle properly, and would need end to end IR tests |
llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-fptoui.mir | ||
---|---|---|
123–126 ↗ | (On Diff #321496) | @arsenm I'll take a look into AMDGPULegalizerInfo and AMDGPURegisterBankInfo. I'm not that well-versed in these aspect so I may come up with questions initially. For end-to-end IR tests, do you feel any additions to fptosi.f16.ll and fptoui.f16.ll in this patch needed? |
llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-fptoui.mir | ||
---|---|---|
123–126 ↗ | (On Diff #321496) | Some cases that use the i1 result in a boolean context (e.g. branch or select condition) would be helpful |