1 #ifndef ROSE_BinaryAnalysis_UnparserX86_H
2 #define ROSE_BinaryAnalysis_UnparserX86_H
4 #include <featureTests.h>
5 #ifdef ROSE_ENABLE_BINARY_ANALYSIS
6 #include <BinaryUnparserBase.h>
14 class X86:
public Base {
19 : settings_(settings) {}
23 return Ptr(
new X86(settings));
26 Ptr copy()
const ROSE_OVERRIDE {
27 return instance(settings());
30 const X86Settings& settings()
const ROSE_OVERRIDE {
return settings_; }
31 X86Settings& settings() ROSE_OVERRIDE {
return settings_; }
34 void emitInstructionMnemonic(std::ostream&,
SgAsmInstruction*, State&)
const ROSE_OVERRIDE;
35 void emitOperandBody(std::ostream&,
SgAsmExpression*, State&)
const ROSE_OVERRIDE;
36 void emitTypeName(std::ostream&,
SgAsmType*, State&)
const ROSE_OVERRIDE;
Base class for machine instructions.
Main namespace for the ROSE library.
Settings that control unparsing.
Base class for expressions.
Base class for binary types.