bool AlphaTargetLowering::isFPImmLegal(const APFloat &Imm, EVT VT) const { if (VT != MVT::f32 && VT != MVT::f64) return false; // +0.0 F31 // +0.0f F31 // -0.0 -F31 // -0.0f -F31 return Imm.isZero() || Imm.isNegZero(); }
bool SystemZTargetLowering::isFPImmLegal(const APFloat &Imm, EVT VT) const { if (UseSoftFloat || (VT != MVT::f32 && VT != MVT::f64)) return false; // +0.0 lzer // +0.0f lzdr // -0.0 lzer + lner // -0.0f lzdr + lndr return Imm.isZero() || Imm.isNegZero(); }