Lines Matching full:binary
83 def symbolize(self, addr, binary, offset):
84 """Symbolize the given address (pair of binary and offset).
89 binary: path to executable/shared object containing this instruction.
90 offset: instruction offset in the @binary.
132 def symbolize(self, addr, binary, offset):
138 symbolizer_input = '"%s" %s' % (binary, offset)
168 def __init__(self, binary):
170 self.binary = binary
178 logging.debug("addr2line binary is %s" % shutil.which(addr2line_tool))
182 cmd += ["-e", self.binary]
192 def symbolize(self, addr, binary, offset):
194 if self.binary != binary:
291 def __init__(self, addr, binary, arch):
293 self.binary = binary
298 logging.debug("atos -o %s -arch %s", self.binary, self.arch)
299 cmdline = ["atos", "-o", self.binary, "-arch", self.arch]
302 def symbolize(self, addr, binary, offset):
304 if self.binary != binary:
306 if not os.path.exists(binary):
307 # If the binary doesn't exist atos will exit which will lead to IOError
309 return ["{} ({}:{}+{})".format(addr, binary, self.arch, offset)]
336 def symbolize(self, addr, binary, offset):
340 result = symbolizer.symbolize(addr, binary, offset)
349 def BreakpadSymbolizerFactory(binary):
352 filename = binary + suffix
358 def SystemSymbolizerFactory(system, addr, binary, arch):
360 return DarwinSymbolizer(addr, binary, arch)
362 return Addr2LineSymbolizer(binary)
378 self.binary = " ".join(fragments[4:])
427 def symbolize(self, addr, binary, offset):
428 if self.binary != binary:
448 # Used by clients who may want to supply a different binary name.
461 def symbolize_address(self, addr, binary, offset, arch):
463 # a single symbolizer binary.
465 # 1. check whether we've seen this binary already; if so,
466 # use |llvm_symbolizers[binary]|, which has already loaded the debug
467 # info for this binary (might not be the case for
469 # 2. otherwise check if we've seen all the hints for this binary already;
475 if not binary in self.llvm_symbolizers:
478 dsym_hints_for_binary = set(self.dsym_hint_producer(binary))
482 self.llvm_symbolizers[binary] = self.last_llvm_symbolizer
487 self.llvm_symbolizers[binary] = self.last_llvm_symbolizer
491 if not binary in symbolizers:
492 symbolizers[binary] = ChainSymbolizer(
493 [BreakpadSymbolizerFactory(binary), self.llvm_symbolizers[binary]]
495 result = symbolizers[binary].symbolize(addr, binary, offset)
497 symbolizers[binary] = ChainSymbolizer([])
502 symbolizers[binary].append_symbolizer(
503 SystemSymbolizerFactory(self.system, addr, binary, arch)
505 result = symbolizers[binary].symbolize(addr, binary, offset)
552 _, frameno_str, addr, binary, offset = match.groups()
554 if not self.using_module_map and not os.path.isabs(binary):
555 # Do not try to symbolicate if the binary is just the module file name
562 colon_pos = binary.rfind(":")
564 maybe_arch = binary[colon_pos + 1 :]
567 binary = binary[0:colon_pos]
573 original_binary = binary
574 binary = self.plugin_proxy.filter_binary_path(binary)
575 if binary is None:
576 # The binary filter has told us this binary can't be symbolized.
577 logging.debug('Skipping symbolication of binary "%s"', original_binary)
579 symbolized_line = self.symbolize_address(addr, binary, offset, arch)
581 if original_binary != binary:
676 Consult available plugins to filter the path to a binary
680 binary.
744 Given a binary path return a binary path suitable for symbolication.
746 Implementations should return `None` if symbolication of this binary
756 Implementations should return `None` if symbolication of this binary
829 'Binary "{}" does not exist'.format(path_to_binary)
859 logging.error("Failed to retrieve UUID from binary {}".format(path_to_binary))
862 'Failed to retrieve UUID from binary "{}"'.format(path_to_binary)
924 logging.error("Failed to get binary from UUID: %s", str(e))
993 Simple plug-in to add sys root prefix to all binary paths
1050 # This is a binary path so transform into