Changeset c0c38c7c in mainline for uspace/lib/softfloat/conversion.h


Ignore:
Timestamp:
2015-03-14T21:36:44Z (9 years ago)
Author:
Martin Decky <martin@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
7f9d97f3
Parents:
2c7fdaa
Message:

software floating point overhaul
use proper type mapping
fix cosine calculation

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/softfloat/conversion.h

    r2c7fdaa rc0c38c7c  
    3636#ifndef __CONVERSION_H__
    3737#define __CONVERSION_H__
     38
     39#include <mathtypes.h>
    3840
    3941extern float64 float32_to_float64(float32);
     
    99101extern float128 int64_to_float128(int64_t);
    100102
     103#ifdef float32_t
     104extern float32_t __floatsisf(int32_t);
     105extern float32_t __floatdisf(int64_t);
     106extern float32_t __floatunsisf(uint32_t);
     107extern float32_t __floatundisf(uint64_t);
     108extern int32_t __fixsfsi(float32_t);
     109extern int64_t __fixsfdi(float32_t);
     110extern uint32_t __fixunssfsi(float32_t);
     111extern uint64_t __fixunssfdi(float32_t);
     112extern int32_t __aeabi_f2iz(float32_t);
     113extern uint32_t __aeabi_f2uiz(float32_t);
     114extern float32_t __aeabi_i2f(int32_t);
     115extern float32_t __aeabi_l2f(int64_t);
     116extern float32_t __aeabi_ui2f(uint32_t);
     117extern float32_t __aeabi_ul2f(uint64_t);
     118#endif
     119
     120#ifdef float64_t
     121extern float64_t __floatsidf(int32_t);
     122extern float64_t __floatdidf(int64_t);
     123extern float64_t __floatunsidf(uint32_t);
     124extern float64_t __floatundidf(uint64_t);
     125extern int32_t __fixdfsi(float64_t);
     126extern int64_t __fixdfdi(float64_t);
     127extern uint32_t __fixunsdfsi(float64_t);
     128extern uint64_t __fixunsdfdi(float64_t);
     129extern float64_t __aeabi_i2d(int32_t);
     130extern float64_t __aeabi_ui2d(uint32_t);
     131extern float64_t __aeabi_l2d(int64_t);
     132extern int32_t __aeabi_d2iz(float64_t);
     133extern int64_t __aeabi_d2lz(float64_t);
     134extern uint32_t __aeabi_d2uiz(float64_t);
     135#endif
     136
     137#ifdef float128_t
     138extern float128_t __floatsitf(int32_t);
     139extern float128_t __floatditf(int64_t);
     140extern float128_t __floatunsitf(uint32_t);
     141extern float128_t __floatunditf(uint64_t);
     142extern int32_t __fixtfsi(float128_t);
     143extern int64_t __fixtfdi(float128_t);
     144extern uint32_t __fixunstfsi(float128_t);
     145extern uint64_t __fixunstfdi(float128_t);
     146extern int32_t _Qp_qtoi(float128_t *);
     147extern int64_t _Qp_qtox(float128_t *);
     148extern uint32_t _Qp_qtoui(float128_t *);
     149extern uint64_t _Qp_qtoux(float128_t *);
     150extern void _Qp_itoq(float128_t *, int32_t);
     151extern void _Qp_xtoq(float128_t *, int64_t);
     152extern void _Qp_uitoq(float128_t *, uint32_t);
     153extern void _Qp_uxtoq(float128_t *, uint64_t);
     154#endif
     155
     156#if (defined(float32_t) && defined(float64_t))
     157extern float32_t __truncdfsf2(float64_t);
     158extern float64_t __extendsfdf2(float32_t);
     159extern float64_t __aeabi_f2d(float32_t);
     160extern float32_t __aeabi_d2f(float64_t);
     161#endif
     162
     163#if (defined(float32_t) && defined(float128_t))
     164extern float32_t __trunctfsf2(float128_t);
     165extern float128_t __extendsftf2(float32_t);
     166extern void _Qp_stoq(float128_t *, float32_t);
     167extern float32_t _Qp_qtos(float128_t *);
     168#endif
     169
     170#if (defined(float64_t) && defined(float128_t))
     171extern float64_t __trunctfdf2(float128_t);
     172extern float128_t __extenddftf2(float64_t);
     173extern void _Qp_dtoq(float128_t *, float64_t);
     174extern float64_t _Qp_qtod(float128_t *);
     175#endif
     176
    101177#endif
    102178
Note: See TracChangeset for help on using the changeset viewer.