Home
last modified time | relevance | path

Searched refs:fcr31 (Results 1 – 25 of 35) sorted by relevance

12

/openbmc/linux/arch/mips/include/asm/
H A Dswitch_to.h90 unsigned long fcr31 = mask_fcr31_x(next->thread.fpu.fcr31); \
93 if (unlikely(fcr31)) { \
95 next->thread.fpu.fcr31 &= ~fcr31; \
96 force_fcr31_sig(fcr31, pc, next); \
H A Dfpu_emulator.h171 void force_fcr31_sig(unsigned long fcr31, void __user *fault_addr,
174 unsigned long fcr31);
180 static inline unsigned long mask_fcr31_x(unsigned long fcr31) in mask_fcr31_x() argument
182 return fcr31 & (FPU_CSR_UNI_X | in mask_fcr31_x()
183 ((fcr31 & FPU_CSR_ALL_E) << in mask_fcr31_x()
H A Dmips-r2-to-r6-emul.h88 unsigned long *fcr31) in mipsr2_decoder() argument
96 unsigned long *fcr31);
H A Dfpregdef.h56 #define fcr31 $31 /* FPU status register */ macro
95 #define fcr31 $31 macro
H A Dasmmacro-32.h19 cfc1 \tmp, fcr31
60 ctc1 \tmp, fcr31
H A Dprocessor.h125 unsigned int fcr31; member
288 .fcr31 = 0, \
H A Dfpu.h169 tsk->thread.fpu.fcr31 = in lose_fpu_inatomic()
/openbmc/qemu/linux-user/mips/
H A Dcpu_loop.c170 if (GET_FP_CAUSE(env->active_fpu.fcr31) & FP_INVALID) { in cpu_loop()
172 } else if (GET_FP_CAUSE(env->active_fpu.fcr31) & FP_DIV0) { in cpu_loop()
174 } else if (GET_FP_CAUSE(env->active_fpu.fcr31) & FP_OVERFLOW) { in cpu_loop()
176 } else if (GET_FP_CAUSE(env->active_fpu.fcr31) & FP_UNDERFLOW) { in cpu_loop()
178 } else if (GET_FP_CAUSE(env->active_fpu.fcr31) & FP_INEXACT) { in cpu_loop()
308 ((env->active_fpu.fcr31 & (1 << FCR31_NAN2008)) != 0)) { in target_cpu_copy_regs()
315 env->active_fpu.fcr31 |= (1 << FCR31_NAN2008); in target_cpu_copy_regs()
317 env->active_fpu.fcr31 &= ~(1 << FCR31_NAN2008); in target_cpu_copy_regs()
/openbmc/linux/arch/mips/kernel/
H A Dtraps.c771 void force_fcr31_sig(unsigned long fcr31, void __user *fault_addr, in force_fcr31_sig() argument
776 if (fcr31 & FPU_CSR_INV_X) in force_fcr31_sig()
778 else if (fcr31 & FPU_CSR_DIV_X) in force_fcr31_sig()
780 else if (fcr31 & FPU_CSR_OVF_X) in force_fcr31_sig()
782 else if (fcr31 & FPU_CSR_UDF_X) in force_fcr31_sig()
784 else if (fcr31 & FPU_CSR_INE_X) in force_fcr31_sig()
790 int process_fpemu_return(int sig, void __user *fault_addr, unsigned long fcr31) in process_fpemu_return() argument
799 force_fcr31_sig(fcr31, fault_addr, current); in process_fpemu_return()
827 unsigned long fcr31; in simulate_fp() local
859 fcr31 = mask_fcr31_x(current->thread.fpu.fcr31); in simulate_fp()
[all …]
H A Dbranch.c145 unsigned int fcr31; in __mm_isBranchInstr() local
154 fcr31 = read_32bit_cp1_register(CP1_STATUS); in __mm_isBranchInstr()
156 fcr31 = current->thread.fpu.fcr31; in __mm_isBranchInstr()
160 fcr31 = ~fcr31; in __mm_isBranchInstr()
165 if (fcr31 & (1 << bit)) in __mm_isBranchInstr()
688 unsigned int bit, fcr31, reg; in __compute_return_epc_for_insn() local
712 fcr31 = read_32bit_cp1_register(CP1_STATUS); in __compute_return_epc_for_insn()
714 fcr31 = current->thread.fpu.fcr31; in __compute_return_epc_for_insn()
723 if (~fcr31 & (1 << bit)) { in __compute_return_epc_for_insn()
735 if (fcr31 & (1 << bit)) { in __compute_return_epc_for_insn()
H A Dptrace.c351 u32 fcr31; in ptrace_setfcr31() local
354 fcr31 = child->thread.fpu.fcr31; in ptrace_setfcr31()
356 child->thread.fpu.fcr31 = (value & ~mask) | (fcr31 & mask); in ptrace_setfcr31()
376 __put_user(child->thread.fpu.fcr31, data + 64); in ptrace_getfpregs()
449 membuf_write(&to, &target->thread.fpu.fcr31, sizeof(u32)); in fpr_get()
514 u32 fcr31; in fpr_set() local
533 &fcr31, in fpr_set()
538 ptrace_setfcr31(target, fcr31); in fpr_set()
629 .fcsr = target->thread.fpu.fcr31, in msa_get()
686 target->thread.fpu.fcr31 = ctrl_regs.fcsr & ~FPU_CSR_ALL_X; in msa_set()
[all …]
H A Dptrace32.c117 tmp = child->thread.fpu.fcr31; in compat_arch_ptrace()
217 child->thread.fpu.fcr31 = 0; in compat_arch_ptrace()
233 child->thread.fpu.fcr31 = data; in compat_arch_ptrace()
H A Delf.c318 t->thread.fpu.fcr31 = c->fpu_csr31; in mips_set_personality_nan()
324 t->thread.fpu.fcr31 |= FPU_CSR_NAN2008; in mips_set_personality_nan()
326 t->thread.fpu.fcr31 |= FPU_CSR_ABS2008; in mips_set_personality_nan()
H A Dr2300_fpu.S69 cfc1 t1, fcr31
121 ctc1 t0, fcr31
H A Dkgdb.c146 memcpy((void *)&current->thread.fpu.fcr31, mem, in dbg_set_reg()
181 memcpy(mem, (void *)&current->thread.fpu.fcr31, in dbg_get_reg()
H A Dmips-r2-to-r6-emul.c204 csr = current->thread.fpu.fcr31; in movf_func()
227 csr = current->thread.fpu.fcr31; in movt_func()
906 int mipsr2_decoder(struct pt_regs *regs, u32 inst, unsigned long *fcr31) in mipsr2_decoder() argument
1185 *fcr31 = res = mask_fcr31_x(current->thread.fpu.fcr31); in mipsr2_decoder()
1186 current->thread.fpu.fcr31 &= ~res; in mipsr2_decoder()
H A Dr4k_fpu.S102 cfc1 t1, fcr31
221 ctc1 t1, fcr31
H A Dasm-offsets.c179 OFFSET(THREAD_FCR31, task_struct, thread.fpu.fcr31); in output_thread_fpu_defines()
395 OFFSET(VCPU_FCR31, kvm_vcpu_arch, fpu.fcr31); in output_kvm_defines()
/openbmc/linux/arch/mips/math-emu/
H A Dcp1emu.c428 unsigned int fcr31; in isBranchInstr() local
734 fcr31 = read_32bit_cp1_register(CP1_STATUS); in isBranchInstr()
736 fcr31 = current->thread.fpu.fcr31; in isBranchInstr()
745 if (~fcr31 & (1 << bit)) in isBranchInstr()
756 if (fcr31 & (1 << bit)) in isBranchInstr()
851 u32 fcr31 = ctx->fcr31; in cop1_cfc() local
856 value = fcr31; in cop1_cfc()
864 value = (fcr31 >> (FPU_CSR_FS_S - MIPS_FENR_FS_S)) & in cop1_cfc()
866 value |= fcr31 & (FPU_CSR_ALL_E | FPU_CSR_RM); in cop1_cfc()
874 value = fcr31 & (FPU_CSR_ALL_X | FPU_CSR_ALL_S); in cop1_cfc()
[all …]
/openbmc/qemu/target/mips/
H A Dfpu_helper.h18 set_float_rounding_mode(ieee_rm[env->active_fpu.fcr31 & 3], in restore_rounding_mode()
24 set_flush_to_zero((env->active_fpu.fcr31 & (1 << FCR31_FS)) != 0, in restore_flush_mode()
30 bool nan2008 = env->active_fpu.fcr31 & (1 << FCR31_NAN2008); in restore_snan_bit_mode()
H A Dgdbstub.c36 return gdb_get_regl(mem_buf, (int32_t)env->active_fpu.fcr31); in mips_cpu_gdb_read_register()
92 env->active_fpu.fcr31 = (tmp & env->active_fpu.fcr31_rw_bitmask) | in mips_cpu_gdb_write_register()
93 (env->active_fpu.fcr31 & ~(env->active_fpu.fcr31_rw_bitmask)); in mips_cpu_gdb_write_register()
H A Dcpu.h66 uint32_t fcr31; member
70 #define SET_FP_COND(num, env) do { ((env).fcr31) |= \
74 #define CLEAR_FP_COND(num, env) do { ((env).fcr31) &= \
78 #define GET_FP_COND(env) ((((env).fcr31 >> 24) & 0xfe) | \
79 (((env).fcr31 >> 23) & 0x1))
/openbmc/qemu/target/mips/tcg/
H A Dfpu_helper.c70 arg1 = ((env->active_fpu.fcr31 >> 24) & 0xfe) | in helper_cfc1()
71 ((env->active_fpu.fcr31 >> 23) & 0x1); in helper_cfc1()
74 arg1 = env->active_fpu.fcr31 & 0x0003f07c; in helper_cfc1()
77 arg1 = (env->active_fpu.fcr31 & 0x00000f83) | in helper_cfc1()
78 ((env->active_fpu.fcr31 >> 22) & 0x4); in helper_cfc1()
81 arg1 = (int32_t)env->active_fpu.fcr31; in helper_cfc1()
143 env->active_fpu.fcr31 = (env->active_fpu.fcr31 & 0x017fffff) | in helper_ctc1()
151 env->active_fpu.fcr31 = (env->active_fpu.fcr31 & 0xfffc0f83) | in helper_ctc1()
158 env->active_fpu.fcr31 = (env->active_fpu.fcr31 & 0xfefff07c) | in helper_ctc1()
163 env->active_fpu.fcr31 = (arg1 & env->active_fpu.fcr31_rw_bitmask) | in helper_ctc1()
[all …]
/openbmc/u-boot/arch/mips/include/asm/
H A Dprocessor.h43 unsigned int fcr31; member
/openbmc/linux/arch/mips/kvm/
H A Dfpu.S121 ctc1 t0, fcr31

12