fix(freertos): Only show the file name if the pointer is not NULL. Try
to shorten the path to only the last components (mydir/foo.c =>
foo.c). Use fixed-width specifiers instead of tab characters.
Merges https://github.com/espressif/ESP8266_RTOS_SDK/pull/192
fix(freertos): Better implementation of realloc, calloc and zalloc.
Implement them with the same symmetry as malloc. Removes duplicate and
nearly identical implementations. Make the libc symbols aliases of the
non-tracing versions.
This improves on my previous patch for espressif/ESP8266_RTOS_SDK#189.
fix(esp8266): If MEMLEAK_DEBUG is defined, create an alternate function
called `.._trace` that for each of `pvPortMalloc`, `pvPortZalloc`,
`pvPortCalloc` and `vPortFree`. The original function delegates to this new
tracing function but uses NULL and 0 for the file and line number. This ensures
that the pvPortMalloc exists as a symbol that can be used by the binary blobs
without any problems.
Example output from earlier usage:
~~~
--------Show Malloc--------
F:ppT L:512 malloc 2064 @ 0x3ffefd08
F:pmT L:256 malloc 1040 @ 0x3fff0518
F:tiT L:512 malloc 2064 @ 0x3fff0928
F:uiT L:640 malloc 2576 @ 0x3fff1138
F:IDLE L:176 malloc 720 @ 0x3fff1b48
F:Tmr Svc L:512 malloc 2064 @ 0x3fff1e18
~~~
fix(lwip): Remove declarations of `pvPortMalloc()` and family.
This fixes some of the issues in espressif/ESP8266_RTOS_SDK#189 but some of the
example applications fails. Not ready for merge but comments on my approach
will be appreciated.
- fix(esp8266):
- Adding includes for missing symbols.
- Removing unused variables.
- Skip unsupported packing pragmas.
- Add rom_functions.h for symbols that come from the ESP ROM. Add attributes on
ets_printf so GCC will check the syntax of the formatting string and types of
the arguments.
- Add ETS_GPIO_INTR_EN(DIS)ABLE macro.
- Use gpio_output_conf instead of gpio_output_set.
- fix(freertos):
- Define functions that are useful.
- Use correct printf symbols when printing.
- fix(lwip):
- Ignore the warning in sntp.
- fix(mqtt):
- `xTicksToWait` is unsigned, can't check for less than zero. Remove
unused variables.
- fix(newlib):
- `_free_r()` returns `void`, not `void *`.
- Adding includes for missing symbols.
- fix(ssl):
- Make sure functions always return a value.
Merges https://github.com/espressif/ESP8266_RTOS_SDK/pull/188