00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040
00041
00042
00043
00044
00045
00046
00047
00048
00049
00050
00051
00052
00053
00054
00055 #ifdef __VAX__
00056 #define g_double_blias 1025u
00057 void reorder_dg(unsigned short *A);
00058 #else
00059 #define t_double_blias 1023u
00060 #endif
00061 #define x_blias 0x3ffu
00062
00063 #include <builtins.h>
00064 #include <ints.h>
00065 #define lit_uint64(lo,hi) ((uint64)lo + ((uint64)( dec_temp= (uint64) hi ) << 32))
00066
00067
00068 #define NaN 0x7ff
00069 void __init_inv();
00070
00071 fp_register e_ADDT( fp_register A,fp_register B,
00072 unsigned my_control, unsigned *my_status);
00073 fp_register e_DIVT( fp_register A,fp_register B,
00074 unsigned my_control, unsigned *my_status);
00075 fp_register e_MULT( fp_register A,fp_register B,
00076 unsigned my_control, unsigned *my_status);
00077 fp_register e_SUBT( fp_register A,fp_register B,
00078 unsigned my_control, unsigned *my_status);
00079 fp_register cmpeq (fp_register A,fp_register B,
00080 unsigned my_control, unsigned *my_status);
00081 fp_register cmple (fp_register A,fp_register B,
00082 unsigned my_control, unsigned *my_status);
00083 fp_register cmplt (fp_register A,fp_register B,
00084 unsigned my_control, unsigned *my_status);
00085 fp_register cmpun (fp_register A,fp_register B,
00086 unsigned my_control, unsigned *my_status);
00087 fp_register e_CPYS(fp_register x,fp_register y);
00088 fp_register e_CPYSN(fp_register x,fp_register y);
00089 fp_register e_CPYSE(fp_register x,fp_register y);
00090 fp_register e_FCMOVEQ(fp_register x,fp_register y,fp_register temp);
00091 fp_register e_FCMOVGE(fp_register x,fp_register y,fp_register temp);
00092 fp_register e_FCMOVGT(fp_register x,fp_register y,fp_register temp);
00093 fp_register e_FCMOVLE(fp_register x,fp_register y,fp_register temp);
00094 fp_register e_FCMOVLT(fp_register x,fp_register y,fp_register temp);
00095 fp_register e_FCMOVNE(fp_register x,fp_register y,fp_register temp);
00096 fp_register e_CVTLQ(fp_register x);
00097 fp_register e_CVTQL(fp_register x,unsigned *my_status);
00098 fp_register e_CVTTQ(fp_register x,
00099 unsigned my_control, unsigned *my_status);
00100 fp_register e_CVTTS(fp_register x,
00101 unsigned my_control, unsigned *my_status);
00102 fp_register e_CVTST(fp_register x,
00103 unsigned my_control, unsigned *my_status);
00104 fp_register e_CVTQT(fp_register x,
00105 unsigned my_control, unsigned *my_status);
00106 fp_register e_CVTGD(fp_register x,
00107 unsigned my_control, unsigned *my_status);
00108 fp_register e_CVTDG(fp_register x,
00109 unsigned my_control, unsigned *my_status);
00110 int ldt(fp_register *a,unsigned char *base,int64 disp);
00111 int stt(fp_register *a,unsigned char *base,int64 disp);
00112 int lds(fp_register *a,unsigned char *base,int64 disp);
00113 int sts(fp_register *a,unsigned char *base,int64 disp);
00114 int ldg(fp_register *a,unsigned char *base,int64 disp);
00115 int stg(fp_register *a,unsigned char *base,int64 disp);
00116 uint64 softfp_isqrt( uint64 ix, int64 float_type,
00117 int64 precision, int64 rnd_mode, uint64 *flags);