Zydis  v2.0.0-alpha2
Zydis.h File Reference

Master include file, including everything else. More...

#include <Zydis/CommonTypes.h>
#include <Zydis/Decoder.h>
#include <Zydis/DecoderTypes.h>
#include <Zydis/Defines.h>
#include <Zydis/Formatter.h>
#include <Zydis/MetaInfo.h>
#include <Zydis/Mnemonic.h>
#include <Zydis/Register.h>
#include <Zydis/SharedTypes.h>
#include <Zydis/Status.h>
#include <Zydis/Utils.h>
Include dependency graph for Zydis.h:

Go to the source code of this file.

Macros

#define ZYDIS_VERSION   (uint64_t)0x0002000000000000
 A macro that defines the zydis version. More...
 
#define ZYDIS_VERSION_MAJOR(version)   (uint16_t)((version & 0xFFFF000000000000) >> 48)
 Extracts the major-part of the zydis version. More...
 
#define ZYDIS_VERSION_MINOR(version)   (uint16_t)((version & 0x0000FFFF00000000) >> 32)
 Extracts the minor-part of the zydis version. More...
 
#define ZYDIS_VERSION_PATCH(version)   (uint16_t)((version & 0x00000000FFFF0000) >> 16)
 Extracts the patch-part of the zydis version. More...
 
#define ZYDIS_VERSION_BUILD(version)   (uint16_t)(version & 0x000000000000FFFF)
 Extracts the build-part of the zydis version. More...
 

Typedefs

typedef uint8_t ZydisFeature
 Defines the ZydisFeature datatype. More...
 

Enumerations

enum  ZydisFeatures { ZYDIS_FEATURE_EVEX , ZYDIS_FEATURE_MVEX , ZYDIS_FEATURE_FLAGS , ZYDIS_FEATURE_CPUID }
 Values that represent zydis features. More...
 

Functions

ZYDIS_EXPORT uint64_t ZydisGetVersion ()
 Returns the zydis version. More...
 
ZYDIS_EXPORT ZydisBool ZydisIsFeatureEnabled (ZydisFeature feature)
 Checks, if the specified feature is enabled in the current zydis library instance. More...
 

Detailed Description

Master include file, including everything else.

Macro Definition Documentation

◆ ZYDIS_VERSION

#define ZYDIS_VERSION   (uint64_t)0x0002000000000000

A macro that defines the zydis version.

◆ ZYDIS_VERSION_BUILD

#define ZYDIS_VERSION_BUILD (   version)    (uint16_t)(version & 0x000000000000FFFF)

Extracts the build-part of the zydis version.

Parameters
versionThe zydis version value

◆ ZYDIS_VERSION_MAJOR

#define ZYDIS_VERSION_MAJOR (   version)    (uint16_t)((version & 0xFFFF000000000000) >> 48)

Extracts the major-part of the zydis version.

Parameters
versionThe zydis version value

◆ ZYDIS_VERSION_MINOR

#define ZYDIS_VERSION_MINOR (   version)    (uint16_t)((version & 0x0000FFFF00000000) >> 32)

Extracts the minor-part of the zydis version.

Parameters
versionThe zydis version value

◆ ZYDIS_VERSION_PATCH

#define ZYDIS_VERSION_PATCH (   version)    (uint16_t)((version & 0x00000000FFFF0000) >> 16)

Extracts the patch-part of the zydis version.

Parameters
versionThe zydis version value

Typedef Documentation

◆ ZydisFeature

typedef uint8_t ZydisFeature

Defines the ZydisFeature datatype.

Enumeration Type Documentation

◆ ZydisFeatures

Values that represent zydis features.

Enumerator
ZYDIS_FEATURE_EVEX 
ZYDIS_FEATURE_MVEX 
ZYDIS_FEATURE_FLAGS 
ZYDIS_FEATURE_CPUID 

Function Documentation

◆ ZydisGetVersion()

ZYDIS_EXPORT uint64_t ZydisGetVersion ( )

Returns the zydis version.

Returns
The zydis version.

Use the macros provided in this file to extract the major, minor, patch and build part from the returned version value.

◆ ZydisIsFeatureEnabled()

ZYDIS_EXPORT ZydisBool ZydisIsFeatureEnabled ( ZydisFeature  feature)

Checks, if the specified feature is enabled in the current zydis library instance.

Parameters
featureThe feature.
Returns
True if the feature is enabled, false if not.