[PATCH 3/6] newlib: xstormy16: fix mallopt definition & mstats handling
Corinna Vinschen
vinschen@redhat.com
Thu Mar 10 08:12:26 GMT 2022
On Mar 9 04:23, Mike Frysinger wrote:
> On 02 Mar 2022 10:46, Corinna Vinschen wrote:
> > On Mar 1 20:36, Mike Frysinger wrote:
> > > The mallopt symbol is defined in tiny-malloc.c, not mallocr.c, but
> > > the Makefile in here tries to compile it out of the latter. This
> > > leads to mallopt never being defined.
> > >
> > > The build also creates mallinfo.o & mallopt.o & mallstats.o objects
> > > to override common ones, but the common dir doesn't use these names.
> > > Instead, it places these all in mstats.o.
> > >
> > > So move the build define logic to a dedicated file and compile it
> > > directly to make things a bit simpler while fixing the missing func
> > > and aligning objects with the cmomon code.
> > > ---
> > > newlib/libc/machine/xstormy16/Makefile.am | 15 ++--------
> > > newlib/libc/machine/xstormy16/Makefile.in | 36 +++++++++++++----------
> > > newlib/libc/machine/xstormy16/mstats.c | 6 ++++
> > > 3 files changed, 29 insertions(+), 28 deletions(-)
> > > create mode 100644 newlib/libc/machine/xstormy16/mstats.c
> > > [...]
> > > diff --git a/newlib/libc/machine/xstormy16/mstats.c b/newlib/libc/machine/xstormy16/mstats.c
> > > new file mode 100644
> > > index 000000000000..1bd24da555f1
> > > --- /dev/null
> > > +++ b/newlib/libc/machine/xstormy16/mstats.c
> > > @@ -0,0 +1,6 @@
> > > +/* stdlib/mstats.c defines all these symbols in this file.
> > > + TODO: Missing mstats function. */
> > > +#define DEFINE_MALLINFO
> > > +#define DEFINE_MALLOC_STATS
> > > +#define DEFINE_MALLOPT
> > > +#include "tiny-malloc.c"
> >
> > XStormy16 is such a small target, it would be better to split these into
> > three files.
>
> it must be really tiny if we need to micro manage this.
> 152 0 0 152 98 lib_a-mallinfo.o
> 274 0 0 274 112 lib_a-mallstats.o
> 4 0 0 4 4 lib_a-mallopt.o
>
> the only way they'd get pulled in is if one func is used, so if code called
> mallopt() but not mallinfo() or malloc_stats(), it would waste 426 bytes.
>
> the point of this change is to align xstormy16 with how common code is laid
> out. are you suggesting we split the common mstats.c too ? it wouldn't be
> hard as that file is pretty small.
> -mike
Sebastian is right. Just leave it as is. GTG.
Thx,
Corinna
More information about the Newlib
mailing list