This is the mail archive of the newlib@sourceware.org mailing list for the newlib project.
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
| Other format: | [Raw text] | |
On Mon, 23 Apr 2007, Joel Sherrill wrote:But it trades that against more calls to malloc in the middle of application execution. That increases
[snip]--enable-newlib-reent-small enable small reentrant struct supportThis looks promising for general RTEMS use since it doesn't sound like it
disables any functionality. Any ideas how much difference it makes? It looks
pretty substantial.
Without having actually measured, I don't think it saves you a whole lot if your threads actually use libc a lot. It's primary function is to postpone allocation of several reentrancy data fields to runtime as needed, instead of always including them statically in struct reent. If many of your threads only make trivial use of libc however, I guess there could be interesting savings.
[snip]OK. I see that now. If that's all it does, I don't mind turning it on since this is embedded spaceInteresting trade-off but doesn't this limit you to one atexit() per thread?--disable-newlib-atexit-alloc disable dynamic allocation of atexit entries
AFAIK it only disables dynamic allocation of additional atexit() entries beyond the 32 dictated by ANSI C. See e.g.: <sys/reent.h>.
[snip]This seems like a reasonable possibility for some applications but I doubt it would be the difference--enable-target-optspace optimize for space
..and this switches from using -O2 to -Os, and makes some libc functions simpler, e.g. mem* and str* functions.
Take care, ali:)
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |