blob: 5b100a74d7205ea4d9088756e753971d8b8eaf4f [file] [log] [blame]
/*
* Copyright (C) 2021 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// message types used in perf.data.
syntax = "proto3";
package simpleperf.proto;
message DebugUnwindFeature {
message File {
string path = 1;
uint64 size = 2;
}
repeated File file = 1;
}
message FileFeature {
string path = 1;
uint32 type = 2;
uint64 min_vaddr = 3;
message Symbol {
uint64 vaddr = 1;
uint32 len = 2;
string name = 3;
}
repeated Symbol symbol = 4;
message DexFile {
repeated uint64 dex_file_offset = 1;
}
message ElfFile {
uint64 file_offset_of_min_vaddr = 1;
}
message KernelModule {
uint64 memory_offset_of_min_vaddr = 1;
}
oneof type_specific_msg {
DexFile dex_file = 5; // Only when type = DSO_DEX_FILE
ElfFile elf_file = 6; // Only when type = DSO_ELF_FILE
KernelModule kernel_module = 7; // Only when type = DSO_KERNEL_MODULE
}
}