Home
last modified time | relevance | path

Searched refs:pfpsd (Results 1 – 14 of 14) sorted by relevance

/titanic_41/usr/src/uts/sparc/fpu/
H A Dpack.c39 fp_simd_type *pfpsd, /* Pointer to simulator data */ in overflow_to_infinity() argument
44 switch (pfpsd->fp_direction) { in overflow_to_infinity()
66 fp_simd_type *pfpsd, /* Pointer to simulator data */ in round() argument
76 fpu_set_exception(pfpsd, fp_inexact); in round()
77 switch (pfpsd->fp_direction) { in round()
107 if ((pfpsd->fp_direction == fp_nearest) && in round()
115 fp_simd_type *pfpsd, /* Pointer to simulator data */ in packint32() argument
127 round(pfpsd, pu); in packint32()
143 pfpsd->fp_current_exceptions &= ~(1 << (int)fp_inexact); in packint32()
144 fpu_set_exception(pfpsd, fp_invalid); in packint32()
[all …]
H A Dfpu_simulator.c168 fp_simd_type *pfpsd, /* Pointer to fpu simulator data */ in _fp_fpu_simulator() argument
185 pfpsd->fp_current_exceptions = 0; /* Init current exceptions. */ in _fp_fpu_simulator()
186 pfpsd->fp_fsrtem = fsr.tem; /* Obtain fsr's tem */ in _fp_fpu_simulator()
190 pfpsd->fp_direction = GSR_IM(gsr) ? GSR_IRND(gsr) : fsr.rnd; in _fp_fpu_simulator()
191 pfpsd->fp_precision = fsr.rnp; in _fp_fpu_simulator()
203 _fp_unpack(pfpsd, &us1, nrs1, fma_inst->sz); in _fp_fpu_simulator()
204 _fp_unpack(pfpsd, &us2, nrs2, fma_inst->sz); in _fp_fpu_simulator()
205 _fp_mul(pfpsd, &us1, &us2, &ust); in _fp_fpu_simulator()
206 if ((pfpsd->fp_current_exceptions & fsr.tem) == 0) { in _fp_fpu_simulator()
207 _fp_unpack(pfpsd, &us3, nrs3, fma_inst->sz); in _fp_fpu_simulator()
[all …]
H A Dunpack.c99 fp_simd_type *pfpsd, /* simulator data */ in unpacksingle() argument
131 fpu_set_exception(pfpsd, fp_invalid); in unpacksingle()
146 fp_simd_type *pfpsd, /* simulator data */ in unpackdouble() argument
179 fpu_set_exception(pfpsd, fp_invalid); in unpackdouble()
196 fp_simd_type *pfpsd, /* simulator data */ in unpackextended() argument
234 fpu_set_exception(pfpsd, fp_invalid); in unpackextended()
244 fp_simd_type *pfpsd, /* simulator data */ in _fp_unpack() argument
258 pfpsd->fp_current_read_freg(&f, n, pfpsd); in _fp_unpack()
265 pfpsd->fp_current_read_dreg(&fp.ll[0], DOUBLE(n), pfpsd); in _fp_unpack()
269 pfpsd->fp_current_read_freg(&f, n, pfpsd); in _fp_unpack()
[all …]
H A Dutility.c38 fp_simd_type *pfpsd) in _fp_read_vfreg() argument
40 *pf = pfpsd->fp_current_pfregs->fpu_fr.fpu_regs[n]; in _fp_read_vfreg()
47 fp_simd_type *pfpsd) in _fp_write_vfreg() argument
49 pfpsd->fp_current_pfregs->fpu_fr.fpu_regs[n] = *pf; in _fp_write_vfreg()
56 fp_simd_type *pfpsd) in _fp_read_vdreg() argument
58 *pd = pfpsd->fp_current_pfregs->fpu_fr.fpu_dregs[n]; in _fp_read_vdreg()
65 fp_simd_type *pfpsd) in _fp_write_vdreg() argument
67 pfpsd->fp_current_pfregs->fpu_fr.fpu_dregs[n] = *pd; in _fp_write_vdreg()
180 fpu_set_exception(pfpsd, ex) in fpu_set_exception() argument
181 fp_simd_type *pfpsd; /* Pointer to simulator data */ in fpu_set_exception()
[all …]
H A Daddsub.c93 true_sub(pfpsd, px, py, pz) in true_sub() argument
94 fp_simd_type *pfpsd; /* Pointer to simulator data */ in true_sub()
113 fpu_error_nan(pfpsd, pz); /* Inf - Inf -> NaN */
118 pz->sign = (pfpsd->fp_direction == fp_negative);
151 pz->sign = (pfpsd->fp_direction == fp_negative);
201 _fp_add(pfpsd, px, py, pz) in _fp_add() argument
202 fp_simd_type *pfpsd; in _fp_add()
208 true_sub(pfpsd, px, py, pz);
212 _fp_sub(pfpsd, px, py, pz) in _fp_sub() argument
213 fp_simd_type *pfpsd; in _fp_sub()
[all …]
H A Diu_simulator.c177 fp_simd_type *pfpsd, /* FPU simulator data. */ in _fp_iu_simulator() argument
190 return (vis_rdgsr(pfpsd, pinst, pregs, in _fp_iu_simulator()
196 return (vis_wrgsr(pfpsd, pinst, pregs, in _fp_iu_simulator()
201 return (movcc(pfpsd, pinst, pregs, prw, pfpu)); in _fp_iu_simulator()
206 return (fldst(pfpsd, pinst, pregs, prw)); in _fp_iu_simulator()
H A Ddiv.c32 _fp_div(pfpsd, px, py, pz) in _fp_div() argument
33 fp_simd_type *pfpsd; in _fp_div()
54 fpu_error_nan(pfpsd, pz);
61 fpu_set_exception(pfpsd, fp_division);
162 _fp_sqrt(pfpsd, px, pz) in _fp_sqrt() argument
163 fp_simd_type *pfpsd; in _fp_sqrt()
176 fpu_error_nan(pfpsd, pz);
182 fpu_error_nan(pfpsd, pz);
H A Dcompare.c31 _fp_compare(pfpsd, px, py, strict) in _fp_compare() argument
32 fp_simd_type *pfpsd; /* simulator data */ in _fp_compare()
46 fpu_set_exception(pfpsd, fp_invalid);
H A Dmul.c32 _fp_mul(pfpsd, px, py, pz) in _fp_mul() argument
33 fp_simd_type *pfpsd; in _fp_mul()
59 fpu_error_nan(pfpsd, pz);
/titanic_41/usr/src/uts/sun4/os/
H A Dvisinstr.c80 fp_simd_type *pfpsd, /* FPU simulator data. */ in vis_fpu_simulator() argument
123 ftt = vis_edge(pfpsd, f.inst, pregs, prw); in vis_fpu_simulator()
128 ftt = vis_array(pfpsd, f.inst, pregs, prw); in vis_fpu_simulator()
132 ftt = vis_alignaddr(pfpsd, f.inst, pregs, prw, fp); in vis_fpu_simulator()
135 ftt = vis_bmask(pfpsd, f.inst, pregs, prw, fp); in vis_fpu_simulator()
145 ftt = vis_fcmp(pfpsd, f.inst, pregs, prw); in vis_fpu_simulator()
154 ftt = vis_fmul(pfpsd, f.inst); in vis_fpu_simulator()
161 ftt = vis_fpixel(pfpsd, f.inst, fp); in vis_fpu_simulator()
165 ftt = vis_pdist(pfpsd, pinst, pregs, prw, f.inst.opf); in vis_fpu_simulator()
168 ftt = vis_faligndata(pfpsd, pinst, fp); in vis_fpu_simulator()
[all …]
/titanic_41/usr/src/uts/sparc/v9/fpu/
H A Duword.c47 fp_simd_type *pfpsd) /* Pointer to fpu simulator data. */ in _fp_read_inst() argument
65 pfpsd->fp_trapaddr = (caddr_t)address; in _fp_read_inst()
66 pfpsd->fp_traprw = S_READ; in _fp_read_inst()
76 fp_simd_type *pfpsd) /* Pointer to fpu simulator data. */ in _fp_read_extword() argument
94 pfpsd->fp_trapaddr = (caddr_t)address; in _fp_read_extword()
95 pfpsd->fp_traprw = S_READ; in _fp_read_extword()
105 fp_simd_type *pfpsd) /* Pointer to fpu simulator data. */ in _fp_read_word() argument
123 pfpsd->fp_trapaddr = (caddr_t)address; in _fp_read_word()
124 pfpsd->fp_traprw = S_READ; in _fp_read_word()
134 fp_simd_type *pfpsd) /* Pointer to fpu simulator data. */ in _fp_write_extword() argument
[all …]
H A Dv9instr.c49 fp_simd_type *pfpsd, /* FPU simulator data. */ in fldst() argument
74 return (vis_fldst(pfpsd, pinst, pregs, prw, asi)); in fldst()
78 ftt = read_iureg(pfpsd, pinst.rs1, pregs, prw, &fea); in fldst()
81 ftt = read_iureg(pfpsd, pinst.rs2, pregs, prw, &tea); in fldst()
88 ftt = read_iureg(pfpsd, pinst.rs1, pregs, prw, &tea); in fldst()
126 pfpsd->fp_trapaddr = (caddr_t)ea; /* setup bad addr in case we trap */ in fldst()
128 pfpsd->fp_traprw = S_READ; in fldst()
130 pfpsd->fp_traprw = S_WRITE; in fldst()
150 fp_simd_type *pfpsd, /* Pointer to fpu simulator data */ in fmovcc_fcc() argument
242 _fp_unpack_word(pfpsd, &usr, nrs2); in fmovcc_fcc()
[all …]
H A Dfpu.c526 fp_simd_type *pfpsd, /* Pointer to simulator data */ in fp_traps() argument
536 fpu_trap(rp, pfpsd->fp_trapaddr, T_FP_EXCEPTION_IEEE, in fp_traps()
537 pfpsd->fp_trapcode); in fp_traps()
540 fpu_trap(rp, pfpsd->fp_trapaddr, T_DATA_EXCEPTION, 0); in fp_traps()
543 fpu_trap(rp, pfpsd->fp_trapaddr, T_ALIGNMENT, 0); in fp_traps()
546 fpu_trap(rp, pfpsd->fp_trapaddr, T_UNIMP_INSTR, 0); in fp_traps()
/titanic_41/usr/src/uts/sparc/sys/fpu/
H A Dfpu_simulator.h395 extern enum ftt_type fpu_vis_sim(fp_simd_type *pfpsd, fp_inst_type *pinst,
401 extern enum ftt_type fpu_simulator(fp_simd_type *pfpsd, fp_inst_type *pinst,
407 extern enum ftt_type fp_emulator(fp_simd_type *pfpsd, fp_inst_type *pinst,
413 extern void fp_traps(fp_simd_type *pfpsd, enum ftt_type ftt, struct regs *rp);
444 fp_simd_type *pfpsd, /* Pointer to FPU simulator data */
454 fp_simd_type *pfpsd, /* Pointer to FPU simulator data */
465 fp_simd_type *pfpsd, /* Pointer to FPU simulator data */