Changeset b5440cf in mainline for softfloat/include/softfloat.h


Ignore:
Timestamp:
2005-12-19T09:47:27Z (19 years ago)
Author:
Josef Cejka <malyzelenyhnus@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
7e557805
Parents:
36aee474
Message:

Some changes in file structures, small bugfix in subsf3().

File:
1 edited

Legend:

Unmodified
Added
Removed
  • softfloat/include/softfloat.h

    r36aee474 rb5440cf  
    2929#ifndef __SOFTFLOAT_H__
    3030#define __SOFTFLOAT_H__
    31 
    32 
    33 typedef union {
    34         float f;
    35         struct  {
    36                 #ifdef __BIG_ENDIAN__
    37                 __u32 sign:1;
    38                 __u32 exp:8;
    39                 __u32 mantisa:23;
    40                 #elif defined __LITTLE_ENDIAN__
    41                 __u32 mantisa:23;
    42                 __u32 exp:8;
    43                 __u32 sign:1;
    44                 #else
    45                 #error "Unknown endians."
    46                 #endif
    47                 } parts __attribute__ ((packed));
    48         } float32;
    49        
    50 typedef union {
    51         double d;
    52         struct  {
    53                 #ifdef __BIG_ENDIAN__
    54                 __u64 sign:1;
    55                 __u64 exp:11;
    56                 __u64 mantisa:52;
    57                 #elif defined __LITTLE_ENDIAN__
    58                 __u64 mantisa:52;
    59                 __u64 exp:11;
    60                 __u64 sign:1;
    61                 #else
    62                 #error "Unknown endians."
    63                 #endif
    64                 } parts __attribute__ ((packed));
    65         } float64;
    66 
    67 #define FLOAT32_MAX 0x7f800000
    68 #define FLOAT32_MIN 0xff800000
    69 #define FLOAT64_MAX
    70 #define FLOAT64_MIN
    71 
    72 #define FLOAT32_BIAS 0xF7
    73 #define FLOAT64_BIAS 0x3FF
    74 #define FLOAT80_BIAS 0x3FFF
    75 
    76 
    7731
    7832float __addsf3(float a, float b);
Note: See TracChangeset for help on using the changeset viewer.