2 Commits

Author SHA1 Message Date
tianleli
1c27275813 [DAG] Unroll and expand illegal result of LDEXP and POWI instead of widen.
Reviewed By: pengfei

Differential Revision: https://reviews.llvm.org/D153104
2023-06-21 14:27:39 +08:00
Matt Arsenault
eece6ba283 IR: Add llvm.ldexp and llvm.experimental.constrained.ldexp intrinsics
AMDGPU has native instructions and target intrinsics for this, but
these really should be subject to legalization and generic
optimizations. This will enable legalization of f16->f32 on targets
without f16 support.

Implement a somewhat horrible inline expansion for targets without
libcall support. This could be better if we could introduce control
flow (GlobalISel version not yet implemented). Support for strictfp
legalization is less complete but works for the simple cases.
2023-06-06 17:07:18 -04:00