Memory allocation trace data is analyzed by generating a sorted address
index containing records of memory allocations, deallocations, and memory
address inquiries. The list is scanned once in address order. During
scan, a separate sequence index (ordered by sequential indicator) is
dynamically maintained, having a record of all allocations pertinent to
the current address in the scan. A record is added to the sequence index
when its allocation is encountered, and deleted from the sequence index
when the scan of the address index goes past the range of the allocated
block. Any time a memory address inquiry is encountered during scan of
the address index, the sequence indicator of the memory address inquiry
is used to find the applicable memory allocation in the sequence index.