• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /asuswrt-rt-n18u-9.0.0.4.380.2695/release/src-rt-6.x.4708/linux/linux-2.6.36/arch/arm/vfp/

Lines Matching defs:vsn

215 vfp_propagate_nan(struct vfp_single *vsd, struct vfp_single *vsn,
221 tn = vfp_single_type(vsn);
238 nan = vsn;
729 vfp_single_fadd_nonnumber(struct vfp_single *vsd, struct vfp_single *vsn,
736 tn = vfp_single_type(vsn);
743 if (vsn->sign ^ vsm->sign) {
753 vsp = vsn;
759 vsp = vsn;
764 return vfp_propagate_nan(vsd, vsn, vsm, fpscr);
771 vfp_single_add(struct vfp_single *vsd, struct vfp_single *vsn,
776 if (vsn->significand & 0x80000000 ||
779 vfp_single_dump("VSN", vsn);
788 if (vsn->exponent < vsm->exponent) {
789 struct vfp_single *t = vsn;
790 vsn = vsm;
798 if (vsn->exponent == 255)
799 return vfp_single_fadd_nonnumber(vsd, vsn, vsm, fpscr);
802 * We have two proper numbers, where 'vsn' is the larger magnitude.
806 *vsd = *vsn;
811 exp_diff = vsn->exponent - vsm->exponent;
817 if (vsn->sign ^ vsm->sign) {
818 m_sig = vsn->significand - m_sig;
827 m_sig = vsn->significand + m_sig;
835 vfp_single_multiply(struct vfp_single *vsd, struct vfp_single *vsn, struct vfp_single *vsm, u32 fpscr)
837 vfp_single_dump("VSN", vsn);
845 if (vsn->exponent < vsm->exponent) {
846 struct vfp_single *t = vsn;
847 vsn = vsm;
852 vsd->sign = vsn->sign ^ vsm->sign;
857 if (vsn->exponent == 255) {
858 if (vsn->significand || (vsm->exponent == 255 && vsm->significand))
859 return vfp_propagate_nan(vsd, vsn, vsm, fpscr);
864 vsd->exponent = vsn->exponent;
884 vsd->exponent = vsn->exponent + vsm->exponent - 127 + 2;
885 vsd->significand = vfp_hi64to32jamming((u64)vsn->significand * vsm->significand);
897 struct vfp_single vsd, vsp, vsn, vsm;
903 vfp_single_unpack(&vsn, v);
904 if (vsn.exponent == 0 && vsn.significand)
905 vfp_single_normalise_denormal(&vsn);
911 exceptions = vfp_single_multiply(&vsp, &vsn, &vsm, fpscr);
917 vfp_single_unpack(&vsn, v);
919 vsn.sign = vfp_sign_negate(vsn.sign);
921 exceptions |= vfp_single_add(&vsd, &vsn, &vsp, fpscr);
967 struct vfp_single vsd, vsn, vsm;
973 vfp_single_unpack(&vsn, n);
974 if (vsn.exponent == 0 && vsn.significand)
975 vfp_single_normalise_denormal(&vsn);
981 exceptions = vfp_single_multiply(&vsd, &vsn, &vsm, fpscr);
990 struct vfp_single vsd, vsn, vsm;
996 vfp_single_unpack(&vsn, n);
997 if (vsn.exponent == 0 && vsn.significand)
998 vfp_single_normalise_denormal(&vsn);
1004 exceptions = vfp_single_multiply(&vsd, &vsn, &vsm, fpscr);
1014 struct vfp_single vsd, vsn, vsm;
1023 vfp_single_unpack(&vsn, n);
1024 if (vsn.exponent == 0 && vsn.significand)
1025 vfp_single_normalise_denormal(&vsn);
1031 exceptions = vfp_single_add(&vsd, &vsn, &vsm, fpscr);
1052 struct vfp_single vsd, vsn, vsm;
1059 vfp_single_unpack(&vsn, n);
1062 vsd.sign = vsn.sign ^ vsm.sign;
1064 tn = vfp_single_type(&vsn);
1105 vfp_single_normalise_denormal(&vsn);
1112 vsd.exponent = vsn.exponent - vsm.exponent + 127 - 1;
1114 if (vsm.significand <= (2 * vsn.significand)) {
1115 vsn.significand >>= 1;
1119 u64 significand = (u64)vsn.significand << 32;
1124 vsd.significand |= ((u64)vsm.significand * vsd.significand != (u64)vsn.significand << 32);
1129 exceptions = vfp_propagate_nan(&vsd, &vsn, &vsm, fpscr);
1135 exceptions = vfp_propagate_nan(&vsd, &vsm, &vsn, fpscr);