compact malloc