#include "TemporaryMemoryArena.h" namespace hybridclr { namespace transform { TemporaryMemoryArena::Block TemporaryMemoryArena::AllocBlock(size_t size) { void* data = HYBRIDCLR_MALLOC(size); return { data, size }; } void TemporaryMemoryArena::Begin() { IL2CPP_ASSERT(_buf == nullptr); IL2CPP_ASSERT(_size == 0); IL2CPP_ASSERT(_pos == 0); RequireSize(kMinBlockSize); } void TemporaryMemoryArena::End() { if (_buf) { HYBRIDCLR_FREE(_buf); //_buf = nullptr; //_size = _pos = 0; } for (auto& block : _useOuts) { HYBRIDCLR_FREE(block.data); } } } }