| /* Note: this file has been automatically generated. |
| DO NOT EDIT, or your changes WILL BE LOST! */ |
| |
| /* $Id: bench-libc.dox 1604 2008-02-24 01:27:22Z dmix $ */ |
| |
| /** \page benchmarks |
| |
| \section bench_libc A few of libc functions. |
| |
| Avr-gcc version is 4.2.3 |
| |
| The size of function is given in view of all picked up functions. By default |
| Avr-libc is compiled with \c -mcall-prologues option. In brackets the size |
| without taking into account modules of a prologue and an epilogue is |
| resulted. Both of the size can coincide, if function does not cause a |
| prologue/epilogue. |
| |
| <small> |
| <table> |
| <tr> |
| <td width="50%"><strong>Function</strong></td> |
| <td width="20%"><strong>Units</strong></td> |
| <td width="10%"><strong>Avr2</strong></td> |
| <td width="10%"><strong>Avr25</strong></td> |
| <td width="10%"><strong>Avr4</strong></td> |
| </tr> |
| <tr> |
| <td> atoi ("12345")</td> |
| <td>Flash bytes<br>Stack bytes<br>MCU clocks</td> |
| <td>82 (82)<br>2<br>155</td> |
| <td>78 (78)<br><br></td> |
| <td>74 (74)<br>2<br>149</td> |
| </tr> |
| <tr> |
| <td> atol ("12345")</td> |
| <td>Flash bytes<br>Stack bytes<br>MCU clocks</td> |
| <td>122 (122)<br>2<br>221</td> |
| <td>118 (118)<br><br></td> |
| <td>118 (118)<br>2<br>219</td> |
| </tr> |
| <tr> |
| <td> dtostre (1.2345, s, 6, 0)</td> |
| <td>Flash bytes<br>Stack bytes<br>MCU clocks</td> |
| <td>1184 (1072)<br>17<br>1313</td> |
| <td>1088 (978)<br><br></td> |
| <td>1088 (978)<br>17<br>1152</td> |
| </tr> |
| <tr> |
| <td> dtostrf (1.2345, 15, 6, s)</td> |
| <td>Flash bytes<br>Stack bytes<br>MCU clocks</td> |
| <td>1676 (1564)<br>36<br>1608</td> |
| <td>1548 (1438)<br><br></td> |
| <td>1548 (1438)<br>36<br>1443</td> |
| </tr> |
| <tr> |
| <td> itoa (12345, s, 10)</td> |
| <td>Flash bytes<br>Stack bytes<br>MCU clocks</td> |
| <td>150 (150)<br>4<br>1172</td> |
| <td>134 (134)<br><br></td> |
| <td>134 (134)<br>4<br>1152</td> |
| </tr> |
| <tr> |
| <td> ltoa (12345L, s, 10)</td> |
| <td>Flash bytes<br>Stack bytes<br>MCU clocks</td> |
| <td>220 (220)<br>9<br>3174</td> |
| <td>200 (200)<br><br></td> |
| <td>200 (200)<br>9<br>3136</td> |
| </tr> |
| <tr> |
| <td> malloc (1)</td> |
| <td>Flash bytes<br>Stack bytes<br>MCU clocks</td> |
| <td>554 (554)<br>4<br>196</td> |
| <td>506 (506)<br><br></td> |
| <td>506 (506)<br>4<br>178</td> |
| </tr> |
| <tr> |
| <td> realloc ((void *)0, 1)</td> |
| <td>Flash bytes<br>Stack bytes<br>MCU clocks</td> |
| <td>1152 (1040)<br>20<br>303</td> |
| <td>1042 (932)<br><br></td> |
| <td>1042 (932)<br>20<br>280</td> |
| </tr> |
| <tr> |
| <td> qsort (s, sizeof(s), 1, cmp)</td> |
| <td>Flash bytes<br>Stack bytes<br>MCU clocks</td> |
| <td>1242 (1130)<br>38<br>20914</td> |
| <td>990 (880)<br><br></td> |
| <td>1008 (898)<br>38<br>16678</td> |
| </tr> |
| <tr> |
| <td> sprintf_min (s, "%d", 12345)</td> |
| <td>Flash bytes<br>Stack bytes<br>MCU clocks</td> |
| <td>1216 (1104)<br>59<br>1846</td> |
| <td>1090 (980)<br><br></td> |
| <td>1086 (976)<br>59<br>1711</td> |
| </tr> |
| <tr> |
| <td> sprintf (s, "%d", 12345)</td> |
| <td>Flash bytes<br>Stack bytes<br>MCU clocks</td> |
| <td>1674 (1562)<br>58<br>1610</td> |
| <td>1542 (1432)<br><br></td> |
| <td>1498 (1388)<br>58<br>1528</td> |
| </tr> |
| <tr> |
| <td> sprintf_flt (s, "%e", 1.2345)</td> |
| <td>Flash bytes<br>Stack bytes<br>MCU clocks</td> |
| <td>3334 (3222)<br>66<br>2513</td> |
| <td>3084 (2974)<br><br></td> |
| <td>3040 (2930)<br>66<br>2297</td> |
| </tr> |
| <tr> |
| <td> sscanf_min ("12345", "%d", &i)</td> |
| <td>Flash bytes<br>Stack bytes<br>MCU clocks</td> |
| <td>1540 (1428)<br>55<br>1339</td> |
| <td>1354 (1244)<br><br></td> |
| <td>1354 (1244)<br>55<br>1240</td> |
| </tr> |
| <tr> |
| <td> sscanf ("12345", "%d", &i)</td> |
| <td>Flash bytes<br>Stack bytes<br>MCU clocks</td> |
| <td>1950 (1838)<br>53<br>1334</td> |
| <td>1704 (1594)<br><br></td> |
| <td>1704 (1594)<br>53<br>1235</td> |
| </tr> |
| <tr> |
| <td> sscanf ("point,color", "%[a-z]", s)</td> |
| <td>Flash bytes<br>Stack bytes<br>MCU clocks</td> |
| <td>1950 (1838)<br>87<br>2878</td> |
| <td>1704 (1594)<br><br></td> |
| <td>1704 (1594)<br>87<br>2718</td> |
| </tr> |
| <tr> |
| <td> sscanf_flt ("1.2345", "%e", &x)</td> |
| <td>Flash bytes<br>Stack bytes<br>MCU clocks</td> |
| <td>3298 (3186)<br>63<br>2187</td> |
| <td>2934 (2824)<br><br></td> |
| <td>2918 (2808)<br>63<br>1833</td> |
| </tr> |
| <tr> |
| <td> strtod ("1.2345", &p)</td> |
| <td>Flash bytes<br>Stack bytes<br>MCU clocks</td> |
| <td>1570 (1458)<br>22<br>1237</td> |
| <td>1472 (1362)<br><br></td> |
| <td>1456 (1346)<br>22<br>971</td> |
| </tr> |
| <tr> |
| <td> strtol ("12345", &p, 0)</td> |
| <td>Flash bytes<br>Stack bytes<br>MCU clocks</td> |
| <td>942 (830)<br>29<br>1074</td> |
| <td>874 (764)<br><br></td> |
| <td>808 (698)<br>21<br>722</td> |
| </tr> |
| </table> |
| </small> |
| */ |