1REQUIRES: x86_64-linux 2 3To update the inputs used below run Inputs/update_memprof_inputs.sh /path/to/updated/clang 4RUN: llvm-profdata show --memory %p/Inputs/inline.memprofraw --profiled-binary %p/Inputs/inline.memprofexe | FileCheck %s 5 6CHECK: MemprofProfile: 7CHECK-NEXT: Summary: 8CHECK-NEXT: Version: 4 9CHECK-NEXT: NumSegments: {{[0-9]+}} 10CHECK-NEXT: NumMibInfo: 2 11CHECK-NEXT: NumAllocFunctions: 2 12CHECK-NEXT: NumStackOffsets: 1 13CHECK-NEXT: Segments: 14CHECK-NEXT: - 15CHECK-NEXT: BuildId: {{[[:xdigit:]]+}} 16CHECK-NEXT: Start: 0x{{[[:xdigit:]]+}} 17CHECK-NEXT: End: 0x{{[[:xdigit:]]+}} 18CHECK-NEXT: Offset: 0x{{[[:xdigit:]]+}} 19CHECK-NEXT: - 20 21CHECK: Records: 22CHECK-NEXT: - 23CHECK-NEXT: FunctionGUID: 3873612792189045660 24CHECK-NEXT: AllocSites: 25CHECK-NEXT: - 26CHECK-NEXT: Callstack: 27CHECK-NEXT: - 28CHECK-NEXT: Function: 3873612792189045660 29CHECK-NEXT: SymbolName: _Z3quxi 30CHECK-NEXT: LineOffset: 1 31CHECK-NEXT: Column: 23 32CHECK-NEXT: Inline: 1 33CHECK-NEXT: - 34CHECK-NEXT: Function: 1228452328526475178 35CHECK-NEXT: SymbolName: _Z3fooi 36CHECK-NEXT: LineOffset: 0 37CHECK-NEXT: Column: 18 38CHECK-NEXT: Inline: 0 39CHECK-NEXT: - 40CHECK-NEXT: Function: 3727899762981752933 41CHECK-NEXT: SymbolName: _Z3bari 42CHECK-NEXT: LineOffset: 0 43CHECK-NEXT: Column: 19 44CHECK-NEXT: Inline: 0 45CHECK-NEXT: - 46CHECK-NEXT: Function: 15822663052811949562 47CHECK-NEXT: SymbolName: main 48CHECK-NEXT: LineOffset: 1 49CHECK-NEXT: Column: 3 50CHECK-NEXT: Inline: 0 51CHECK-NEXT: MemInfoBlock: 52CHECK-NEXT: AllocCount: 1 53CHECK-NEXT: TotalAccessCount: 1 54CHECK-NEXT: MinAccessCount: 1 55CHECK-NEXT: MaxAccessCount: 1 56CHECK-NEXT: TotalSize: 1 57CHECK-NEXT: MinSize: 1 58CHECK-NEXT: MaxSize: 1 59CHECK-NEXT: AllocTimestamp: {{[0-9]+}} 60CHECK-NEXT: DeallocTimestamp: {{[0-9]+}} 61CHECK-NEXT: TotalLifetime: 0 62CHECK-NEXT: MinLifetime: 0 63CHECK-NEXT: MaxLifetime: 0 64CHECK-NEXT: AllocCpuId: {{[0-9]+}} 65CHECK-NEXT: DeallocCpuId: {{[0-9]+}} 66CHECK-NEXT: NumMigratedCpu: 0 67CHECK-NEXT: NumLifetimeOverlaps: 0 68CHECK-NEXT: NumSameAllocCpu: 0 69CHECK-NEXT: NumSameDeallocCpu: 0 70CHECK-NEXT: DataTypeId: {{[0-9]+}} 71CHECK-NEXT: TotalAccessDensity: 100 72CHECK-NEXT: MinAccessDensity: 100 73CHECK-NEXT: MaxAccessDensity: 100 74CHECK-NEXT: TotalLifetimeAccessDensity: 100000 75CHECK-NEXT: MinLifetimeAccessDensity: 100000 76CHECK-NEXT: MaxLifetimeAccessDensity: 100000 77CHECK-NEXT: AccessHistogramSize: 0 78CHECK-NEXT: AccessHistogram: 0 79 80 81CHECK-NEXT: - 82CHECK-NEXT: FunctionGUID: 1228452328526475178 83CHECK-NEXT: AllocSites: 84CHECK-NEXT: - 85CHECK-NEXT: Callstack: 86CHECK-NEXT: - 87CHECK-NEXT: Function: 3873612792189045660 88CHECK-NEXT: SymbolName: _Z3quxi 89CHECK-NEXT: LineOffset: 1 90CHECK-NEXT: Column: 23 91CHECK-NEXT: Inline: 1 92CHECK-NEXT: - 93CHECK-NEXT: Function: 1228452328526475178 94CHECK-NEXT: SymbolName: _Z3fooi 95CHECK-NEXT: LineOffset: 0 96CHECK-NEXT: Column: 18 97CHECK-NEXT: Inline: 0 98CHECK-NEXT: - 99CHECK-NEXT: Function: 3727899762981752933 100CHECK-NEXT: SymbolName: _Z3bari 101CHECK-NEXT: LineOffset: 0 102CHECK-NEXT: Column: 19 103CHECK-NEXT: Inline: 0 104CHECK-NEXT: - 105CHECK-NEXT: Function: 15822663052811949562 106CHECK-NEXT: SymbolName: main 107CHECK-NEXT: LineOffset: 1 108CHECK-NEXT: Column: 3 109CHECK-NEXT: Inline: 0 110CHECK-NEXT: MemInfoBlock: 111CHECK-NEXT: AllocCount: 1 112CHECK-NEXT: TotalAccessCount: 1 113CHECK-NEXT: MinAccessCount: 1 114CHECK-NEXT: MaxAccessCount: 1 115CHECK-NEXT: TotalSize: 1 116CHECK-NEXT: MinSize: 1 117CHECK-NEXT: MaxSize: 1 118CHECK-NEXT: AllocTimestamp: {{[0-9]+}} 119CHECK-NEXT: DeallocTimestamp: {{[0-9]+}} 120CHECK-NEXT: TotalLifetime: 0 121CHECK-NEXT: MinLifetime: 0 122CHECK-NEXT: MaxLifetime: 0 123CHECK-NEXT: AllocCpuId: {{[0-9]+}} 124CHECK-NEXT: DeallocCpuId: {{[0-9]+}} 125CHECK-NEXT: NumMigratedCpu: 0 126CHECK-NEXT: NumLifetimeOverlaps: 0 127CHECK-NEXT: NumSameAllocCpu: 0 128CHECK-NEXT: NumSameDeallocCpu: 0 129CHECK-NEXT: DataTypeId: {{[0-9]+}} 130CHECK-NEXT: TotalAccessDensity: 100 131CHECK-NEXT: MinAccessDensity: 100 132CHECK-NEXT: MaxAccessDensity: 100 133CHECK-NEXT: TotalLifetimeAccessDensity: 100000 134CHECK-NEXT: MinLifetimeAccessDensity: 100000 135CHECK-NEXT: MaxLifetimeAccessDensity: 100000 136CHECK-NEXT: AccessHistogramSize: 0 137CHECK-NEXT: AccessHistogram: 0 138 139CHECK-NEXT: CallSites: 140CHECK-NEXT: - 141CHECK-NEXT: - 142CHECK-NEXT: Function: 3873612792189045660 143CHECK-NEXT: SymbolName: _Z3quxi 144CHECK-NEXT: LineOffset: 1 145CHECK-NEXT: Column: 23 146CHECK-NEXT: Inline: 1 147CHECK-NEXT: - 148CHECK-NEXT: - 149CHECK-NEXT: Function: 1228452328526475178 150CHECK-NEXT: SymbolName: _Z3fooi 151CHECK-NEXT: LineOffset: 0 152CHECK-NEXT: Column: 18 153CHECK-NEXT: Inline: 0 154CHECK-NEXT: - 155CHECK-NEXT: FunctionGUID: 3727899762981752933 156CHECK-NEXT: CallSites: 157CHECK-NEXT: - 158CHECK-NEXT: - 159CHECK-NEXT: Function: 3727899762981752933 160CHECK-NEXT: SymbolName: _Z3bari 161CHECK-NEXT: LineOffset: 0 162CHECK-NEXT: Column: 19 163CHECK-NEXT: Inline: 0 164CHECK-NEXT: - 165CHECK-NEXT: FunctionGUID: 15822663052811949562 166CHECK-NEXT: CallSites: 167CHECK-NEXT: - 168CHECK-NEXT: - 169CHECK-NEXT: Function: 15822663052811949562 170CHECK-NEXT: SymbolName: main 171CHECK-NEXT: LineOffset: 1 172CHECK-NEXT: Column: 3 173CHECK-NEXT: Inline: 0 174