mem: implement most of StandardAllocator (#860)
This was tested using `https://github.com/node-dot-cpp/alloc-test` plus a few other by-hand tests.

It seems to work for the case we care about (sysmodules without thread cache-ing).

External users are advised to build with assertions on and contact SciresM if you find issues.

This is a lot of code to have gotten right in one go, and it was written mostly after midnight while sick, so there are probably un-noticed issues.
1 parent 7502e21 commit 87ec045a98e6b43224b01d51507bf4a8757bf5a2
@SciresM SciresM authored on 29 Mar 2020
GitHub committed on 29 Mar 2020
Showing 47 changed files
View
libraries/config/templates/stratosphere.mk
View
libraries/libstratosphere/Makefile
View
libraries/libstratosphere/include/stratosphere.hpp
View
libraries/libstratosphere/include/stratosphere/mem.hpp 0 → 100644
View
libraries/libstratosphere/include/stratosphere/mem/impl/heap/mem_impl_heap_cached_heap.hpp 0 → 100644
View
libraries/libstratosphere/include/stratosphere/mem/impl/heap/mem_impl_heap_central_heap.hpp 0 → 100644
View
libraries/libstratosphere/include/stratosphere/mem/impl/mem_impl_common.hpp 0 → 100644
View
libraries/libstratosphere/include/stratosphere/mem/impl/mem_impl_declarations.hpp 0 → 100644
View
libraries/libstratosphere/include/stratosphere/mem/impl/mem_impl_heap.hpp 0 → 100644
View
libraries/libstratosphere/include/stratosphere/mem/mem_standard_allocator.hpp 0 → 100644
View
libraries/libstratosphere/include/stratosphere/os.hpp
View
libraries/libstratosphere/include/stratosphere/os/os_memory_common.hpp
View
libraries/libstratosphere/include/stratosphere/os/os_memory_heap_api.hpp 0 → 100644
View
libraries/libstratosphere/include/stratosphere/os/os_memory_permission.hpp 0 → 100644
View
libraries/libstratosphere/include/stratosphere/os/os_memory_virtual_address_api.hpp 0 → 100644
View
libraries/libstratosphere/include/stratosphere/os/os_thread.hpp
View
libraries/libstratosphere/include/stratosphere/os/os_thread_local_storage_api.hpp 0 → 100644
View
libraries/libstratosphere/include/stratosphere/os/os_thread_local_storage_common.hpp 0 → 100644
View
libraries/libstratosphere/include/stratosphere/svc/svc_stratosphere_shims.hpp 0 → 100644
View
libraries/libstratosphere/source/diag/diag_assertion_impl.cpp
View
libraries/libstratosphere/source/mem/impl/heap/mem_impl_heap_cached_heap.cpp 0 → 100644
View
libraries/libstratosphere/source/mem/impl/heap/mem_impl_heap_central_heap.cpp 0 → 100644
View
libraries/libstratosphere/source/mem/impl/heap/mem_impl_heap_platform.hpp 0 → 100644
View
libraries/libstratosphere/source/mem/impl/heap/mem_impl_heap_tls_heap_cache.cpp 0 → 100644
View
libraries/libstratosphere/source/mem/impl/heap/mem_impl_heap_tls_heap_cache.hpp 0 → 100644
View
libraries/libstratosphere/source/mem/impl/heap/mem_impl_heap_tls_heap_central.cpp 0 → 100644
Too large (Show diff)
View
libraries/libstratosphere/source/mem/impl/heap/mem_impl_heap_tls_heap_central.hpp 0 → 100644
View
libraries/libstratosphere/source/mem/impl/heap/mem_impl_heap_tls_heap_static.hpp 0 → 100644
View
libraries/libstratosphere/source/mem/impl/mem_impl_platform.hpp 0 → 100644
View
libraries/libstratosphere/source/mem/impl/mem_impl_platform.os.horizon.cpp 0 → 100644
View
libraries/libstratosphere/source/mem/mem_standard_allocator.cpp 0 → 100644
View
libraries/libstratosphere/source/os/impl/os_memory_permission_impl.hpp 0 → 100644
View
libraries/libstratosphere/source/os/impl/os_memory_permission_impl.os.horizon.cpp 0 → 100644
View
libraries/libstratosphere/source/os/os_memory_heap.cpp 0 → 100644
View
libraries/libstratosphere/source/os/os_memory_permission.cpp 0 → 100644
View
libraries/libstratosphere/source/os/os_thread_local_storage_api.cpp 0 → 100644
View
libraries/libstratosphere/source/os/os_virtual_address_memory.cpp 0 → 100644
View
libraries/libvapours/include/vapours/assert.hpp
View
libraries/libvapours/include/vapours/crypto.hpp
View
libraries/libvapours/include/vapours/crypto/crypto_sha1_generator.hpp 0 → 100644
View
libraries/libvapours/include/vapours/crypto/crypto_sha256_generator.hpp
View
libraries/libvapours/include/vapours/crypto/impl/crypto_sha1_impl.hpp 0 → 100644
View
libraries/libvapours/include/vapours/svc/svc_types_common.hpp
View
libraries/libvapours/source/crypto/crypto_sha1_generator.cpp 0 → 100644
View
libraries/libvapours/source/crypto/impl/crypto_sha1_impl.arch.arm64.cpp 0 → 100644
View
stratosphere/ams_mitm/source/fs_mitm/fsmitm_module.cpp
View
stratosphere/dmnt/source/dmnt_main.cpp