1*1003e004SJérôme Duval /*************************************************************************************************** 2*1003e004SJérôme Duval 3*1003e004SJérôme Duval Zyan Disassembler Library (Zydis) 4*1003e004SJérôme Duval 5*1003e004SJérôme Duval Original Author : Florian Bernd 6*1003e004SJérôme Duval 7*1003e004SJérôme Duval * Permission is hereby granted, free of charge, to any person obtaining a copy 8*1003e004SJérôme Duval * of this software and associated documentation files (the "Software"), to deal 9*1003e004SJérôme Duval * in the Software without restriction, including without limitation the rights 10*1003e004SJérôme Duval * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 11*1003e004SJérôme Duval * copies of the Software, and to permit persons to whom the Software is 12*1003e004SJérôme Duval * furnished to do so, subject to the following conditions: 13*1003e004SJérôme Duval * 14*1003e004SJérôme Duval * The above copyright notice and this permission notice shall be included in all 15*1003e004SJérôme Duval * copies or substantial portions of the Software. 16*1003e004SJérôme Duval * 17*1003e004SJérôme Duval * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 18*1003e004SJérôme Duval * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 19*1003e004SJérôme Duval * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 20*1003e004SJérôme Duval * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 21*1003e004SJérôme Duval * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 22*1003e004SJérôme Duval * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 23*1003e004SJérôme Duval * SOFTWARE. 24*1003e004SJérôme Duval 25*1003e004SJérôme Duval ***************************************************************************************************/ 26*1003e004SJérôme Duval 27*1003e004SJérôme Duval /** 28*1003e004SJérôme Duval * @file 29*1003e004SJérôme Duval * @brief 30*1003e004SJérôme Duval */ 31*1003e004SJérôme Duval 32*1003e004SJérôme Duval #ifndef ZYDIS_METAINFO_H 33*1003e004SJérôme Duval #define ZYDIS_METAINFO_H 34*1003e004SJérôme Duval 35*1003e004SJérôme Duval #include <Zydis/Defines.h> 36*1003e004SJérôme Duval 37*1003e004SJérôme Duval #ifdef __cplusplus 38*1003e004SJérôme Duval extern "C" { 39*1003e004SJérôme Duval #endif 40*1003e004SJérôme Duval 41*1003e004SJérôme Duval /* ============================================================================================== */ 42*1003e004SJérôme Duval /* Enums and types */ 43*1003e004SJérôme Duval /* ============================================================================================== */ 44*1003e004SJérôme Duval 45*1003e004SJérôme Duval #include <Zydis/Generated/EnumInstructionCategory.h> 46*1003e004SJérôme Duval #include <Zydis/Generated/EnumISASet.h> 47*1003e004SJérôme Duval #include <Zydis/Generated/EnumISAExt.h> 48*1003e004SJérôme Duval 49*1003e004SJérôme Duval /* ============================================================================================== */ 50*1003e004SJérôme Duval /* Exported functions */ 51*1003e004SJérôme Duval /* ============================================================================================== */ 52*1003e004SJérôme Duval 53*1003e004SJérôme Duval /** 54*1003e004SJérôme Duval * Returns the specified instruction category string. 55*1003e004SJérôme Duval * 56*1003e004SJérôme Duval * @param category The instruction category. 57*1003e004SJérôme Duval * 58*1003e004SJérôme Duval * @return The instruction category string or `ZYAN_NULL`, if an invalid category was passed. 59*1003e004SJérôme Duval */ 60*1003e004SJérôme Duval ZYDIS_EXPORT const char* ZydisCategoryGetString(ZydisInstructionCategory category); 61*1003e004SJérôme Duval 62*1003e004SJérôme Duval /** 63*1003e004SJérôme Duval * Returns the specified isa-set string. 64*1003e004SJérôme Duval * 65*1003e004SJérôme Duval * @param isa_set The isa-set. 66*1003e004SJérôme Duval * 67*1003e004SJérôme Duval * @return The isa-set string or `ZYAN_NULL`, if an invalid isa-set was passed. 68*1003e004SJérôme Duval */ 69*1003e004SJérôme Duval ZYDIS_EXPORT const char* ZydisISASetGetString(ZydisISASet isa_set); 70*1003e004SJérôme Duval 71*1003e004SJérôme Duval /** 72*1003e004SJérôme Duval * Returns the specified isa-extension string. 73*1003e004SJérôme Duval * 74*1003e004SJérôme Duval * @param isa_ext The isa-extension. 75*1003e004SJérôme Duval * 76*1003e004SJérôme Duval * @return The isa-extension string or `ZYAN_NULL`, if an invalid isa-extension was passed. 77*1003e004SJérôme Duval */ 78*1003e004SJérôme Duval ZYDIS_EXPORT const char* ZydisISAExtGetString(ZydisISAExt isa_ext); 79*1003e004SJérôme Duval 80*1003e004SJérôme Duval /* ============================================================================================== */ 81*1003e004SJérôme Duval 82*1003e004SJérôme Duval #ifdef __cplusplus 83*1003e004SJérôme Duval } 84*1003e004SJérôme Duval #endif 85*1003e004SJérôme Duval 86*1003e004SJérôme Duval #endif /* ZYDIS_METAINFO_H */ 87