1#ifndef ROSE_BinaryAnalysis_Architecture_Amd64_H
2#define ROSE_BinaryAnalysis_Architecture_Amd64_H
3#include <featureTests.h>
4#ifdef ROSE_ENABLE_BINARY_ANALYSIS
5#include <Rose/BinaryAnalysis/Architecture/X86.h>
8namespace BinaryAnalysis {
Information about alignments.
Architecture-specific information for x86-64, x86_64, x64, amd64, Intel 64.
RegisterDictionary::Ptr registerDictionary() const override
Property: Register dictionary.
static Ptr instance()
Allocating constructor.
const CallingConvention::Dictionary & callingConventions() const override
Property: Calling convention definitions.
Alignment instructionAlignment() const override
Alignment for encoded machine instructions.
bool matchesHeader(SgAsmGenericHeader *) const override
Tests whether this architecture matches a file header.
Sawyer::Container::Interval< size_t > bytesPerInstruction() const override
Valid sizes for encoded machine instructions.
Common base class for all x86 architectures.
Range of values delimited by endpoints.
std::shared_ptr< Amd64 > Amd64Ptr
Reference counted pointer for Amd64.
std::vector< DefinitionPtr > Dictionary
An ordered collection of calling convention definitions.
const char * Architecture(int64_t)
Convert Rose::BinaryAnalysis::Disassembler::Mips::Decoder::Architecture enum constant to a string.