|  | REQUIRES: x86_64-linux | 
|  |  | 
|  | To update the inputs used below run Inputs/update_memprof_inputs.sh /path/to/updated/clang | 
|  | RUN: llvm-profdata show --memory %p/Inputs/padding-histogram.memprofraw --profiled-binary %p/Inputs/padding-histogram.memprofexe -o - | FileCheck %s | 
|  |  | 
|  | We expect 2 different MIBs with histogram values. This test is to make sure we properly deal with padding. | 
|  |  | 
|  | CHECK: MemprofProfile: | 
|  | CHECK-NEXT:   Summary: | 
|  | CHECK-NEXT:     Version: 5 | 
|  | CHECK-NEXT:     NumSegments: {{[0-9]+}} | 
|  | CHECK-NEXT:     NumMibInfo: 2 | 
|  | CHECK-NEXT:     NumAllocFunctions: 1 | 
|  | CHECK-NEXT:     NumStackOffsets: 2 | 
|  | CHECK-NEXT:   Segments: | 
|  | CHECK-NEXT:   - | 
|  | CHECK-NEXT:     BuildId: {{[[:xdigit:]]+}} | 
|  | CHECK-NEXT:     Start: 0x{{[[:xdigit:]]+}} | 
|  | CHECK-NEXT:     End: 0x{{[[:xdigit:]]+}} | 
|  | CHECK-NEXT:     Offset: 0x{{[[:xdigit:]]+}} | 
|  | CHECK-NEXT:   - | 
|  |  | 
|  | CHECK:   Records: | 
|  | 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: 3 | 
|  | CHECK-NEXT        Column: 10 | 
|  | CHECK-NEXT        Inline: 0 | 
|  | CHECK-NEXT      MemInfoBlock: | 
|  | CHECK-NEXT        AllocCount: 1 | 
|  | CHECK-NEXT        TotalAccessCount: 5 | 
|  | CHECK-NEXT        MinAccessCount: 5 | 
|  | CHECK-NEXT        MaxAccessCount: 5 | 
|  | CHECK-NEXT        TotalSize: 24 | 
|  | CHECK-NEXT        MinSize: 24 | 
|  | CHECK-NEXT        MaxSize: 24 | 
|  | CHECK-NEXT        AllocTimestamp: {{[0-9]+}} | 
|  | CHECK-NEXT        DeallocTimestamp: {{[0-9]+}} | 
|  | CHECK-NEXT        TotalLifetime: 0 | 
|  | CHECK-NEXT        MinLifetime: 0 | 
|  | CHECK-NEXT        MaxLifetime: 0 | 
|  | CHECK-NEXT        AllocCpuId: 11 | 
|  | CHECK-NEXT        DeallocCpuId: 11 | 
|  | CHECK-NEXT        NumMigratedCpu: 0 | 
|  | CHECK-NEXT        NumLifetimeOverlaps: 0 | 
|  | CHECK-NEXT        NumSameAllocCpu: 0 | 
|  | CHECK-NEXT        NumSameDeallocCpu: 0 | 
|  | CHECK-NEXT        DataTypeId: 0 | 
|  | CHECK-NEXT        TotalAccessDensity: 20 | 
|  | CHECK-NEXT        MinAccessDensity: 20 | 
|  | CHECK-NEXT        MaxAccessDensity: 20 | 
|  | CHECK-NEXT        TotalLifetimeAccessDensity: 20000 | 
|  | CHECK-NEXT        MinLifetimeAccessDensity: 20000 | 
|  | CHECK-NEXT        MaxLifetimeAccessDensity: 20000 | 
|  | CHECK-NEXT        AccessHistogramSize: 3 | 
|  | CHECK-NEXT        AccessHistogram: {{[0-9]+}} | 
|  | CHECK-NEXT        AccessHistogramValues: -2 -1 -2 | 
|  | CHECK-NEXT    - | 
|  | CHECK-NEXT      Callstack: | 
|  | CHECK-NEXT      - | 
|  | CHECK-NEXT        Function: {{[0-9]+}} | 
|  | CHECK-NEXT        SymbolName: main | 
|  | CHECK-NEXT        LineOffset: 10 | 
|  | CHECK-NEXT        Column: 10 | 
|  | CHECK-NEXT        Inline: 0 | 
|  | CHECK-NEXT      MemInfoBlock: | 
|  | CHECK-NEXT        AllocCount: 1 | 
|  | CHECK-NEXT        TotalAccessCount: 4 | 
|  | CHECK-NEXT        MinAccessCount: 4 | 
|  | CHECK-NEXT        MaxAccessCount: 4 | 
|  | CHECK-NEXT        TotalSize: 48 | 
|  | CHECK-NEXT        MinSize: 48 | 
|  | CHECK-NEXT        MaxSize: 48 | 
|  | CHECK-NEXT        AllocTimestamp: {{[0-9]+}} | 
|  | CHECK-NEXT        DeallocTimestamp: {{[0-9]+}} | 
|  | CHECK-NEXT        TotalLifetime: 0 | 
|  | CHECK-NEXT        MinLifetime: 0 | 
|  | CHECK-NEXT        MaxLifetime: 0 | 
|  | CHECK-NEXT        AllocCpuId: 11 | 
|  | CHECK-NEXT        DeallocCpuId: 11 | 
|  | CHECK-NEXT        NumMigratedCpu: 0 | 
|  | CHECK-NEXT        NumLifetimeOverlaps: 0 | 
|  | CHECK-NEXT        NumSameAllocCpu: 0 | 
|  | CHECK-NEXT        NumSameDeallocCpu: 0 | 
|  | CHECK-NEXT        DataTypeId: 0 | 
|  | CHECK-NEXT        TotalAccessDensity: 8 | 
|  | CHECK-NEXT        MinAccessDensity: 8 | 
|  | CHECK-NEXT        MaxAccessDensity: 8 | 
|  | CHECK-NEXT        TotalLifetimeAccessDensity: 8000 | 
|  | CHECK-NEXT        MinLifetimeAccessDensity: 8000 | 
|  | CHECK-NEXT        MaxLifetimeAccessDensity: 8000 | 
|  | CHECK-NEXT        AccessHistogramSize: 6 | 
|  | CHECK-NEXT        AccessHistogram: {{[0-9]+}} | 
|  | CHECK-NEXT        AccessHistogramValues: -2 -0 -0 -0 -1 -1 |