REQUIRES: x86_64-linux

The input raw profile test has been generated from the following source code:

```
#include <stdlib.h>
#include <string.h>
int main(int argc, char **argv) {
  char *x = (char *)malloc(10);
  memset(x, 0, 10);
  free(x);
  x = (char *)malloc(10);
  memset(x, 0, 10);
  free(x);
  return 0;
}
```

The following commands were used to compile the source to a memprof instrumented
executable and collect a raw binary format profile. Since the profile contains
virtual addresses for the callstack, we do not expect the raw binary profile to
be deterministic. The summary should be deterministic apart from changes to
the shared libraries linked in which could change the number of segments
recorded.

```
clang -fuse-ld=lld -Wl,--no-rosegment -gmlt -fdebug-info-for-profiling \
      -fmemory-profile -mno-omit-leaf-frame-pointer -fno-omit-frame-pointer \
      -fno-optimize-sibling-calls -m64 -Wl,-build-id -no-pie \
      source.c -o basic.memprofexe

env MEMPROF_OPTIONS=log_path=stdout ./basic.memprofexe > basic.memprofraw
```

RUN: llvm-profdata show --memory %p/Inputs/basic.memprofraw --profiled-binary %p/Inputs/basic.memprofexe -o - | FileCheck %s

We expect 2 MIB entries, 1 each for the malloc calls in the program. Any
additional allocations which do not originate from the main binary are pruned.

CHECK:  MemprofProfile:
CHECK-NEXT:   Summary:
CHECK-NEXT:     Version: 1
CHECK-NEXT:     NumSegments: 9
CHECK-NEXT:     NumMibInfo: 2
CHECK-NEXT:     NumAllocFunctions: 1
CHECK-NEXT:     NumStackOffsets: 2
CHECK-NEXT:   Segments:
CHECK-NEXT:   -
CHECK-NEXT:     BuildId: <None>
CHECK-NEXT:     Start: 0x200000
CHECK-NEXT:     End: 0x298000
CHECK-NEXT:     Offset: 0x0
CHECK-NEXT:   -
CHECK-NEXT:     BuildId: <None>
CHECK-NEXT:     Start: 0x7FFFF7C7C000
CHECK-NEXT:     End: 0x7FFFF7DC5000
CHECK-NEXT:     Offset: 0x26000
CHECK-NEXT:   -
CHECK-NEXT:     BuildId: <None>
CHECK-NEXT:     Start: 0x7FFFF7E1E000
CHECK-NEXT:     End: 0x7FFFF7E30000
CHECK-NEXT:     Offset: 0x3000
CHECK-NEXT:   -
CHECK-NEXT:     BuildId: <None>
CHECK-NEXT:     Start: 0x7FFFF7E36000
CHECK-NEXT:     End: 0x7FFFF7E38000
CHECK-NEXT:     Offset: 0x1000
CHECK-NEXT:   -
CHECK-NEXT:     BuildId: <None>
CHECK-NEXT:     Start: 0x7FFFF7E4A000
CHECK-NEXT:     End: 0x7FFFF7EE5000
CHECK-NEXT:     Offset: 0xF000
CHECK-NEXT:   -
CHECK-NEXT:     BuildId: <None>
CHECK-NEXT:     Start: 0x7FFFF7F83000
CHECK-NEXT:     End: 0x7FFFF7F87000
CHECK-NEXT:     Offset: 0x3000
CHECK-NEXT:   -
CHECK-NEXT:     BuildId: <None>
CHECK-NEXT:     Start: 0x7FFFF7F92000
CHECK-NEXT:     End: 0x7FFFF7FA1000
CHECK-NEXT:     Offset: 0x7000
CHECK-NEXT:   -
CHECK-NEXT:     BuildId: <None>
CHECK-NEXT:     Start: 0x7FFFF7FD0000
CHECK-NEXT:     End: 0x7FFFF7FD2000
CHECK-NEXT:     Offset: 0x0
CHECK-NEXT:   -
CHECK-NEXT:     BuildId: <None>
CHECK-NEXT:     Start: 0x7FFFF7FD3000
CHECK-NEXT:     End: 0x7FFFF7FF3000
CHECK-NEXT:     Offset: 0x1000
CHECK-NEXT:   Records:
CHECK-NEXT:   -
CHECK-NEXT:     FunctionGUID: {{[0-9]+}}
CHECK-NEXT:     AllocSites:
CHECK-NEXT:     -
CHECK-NEXT:       Callstack:
CHECK-NEXT:       -
CHECK-NEXT:         Function: {{[0-9]+}}
CHECK-NEXT:         SymbolName: main
CHECK-NEXT:         LineOffset: 1
CHECK-NEXT:         Column: 21
CHECK-NEXT:         Inline: 0
CHECK-NEXT:       MemInfoBlock:
CHECK-NEXT:         AllocCount: 1
CHECK-NEXT:         TotalAccessCount: 2
CHECK-NEXT:         MinAccessCount: 2
CHECK-NEXT:         MaxAccessCount: 2
CHECK-NEXT:         TotalSize: 10
CHECK-NEXT:         MinSize: 10
CHECK-NEXT:         MaxSize: 10
CHECK-NEXT:         AllocTimestamp: 986
CHECK-NEXT:         DeallocTimestamp: 986
CHECK-NEXT:         TotalLifetime: 0
CHECK-NEXT:         MinLifetime: 0
CHECK-NEXT:         MaxLifetime: 0
CHECK-NEXT:         AllocCpuId: 56
CHECK-NEXT:         DeallocCpuId: 56
CHECK-NEXT:         NumMigratedCpu: 0
CHECK-NEXT:         NumLifetimeOverlaps: 0
CHECK-NEXT:         NumSameAllocCpu: 0
CHECK-NEXT:         NumSameDeallocCpu: 0
CHECK-NEXT:         DataTypeId: {{[0-9]+}}
CHECK-NEXT:     -
CHECK-NEXT:       Callstack:
CHECK-NEXT:       -
CHECK-NEXT:         Function: {{[0-9]+}}
CHECK-NEXT:         SymbolName: main
CHECK-NEXT:         LineOffset: 5
CHECK-NEXT:         Column: 15
CHECK-NEXT:         Inline: 0
CHECK-NEXT:       MemInfoBlock:
CHECK-NEXT:         AllocCount: 1
CHECK-NEXT:         TotalAccessCount: 2
CHECK-NEXT:         MinAccessCount: 2
CHECK-NEXT:         MaxAccessCount: 2
CHECK-NEXT:         TotalSize: 10
CHECK-NEXT:         MinSize: 10
CHECK-NEXT:         MaxSize: 10
CHECK-NEXT:         AllocTimestamp: 987
CHECK-NEXT:         DeallocTimestamp: 987
CHECK-NEXT:         TotalLifetime: 0
CHECK-NEXT:         MinLifetime: 0
CHECK-NEXT:         MaxLifetime: 0
CHECK-NEXT:         AllocCpuId: 56
CHECK-NEXT:         DeallocCpuId: 56
CHECK-NEXT:         NumMigratedCpu: 0
CHECK-NEXT:         NumLifetimeOverlaps: 0
CHECK-NEXT:         NumSameAllocCpu: 0
CHECK-NEXT:         NumSameDeallocCpu: 0
CHECK-NEXT:         DataTypeId: {{[0-9]+}}
