This is the mail archive of the
mailing list for the newlib project.
RE: [PATCH newlib]New configuration option disable io vector buffer in Newlib
- From: "Howland Craig D (Craig)" <howland at LGSInnovations dot com>
- To: <newlib at sourceware dot org>
- Date: Tue, 26 Mar 2013 09:25:19 -0400
- Subject: RE: [PATCH newlib]New configuration option disable io vector buffer in Newlib
- References: <002a01ce2a0a$96b77c90$c42675b0$ at email@example.com>
> From: firstname.lastname@example.org [mailto:email@example.com]
On Behalf Of Bin Cheng
> Sent: Tuesday, March 26, 2013 6:14 AM
> Stream IO functions in Newlib construct structures like __suio/__siov,
> call function __sfvwrite_r to do the buffered IO. From the view of MCU
> programs, this layer code of vector buffer occupies large amount flash
> is generally unnecessary. So here this patch introduces a new
> time option "--disable-newlib-fvwrite-in-streamio" allowing user to
> io vector buffer in Newlib, thus reduces foot-print of stream-io and
> formatted IO.
> ... It has also been applied in the release of "GNU Tools for ARM
> Processors" and used in many projects I believe.
> Is it OK or any suggestions?
Can you provide numbers of how much size savings were realized?
Is there also a run-time efficiency gain because a layer has been
I suggest that an explanation of this new option with its benefits and
drawbacks be added somewhere. (Does it rate mention in HOWTO?) It's
easy to envision that a new user comes to take Newlib 3 months from now,
and would not even know that this option existed. And even if they were
to read configure, the "disable iov in streamio" description would mean
little or nothing to most people.