Emulation Library libgcc.a (libgccM.a / libgccMD.a) (1)
Floating-point Calculation Functions
Double-type operation
__adddf3
Addition
__subdf3
Subtraction
__muldf3
Multiplication
__divdf3
Division
__negdf2
Sign change
Float-type operation
__addsf3
Addition
__subsf3
Subtraction
__mulsf3
Multiplication
__divsf3
Division
__negsf2
Sign change
Type conversion
double → unsigned long x ← a
__fixunsdfsi
__fixdfsi
double → long
long → double
__floatsidf
float → unsigned long
__fixunssfsi
float → long
__fixsfsi
__floatsisf
long → float
double → float
__truncdfsf2
float → double
__extendsfdf2
Comparison
__∗∗df2
double type
__∗∗sf2
float type
x ← a + b
x ← a - b
x ← a * b
x ← a / b
x ← -a
x ← a + b
x ← a - b
x ← a * b
x ← a / b
x ← -a
x ← a
x ← a
x ← a
x ← a
x ← a
x ← a
x ← a
Changes %psr and x by a - b
∗∗=eq, ne, gt, ge, lt, le
Changes %psr and x by a - %13
∗∗=eq, ne, gt, ge, lt, le
Floating-point Data Format
Double-type data format
63
62
52
51
S
Exponent part
Double-type effective range
+0:
0.0e+0 0x00000000 00000000
-0:
-0.0e+0 0x80000000 00000000
Maximum normalized number:
1.79769e+308 0x7fefffff ffffffff
Minimum normalized number:
2.22507e-308 0x00100000 00000000
Maximum unnormalized number: 2.22507e-308 0x000fffff ffffffff
Minimum unnormalized number:
4.94065e-324 0x00000000 00000001
Infinity:
0x7ff00000 00000000
-Infinity:
0xfff00000 00000000
Float-type data format
31
30
23
22
S
Exponent part
Float-type effective range
+0:
0.0e+0f 0x00000000
-0:
-0.0e+0f 0x80000000
Maximum normalized number:
3.40282e+38f 0x7f7fffff
Minimum normalized number:
1.17549e-38f 0x00800000
Maximum unnormalized number: 1.17549e-38f 0x007fffff
Minimum unnormalized number:
1.40129e-45f 0x00000001
Infinity:
0x7f800000
-Infinity:
0xff800000
Library
0
Fixed-point part
0
Fixed-point part
Reference
Need help?
Do you have a question about the S5U1C17001C and is the answer not in the manual?