size_t sign_start, exp_start, mantissa_start, len;
};
-void ctf_float_copy(unsigned char *destp, const struct ctf_float *dest,
- const unsigned char *src, const struct ctf_float *src)
+/* TODO */
+
+void ctf_float_copy(unsigned char *destp, const struct type_class_float *dest,
+ const unsigned char *src, const struct type_class_float *src)
{
struct pos_len destpos, srcpos;
union {
long long s;
} tmp;
- destpos.len = dest.exp_len + dest.mantissa_len;
- if (dest.byte_order == LITTLE_ENDIAN) {
+ destpos.len = dest->exp_len + dest->mantissa_len;
+ if (dest->byte_order == LITTLE_ENDIAN) {
destpos.sign_start = destpos.len - 1;
destpos.exp_start = destpos.sign_start - dest->exp_len;
destpos.mantissa_start = 0;
destpos.mantissa_start = destpos.exp_start + dest->exp_len;
}
- srcpos.len = src.exp_len + src.mantissa_len;
- if (src.byte_order == LITTLE_ENDIAN) {
+ srcpos.len = src->exp_len + src->mantissa_len;
+ if (src->byte_order == LITTLE_ENDIAN) {
srcpos.sign_start = srcpos.len - 1;
srcpos.exp_start = srcpos.sign_start - src->exp_len;
srcpos.mantissa_start = 0;
dest->byte_order, tmp.s);
}
-double ctf_double_read(const unsigned char *ptr, const struct ctf_float *src)
+double ctf_double_read(const unsigned char *ptr, const struct type_class_float *src)
{
union doubleIEEE754 u;
struct ctf_float dest = {
return u.v;
}
-size_t ctf_double_write(unsigned char *ptr, const struct ctf_float *dest,
+size_t ctf_double_write(unsigned char *ptr, const struct type_class_float *dest,
double v)
{
union doubleIEEE754 u;
}
long double ctf_ldouble_read(const unsigned char *ptr,
- const struct ctf_float *src)
+ const struct type_class_float *src)
{
union ldoubleIEEE754 u;
struct ctf_float dest = {
return u.v;
}
-size_t ctf_ldouble_write(unsigned char *ptr, const struct ctf_float *dest,
+size_t ctf_ldouble_write(unsigned char *ptr, const struct type_class_float *dest,
long double v)
{
union ldoubleIEEE754 u;