modified bump pointer allocation