Details
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td | ||
---|---|---|
6578 | These don't need rounding mode. As the spec ssys "A double-width IEEE floating-point value can always represent a single-width integer exactly." Not sure why they had an FRM use before. I'm also very unsure why PseudoVFWCVT_RM_F_XU and PseudoVFWCVT_RM_F_X exist. | |
6579 | VFWCVT_F_F doesn't need rounding mode. |
llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td | ||
---|---|---|
6578 | Fixed by https://reviews.llvm.org/D154653 |
Remove rounding mode variant of vfwcvt.f.x, vfwcvt.f.xu
Add out-of-range semantic check and its corresponding test cases for the intrinsics added.
llvm/test/CodeGen/RISCV/rvv/ceil-vp.ll | ||
---|---|---|
24 ↗ | (On Diff #538016) | This is concerning. This means the vfcvt.f.x.v is getting the modified rounding mode from fsrmi a0, 3. I think its functionally ok due to the inputs involved, but it still shouldn't be happening. Is the vfcvt.f.x.v missing its FRM implicit dependency for DYN? |
These don't need rounding mode. As the spec ssys "A double-width IEEE floating-point value can always represent a single-width integer exactly." Not sure why they had an FRM use before.
I'm also very unsure why PseudoVFWCVT_RM_F_XU and PseudoVFWCVT_RM_F_X exist.