mirror of
https://git.planet-casio.com/Lephenixnoir/gint.git
synced 2024-12-29 13:03:36 +01:00
18f9a18925
The new allocator uses a segregated best-fit algorithm with exact-size lists for all sizes between 8 bytes (the minimum) and 60 bytes, one list for blocks of size 64-252 and one for larger blocks. Arenas managed by this allocator have built-in statistics that track used and free memory (accounting for block headers), peak memory, and various allocation results. In addition, the allocator has self-checks in the form of integrity verifications, that can be enabled with -DGINT_KMALLOC_DEBUG=1 at configuration time or with the :dev configuration for GiteaPC. This is used by gintctl. The kmalloc interface is extended with a new arena covering all unused memory in user RAM, managed by gint's allocator. It spans about 4 kB on SH3 fx-9860G, 16 kB on SH4 fx-9860G, and 500 kB on fx-CG 50, in addition to the OS heap. This new arena is now the default arena for malloc(), except on SH3 where some heap problems are currently known.
25 lines
595 B
Makefile
25 lines
595 B
Makefile
# giteapc: version=1 depends=Lephenixnoir/sh-elf-gcc,Lephenixnoir/fxsdk
|
|
|
|
-include giteapc-config.make
|
|
|
|
configure:
|
|
@ fxsdk build-fx -c $(GINT_CMAKE_OPTIONS)
|
|
@ fxsdk build-cg -c $(GINT_CMAKE_OPTIONS)
|
|
|
|
build:
|
|
@ fxsdk build-fx
|
|
@ fxsdk build-cg
|
|
|
|
install:
|
|
@ fxsdk build-fx install
|
|
@ fxsdk build-cg install
|
|
|
|
uninstall:
|
|
@ if [ -e build-fx/install_manifest.txt ]; then \
|
|
xargs rm -f < build-fx/install_manifest.txt; \
|
|
fi
|
|
@ if [ -e build-cg/install_manifest.txt ]; then \
|
|
xargs rm -f < build-cg/install_manifest.txt; \
|
|
fi
|
|
|
|
.PHONY: configure build install uninstall
|