Home | History | Annotate | Download | only in target-arm

Lines Matching refs:vfp

63         env->vfp.xregs[ARM_VFP_FPSID] = 0x41011090;
79 env->vfp.xregs[ARM_VFP_FPSID] = 0x410110a0;
101 env->vfp.xregs[ARM_VFP_FPSID] = 0x410120b4;
102 env->vfp.xregs[ARM_VFP_MVFR0] = 0x11111111;
103 env->vfp.xregs[ARM_VFP_MVFR1] = 0x00000000;
116 env->vfp.xregs[ARM_VFP_FPSID] = 0x410120b5;
117 env->vfp.xregs[ARM_VFP_MVFR0] = 0x11111111;
118 env->vfp.xregs[ARM_VFP_MVFR1] = 0x00000000;
132 env->vfp.xregs[ARM_VFP_FPSID] = 0x410120b4;
133 env->vfp.xregs[ARM_VFP_MVFR0] = 0x11111111;
134 env->vfp.xregs[ARM_VFP_MVFR1] = 0x00000000;
152 env->vfp.xregs[ARM_VFP_FPSID] = 0x410330c0;
153 env->vfp.xregs[ARM_VFP_MVFR0] = 0x11110222;
154 env->vfp.xregs[ARM_VFP_MVFR1] = 0x00011100;
177 env->vfp.xregs[ARM_VFP_FPSID] = 0x410330c2;
178 env->vfp.xregs[ARM_VFP_MVFR0] = 0x11110222;
179 env->vfp.xregs[ARM_VFP_MVFR1] = 0x00011111;
208 env->vfp.xregs[ARM_VFP_FPSID] = 0x41034000; /* Guess */
209 env->vfp.xregs[ARM_VFP_MVFR0] = 0x11110222;
210 env->vfp.xregs[ARM_VFP_MVFR1] = 0x01111111;
317 env->vfp.xregs[ARM_VFP_FPEXC] = 1 << 30;
346 env->vfp.xregs[ARM_VFP_FPEXC] = 0;
353 set_flush_to_zero(1, &env->vfp.standard_fp_status);
354 set_flush_inputs_to_zero(1, &env->vfp.standard_fp_status);
355 set_default_nan_mode(1, &env->vfp.standard_fp_status);
357 &env->vfp.fp_status);
359 &env->vfp.standard_fp_status);
367 /* VFP data registers are always little-endian. */
370 stfq_le_p(buf, env->vfp.regs[reg]);
377 stfq_le_p(buf, env->vfp.regs[(reg - 32) * 2]);
378 stfq_le_p(buf + 8, env->vfp.regs[(reg - 32) * 2 + 1]);
383 case 0: stl_p(buf, env->vfp.xregs[ARM_VFP_FPSID]); return 4;
384 case 1: stl_p(buf, env->vfp.xregs[ARM_VFP_FPSCR]); return 4;
385 case 2: stl_p(buf, env->vfp.xregs[ARM_VFP_FPEXC]); return 4;
396 env->vfp.regs[reg] = ldfq_le_p(buf);
402 env->vfp.regs[(reg - 32) * 2] = ldfq_le_p(buf);
403 env->vfp.regs[(reg - 32) * 2 + 1] = ldfq_le_p(buf + 8);
408 case 0: env->vfp.xregs[ARM_VFP_FPSID] = ldl_p(buf); return 4;
409 case 1: env->vfp.xregs[ARM_VFP_FPSCR] = ldl_p(buf); return 4;
410 case 2: env->vfp.xregs[ARM_VFP_FPEXC] = ldl_p(buf) & (1 << 30); return 4;
447 19, "arm-vfp.xml", 0);
2660 /* VFP support. We follow the convention used for VFP instrunctions:
2664 /* Convert host exception flags to vfp form. */
2689 fpscr = (env->vfp.xregs[ARM_VFP_FPSCR] & 0xffc8ffff)
2690 | (env->vfp.vec_len << 16)
2691 | (env->vfp.vec_stride << 20);
2692 i = get_float_exception_flags(&env->vfp.fp_status);
2693 i |= get_float_exception_flags(&env->vfp.standard_fp_status);
2703 /* Convert vfp exception flags to target form. */
2728 changed = env->vfp.xregs[ARM_VFP_FPSCR];
2729 env->vfp.xregs[ARM_VFP_FPSCR] = (val & 0xffc8ffff);
2730 env->vfp.vec_len = (val >> 16) & 7;
2731 env->vfp.vec_stride = (val >> 20) & 3;
2750 set_float_rounding_mode(i, &env->vfp.fp_status);
2753 set_flush_to_zero((val & (1 << 24)) != 0, &env->vfp.fp_status);
2754 set_flush_inputs_to_zero((val & (1 << 24)) != 0, &env->vfp.fp_status);
2757 set_default_nan_mode((val & (1 << 25)) != 0, &env->vfp.fp_status);
2760 set_float_exception_flags(i, &env->vfp.fp_status);
2761 set_float_exception_flags(0, &env->vfp.standard_fp_status);
2810 return float32_sqrt(a, &env->vfp.fp_status);
2815 return float64_sqrt(a, &env->vfp.fp_status);
2823 switch(type ## _compare_quiet(a, b, &env->vfp.fp_status)) { \
2829 env->vfp.xregs[ARM_VFP_FPSCR] = (flags << 28) \
2830 | (env->vfp.xregs[ARM_VFP_FPSCR] & 0x0fffffff); \
2835 switch(type ## _compare(a, b, &env->vfp.fp_status)) { \
2841 env->vfp.xregs[ARM_VFP_FPSCR] = (flags << 28) \
2842 | (env->vfp.xregs[ARM_VFP_FPSCR] & 0x0fffffff); \
2885 float64 r = float32_to_float64(x, &env->vfp.fp_status);
2894 float32 r = float64_to_float32(x, &env->vfp.fp_status);
2937 int ieee = (env->vfp.xregs[ARM_VFP_FPSCR] & (1 << 26)) == 0;
2947 int ieee = (env->vfp.xregs[ARM_VFP_FPSCR] & (1 << 26)) == 0;
2957 return do_fcvt_f16_to_f32(a, env, &env->vfp.standard_fp_status);
2962 return do_fcvt_f32_to_f16(a, env, &env->vfp.standard_fp_status);
2967 return do_fcvt_f16_to_f32(a, env, &env->vfp.fp_status);
2972 return do_fcvt_f32_to_f16(a, env, &env->vfp.fp_status);
2981 float_status *s = &env->vfp.standard_fp_status;
2994 float_status *s = &env->vfp.standard_fp_status;
3022 float_status dummy_status = env->vfp.standard_fp_status;
3045 float_status *s = &env->vfp.standard_fp_status;
3092 float_status dummy_status = env->vfp.standard_fp_status;
3141 float_status *s = &env->vfp.standard_fp_status;