[PATCH newlib]An alternative implementation of malloc family's functions with small foot-print

Corinna Vinschen vinschen@redhat.com
Tue May 28 10:45:00 GMT 2013


On May 13 15:41, Bin Cheng wrote:
> Hi all,
> 
> As a part of our library work in GNU Tools for ARM Embedded Processors, we
> implemented an alternative implementation of malloc family's functions with
> small foot-print. 
> 
> We have discussed before how to integrate the code with newlib and it seems
> reasonable to have a configuration option to control it. 
> 
> So this patch introduces new implementation of malloc functions in file
> "nano-mallocr.c" and a new option "--enable-newlib-nano-malloc" to control
> it. The option is disabled by default so it won't change the default
> behavior. 
> 
> We have done lots of internal review work and the code has been applied in
> GNU Tools for ARM Embedded Processor and used for a while, is it OK? Any
> comments will be highly appreciated.
> 
> As for the documentation, I will try to describe newlib's configuration
> options including this one in readme later.

Two comments:

> +  --enable-newlib-nano-malloc    use nano version malloc implementation

Using the word "nano" here *might* imply that the malloc implementation
is a low-size one, but it isn't really clear, IMHO.  Wouldn't something
like "tiny" be more clear?  Alternatively, if you like the nano name, I
think it would be helpful to at least add to the description here, along
the lines of

  --enable-newlib-nano-malloc    use small-footprint nano-malloc implementation

> +#ifndef max
> +#define max(a,b) ((a) >= (b) ? (a) : (b))
> +#endif

I'd prefer if you just include <sys/param.h> and use the uppercase MAX()
macro instead.

Other than that, I think this is ok for inclusion.


Thanks,
Corinna

-- 
Corinna Vinschen
Cygwin Maintainer
Red Hat



More information about the Newlib mailing list