98 lines
3.6 KiB
Text
98 lines
3.6 KiB
Text
REQUIRES: x86_64-linux
|
|
|
|
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.
|
|
|
|
To update the inputs used below run Inputs/update_memprof_inputs.sh /path/to/updated/clang
|
|
RUN: llvm-profdata show --memory %p/Inputs/pic.memprofraw --profiled-binary %p/Inputs/pic.memprofexe -o - 2>&1 | FileCheck %s
|
|
|
|
CHECK: MemprofProfile:
|
|
CHECK-NEXT: Summary:
|
|
CHECK-NEXT: Version: 3
|
|
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: -
|
|
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: {{[0-9]+}}
|
|
CHECK-NEXT: DeallocTimestamp: {{[0-9]+}}
|
|
CHECK-NEXT: TotalLifetime: 0
|
|
CHECK-NEXT: MinLifetime: 0
|
|
CHECK-NEXT: MaxLifetime: 0
|
|
CHECK-NEXT: AllocCpuId: {{[0-9]+}}
|
|
CHECK-NEXT: DeallocCpuId: {{[0-9]+}}
|
|
CHECK-NEXT: NumMigratedCpu: 0
|
|
CHECK-NEXT: NumLifetimeOverlaps: 0
|
|
CHECK-NEXT: NumSameAllocCpu: 0
|
|
CHECK-NEXT: NumSameDeallocCpu: 0
|
|
CHECK-NEXT: DataTypeId: {{[0-9]+}}
|
|
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: -
|
|
CHECK-NEXT: Callstack:
|
|
CHECK-NEXT: -
|
|
CHECK-NEXT: Function: {{[0-9]+}}
|
|
CHECK-NEXT: SymbolName: main
|
|
CHECK-NEXT: LineOffset: 4
|
|
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: {{[0-9]+}}
|
|
CHECK-NEXT: DeallocTimestamp: {{[0-9]+}}
|
|
CHECK-NEXT: TotalLifetime: 0
|
|
CHECK-NEXT: MinLifetime: 0
|
|
CHECK-NEXT: MaxLifetime: 0
|
|
CHECK-NEXT: AllocCpuId: {{[0-9]+}}
|
|
CHECK-NEXT: DeallocCpuId: {{[0-9]+}}
|
|
CHECK-NEXT: NumMigratedCpu: 0
|
|
CHECK-NEXT: NumLifetimeOverlaps: 0
|
|
CHECK-NEXT: NumSameAllocCpu: 0
|
|
CHECK-NEXT: NumSameDeallocCpu: 0
|
|
CHECK-NEXT: DataTypeId: {{[0-9]+}}
|
|
CHECK-NEXT: TotalAccessDensity: 20
|
|
CHECK-NEXT: MinAccessDensity: 20
|
|
CHECK-NEXT: MaxAccessDensity: 20
|
|
CHECK-NEXT: TotalLifetimeAccessDensity: 20000
|
|
CHECK-NEXT: MinLifetimeAccessDensity: 20000
|
|
CHECK-NEXT: MaxLifetimeAccessDensity: 20000
|