[clang] [compiler-rt] [llvm] [SystemZ] Add support for half (fp16) (PR #109164)

Jonas Paulsson via cfe-commits cfe-commits at lists.llvm.org
Wed Feb 19 23:33:25 PST 2025


JonPsson1 wrote:

Found one intrinsic that isn't working for f16: 
- Isel fails:
%res = call i32 @llvm.s390.tdc.f16(half %x, i64 123)
LLVM ERROR: Cannot select: t9: i32 = SystemZISD::TDC t2, Constant:i64<123>

- The SystemZTDC pass seems to work with 'half', but no tests.

- The Clang testFPKind doesn't seem to work with _Float16.

I suppose all this could be handled as well with promotion to float in the backend, and allowing it in testFPKind()?

https://github.com/llvm/llvm-project/pull/109164


More information about the cfe-commits mailing list