diff --git a/Libraries/LibJS/Heap/HeapBlock.cpp b/Libraries/LibJS/Heap/HeapBlock.cpp index 8388934ae4f..250fcd6d3ca 100644 --- a/Libraries/LibJS/Heap/HeapBlock.cpp +++ b/Libraries/LibJS/Heap/HeapBlock.cpp @@ -73,13 +73,6 @@ HeapBlock::HeapBlock(Heap& heap, size_t cell_size) m_freelist = next; } -Cell* HeapBlock::allocate() -{ - if (!m_freelist) - return nullptr; - return exchange(m_freelist, m_freelist->next); -} - void HeapBlock::deallocate(Cell* cell) { ASSERT(cell->is_live()); diff --git a/Libraries/LibJS/Heap/HeapBlock.h b/Libraries/LibJS/Heap/HeapBlock.h index 3de49c5e28d..5b1a4c361bf 100644 --- a/Libraries/LibJS/Heap/HeapBlock.h +++ b/Libraries/LibJS/Heap/HeapBlock.h @@ -42,7 +42,13 @@ public: size_t cell_size() const { return m_cell_size; } size_t cell_count() const { return (block_size - sizeof(HeapBlock)) / m_cell_size; } - Cell* allocate(); + ALWAYS_INLINE Cell* allocate() + { + if (!m_freelist) + return nullptr; + return exchange(m_freelist, m_freelist->next); + } + void deallocate(Cell*); template