public class ObjdumpDisassemblerProvider extends Object implements DisassemblerProvider
GNU objdump utility to disassemble code.| Constructor and Description |
|---|
ObjdumpDisassemblerProvider() |
| Modifier and Type | Method and Description |
|---|---|
String |
disassembleCompiledCode(OptionValues options,
CodeCacheProvider codeCache,
CompilationResult compResult)
Gets a textual disassembly of a given compilation result.
|
String |
disassembleInstalledCode(CodeCacheProvider codeCache,
CompilationResult compResult,
InstalledCode code)
Gets a textual disassembly of a given installed code.
|
String |
getName()
Gets the name denoting the format of the disassembly returned by this object.
|
boolean |
isAvailable(OptionValues options)
Indicates whether the DisassemblerProvider is usable in the current context.
|
static String |
quoteShellArg(String arg)
Reliably quote a string as a single shell command argument.
|
public boolean isAvailable(OptionValues options)
DisassemblerProviderisAvailable in interface DisassemblerProvideroptions - the option configuration for the disassembler contextpublic String disassembleCompiledCode(OptionValues options, CodeCacheProvider codeCache, CompilationResult compResult)
DisassemblerProviderdisassembleCompiledCode in interface DisassemblerProvideroptions - the option configuration for the disassembler contextcodeCache - the object used for code code installationcompResult - a compilation resultcompResult or null it
could not be disassembledpublic static String quoteShellArg(String arg)
public String disassembleInstalledCode(CodeCacheProvider codeCache, CompilationResult compResult, InstalledCode code)
DisassemblerProviderdisassembleInstalledCode in interface DisassemblerProvidercodeCache - the object used for code code installationcompResult - a compiled code that was installed to produce installedCode. This
will be null if not available.installedCode or null if
installedCode is invalid or it could not be
disassembled for some other reasonpublic String getName()
DisassemblerProvidergetName in interface DisassemblerProvider