feinstr.h
Go to the documentation of this file.00001 
00002 
00003 
00004 
00005 
#ifndef _EM_INSTR_H
00006 
#define _EM_INSTR_H
00007 
00008 
#include "fepublic.h"
00009 
00010 
static EM_fp_reg_type
00011 
fp_ieee_recip(
00012     
EM_fp_reg_type den);
00013 
00014 
static EM_fp_reg_type
00015 
fp_ieee_recip_sqrt(
00016     
EM_fp_reg_type root);
00017 
00018 
00019 
00020 
00021 
00022 
00023 
static INLINE void
00024 
_fma(
EM_state_type *ps,
00025     EM_opcode_pc_type pc,
00026     EM_opcode_sf_type sf,
00027     EM_uint_t qp,
00028     EM_uint_t f1,
00029     EM_uint_t f3,
00030     EM_uint_t f4,
00031     EM_uint_t f2);
00032 
00033 
00034 
static INLINE void
00035 
_fpma(
EM_state_type *ps,
00036     EM_opcode_sf_type sf,
00037     EM_uint_t qp,
00038     EM_uint_t f1,
00039     EM_uint_t f3,
00040     EM_uint_t f4,
00041     EM_uint_t f2);
00042 
00043 
00044 
static INLINE void
00045 
_fms(
EM_state_type *ps,
00046     EM_opcode_pc_type pc,
00047     EM_opcode_sf_type sf,
00048     EM_uint_t qp,
00049     EM_uint_t f1,
00050     EM_uint_t f3,
00051     EM_uint_t f4,
00052     EM_uint_t f2);
00053 
00054 
00055 
static INLINE void
00056 
_fpms(
EM_state_type *ps,
00057     EM_opcode_sf_type sf,
00058     EM_uint_t qp,
00059     EM_uint_t f1,
00060     EM_uint_t f3,
00061     EM_uint_t f4,
00062     EM_uint_t f2);
00063 
00064 
00065 
static INLINE void
00066 
_fnma(
EM_state_type *ps,
00067     EM_opcode_pc_type pc,
00068     EM_opcode_sf_type sf,
00069     EM_uint_t qp,
00070     EM_uint_t f1,
00071     EM_uint_t f3,
00072     EM_uint_t f4,
00073     EM_uint_t f2);
00074 
00075 
00076 
00077 
static INLINE void
00078 
_fpnma(
EM_state_type *ps,
00079     EM_opcode_sf_type sf,
00080     EM_uint_t qp,
00081     EM_uint_t f1,
00082     EM_uint_t f3,
00083     EM_uint_t f4,
00084     EM_uint_t f2);
00085 
00086 
00087 
00088 
static INLINE void
00089 
_fcmp(
EM_state_type *ps,
00090     EM_opcode_frel_type frel,
00091     EM_opcode_ctype_type ctype,
00092     EM_opcode_sf_type sf,
00093     EM_uint_t qp,
00094     EM_uint_t p1,
00095     EM_uint_t p2,
00096     EM_uint_t f2,
00097     EM_uint_t f3);
00098 
00099 
00100 
static INLINE void
00101 
_frcpa(
EM_state_type *ps,
00102     EM_opcode_sf_type sf,
00103     EM_uint_t qp,
00104     EM_uint_t f1,
00105     EM_uint_t p2,
00106     EM_uint_t f2,
00107     EM_uint_t f3);
00108 
00109 
00110 
static INLINE void
00111 
_fprcpa(
EM_state_type *ps,
00112     EM_opcode_sf_type sf,
00113     EM_uint_t qp,
00114     EM_uint_t f1,
00115     EM_uint_t p2,
00116     EM_uint_t f2,
00117     EM_uint_t f3);
00118 
00119 
00120 
static INLINE void
00121 
_frsqrta(
EM_state_type *ps,
00122     EM_opcode_sf_type sf,
00123     EM_uint_t qp,
00124     EM_uint_t f1,
00125     EM_uint_t p2,
00126     EM_uint_t f3);
00127 
00128 
00129 
static INLINE void
00130 
_fprsqrta(
EM_state_type *ps,
00131     EM_opcode_sf_type sf,
00132     EM_uint_t qp,
00133     EM_uint_t f1,
00134     EM_uint_t p2,
00135     EM_uint_t f3);
00136 
00137 
00138 
static INLINE void
00139 
_fmin(
EM_state_type *ps,
00140     EM_opcode_sf_type sf,
00141     EM_uint_t qp,
00142     EM_uint_t f1,
00143     EM_uint_t f2,
00144     EM_uint_t f3);
00145 
00146 
static INLINE void
00147 
_fmax(
EM_state_type *ps,
00148     EM_opcode_sf_type sf,
00149     EM_uint_t qp,
00150     EM_uint_t f1,
00151     EM_uint_t f2,
00152     EM_uint_t f3);
00153 
00154 
00155 
static INLINE void
00156 
_famin(
EM_state_type *ps,
00157     EM_opcode_sf_type sf,
00158     EM_uint_t qp,
00159     EM_uint_t f1,
00160     EM_uint_t f2,
00161     EM_uint_t f3);
00162 
00163 
00164 
static INLINE void
00165 
_famax(
EM_state_type *ps,
00166     EM_opcode_sf_type sf,
00167     EM_uint_t qp,
00168     EM_uint_t f1,
00169     EM_uint_t f2,
00170     EM_uint_t f3);
00171 
00172 
00173 
static INLINE void
00174 
_fpmin(
EM_state_type *ps,
00175     EM_opcode_sf_type sf,
00176     EM_uint_t qp,
00177     EM_uint_t f1,
00178     EM_uint_t f2,
00179     EM_uint_t f3);
00180 
00181 
00182 
static INLINE void
00183 
_fpmax(
EM_state_type *ps,
00184     EM_opcode_sf_type sf,
00185     EM_uint_t qp,
00186     EM_uint_t f1,
00187     EM_uint_t f2,
00188     EM_uint_t f3);
00189 
00190 
00191 
00192 
static INLINE void
00193 
_fpamin(
EM_state_type *ps,
00194     EM_opcode_sf_type sf,
00195     EM_uint_t qp,
00196     EM_uint_t f1,
00197     EM_uint_t f2,
00198     EM_uint_t f3);
00199 
00200 
00201 
static INLINE void
00202 
_fpamax(
EM_state_type *ps,
00203     EM_opcode_sf_type sf,
00204     EM_uint_t qp,
00205     EM_uint_t f1,
00206     EM_uint_t f2,
00207     EM_uint_t f3);
00208 
00209 
00210 
static INLINE void
00211 
_fpcmp(
EM_state_type *ps,
00212     EM_opcode_frel_type frel,
00213     EM_opcode_sf_type sf,
00214     EM_uint_t qp,
00215     EM_uint_t f1,
00216     EM_uint_t f2,
00217     EM_uint_t f3);
00218 
00219 
00220 
static INLINE void
00221 
_fcvt_fx(
EM_state_type *ps,
00222     EM_opcode_sf_type sf,
00223     EM_uint_t qp,
00224     EM_uint_t f1,
00225     EM_uint_t f2);
00226 
00227 
00228 
static INLINE void
00229 
_fpcvt_fx(
EM_state_type *ps,
00230     EM_opcode_sf_type sf,
00231     EM_uint_t qp,
00232     EM_uint_t f1,
00233     EM_uint_t f2);
00234 
00235 
#endif
00236 
00237 
#undef GETSTATE_F1
00238 
#undef PUTSTATE_F1
00239 
00240 
#undef GETSTATE_F4
00241 
#undef PUTSTATE_F4
00242 
00243 
#undef GETSTATE_F6
00244 
#undef PUTSTATE_F6
00245 
00246 
#undef GETSTATE_F7
00247 
#undef PUTSTATE_F7
00248 
00249 
#undef GETSTATE_F8
00250 
#undef PUTSTATE_F8
00251 
00252 
#undef GETSTATE_F10
00253 
#undef PUTSTATE_F10
00254 
00255 #define GETSTATE_F1(qp,f1,f3,f4,f2)        _GETSTATE_F1(ps, qp,f1,f3,f4,f2)
00256 #define PUTSTATE_F1(f1)                    _PUTSTATE_F1(ps, f1)
00257 
00258 #define GETSTATE_F4(qp,p1,p2,f2,f3)         _GETSTATE_F4(ps, qp,p1,p2,f2,f3)
00259 #define PUTSTATE_F4(p1,p2)                  _PUTSTATE_F4(ps, p1,p2)
00260 
00261 #define GETSTATE_F6(qp,f1,p2,f2,f3)         _GETSTATE_F6(ps,qp,f1,p2,f2,f3)
00262 #define PUTSTATE_F6(f1,p2)                  _PUTSTATE_F6(ps,f1,p2)
00263 
00264 #define GETSTATE_F7(qp,f1,p2,f3)            _GETSTATE_F7(ps, qp,f1,p2,f3)
00265 #define PUTSTATE_F7(f1,p2)                  _PUTSTATE_F7(ps, f1,p2)
00266 
00267 #define GETSTATE_F8(qp,f1,f2,f3)           _GETSTATE_F8(ps, qp,f1,f2,f3)
00268 #define PUTSTATE_F8(f1)                    _PUTSTATE_F8(ps, f1)
00269 
00270 #define GETSTATE_F10(qp,f1,f2)             _GETSTATE_F10(ps, qp,f1,f2)
00271 #define PUTSTATE_F10(f1)                   _PUTSTATE_F10(ps, f1)
00272 
00273 
00274 
00275 
00276 
00277 
#undef fp_reg_disabled
00278 
#undef fp_reg_read_hi
00279 
#undef fp_reg_read_lo
00280 
#undef fp_ieee_rnd_to_int
00281 
#undef fp_ieee_rnd_to_int_sp
00282 
#undef fp_ieee_round_sp
00283 
#undef fp_ieee_round
00284 
00285 
#undef fminmax_exception_fault_check 
00286 
#undef fpminmax_exception_fault_check 
00287 
#undef fcmp_exception_fault_check
00288 
#undef fpcmp_exception_fault_check
00289 
00290 
#undef fcvt_exception_fault_check
00291 
#undef fpcvt_exception_fault_check
00292 
00293 
#undef fma_exception_fault_check
00294 
#undef fpma_exception_fault_check
00295 
#undef fms_fnma_exception_fault_check
00296 
#undef fpms_fpnma_exception_fault_check
00297 
00298 
#undef frcpa_exception_fault_check
00299 
#undef fprcpa_exception_fault_check
00300 
#undef frsqrta_exception_fault_check
00301 
#undef fprsqrta_exception_fault_check
00302 
00303 
#undef illegal_operation_fault
00304 
#undef fp_check_target_register 
00305 
00306 
#undef fp_exception_fault
00307 
#undef fp_exception_trap
00308 
00309 
#undef disabled_fp_register_fault
00310 
00311 
#undef fp_update_fpsr 
00312 
#undef fp_update_psr 
00313 
00314 
00315 
00316 
00317 #define fp_reg_disabled(f1,f2,f3,f4)         fp82_fp_reg_disabled(ps, f1,f2,f3,f4)
00318 
00319 
00320 #define fp_reg_read_hi(f2)            fp82_reg_read_hi(ps,f2)
00321 #define fp_reg_read_lo(f3)            fp82_reg_read_lo(ps,f3)
00322 
00323 #define fp_ieee_rnd_to_int(arg1,arg2) \
00324 
        fp82_fp_ieee_rnd_to_int(ps, arg1, arg2)
00325 #define fp_ieee_rnd_to_int_sp(arg1,arg2, arg3) \
00326 
        fp82_fp_ieee_rnd_to_int_sp(ps, arg1, arg2, arg3)
00327 
00328 
00329 #define fp_ieee_round_sp(arg1, arg2, arg3) \
00330 
        fp82_fp_ieee_round_sp(ps, arg1, arg2, arg3)
00331 #define fp_ieee_round(arg1, arg2) \
00332 
        fp82_fp_ieee_round(ps, arg1, arg2)
00333 
00334 #define fminmax_exception_fault_check(arg1, arg2, arg3, arg4) \
00335 
        fp82_fminmax_exception_fault_check(ps, arg1, arg2, arg3, arg4) 
00336 #define fpminmax_exception_fault_check(arg1, arg2, arg3, arg4) \
00337 
        fp82_fpminmax_exception_fault_check(ps, arg1, arg2, arg3, arg4) 
00338 
00339 #define fcmp_exception_fault_check(arg1, arg2, arg3, arg4, arg5) \
00340 
        fp82_fcmp_exception_fault_check(ps, arg1, arg2, arg3, arg4, arg5)
00341 #define fpcmp_exception_fault_check(arg1, arg2, arg3, arg4, arg5) \
00342 
        fp82_fpcmp_exception_fault_check(ps, arg1, arg2, arg3, arg4, arg5)
00343 
00344 #define fcvt_exception_fault_check(arg1, arg2, arg3, arg4, arg5) \
00345 
        fp82_fcvt_exception_fault_check(ps, arg1, arg2, arg3, arg4, arg5)
00346 #define fpcvt_exception_fault_check(arg1, arg2, arg3, arg4, arg5) \
00347 
        fp82_fpcvt_exception_fault_check(ps, arg1, arg2, arg3, arg4, arg5)
00348 
00349 #define fma_exception_fault_check(arg1, arg2, arg3, arg4, arg5, arg6) \
00350 
        fp82_fma_exception_fault_check(ps, arg1, arg2, arg3, arg4, arg5, arg6)
00351 #define fpma_exception_fault_check(arg1, arg2, arg3, arg4, arg5) \
00352 
        fp82_fpma_exception_fault_check(ps, arg1, arg2, arg3, arg4, arg5)
00353 
00354 #define fms_fnma_exception_fault_check(arg1, arg2, arg3, arg4, arg5, arg6) \
00355 
        fp82_fms_fnma_exception_fault_check(ps, arg1, arg2, arg3, arg4, arg5, arg6)
00356 
00357 #define fpms_fpnma_exception_fault_check(arg1, arg2, arg3, arg4, arg5) \
00358 
        fp82_fpms_fpnma_exception_fault_check(ps, arg1, arg2, arg3, arg4, arg5)
00359 
00360 #define frcpa_exception_fault_check(arg1, arg2, arg3, arg4) \
00361 
        fp82_frcpa_exception_fault_check(ps, arg1, arg2, arg3, arg4)
00362 
00363 #define fprcpa_exception_fault_check(arg1, arg2, arg3, arg4, arg5) \
00364 
        fp82_fprcpa_exception_fault_check(ps, arg1, arg2, arg3, arg4, arg5)
00365 
00366 #define frsqrta_exception_fault_check(arg1, arg2, arg3) \
00367 
        fp82_frsqrta_exception_fault_check(ps, arg1, arg2, arg3)
00368 
00369 #define fprsqrta_exception_fault_check(arg1, arg2, arg3, arg4) \
00370 
        fp82_fprsqrta_exception_fault_check(ps, arg1, arg2, arg3, arg4)
00371 
00372 #define illegal_operation_fault( NON_RS) \
00373 
        fp82_illegal_operation_fault(ps, NON_RS) 
00374 
00375 #define fp_check_target_register( reg_specifier) \
00376 
        fp82_fp_check_target_register(ps, reg_specifier)
00377 
00378 #define fp_exception_fault( tmp) \
00379 
        fp82_fp_exception_fault(ps, tmp) 
00380 
00381 #define fp_exception_trap( tmp) \
00382 
        fp82_fp_exception_trap(ps, tmp) 
00383 
00384 #define disabled_fp_register_fault(isr_code, itype) \
00385 
        fp82_disabled_fp_register_fault(ps, isr_code, itype) 
00386 
00387 #define fp_update_fpsr(sf, tmp_env)    fp82_fp_update_fpsr(ps,sf, tmp_env)
00388 #define fp_update_psr(dest_freg)       fp82_fp_update_psr(ps,dest_freg)
00389 
    
00390 
Generated on Sat May 15 19:39:59 2004 for test by
 1.3.7
 1.3.7