=============================================================================== 40004f68 : ) { double result; char *end; if ( !n ) 40004f68: 0a058e63 beqz a1,40005024 { 40004f6c: fc010113 addi sp,sp,-64 40004f70: 02112e23 sw ra,60(sp) 40004f74: 02812c23 sw s0,56(sp) 40004f78: 02912a23 sw s1,52(sp) 40004f7c: 00058413 mv s0,a1 40004f80: 03212823 sw s2,48(sp) 40004f84: 02813427 fsd fs0,40(sp) 40004f88: 00050493 mv s1,a0 40004f8c: 00060913 mv s2,a2 return RTEMS_INVALID_ADDRESS; errno = 0; 40004f90: 33c0a0ef jal ra,4000f2cc <__errno> 40004f94: 00052023 sw zero,0(a0) *n = 0; 40004f98: 00042023 sw zero,0(s0) 40004f9c: 00042223 sw zero,4(s0) result = strtod( s, &end ); 40004fa0: 01c10593 addi a1,sp,28 40004fa4: 00048513 mv a0,s1 40004fa8: 6610b0ef jal ra,40010e08 40004fac: 00a13427 fsd fa0,8(sp) 40004fb0: 22a50453 fmv.d fs0,fa0 if ( endptr ) *endptr = end; 40004fb4: 01c12783 lw a5,28(sp) if ( endptr ) 40004fb8: 00090463 beqz s2,40004fc0 *endptr = end; 40004fbc: 00f92023 sw a5,0(s2) if ( end == s ) 40004fc0: 06f48663 beq s1,a5,4000502c return RTEMS_NOT_DEFINED; if ( ( errno == ERANGE ) && 40004fc4: 3080a0ef jal ra,4000f2cc <__errno> 40004fc8: 00052703 lw a4,0(a0) 40004fcc: 02200793 li a5,34 40004fd0: 02f70463 beq a4,a5,40004ff8 (( result == 0 ) || ( result == HUGE_VAL ) || ( result == -HUGE_VAL ))) return RTEMS_INVALID_NUMBER; *n = result; 40004fd4: 00843027 fsd fs0,0(s0) return RTEMS_SUCCESSFUL; 40004fd8: 00000513 li a0,0 } 40004fdc: 03c12083 lw ra,60(sp) 40004fe0: 03812403 lw s0,56(sp) 40004fe4: 03412483 lw s1,52(sp) 40004fe8: 03012903 lw s2,48(sp) 40004fec: 02813407 fld fs0,40(sp) 40004ff0: 04010113 addi sp,sp,64 40004ff4: 00008067 ret if ( ( errno == ERANGE ) && 40004ff8: d20007d3 fcvt.d.w fa5,zero return RTEMS_INVALID_NUMBER; 40004ffc: 00a00513 li a0,10 if ( ( errno == ERANGE ) && 40005000: a2f427d3 feq.d a5,fs0,fa5 40005004: fc079ce3 bnez a5,40004fdc <== NEVER TAKEN (( result == 0 ) || ( result == HUGE_VAL ) || ( result == -HUGE_VAL ))) 40005008: 8081b787 fld fa5,-2040(gp) # 40017bf0 <_Linker_set__Per_CPU_Data_begin+0xc> 4000500c: a2f427d3 feq.d a5,fs0,fa5 40005010: fc0796e3 bnez a5,40004fdc 40005014: 8101b787 fld fa5,-2032(gp) # 40017bf8 <_Linker_set__Per_CPU_Data_begin+0x14> 40005018: a2f427d3 feq.d a5,fs0,fa5 4000501c: fa078ce3 beqz a5,40004fd4 <== NEVER TAKEN 40005020: fbdff06f j 40004fdc return RTEMS_INVALID_ADDRESS; 40005024: 00900513 li a0,9 } 40005028: 00008067 ret 4000502c: 03c12083 lw ra,60(sp) 40005030: 03812403 lw s0,56(sp) 40005034: 03412483 lw s1,52(sp) 40005038: 03012903 lw s2,48(sp) 4000503c: 02813407 fld fs0,40(sp) return RTEMS_NOT_DEFINED; 40005040: 00b00513 li a0,11 } 40005044: 04010113 addi sp,sp,64 40005048: 00008067 ret =============================================================================== 4000504c : ) { float result; char *end; if ( !n ) 4000504c: 0a058a63 beqz a1,40005100 { 40005050: fd010113 addi sp,sp,-48 40005054: 02112623 sw ra,44(sp) 40005058: 02812423 sw s0,40(sp) 4000505c: 02912223 sw s1,36(sp) 40005060: 00058413 mv s0,a1 40005064: 03212023 sw s2,32(sp) 40005068: 00813c27 fsd fs0,24(sp) 4000506c: 00050493 mv s1,a0 40005070: 00060913 mv s2,a2 return RTEMS_INVALID_ADDRESS; errno = 0; 40005074: 2580a0ef jal ra,4000f2cc <__errno> 40005078: 00052023 sw zero,0(a0) *n = 0; 4000507c: 00042023 sw zero,0(s0) result = strtof( s, &end ); 40005080: 00c10593 addi a1,sp,12 40005084: 00048513 mv a0,s1 40005088: 5c10b0ef jal ra,40010e48 4000508c: 20a50453 fmv.s fs0,fa0 if ( endptr ) *endptr = end; 40005090: 00c12783 lw a5,12(sp) if ( endptr ) 40005094: 00090463 beqz s2,4000509c *endptr = end; 40005098: 00f92023 sw a5,0(s2) if ( end == s ) 4000509c: 06f48663 beq s1,a5,40005108 return RTEMS_NOT_DEFINED; if ( ( errno == ERANGE ) && 400050a0: 22c0a0ef jal ra,4000f2cc <__errno> 400050a4: 00052703 lw a4,0(a0) 400050a8: 02200793 li a5,34 400050ac: 02f70463 beq a4,a5,400050d4 (( result == 0 ) || ( result == HUGE_VALF ) || ( result == -HUGE_VALF ))) return RTEMS_INVALID_NUMBER; *n = result; 400050b0: 00842027 fsw fs0,0(s0) return RTEMS_SUCCESSFUL; 400050b4: 00000513 li a0,0 } 400050b8: 02c12083 lw ra,44(sp) 400050bc: 02812403 lw s0,40(sp) 400050c0: 02412483 lw s1,36(sp) 400050c4: 02012903 lw s2,32(sp) 400050c8: 01813407 fld fs0,24(sp) 400050cc: 03010113 addi sp,sp,48 400050d0: 00008067 ret if ( ( errno == ERANGE ) && 400050d4: f00007d3 fmv.w.x fa5,zero return RTEMS_INVALID_NUMBER; 400050d8: 00a00513 li a0,10 if ( ( errno == ERANGE ) && 400050dc: a0f427d3 feq.s a5,fs0,fa5 400050e0: fc079ce3 bnez a5,400050b8 <== NEVER TAKEN (( result == 0 ) || ( result == HUGE_VALF ) || ( result == -HUGE_VALF ))) 400050e4: 88c1a787 flw fa5,-1908(gp) # 40017c74 <_Linker_set__Per_CPU_Data_begin+0x90> 400050e8: a0f427d3 feq.s a5,fs0,fa5 400050ec: fc0796e3 bnez a5,400050b8 400050f0: 8901a787 flw fa5,-1904(gp) # 40017c78 <_Linker_set__Per_CPU_Data_begin+0x94> 400050f4: a0f427d3 feq.s a5,fs0,fa5 400050f8: fa078ce3 beqz a5,400050b0 <== NEVER TAKEN 400050fc: fbdff06f j 400050b8 return RTEMS_INVALID_ADDRESS; 40005100: 00900513 li a0,9 } 40005104: 00008067 ret 40005108: 02c12083 lw ra,44(sp) 4000510c: 02812403 lw s0,40(sp) 40005110: 02412483 lw s1,36(sp) 40005114: 02012903 lw s2,32(sp) 40005118: 01813407 fld fs0,24(sp) return RTEMS_NOT_DEFINED; 4000511c: 00b00513 li a0,11 } 40005120: 03010113 addi sp,sp,48 40005124: 00008067 ret =============================================================================== 40005128 : ) { long result; char *end; if ( !n ) 40005128: 0a058663 beqz a1,400051d4 { 4000512c: fd010113 addi sp,sp,-48 40005130: 02112623 sw ra,44(sp) 40005134: 02812423 sw s0,40(sp) 40005138: 02912223 sw s1,36(sp) 4000513c: 00058413 mv s0,a1 40005140: 03212023 sw s2,32(sp) 40005144: 01312e23 sw s3,28(sp) 40005148: 00050493 mv s1,a0 4000514c: 00068993 mv s3,a3 40005150: 00060913 mv s2,a2 return RTEMS_INVALID_ADDRESS; errno = 0; 40005154: 1780a0ef jal ra,4000f2cc <__errno> 40005158: 00052023 sw zero,0(a0) *n = 0; result = strtol( s, &end, base ); 4000515c: 00098613 mv a2,s3 *n = 0; 40005160: 00042023 sw zero,0(s0) result = strtol( s, &end, base ); 40005164: 00c10593 addi a1,sp,12 40005168: 00048513 mv a0,s1 4000516c: 7750b0ef jal ra,400110e0 if ( endptr ) *endptr = end; 40005170: 00c12783 lw a5,12(sp) result = strtol( s, &end, base ); 40005174: 00050993 mv s3,a0 if ( endptr ) 40005178: 00090463 beqz s2,40005180 *endptr = end; 4000517c: 00f92023 sw a5,0(s2) if ( end == s ) 40005180: 04f48e63 beq s1,a5,400051dc return RTEMS_NOT_DEFINED; if ( ( errno == ERANGE ) && 40005184: 1480a0ef jal ra,4000f2cc <__errno> 40005188: 00052703 lw a4,0(a0) 4000518c: 02200793 li a5,34 40005190: 02f70463 beq a4,a5,400051b8 errno = ERANGE; return RTEMS_INVALID_NUMBER; } #endif *n = result; 40005194: 01342023 sw s3,0(s0) return RTEMS_SUCCESSFUL; 40005198: 00000513 li a0,0 } 4000519c: 02c12083 lw ra,44(sp) 400051a0: 02812403 lw s0,40(sp) 400051a4: 02412483 lw s1,36(sp) 400051a8: 02012903 lw s2,32(sp) 400051ac: 01c12983 lw s3,28(sp) 400051b0: 03010113 addi sp,sp,48 400051b4: 00008067 ret (( result == 0 ) || ( result == LONG_MAX ) || ( result == LONG_MIN ))) 400051b8: 800007b7 lui a5,0x80000 400051bc: fff7c793 not a5,a5 400051c0: 00f98663 beq s3,a5,400051cc 400051c4: 00f9f7b3 and a5,s3,a5 400051c8: fc0796e3 bnez a5,40005194 <== NEVER TAKEN return RTEMS_INVALID_NUMBER; 400051cc: 00a00513 li a0,10 400051d0: fcdff06f j 4000519c return RTEMS_INVALID_ADDRESS; 400051d4: 00900513 li a0,9 } 400051d8: 00008067 ret 400051dc: 02c12083 lw ra,44(sp) 400051e0: 02812403 lw s0,40(sp) 400051e4: 02412483 lw s1,36(sp) 400051e8: 02012903 lw s2,32(sp) 400051ec: 01c12983 lw s3,28(sp) return RTEMS_NOT_DEFINED; 400051f0: 00b00513 li a0,11 } 400051f4: 03010113 addi sp,sp,48 400051f8: 00008067 ret =============================================================================== 400051fc : ) { long result; char *end; if ( !n ) 400051fc: 0a058663 beqz a1,400052a8 { 40005200: fd010113 addi sp,sp,-48 40005204: 02112623 sw ra,44(sp) 40005208: 02812423 sw s0,40(sp) 4000520c: 02912223 sw s1,36(sp) 40005210: 00058413 mv s0,a1 40005214: 03212023 sw s2,32(sp) 40005218: 01312e23 sw s3,28(sp) 4000521c: 00050493 mv s1,a0 40005220: 00068993 mv s3,a3 40005224: 00060913 mv s2,a2 return RTEMS_INVALID_ADDRESS; errno = 0; 40005228: 0a40a0ef jal ra,4000f2cc <__errno> 4000522c: 00052023 sw zero,0(a0) *n = 0; result = strtol( s, &end, base ); 40005230: 00098613 mv a2,s3 *n = 0; 40005234: 00042023 sw zero,0(s0) result = strtol( s, &end, base ); 40005238: 00c10593 addi a1,sp,12 4000523c: 00048513 mv a0,s1 40005240: 6a10b0ef jal ra,400110e0 if ( endptr ) *endptr = end; 40005244: 00c12783 lw a5,12(sp) result = strtol( s, &end, base ); 40005248: 00050993 mv s3,a0 if ( endptr ) 4000524c: 00090463 beqz s2,40005254 *endptr = end; 40005250: 00f92023 sw a5,0(s2) if ( end == s ) 40005254: 04f48e63 beq s1,a5,400052b0 return RTEMS_NOT_DEFINED; if ( ( errno == ERANGE ) && 40005258: 0740a0ef jal ra,4000f2cc <__errno> 4000525c: 00052703 lw a4,0(a0) 40005260: 02200793 li a5,34 40005264: 02f70463 beq a4,a5,4000528c (( result == 0 ) || ( result == LONG_MAX ) || ( result == LONG_MIN ))) return RTEMS_INVALID_NUMBER; *n = result; 40005268: 01342023 sw s3,0(s0) return RTEMS_SUCCESSFUL; 4000526c: 00000513 li a0,0 } 40005270: 02c12083 lw ra,44(sp) 40005274: 02812403 lw s0,40(sp) 40005278: 02412483 lw s1,36(sp) 4000527c: 02012903 lw s2,32(sp) 40005280: 01c12983 lw s3,28(sp) 40005284: 03010113 addi sp,sp,48 40005288: 00008067 ret (( result == 0 ) || ( result == LONG_MAX ) || ( result == LONG_MIN ))) 4000528c: 800007b7 lui a5,0x80000 40005290: fff7c793 not a5,a5 40005294: 00f98663 beq s3,a5,400052a0 40005298: 00f9f7b3 and a5,s3,a5 4000529c: fc0796e3 bnez a5,40005268 <== NEVER TAKEN return RTEMS_INVALID_NUMBER; 400052a0: 00a00513 li a0,10 400052a4: fcdff06f j 40005270 return RTEMS_INVALID_ADDRESS; 400052a8: 00900513 li a0,9 } 400052ac: 00008067 ret 400052b0: 02c12083 lw ra,44(sp) 400052b4: 02812403 lw s0,40(sp) 400052b8: 02412483 lw s1,36(sp) 400052bc: 02012903 lw s2,32(sp) 400052c0: 01c12983 lw s3,28(sp) return RTEMS_NOT_DEFINED; 400052c4: 00b00513 li a0,11 } 400052c8: 03010113 addi sp,sp,48 400052cc: 00008067 ret =============================================================================== 400052d0 : ) { long long result; char *end; if ( !n ) 400052d0: 0c058663 beqz a1,4000539c { 400052d4: fd010113 addi sp,sp,-48 400052d8: 02112623 sw ra,44(sp) 400052dc: 02812423 sw s0,40(sp) 400052e0: 02912223 sw s1,36(sp) 400052e4: 00058413 mv s0,a1 400052e8: 03212023 sw s2,32(sp) 400052ec: 01312e23 sw s3,28(sp) 400052f0: 01412c23 sw s4,24(sp) 400052f4: 00068993 mv s3,a3 400052f8: 00050493 mv s1,a0 400052fc: 00060913 mv s2,a2 return RTEMS_INVALID_ADDRESS; errno = 0; 40005300: 7cd090ef jal ra,4000f2cc <__errno> 40005304: 00052023 sw zero,0(a0) *n = 0; 40005308: 00000793 li a5,0 4000530c: 00000813 li a6,0 40005310: 00f42023 sw a5,0(s0) result = strtoll( s, &end, base ); 40005314: 00098613 mv a2,s3 *n = 0; 40005318: 01042223 sw a6,4(s0) result = strtoll( s, &end, base ); 4000531c: 00c10593 addi a1,sp,12 40005320: 00048513 mv a0,s1 40005324: 0fc0c0ef jal ra,40011420 if ( endptr ) *endptr = end; 40005328: 00c12783 lw a5,12(sp) result = strtoll( s, &end, base ); 4000532c: 00050993 mv s3,a0 40005330: 00058a13 mv s4,a1 if ( endptr ) 40005334: 00090463 beqz s2,4000533c *endptr = end; 40005338: 00f92023 sw a5,0(s2) if ( end == s ) 4000533c: 06f48463 beq s1,a5,400053a4 return RTEMS_NOT_DEFINED; if ( ( errno == ERANGE ) && 40005340: 78d090ef jal ra,4000f2cc <__errno> 40005344: 00052703 lw a4,0(a0) 40005348: 02200793 li a5,34 4000534c: 02f70863 beq a4,a5,4000537c (( result == 0 ) || ( result == LONG_LONG_MAX ) || ( result == LONG_LONG_MIN ))) return RTEMS_INVALID_NUMBER; *n = result; 40005350: 01342023 sw s3,0(s0) 40005354: 01442223 sw s4,4(s0) return RTEMS_SUCCESSFUL; 40005358: 00000513 li a0,0 } 4000535c: 02c12083 lw ra,44(sp) 40005360: 02812403 lw s0,40(sp) 40005364: 02412483 lw s1,36(sp) 40005368: 02012903 lw s2,32(sp) 4000536c: 01c12983 lw s3,28(sp) 40005370: 01812a03 lw s4,24(sp) 40005374: 03010113 addi sp,sp,48 40005378: 00008067 ret (( result == 0 ) || ( result == LONG_LONG_MAX ) || ( result == LONG_LONG_MIN ))) 4000537c: fff00793 li a5,-1 40005380: 04f98463 beq s3,a5,400053c8 40005384: 001a1793 slli a5,s4,0x1 40005388: 0017d793 srli a5,a5,0x1 4000538c: 00f9e7b3 or a5,s3,a5 40005390: fc0790e3 bnez a5,40005350 <== NEVER TAKEN return RTEMS_INVALID_NUMBER; 40005394: 00a00513 li a0,10 40005398: fc5ff06f j 4000535c return RTEMS_INVALID_ADDRESS; 4000539c: 00900513 li a0,9 } 400053a0: 00008067 ret 400053a4: 02c12083 lw ra,44(sp) 400053a8: 02812403 lw s0,40(sp) 400053ac: 02412483 lw s1,36(sp) 400053b0: 02012903 lw s2,32(sp) 400053b4: 01c12983 lw s3,28(sp) 400053b8: 01812a03 lw s4,24(sp) return RTEMS_NOT_DEFINED; 400053bc: 00b00513 li a0,11 } 400053c0: 03010113 addi sp,sp,48 400053c4: 00008067 ret (( result == 0 ) || ( result == LONG_LONG_MAX ) || ( result == LONG_LONG_MIN ))) 400053c8: 800007b7 lui a5,0x80000 400053cc: fff7c793 not a5,a5 400053d0: fafa1ae3 bne s4,a5,40005384 return RTEMS_INVALID_NUMBER; 400053d4: 00a00513 li a0,10 400053d8: f85ff06f j 4000535c