retdec
Private Types | Private Member Functions | Private Attributes | List of all members
retdec::common::Architecture Class Reference

#include <architecture.h>

Collaboration diagram for retdec::common::Architecture:
Collaboration graph
[legend]

Public Member Functions

Architecture query methods.
bool isUnknown () const
 
bool isKnown () const
 
bool isMips () const
 
bool isMips64 () const
 
bool isPic32 () const
 
bool isMipsOrPic32 () const
 
bool isArm () const
 
bool isArm32 () const
 
bool isArm64 () const
 
bool isThumb () const
 
bool isArm32OrThumb () const
 
bool isX86 () const
 
bool isX86_16 () const
 
bool isX86_32 () const
 
bool isX86_64 () const
 
bool isPpc () const
 
bool isPpc64 () const
 
bool isEndianLittle () const
 
bool isEndianBig () const
 
bool isEndianKnown () const
 
bool isEndianUnknown () const
 
Architecture set methods.
void setIsUnknown ()
 
void setIsMips ()
 
void setIsPic32 ()
 
void setIsArm ()
 
void setIsThumb ()
 
void setIsArm32 ()
 
void setIsArm64 ()
 
void setIsX86 ()
 
void setIsPpc ()
 
void setIsEndianLittle ()
 
void setIsEndianBig ()
 
void setIsEndianUnknown ()
 
void setName (const std::string &n)
 
void setBitSize (unsigned bs)
 
Architecture get methods.
std::string getName () const
 
unsigned getBitSize () const
 
unsigned getByteSize () const
 

Private Types

enum  eEndian { E_UNKNOWN , E_LITTLE , E_BIG }
 
enum class  eArch {
  UNKNOWN , MIPS , PIC32 , ARM ,
  X86 , PPC
}
 

Private Member Functions

bool isArch (const std::string &a) const
 
bool isArch (eArch a) const
 
void setArch ()
 

Private Attributes

std::string _name
 
unsigned _bitSize = 32
 
bool _thumbFlag = false
 
eEndian _endian = E_UNKNOWN
 
eArch _arch = eArch::UNKNOWN
 

Detailed Description

Represents input binary's target architecture.

Member Enumeration Documentation

◆ eArch

Enumerator
UNKNOWN 
MIPS 
PIC32 
ARM 
X86 
PPC 

◆ eEndian

Enumerator
E_UNKNOWN 
E_LITTLE 
E_BIG 

Member Function Documentation

◆ getBitSize()

unsigned retdec::common::Architecture::getBitSize ( ) const

◆ getByteSize()

unsigned retdec::common::Architecture::getByteSize ( ) const

◆ getName()

std::string retdec::common::Architecture::getName ( ) const

◆ isArch() [1/2]

bool retdec::common::Architecture::isArch ( const std::string &  a) const
private

◆ isArch() [2/2]

bool retdec::common::Architecture::isArch ( eArch  a) const
private

◆ isArm()

bool retdec::common::Architecture::isArm ( ) const

◆ isArm32()

bool retdec::common::Architecture::isArm32 ( ) const

◆ isArm32OrThumb()

bool retdec::common::Architecture::isArm32OrThumb ( ) const

◆ isArm64()

bool retdec::common::Architecture::isArm64 ( ) const

◆ isEndianBig()

bool retdec::common::Architecture::isEndianBig ( ) const

◆ isEndianKnown()

bool retdec::common::Architecture::isEndianKnown ( ) const

◆ isEndianLittle()

bool retdec::common::Architecture::isEndianLittle ( ) const

◆ isEndianUnknown()

bool retdec::common::Architecture::isEndianUnknown ( ) const

◆ isKnown()

bool retdec::common::Architecture::isKnown ( ) const

◆ isMips()

bool retdec::common::Architecture::isMips ( ) const

◆ isMips64()

bool retdec::common::Architecture::isMips64 ( ) const

◆ isMipsOrPic32()

bool retdec::common::Architecture::isMipsOrPic32 ( ) const

◆ isPic32()

bool retdec::common::Architecture::isPic32 ( ) const

◆ isPpc()

bool retdec::common::Architecture::isPpc ( ) const

◆ isPpc64()

bool retdec::common::Architecture::isPpc64 ( ) const

◆ isThumb()

bool retdec::common::Architecture::isThumb ( ) const

◆ isUnknown()

bool retdec::common::Architecture::isUnknown ( ) const

◆ isX86()

bool retdec::common::Architecture::isX86 ( ) const

◆ isX86_16()

bool retdec::common::Architecture::isX86_16 ( ) const

◆ isX86_32()

bool retdec::common::Architecture::isX86_32 ( ) const

◆ isX86_64()

bool retdec::common::Architecture::isX86_64 ( ) const

◆ setArch()

void retdec::common::Architecture::setArch ( )
private

◆ setBitSize()

void retdec::common::Architecture::setBitSize ( unsigned  bs)

◆ setIsArm()

void retdec::common::Architecture::setIsArm ( )

◆ setIsArm32()

void retdec::common::Architecture::setIsArm32 ( )

◆ setIsArm64()

void retdec::common::Architecture::setIsArm64 ( )

◆ setIsEndianBig()

void retdec::common::Architecture::setIsEndianBig ( )

◆ setIsEndianLittle()

void retdec::common::Architecture::setIsEndianLittle ( )

◆ setIsEndianUnknown()

void retdec::common::Architecture::setIsEndianUnknown ( )

◆ setIsMips()

void retdec::common::Architecture::setIsMips ( )

◆ setIsPic32()

void retdec::common::Architecture::setIsPic32 ( )

◆ setIsPpc()

void retdec::common::Architecture::setIsPpc ( )

◆ setIsThumb()

void retdec::common::Architecture::setIsThumb ( )

◆ setIsUnknown()

void retdec::common::Architecture::setIsUnknown ( )

◆ setIsX86()

void retdec::common::Architecture::setIsX86 ( )

◆ setName()

void retdec::common::Architecture::setName ( const std::string &  n)

Member Data Documentation

◆ _arch

eArch retdec::common::Architecture::_arch = eArch::UNKNOWN
private

◆ _bitSize

unsigned retdec::common::Architecture::_bitSize = 32
private

◆ _endian

eEndian retdec::common::Architecture::_endian = E_UNKNOWN
private

◆ _name

std::string retdec::common::Architecture::_name
private

◆ _thumbFlag

bool retdec::common::Architecture::_thumbFlag = false
private

The documentation for this class was generated from the following file: