[all-commits] [llvm/llvm-project] f7dbc8: [LegalizeTypes][RISCV] Support libcalls for fpto{s...
Alex Bradbury via All-commits
all-commits at lists.llvm.org
Tue Aug 8 05:58:28 PDT 2023
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: f7dbc8501f430d298bbc70c488fbe1615fa0f147
https://github.com/llvm/llvm-project/commit/f7dbc8501f430d298bbc70c488fbe1615fa0f147
Author: Alex Bradbury <asb at igalia.com>
Date: 2023-08-08 (Tue, 08 Aug 2023)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
M llvm/test/CodeGen/RISCV/bfloat-convert.ll
Log Message:
-----------
[LegalizeTypes][RISCV] Support libcalls for fpto{s,u}i of bfloat by extending to f32 first
As there is no direct bf16 libcall for these conversions, extend to f32
first.
This patch includes a tiny refactoring to pull out equivalent logic in
ExpandIntRes_XROUND_XRINT so it can be reused in
ExpandIntRes_FP_TO_{S,U}INT.
This patch also demonstrates incorrect codegen for RV32 without zfbfmin
for the newly enabled tests. As it doesn't introduce that incorrect
codegen (caused by the assumption that 'TypeSoftPromoteHalf' is only
used for f16 types), a fix will be added in a follow-up (D157287).
Differential Revision: https://reviews.llvm.org/D156990
More information about the All-commits
mailing list