b8ad514530
Add an additional argument to the base implementation of KernelBytecodeDisassembler::Disassemble that is the base address to use when FLAG_disassemble_relative is enabled. For the delegating versions of KernelBytecodeDisassembler::Disassemble that take a Bytecode object, the payload start of the bytecode object is retrieved and used as the base. For the delegating versions of KernelBytecodeDisassembler::Disassemble that take neither a base or a bytecode object, the start is used as the base. When tracing instructions in the interpreter, the bytecode is retrieved via the frame pointer and then its payload start is passed in as the base, so that the relative offset printed with the instructions match the relative offsets printed when dumping function bytecode. TEST=manual use of --disassemble-relative while tracing/dumping bytecode Change-Id: I7f931037970acd950a330fa6be024df5beb144a7 Cq-Include-Trybots: luci.dart.try:vm-dyn-linux-debug-x64-try Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/463022 Reviewed-by: Alexander Markov <alexmarkov@google.com> Commit-Queue: Tess Strickland <sstrickl@google.com>