1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2 <html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
3 <title>XED2: XED2 User Guide - Thu May 15 03:15:09 2008 </title>
4 <link href="doxygen.css" rel="stylesheet" type="text/css">
5 <link href="tabs.css" rel="stylesheet" type="text/css">
7 <!-- Generated by Doxygen 1.4.6 -->
10 <li><a href="main.html"><span>Main Page</span></a></li>
11 <li><a href="modules.html"><span>Modules</span></a></li>
12 <li><a href="classes.html"><span>Data Structures</span></a></li>
13 <li><a href="files.html"><span>Files</span></a></li>
15 <form action="search.php" method="get">
16 <table cellspacing="0" cellpadding="0" border="0">
18 <td><label> <u>S</u>earch for </label></td>
19 <td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
25 <h1>Decoding Instructions</h1><hr><a name="_details"></a><h2>Detailed Description</h2>
26 To decode an instruction you are required to provide<ol type=1>
27 <li>a machine state (operating mode and addressing widths)</li><li>a pointer to the instruction text array of bytes</li><li>a length of the text array</li></ol>
29 The machine state is passed in to decoder via the class <a class="el" href="group__INIT.html#g58af142456a133c3df29c763216a85cf">xed_state_t</a> . That state is set via the constructor of each <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> .<p>
30 The <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> contains the results of decoding after a successful decode.<p>
31 The <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> includes an array of <a class="el" href="xed-operand-storage_8h.html#eb1037b79ccdc048af4887376f6382a4">xed_operand_values_t</a> and that is where most of the information about the operands, resources etc. are stored. See the <a class="el" href="group__OPERANDS.html">Operand storage fields</a> interface. The array is indexed by the <a class="el" href="xed-operand-enum_8h.html#09c2a35d8bb7bfe68bb3d34b0a5e011a">xed_operand_enum_t</a> enumeration. Do not access it directly though; use the interface functions in the <a class="el" href="group__OPERANDS.html">Operand storage fields</a> interface for portability.<p>
32 After decoding the <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> contains a pointer to the <a class="el" href="group__DEC.html#g2b28c31e1e83e74ef5f613b38e0cc0ec">xed_inst_t</a> which acts like a kind of template giving static information about the decoded instruction: what are the types of the operands, the iclass, category extension, etc. The <a class="el" href="group__DEC.html#g2b28c31e1e83e74ef5f613b38e0cc0ec">xed_inst_t</a> is accessed via the <a class="el" href="group__DEC.html#ge507752abfa509bd72ee0903e873fe9e">xed_decoded_inst_inst</a>(cont xed_decoded_inst_t* xedd) function.<p>
33 Before every decode, you must call one of the initialization functions. The most common case would be to use <a class="el" href="group__DEC.html#g02b8ece2f304b476494db4cf6d5b73d8">xed_decoded_inst_zero_keep_mode()</a> or maybe <a class="el" href="group__DEC.html#ge32686224b685dfc7be3f13504e0a0df">xed_decoded_inst_zero_set_mode()</a>.
35 <table border="0" cellpadding="0" cellspacing="0">
37 <tr><td colspan="2"><br><h2>Data Structures</h2></td></tr>
38 <tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structxed__decoded__inst__s.html">xed_decoded_inst_s</a></td></tr>
40 <tr><td class="mdescLeft"> </td><td class="mdescRight">The main container for instructions. <a href="structxed__decoded__inst__s.html#_details">More...</a><br></td></tr>
41 <tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structxed__inst__s.html">xed_inst_s</a></td></tr>
43 <tr><td class="mdescLeft"> </td><td class="mdescRight">constant information about a decoded instruction form, including the pointer to the constant operand properties <a class="el" href="group__DEC.html#g6e11e56c314f3035be79171df2f6938f">xed_operand_t</a> for this instruction form. <a href="structxed__inst__s.html#_details">More...</a><br></td></tr>
44 <tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structxed__operand__s.html">xed_operand_s</a></td></tr>
46 <tr><td class="mdescLeft"> </td><td class="mdescRight">Constant information about an individual generic operand, like an operand template, describing the operand properties. <a href="structxed__operand__s.html#_details">More...</a><br></td></tr>
47 <tr><td colspan="2"><br><h2>xed_inst_t Attribute access</h2></td></tr>
48 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT <a class="el" href="xed-attribute-enum_8h.html#848d4cf396be5a647413e94bc6f0a383">xed_attribute_enum_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g38f0b100d724d97d80a8291a494dde06">xed_attribute</a> (unsigned int i)</td></tr>
50 <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the i'th global attribute in a linear sequence, independent of any instruction. <a href="#g38f0b100d724d97d80a8291a494dde06"></a><br></td></tr>
51 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g1dee8af51e3d8ed5a6c5dac13780be9e">xed_attribute_max</a> ()</td></tr>
53 <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the maximum number of defined attributes, independent of any instruction. <a href="#g1dee8af51e3d8ed5a6c5dac13780be9e"></a><br></td></tr>
54 <tr><td class="memItemLeft" nowrap align="right" valign="top">static XED_INLINE xed_uint32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#gdae8e18eaeb265c2aab6fc82a216e5de">xed_inst_get_attribute</a> (const <a class="el" href="group__DEC.html#g2b28c31e1e83e74ef5f613b38e0cc0ec">xed_inst_t</a> *p, <a class="el" href="xed-attribute-enum_8h.html#848d4cf396be5a647413e94bc6f0a383">xed_attribute_enum_t</a> attr)</td></tr>
56 <tr><td class="mdescLeft"> </td><td class="mdescRight">Scan for the attribute attr and return 1 if it is found, 0 otherwise. <a href="#gdae8e18eaeb265c2aab6fc82a216e5de"></a><br></td></tr>
57 <tr><td class="memItemLeft" nowrap align="right" valign="top">static XED_INLINE xed_uint32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#gfa48c095dbf6e00636253f974b2093d1">xed_inst_get_attributes</a> (const <a class="el" href="group__DEC.html#g2b28c31e1e83e74ef5f613b38e0cc0ec">xed_inst_t</a> *p)</td></tr>
59 <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the attributes bit vector. <a href="#gfa48c095dbf6e00636253f974b2093d1"></a><br></td></tr>
60 <tr><td colspan="2"><br><h2>xed_decoded_inst_t Operand Field Details</h2></td></tr>
61 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#d355c921b747945a82d62233a599c7b5">xed_bool_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#gd267d2d08e002b027915248689d1defe">xed_decoded_inst_conditionally_writes_registers</a> (const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p)</td></tr>
63 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT <a class="el" href="xed-reg-enum_8h.html#f05c33c5a68e9304d1d8ac0408ae3f61">xed_reg_enum_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#gef27a2e2c7c6cb84d8e6ba239267172a">xed_decoded_inst_get_base_reg</a> (const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p, unsigned int mem_idx)</td></tr>
65 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT xed_int32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#gada9b13de03dfeefff70f2d219504aae">xed_decoded_inst_get_branch_displacement</a> (const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p)</td></tr>
67 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g6ce6a33dea91f1cb846c78cf2848be58">xed_decoded_inst_get_branch_displacement_width</a> (const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p)</td></tr>
69 <tr><td class="mdescLeft"> </td><td class="mdescRight">Result in BYTES. <a href="#g6ce6a33dea91f1cb846c78cf2848be58"></a><br></td></tr>
70 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g6983743d83d51517bae4404d3345b865">xed_decoded_inst_get_branch_displacement_width_bits</a> (const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p)</td></tr>
72 <tr><td class="mdescLeft"> </td><td class="mdescRight">Result in BITS. <a href="#g6983743d83d51517bae4404d3345b865"></a><br></td></tr>
73 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g7c752cb527745114566367dfa0bb176c">xed_decoded_inst_get_immediate_is_signed</a> (const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p)</td></tr>
75 <tr><td class="mdescLeft"> </td><td class="mdescRight">Return true if the first immediate (IMM0) is signed. <a href="#g7c752cb527745114566367dfa0bb176c"></a><br></td></tr>
76 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g91e972de2b4dfd4edac004d2cdf2768c">xed_decoded_inst_get_immediate_width</a> (const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p)</td></tr>
78 <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the immediate width in BYTES. <a href="#g91e972de2b4dfd4edac004d2cdf2768c"></a><br></td></tr>
79 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#gd34f78b3aa239ec07a7d1b5537f7a12a">xed_decoded_inst_get_immediate_width_bits</a> (const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p)</td></tr>
81 <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the immediate width in BITS. <a href="#gd34f78b3aa239ec07a7d1b5537f7a12a"></a><br></td></tr>
82 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT <a class="el" href="xed-reg-enum_8h.html#f05c33c5a68e9304d1d8ac0408ae3f61">xed_reg_enum_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#gd39ecfe4d1c3d95161f291e4d9a18280">xed_decoded_inst_get_index_reg</a> (const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p, unsigned int mem_idx)</td></tr>
84 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT xed_int64_t </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#ga8d22454961035b0fa6121c5f419817d">xed_decoded_inst_get_memory_displacement</a> (const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p, unsigned int mem_idx)</td></tr>
86 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g275efe423fe90a10a674da18f3265bd4">xed_decoded_inst_get_memory_displacement_width</a> (const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p, unsigned int mem_idx)</td></tr>
88 <tr><td class="mdescLeft"> </td><td class="mdescRight">Result in BYTES. <a href="#g275efe423fe90a10a674da18f3265bd4"></a><br></td></tr>
89 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g1dbd440bd1bde01bd35d01ec1e518fb5">xed_decoded_inst_get_memory_displacement_width_bits</a> (const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p, unsigned int mem_idx)</td></tr>
91 <tr><td class="mdescLeft"> </td><td class="mdescRight">Result in BITS. <a href="#g1dbd440bd1bde01bd35d01ec1e518fb5"></a><br></td></tr>
92 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#gecce1ea119eb21d3569ee0058d5ce084">xed_decoded_inst_get_memory_operand_length</a> (const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p, unsigned int memop_idx)</td></tr>
94 <tr><td class="memItemLeft" nowrap align="right" valign="top">static XED_INLINE <a class="el" href="xed-reg-enum_8h.html#f05c33c5a68e9304d1d8ac0408ae3f61">xed_reg_enum_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g5635f3a3d121bbcbb64d548dbb32e4c5">xed_decoded_inst_get_reg</a> (const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p, <a class="el" href="xed-operand-enum_8h.html#09c2a35d8bb7bfe68bb3d34b0a5e011a">xed_operand_enum_t</a> reg_operand)</td></tr>
96 <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the specified register operand. <a href="#g5635f3a3d121bbcbb64d548dbb32e4c5"></a><br></td></tr>
97 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT const <a class="el" href="group__FLAGS.html#g7a0efe6ee18616a7d37af47d4e3cae10">xed_simple_flag_t</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g275353ead71e5915f810ef06c4149b68">xed_decoded_inst_get_rflags_info</a> (const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p)</td></tr>
99 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g77a570e03d56cd31e50f4bc54104b0f9">xed_decoded_inst_get_scale</a> (const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p, unsigned int mem_idx)</td></tr>
101 <tr><td class="memItemLeft" nowrap align="right" valign="top">static XED_INLINE xed_uint8_t </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#gd1d32b618885f9d22aa75101664497e4">xed_decoded_inst_get_second_immediate</a> (const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p)</td></tr>
103 <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the second immediate. <a href="#gd1d32b618885f9d22aa75101664497e4"></a><br></td></tr>
104 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT <a class="el" href="xed-reg-enum_8h.html#f05c33c5a68e9304d1d8ac0408ae3f61">xed_reg_enum_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g1451e49df729a4fe1e650db6cb3343d2">xed_decoded_inst_get_seg_reg</a> (const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p, unsigned int mem_idx)</td></tr>
106 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT xed_int32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#gbbc8dec2bddec619bfe8f9a39c7ffdf4">xed_decoded_inst_get_signed_immediate</a> (const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p)</td></tr>
108 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT xed_uint64_t </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g79461981ed1722ab09a094915fb72428">xed_decoded_inst_get_unsigned_immediate</a> (const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p)</td></tr>
110 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#d355c921b747945a82d62233a599c7b5">xed_bool_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#ge8c0841f1b56911c50531e1fff2abb58">xed_decoded_inst_is_prefetch</a> (const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p)</td></tr>
112 <tr><td class="mdescLeft"> </td><td class="mdescRight">Returns true if the instruction is a prefetch. <a href="#ge8c0841f1b56911c50531e1fff2abb58"></a><br></td></tr>
113 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#d355c921b747945a82d62233a599c7b5">xed_bool_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g1d1b81a6e49ae396bdad946439794b5f">xed_decoded_inst_mem_read</a> (const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p, unsigned int mem_idx)</td></tr>
115 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#d355c921b747945a82d62233a599c7b5">xed_bool_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#geda7bba6faea14f777752fbab269d425">xed_decoded_inst_mem_written</a> (const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p, unsigned int mem_idx)</td></tr>
117 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#d355c921b747945a82d62233a599c7b5">xed_bool_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g7dff98e10cc2432084fd5528f834bc35">xed_decoded_inst_mem_written_only</a> (const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p, unsigned int mem_idx)</td></tr>
119 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#gc093ecf9904ce025bafa8e7318ded0ec">xed_decoded_inst_number_of_memory_operands</a> (const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p)</td></tr>
121 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#d355c921b747945a82d62233a599c7b5">xed_bool_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g6922f0d03774f1d9ec1d402fb70e5c63">xed_decoded_inst_uses_rflags</a> (const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p)</td></tr>
123 <tr><td colspan="2"><br><h2>xed_decoded_inst_t Printers</h2></td></tr>
124 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g988943de2c61305278f50a26bb9945bc">xed_decoded_inst_dump</a> (const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p, char *buf, int buflen)</td></tr>
126 <tr><td class="mdescLeft"> </td><td class="mdescRight">Print out all the information about the decoded instruction to the buffer buf whose length is maximally buflen. <a href="#g988943de2c61305278f50a26bb9945bc"></a><br></td></tr>
127 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#d355c921b747945a82d62233a599c7b5">xed_bool_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g2ea7af52222fae8e9064d6ab63f5d3d8">xed_decoded_inst_dump_att_format</a> (const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p, char *buf, int buflen, xed_uint64_t runtime_address)</td></tr>
129 <tr><td class="mdescLeft"> </td><td class="mdescRight">Print the instructions with the destination operand on the right, with several exceptions (bound, invlpga, enter, and other instructions with two immediate operands). <a href="#g2ea7af52222fae8e9064d6ab63f5d3d8"></a><br></td></tr>
130 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#d355c921b747945a82d62233a599c7b5">xed_bool_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#gce27a86c7eeb2bb16423cd0cc3da843b">xed_decoded_inst_dump_att_format_context</a> (const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p, char *buf, int buflen, xed_uint64_t runtime_address, void *context)</td></tr>
132 <tr><td class="mdescLeft"> </td><td class="mdescRight">Print the instructions with the destination operand on the right, with several exceptions (bound, invlpga, enter, and other instructions with two immediate operands). <a href="#gce27a86c7eeb2bb16423cd0cc3da843b"></a><br></td></tr>
133 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#d355c921b747945a82d62233a599c7b5">xed_bool_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g93fc27180e28da2f2904d72004d086c6">xed_decoded_inst_dump_intel_format</a> (const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p, char *buf, int buflen, xed_uint64_t runtime_address)</td></tr>
135 <tr><td class="mdescLeft"> </td><td class="mdescRight">Print the instructions with the destination on the left. <a href="#g93fc27180e28da2f2904d72004d086c6"></a><br></td></tr>
136 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#d355c921b747945a82d62233a599c7b5">xed_bool_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g2d80d23c3217423b966700adf1a1d326">xed_decoded_inst_dump_intel_format_context</a> (const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p, char *buf, int buflen, xed_uint64_t runtime_address, void *context)</td></tr>
138 <tr><td class="mdescLeft"> </td><td class="mdescRight">Print the instructions with the destination on the left. <a href="#g2d80d23c3217423b966700adf1a1d326"></a><br></td></tr>
139 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#d355c921b747945a82d62233a599c7b5">xed_bool_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#gfc335b6bbcbfaadcf3b4c5174c9e9444">xed_decoded_inst_dump_xed_format</a> (const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p, char *buf, int buflen, xed_uint64_t runtime_address)</td></tr>
141 <tr><td colspan="2"><br><h2>modes</h2></td></tr>
142 <tr><td class="memItemLeft" nowrap align="right" valign="top">static XED_INLINE <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g58454fb6c62c184c9bccdcec37af4a64">xed_decoded_inst_get_address_mode</a> (const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p)</td></tr>
144 <tr><td class="memItemLeft" nowrap align="right" valign="top">static XED_INLINE <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g8b01e6acbf119ee549fc58792d91ad60">xed_decoded_inst_get_mode</a> (const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p)</td></tr>
146 <tr><td class="memItemLeft" nowrap align="right" valign="top">static XED_INLINE <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g6d7f689564c0060bd6c64adf7ff5da94">xed_decoded_inst_get_stack_address_mode</a> (const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p)</td></tr>
148 <tr><td colspan="2"><br><h2>xed_decoded_inst_t High-level accessors</h2></td></tr>
149 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT xed_uint32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#gca8af81eeb8a2613a3710f2163674bf7">xed_decoded_inst_get_attribute</a> (const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p, <a class="el" href="xed-attribute-enum_8h.html#848d4cf396be5a647413e94bc6f0a383">xed_attribute_enum_t</a> attr)</td></tr>
151 <tr><td class="mdescLeft"> </td><td class="mdescRight">Returns 1 if the attribute is defined for this instruction. <a href="#gca8af81eeb8a2613a3710f2163674bf7"></a><br></td></tr>
152 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT xed_uint32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#gdc2c807ae2151c758ebc768d4d12bf84">xed_decoded_inst_get_attributes</a> (const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p)</td></tr>
154 <tr><td class="mdescLeft"> </td><td class="mdescRight">Returns the attribute bitvector. <a href="#gdc2c807ae2151c758ebc768d4d12bf84"></a><br></td></tr>
155 <tr><td class="memItemLeft" nowrap align="right" valign="top">static XED_INLINE <a class="el" href="xed-category-enum_8h.html#3e6e23a35a7ad463e2422d7db98e49f5">xed_category_enum_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#gdb8cfb26a825d8a8d8dcbf49857eab63">xed_decoded_inst_get_category</a> (const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p)</td></tr>
157 <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the instruction category enumeration. <a href="#gdb8cfb26a825d8a8d8dcbf49857eab63"></a><br></td></tr>
158 <tr><td class="memItemLeft" nowrap align="right" valign="top">static XED_INLINE <a class="el" href="xed-extension-enum_8h.html#e7b9f64cdf123c5fda22bd10d5db9916">xed_extension_enum_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g2ad01ffd078ac7166c8a2bc1be1b6d4d">xed_decoded_inst_get_extension</a> (const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p)</td></tr>
160 <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the instruction extension enumeration. <a href="#g2ad01ffd078ac7166c8a2bc1be1b6d4d"></a><br></td></tr>
161 <tr><td class="memItemLeft" nowrap align="right" valign="top">static XED_INLINE <a class="el" href="xed-iclass-enum_8h.html#d318511ae9cc50f102251b3c91a1ab9f">xed_iclass_enum_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g2bc965a8dc2a1fee79b80b2c45d4329c">xed_decoded_inst_get_iclass</a> (const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p)</td></tr>
163 <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the instruction class enumeration. <a href="#g2bc965a8dc2a1fee79b80b2c45d4329c"></a><br></td></tr>
164 <tr><td class="memItemLeft" nowrap align="right" valign="top">static XED_INLINE const <a class="el" href="group__DEC.html#g2b28c31e1e83e74ef5f613b38e0cc0ec">xed_inst_t</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#ge507752abfa509bd72ee0903e873fe9e">xed_decoded_inst_inst</a> (const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p)</td></tr>
166 <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the <a class="el" href="group__DEC.html#g2b28c31e1e83e74ef5f613b38e0cc0ec">xed_inst_t</a> structure for this instruction. <a href="#ge507752abfa509bd72ee0903e873fe9e"></a><br></td></tr>
167 <tr><td class="memItemLeft" nowrap align="right" valign="top">static XED_INLINE <a class="el" href="xed-types_8h.html#d355c921b747945a82d62233a599c7b5">xed_bool_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g61f6182ded3ebf9d95c25116278d370d">xed_decoded_inst_valid</a> (const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p)</td></tr>
169 <tr><td class="mdescLeft"> </td><td class="mdescRight">Return true if the instruction is valid. <a href="#g61f6182ded3ebf9d95c25116278d370d"></a><br></td></tr>
170 <tr><td colspan="2"><br><h2>IFORM handling</h2></td></tr>
171 <tr><td class="memItemLeft" nowrap align="right" valign="top">static XED_INLINE <a class="el" href="xed-iform-enum_8h.html#f48986d6e090a75f7ab50e6d4a182e21">xed_iform_enum_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#gf51f3a8153bdedec0d8864cc0e89b5c7">xed_decoded_inst_get_iform_enum</a> (const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p)</td></tr>
173 <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the instruction iform enum of type <a class="el" href="xed-iform-enum_8h.html#f48986d6e090a75f7ab50e6d4a182e21">xed_iform_enum_t</a> . <a href="#gf51f3a8153bdedec0d8864cc0e89b5c7"></a><br></td></tr>
174 <tr><td class="memItemLeft" nowrap align="right" valign="top">static XED_INLINE unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g8c85bf31ee09bde1bb5b957699a38f71">xed_decoded_inst_get_iform_enum_dispatch</a> (const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p)</td></tr>
176 <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the instruction zero-based iform number based on masking the corresponding <a class="el" href="xed-iform-enum_8h.html#f48986d6e090a75f7ab50e6d4a182e21">xed_iform_enum_t</a>. <a href="#g8c85bf31ee09bde1bb5b957699a38f71"></a><br></td></tr>
177 <tr><td class="memItemLeft" nowrap align="right" valign="top">static XED_INLINE <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g86a1a2c5672d86de46115b903bc5f63e">xed_decoded_inst_get_old_iform</a> (const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p)</td></tr>
179 <tr><td class="mdescLeft"> </td><td class="mdescRight">DEPRECATED Return the instruction iform number. <a href="#g86a1a2c5672d86de46115b903bc5f63e"></a><br></td></tr>
180 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT xed_uint32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g7b2e9c4095bddf90c3679c9fdd54b20c">xed_iform_max_per_iclass</a> (<a class="el" href="xed-iclass-enum_8h.html#d318511ae9cc50f102251b3c91a1ab9f">xed_iclass_enum_t</a> iclass)</td></tr>
182 <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the maximum number of iforms for a particular iclass. <a href="#g7b2e9c4095bddf90c3679c9fdd54b20c"></a><br></td></tr>
183 <tr><td colspan="2"><br><h2>xed_decoded_inst_t Length</h2></td></tr>
184 <tr><td class="memItemLeft" nowrap align="right" valign="top">static XED_INLINE <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#gd1051f7b86c94d5670f684a6ea79fcdf">xed_decoded_inst_get_length</a> (const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p)</td></tr>
186 <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the length of the decoded instruction in bytes. <a href="#gd1051f7b86c94d5670f684a6ea79fcdf"></a><br></td></tr>
187 <tr><td colspan="2"><br><h2>xed_decoded_inst_t User Data Field</h2></td></tr>
188 <tr><td class="memItemLeft" nowrap align="right" valign="top">static XED_INLINE xed_uint64_t </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g6d902e3364c9393c5f3b42a3f30442a0">xed_decoded_inst_get_user_data</a> (<a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p)</td></tr>
190 <tr><td class="mdescLeft"> </td><td class="mdescRight">Return a user data field for arbitrary use by the user after decoding. <a href="#g6d902e3364c9393c5f3b42a3f30442a0"></a><br></td></tr>
191 <tr><td class="memItemLeft" nowrap align="right" valign="top">static XED_INLINE void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g87bdd1f7a9c5893a546351f205fed067">xed_decoded_inst_set_user_data</a> (<a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p, xed_uint64_t new_value)</td></tr>
193 <tr><td class="mdescLeft"> </td><td class="mdescRight">Modify the user data field. <a href="#g87bdd1f7a9c5893a546351f205fed067"></a><br></td></tr>
194 <tr><td colspan="2"><br><h2>xed_decoded_inst_t Operands: Number and Length</h2></td></tr>
195 <tr><td class="memItemLeft" nowrap align="right" valign="top">static XED_INLINE unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#ga8cca4acafb5dee2b4ecfafee1cca7b8">xed_decoded_inst_noperands</a> (const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p)</td></tr>
197 <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the number of operands. <a href="#ga8cca4acafb5dee2b4ecfafee1cca7b8"></a><br></td></tr>
198 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#ga030199ba499d2bcb67cbf7740d8d4c6">xed_decoded_inst_operand_length</a> (const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p, unsigned int operand_index)</td></tr>
200 <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the length in bytes of the operand_index'th operand. <a href="#ga030199ba499d2bcb67cbf7740d8d4c6"></a><br></td></tr>
201 <tr><td colspan="2"><br><h2>xed_decoded_inst_t Operands array access</h2></td></tr>
202 <tr><td class="memItemLeft" nowrap align="right" valign="top">static XED_INLINE <a class="el" href="xed-operand-storage_8h.html#eb1037b79ccdc048af4887376f6382a4">xed_operand_values_t</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g698e5a357d20e47f32ba155963526abd">xed_decoded_inst_operands</a> (<a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p)</td></tr>
204 <tr><td class="mdescLeft"> </td><td class="mdescRight">Obtain a non-constant pointer to the operands. <a href="#g698e5a357d20e47f32ba155963526abd"></a><br></td></tr>
205 <tr><td class="memItemLeft" nowrap align="right" valign="top">static XED_INLINE const <a class="el" href="xed-operand-storage_8h.html#eb1037b79ccdc048af4887376f6382a4">xed_operand_values_t</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g38e372d3227817713159035cb47ad1fd">xed_decoded_inst_operands_const</a> (const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p)</td></tr>
207 <tr><td class="mdescLeft"> </td><td class="mdescRight">Obtain a constant pointer to the operands. <a href="#g38e372d3227817713159035cb47ad1fd"></a><br></td></tr>
208 <tr><td colspan="2"><br><h2>xed_decoded_inst_t Modification</h2></td></tr>
209 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#gb34c7c4ac7369256b6b57b015a9490af">xed_decoded_inst_set_branch_displacement</a> (<a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p, xed_int32_t disp, <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> length_bytes)</td></tr>
211 <tr><td class="mdescLeft"> </td><td class="mdescRight">Set the branch displacement using a BYTE length. <a href="#gb34c7c4ac7369256b6b57b015a9490af"></a><br></td></tr>
212 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g1b46a3f333598d21438849fb03867702">xed_decoded_inst_set_branch_displacement_bits</a> (<a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p, xed_int32_t disp, <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> length_bits)</td></tr>
214 <tr><td class="mdescLeft"> </td><td class="mdescRight">Set the branch displacement a BITS length. <a href="#g1b46a3f333598d21438849fb03867702"></a><br></td></tr>
215 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#gab164e3abdbd0902ced002923ded7c0a">xed_decoded_inst_set_immediate_signed</a> (<a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p, xed_int32_t x, <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> length_bytes)</td></tr>
217 <tr><td class="mdescLeft"> </td><td class="mdescRight">Set the signed immediate a BYTE length. <a href="#gab164e3abdbd0902ced002923ded7c0a"></a><br></td></tr>
218 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g6654d373b4122309cb985a90baea2ec0">xed_decoded_inst_set_immediate_signed_bits</a> (<a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p, xed_int32_t x, <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> length_bits)</td></tr>
220 <tr><td class="mdescLeft"> </td><td class="mdescRight">Set the signed immediate a BITS length. <a href="#g6654d373b4122309cb985a90baea2ec0"></a><br></td></tr>
221 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g7ad3c8a1764288cab0c02a035c8aec1c">xed_decoded_inst_set_immediate_unsigned</a> (<a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p, xed_uint64_t x, <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> length_bytes)</td></tr>
223 <tr><td class="mdescLeft"> </td><td class="mdescRight">Set the unsigned immediate a BYTE length. <a href="#g7ad3c8a1764288cab0c02a035c8aec1c"></a><br></td></tr>
224 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g3048427ba43f4978b291a36acea2eaae">xed_decoded_inst_set_immediate_unsigned_bits</a> (<a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p, xed_uint64_t x, <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> length_bits)</td></tr>
226 <tr><td class="mdescLeft"> </td><td class="mdescRight">Set the unsigned immediate a BITS length. <a href="#g3048427ba43f4978b291a36acea2eaae"></a><br></td></tr>
227 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g6a4b96d0db7e35adb4fa7e4eaed79c30">xed_decoded_inst_set_memory_displacement</a> (<a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p, xed_int64_t disp, <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> length_bytes)</td></tr>
229 <tr><td class="mdescLeft"> </td><td class="mdescRight">Set the memory displacement using a BYTE length. <a href="#g6a4b96d0db7e35adb4fa7e4eaed79c30"></a><br></td></tr>
230 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#gc3c2f46de48f69534b4634b00e25e44d">xed_decoded_inst_set_memory_displacement_bits</a> (<a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p, xed_int64_t disp, <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> length_bits)</td></tr>
232 <tr><td class="mdescLeft"> </td><td class="mdescRight">Set the memory displacement a BITS length. <a href="#gc3c2f46de48f69534b4634b00e25e44d"></a><br></td></tr>
233 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#ge568590fb678b524e5e1068d085d76dc">xed_decoded_inst_set_scale</a> (<a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p, <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> scale)</td></tr>
235 <tr><td colspan="2"><br><h2>xed_decoded_inst_t Initialization</h2></td></tr>
236 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g187a0e161873242e9989a186466a06b6">xed_decoded_inst_zero</a> (<a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p)</td></tr>
238 <tr><td class="mdescLeft"> </td><td class="mdescRight">Zero the decode structure completely. <a href="#g187a0e161873242e9989a186466a06b6"></a><br></td></tr>
239 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g02b8ece2f304b476494db4cf6d5b73d8">xed_decoded_inst_zero_keep_mode</a> (<a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p)</td></tr>
241 <tr><td class="mdescLeft"> </td><td class="mdescRight">Zero the decode structure, but preserve the existing machine state/mode information. <a href="#g02b8ece2f304b476494db4cf6d5b73d8"></a><br></td></tr>
242 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g15acf476d5d7d3b3fffa12e8ce4892aa">xed_decoded_inst_zero_keep_mode_from_operands</a> (<a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p, const <a class="el" href="xed-operand-storage_8h.html#eb1037b79ccdc048af4887376f6382a4">xed_operand_values_t</a> *operands)</td></tr>
244 <tr><td class="mdescLeft"> </td><td class="mdescRight">Zero the decode structure, but copy the existing machine state/mode information from the supplied operands pointer. <a href="#g15acf476d5d7d3b3fffa12e8ce4892aa"></a><br></td></tr>
245 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#ge32686224b685dfc7be3f13504e0a0df">xed_decoded_inst_zero_set_mode</a> (<a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *p, const <a class="el" href="group__INIT.html#g58af142456a133c3df29c763216a85cf">xed_state_t</a> *dstate)</td></tr>
247 <tr><td class="mdescLeft"> </td><td class="mdescRight">Zero the decode structure, but set the machine state/mode information. <a href="#ge32686224b685dfc7be3f13504e0a0df"></a><br></td></tr>
248 <tr><td colspan="2"><br><h2>xed_inst_t Template Instruction Information</h2></td></tr>
249 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#gaf47d56bea81c3f7f815fab8cbc64a50">xed_inst_cpl</a> (const <a class="el" href="group__DEC.html#g2b28c31e1e83e74ef5f613b38e0cc0ec">xed_inst_t</a> *p)</td></tr>
251 <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the current privilege level (CPL). <a href="#gaf47d56bea81c3f7f815fab8cbc64a50"></a><br></td></tr>
252 <tr><td class="memItemLeft" nowrap align="right" valign="top">static XED_INLINE unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g5808f0c3992221777a51c9356bbfc1cf">xed_inst_noperands</a> (const <a class="el" href="group__DEC.html#g2b28c31e1e83e74ef5f613b38e0cc0ec">xed_inst_t</a> *p)</td></tr>
254 <tr><td class="mdescLeft"> </td><td class="mdescRight">Number of instruction operands. <a href="#g5808f0c3992221777a51c9356bbfc1cf"></a><br></td></tr>
255 <tr><td class="memItemLeft" nowrap align="right" valign="top">static XED_INLINE const <a class="el" href="group__DEC.html#g6e11e56c314f3035be79171df2f6938f">xed_operand_t</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g05c6c3704a2be54cdced61f99437c146">xed_inst_operand</a> (const <a class="el" href="group__DEC.html#g2b28c31e1e83e74ef5f613b38e0cc0ec">xed_inst_t</a> *p, unsigned int i)</td></tr>
257 <tr><td class="mdescLeft"> </td><td class="mdescRight">Obtain a pointer to an individual operand. <a href="#g05c6c3704a2be54cdced61f99437c146"></a><br></td></tr>
258 <tr><td colspan="2"><br><h2>xed_inst_t Template Operand Read/Written</h2></td></tr>
259 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#ge7b820b7db6c7437f1e0c6bb11510b10">xed_operand_conditional_read</a> (const <a class="el" href="group__DEC.html#g6e11e56c314f3035be79171df2f6938f">xed_operand_t</a> *p)</td></tr>
261 <tr><td class="mdescLeft"> </td><td class="mdescRight">If the operand has a conditional read (may also write). <a href="#ge7b820b7db6c7437f1e0c6bb11510b10"></a><br></td></tr>
262 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#gd6b80021a33c772fa74a038f17343562">xed_operand_conditional_write</a> (const <a class="el" href="group__DEC.html#g6e11e56c314f3035be79171df2f6938f">xed_operand_t</a> *p)</td></tr>
264 <tr><td class="mdescLeft"> </td><td class="mdescRight">If the operand has a conditional write (may also read). <a href="#gd6b80021a33c772fa74a038f17343562"></a><br></td></tr>
265 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g549f3a156257abb9979df806b436ad85">xed_operand_read</a> (const <a class="el" href="group__DEC.html#g6e11e56c314f3035be79171df2f6938f">xed_operand_t</a> *p)</td></tr>
267 <tr><td class="mdescLeft"> </td><td class="mdescRight">If the operand is read, including conditional reads. <a href="#g549f3a156257abb9979df806b436ad85"></a><br></td></tr>
268 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g53d4f48a25de19a158ac617bd2302fcd">xed_operand_read_and_written</a> (const <a class="el" href="group__DEC.html#g6e11e56c314f3035be79171df2f6938f">xed_operand_t</a> *p)</td></tr>
270 <tr><td class="mdescLeft"> </td><td class="mdescRight">If the operand is read-and-written, conditional reads and conditional writes. <a href="#g53d4f48a25de19a158ac617bd2302fcd"></a><br></td></tr>
271 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g9cb66680c46f2ba09edbf63a8df3b52b">xed_operand_read_only</a> (const <a class="el" href="group__DEC.html#g6e11e56c314f3035be79171df2f6938f">xed_operand_t</a> *p)</td></tr>
273 <tr><td class="mdescLeft"> </td><td class="mdescRight">If the operand is read-only, including conditional reads. <a href="#g9cb66680c46f2ba09edbf63a8df3b52b"></a><br></td></tr>
274 <tr><td class="memItemLeft" nowrap align="right" valign="top">static XED_INLINE <a class="el" href="xed-operand-action-enum_8h.html#6bf8113365b84b9d6ab549fdfef2643f">xed_operand_action_enum_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#ge5299214951891952401b5061e48a6ca">xed_operand_rw</a> (const <a class="el" href="group__DEC.html#g6e11e56c314f3035be79171df2f6938f">xed_operand_t</a> *p)</td></tr>
276 <tr><td class="mdescLeft"> </td><td class="mdescRight">Returns the raw R/W action. <a href="#ge5299214951891952401b5061e48a6ca"></a><br></td></tr>
277 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#gadb2fcc833f5245dcbfd80dd0499694d">xed_operand_written</a> (const <a class="el" href="group__DEC.html#g6e11e56c314f3035be79171df2f6938f">xed_operand_t</a> *p)</td></tr>
279 <tr><td class="mdescLeft"> </td><td class="mdescRight">If the operand is written, including conditional writes. <a href="#gadb2fcc833f5245dcbfd80dd0499694d"></a><br></td></tr>
280 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g7463fa65b041fb66790532ba6ea3ca50">xed_operand_written_only</a> (const <a class="el" href="group__DEC.html#g6e11e56c314f3035be79171df2f6938f">xed_operand_t</a> *p)</td></tr>
282 <tr><td class="mdescLeft"> </td><td class="mdescRight">If the operand is written-only, including conditional writes. <a href="#g7463fa65b041fb66790532ba6ea3ca50"></a><br></td></tr>
283 <tr><td colspan="2"><br><h2>xed_inst_t Template Operands Access</h2></td></tr>
284 <tr><td class="memItemLeft" nowrap align="right" valign="top">static XED_INLINE xed_uint32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g15cd2fdc19d6e7e9864df7b56e9235f0">xed_operand_imm</a> (const <a class="el" href="group__DEC.html#g6e11e56c314f3035be79171df2f6938f">xed_operand_t</a> *p)</td></tr>
286 <tr><td class="memItemLeft" nowrap align="right" valign="top">static XED_INLINE <a class="el" href="xed-operand-enum_8h.html#09c2a35d8bb7bfe68bb3d34b0a5e011a">xed_operand_enum_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g57209697b0dfb3e9ed4f694ca7cc16a4">xed_operand_name</a> (const <a class="el" href="group__DEC.html#g6e11e56c314f3035be79171df2f6938f">xed_operand_t</a> *p)</td></tr>
288 <tr><td class="memItemLeft" nowrap align="right" valign="top">static XED_INLINE <a class="el" href="xed-nonterminal-enum_8h.html#e0eb8f71a8f89cddf0df4b1a6a2b27af">xed_nonterminal_enum_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#gf690022f17c39fbc270373f013034b5b">xed_operand_nonterminal_name</a> (const <a class="el" href="group__DEC.html#g6e11e56c314f3035be79171df2f6938f">xed_operand_t</a> *p)</td></tr>
290 <tr><td class="memItemLeft" nowrap align="right" valign="top">static XED_INLINE <a class="el" href="xed-operand-visibility-enum_8h.html#e678c6279a7ba50bf58f2e357242b58d">xed_operand_visibility_enum_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g2e8b5df9fc68c6aa7fbeb98735e1d4a9">xed_operand_operand_visibility</a> (const <a class="el" href="group__DEC.html#g6e11e56c314f3035be79171df2f6938f">xed_operand_t</a> *p)</td></tr>
292 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#gb5528945cff3a8531a58103fffdcee97">xed_operand_print</a> (const <a class="el" href="group__DEC.html#g6e11e56c314f3035be79171df2f6938f">xed_operand_t</a> *p, char *buf, int buflen)</td></tr>
294 <tr><td class="mdescLeft"> </td><td class="mdescRight">Print the operand p into the buffer buf, of length buflen. <a href="#gb5528945cff3a8531a58103fffdcee97"></a><br></td></tr>
295 <tr><td class="memItemLeft" nowrap align="right" valign="top">static XED_INLINE <a class="el" href="xed-reg-enum_8h.html#f05c33c5a68e9304d1d8ac0408ae3f61">xed_reg_enum_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#gc7b6d553eb70c5eeda751a20fe8ed1a4">xed_operand_reg</a> (const <a class="el" href="group__DEC.html#g6e11e56c314f3035be79171df2f6938f">xed_operand_t</a> *p)</td></tr>
297 <tr><td class="mdescLeft"> </td><td class="mdescRight">Careful with this one -- use <a class="el" href="group__DEC.html#g5635f3a3d121bbcbb64d548dbb32e4c5">xed_decoded_inst_get_reg()</a>! This one is probably not what you think it is. <a href="#gc7b6d553eb70c5eeda751a20fe8ed1a4"></a><br></td></tr>
298 <tr><td class="memItemLeft" nowrap align="right" valign="top">static XED_INLINE <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#gfea07afe6bade70f2ebfe3b491b99d41">xed_operand_template_is_register</a> (const <a class="el" href="group__DEC.html#g6e11e56c314f3035be79171df2f6938f">xed_operand_t</a> *p)</td></tr>
300 <tr><td class="mdescLeft"> </td><td class="mdescRight">Careful with this one; See <a class="el" href="group__DEC.html#gb506c3ac00ee5350d9b5ab55270c392c">xed_operand_is_register()</a>. <a href="#gfea07afe6bade70f2ebfe3b491b99d41"></a><br></td></tr>
301 <tr><td class="memItemLeft" nowrap align="right" valign="top">static XED_INLINE <a class="el" href="xed-operand-type-enum_8h.html#7f9198331fe1015a2df65f7b42aa43a8">xed_operand_type_enum_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#gcaf67b54704bacb6b47f5f2afcf2a4b1">xed_operand_type</a> (const <a class="el" href="group__DEC.html#g6e11e56c314f3035be79171df2f6938f">xed_operand_t</a> *p)</td></tr>
303 <tr><td class="memItemLeft" nowrap align="right" valign="top">static XED_INLINE <a class="el" href="xed-operand-width-enum_8h.html#4bc2ed96b8433c06c363d614a2fa1676">xed_operand_width_enum_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g1159569c734bf712a40a2a88542d549d">xed_operand_width</a> (const <a class="el" href="group__DEC.html#g6e11e56c314f3035be79171df2f6938f">xed_operand_t</a> *p)</td></tr>
305 <tr><td colspan="2"><br><h2>xed_inst_t Template Operand Enum Name Classification</h2></td></tr>
306 <tr><td class="memItemLeft" nowrap align="right" valign="top">static XED_INLINE <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g336d0e245e83f1b90f609f72b136a2aa">xed_operand_is_memory_addressing_register</a> (<a class="el" href="xed-operand-enum_8h.html#09c2a35d8bb7bfe68bb3d34b0a5e011a">xed_operand_enum_t</a> name)</td></tr>
308 <tr><td class="mdescLeft"> </td><td class="mdescRight">Tests the enum for inclusion in XED_OPERAND_{BASE0,BASE1,INDEX,SEG0,SEG1}. <a href="#g336d0e245e83f1b90f609f72b136a2aa"></a><br></td></tr>
309 <tr><td class="memItemLeft" nowrap align="right" valign="top">static XED_INLINE <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#gb506c3ac00ee5350d9b5ab55270c392c">xed_operand_is_register</a> (<a class="el" href="xed-operand-enum_8h.html#09c2a35d8bb7bfe68bb3d34b0a5e011a">xed_operand_enum_t</a> name)</td></tr>
311 <tr><td class="mdescLeft"> </td><td class="mdescRight">Tests the enum for inclusion in XED_OPERAND_REG0 through XED_OPERAND_REG15. <a href="#gb506c3ac00ee5350d9b5ab55270c392c"></a><br></td></tr>
312 <tr><td colspan="2"><br><h2>Typedefs</h2></td></tr>
313 <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef XED_DLL_EXPORT <a class="el" href="structxed__decoded__inst__s.html">xed_decoded_inst_s</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a></td></tr>
315 <tr><td class="mdescLeft"> </td><td class="mdescRight">The main container for instructions. <a href="#ga704925b5f80885a0ac56640a7c70937"></a><br></td></tr>
316 <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef XED_DLL_EXPORT <a class="el" href="structxed__inst__s.html">xed_inst_s</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g2b28c31e1e83e74ef5f613b38e0cc0ec">xed_inst_t</a></td></tr>
318 <tr><td class="mdescLeft"> </td><td class="mdescRight">constant information about a decoded instruction form, including the pointer to the constant operand properties <a class="el" href="group__DEC.html#g6e11e56c314f3035be79171df2f6938f">xed_operand_t</a> for this instruction form. <a href="#g2b28c31e1e83e74ef5f613b38e0cc0ec"></a><br></td></tr>
319 <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef XED_DLL_EXPORT <a class="el" href="structxed__operand__s.html">xed_operand_s</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g6e11e56c314f3035be79171df2f6938f">xed_operand_t</a></td></tr>
321 <tr><td class="mdescLeft"> </td><td class="mdescRight">Constant information about an individual generic operand, like an operand template, describing the operand properties. <a href="#g6e11e56c314f3035be79171df2f6938f"></a><br></td></tr>
322 <tr><td colspan="2"><br><h2>Functions</h2></td></tr>
323 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT <a class="el" href="xed-error-enum_8h.html#2611877aa5e8b566c1c2be45aa89c792">xed_error_enum_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DEC.html#g9a27c2bb97caf98a6024567b261d0652">xed_decode</a> (<a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> *xedd, const xed_uint8_t *itext, const unsigned int bytes)</td></tr>
325 <tr><td class="mdescLeft"> </td><td class="mdescRight">This is the main interface to the decoder. <a href="#g9a27c2bb97caf98a6024567b261d0652"></a><br></td></tr>
327 <hr><h2>Typedef Documentation</h2>
328 <a class="anchor" name="ga704925b5f80885a0ac56640a7c70937"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_t" ref="ga704925b5f80885a0ac56640a7c70937" args="" --><p>
329 <table class="mdTable" cellpadding="2" cellspacing="0">
332 <table cellpadding="0" cellspacing="0" border="0">
334 <td class="md" nowrap valign="top">typedef struct XED_DLL_EXPORT <a class="el" href="structxed__decoded__inst__s.html">xed_decoded_inst_s</a> <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> </td>
340 <table cellspacing="5" cellpadding="0" border="0">
348 The main container for instructions.
350 After decode, it holds an array of operands with derived information from decode and also valid <a class="el" href="group__DEC.html#g2b28c31e1e83e74ef5f613b38e0cc0ec">xed_inst_t</a> pointer which describes the operand templates and the operand order. See <a class="el" href="group__DEC.html">Decoding Instructions</a> for API documentation. </td>
353 <a class="anchor" name="g2b28c31e1e83e74ef5f613b38e0cc0ec"></a><!-- doxytag: member="xed-inst.h::xed_inst_t" ref="g2b28c31e1e83e74ef5f613b38e0cc0ec" args="" --><p>
354 <table class="mdTable" cellpadding="2" cellspacing="0">
357 <table cellpadding="0" cellspacing="0" border="0">
359 <td class="md" nowrap valign="top">typedef struct XED_DLL_EXPORT <a class="el" href="structxed__inst__s.html">xed_inst_s</a> <a class="el" href="group__DEC.html#g2b28c31e1e83e74ef5f613b38e0cc0ec">xed_inst_t</a> </td>
365 <table cellspacing="5" cellpadding="0" border="0">
373 constant information about a decoded instruction form, including the pointer to the constant operand properties <a class="el" href="group__DEC.html#g6e11e56c314f3035be79171df2f6938f">xed_operand_t</a> for this instruction form.
378 <a class="anchor" name="g6e11e56c314f3035be79171df2f6938f"></a><!-- doxytag: member="xed-inst.h::xed_operand_t" ref="g6e11e56c314f3035be79171df2f6938f" args="" --><p>
379 <table class="mdTable" cellpadding="2" cellspacing="0">
382 <table cellpadding="0" cellspacing="0" border="0">
384 <td class="md" nowrap valign="top">typedef struct XED_DLL_EXPORT <a class="el" href="structxed__operand__s.html">xed_operand_s</a> <a class="el" href="group__DEC.html#g6e11e56c314f3035be79171df2f6938f">xed_operand_t</a> </td>
390 <table cellspacing="5" cellpadding="0" border="0">
398 Constant information about an individual generic operand, like an operand template, describing the operand properties.
400 See <a class="el" href="group__DEC.html">Decoding Instructions</a> for API information. </td>
403 <hr><h2>Function Documentation</h2>
404 <a class="anchor" name="g38f0b100d724d97d80a8291a494dde06"></a><!-- doxytag: member="xed-inst.h::xed_attribute" ref="g38f0b100d724d97d80a8291a494dde06" args="(unsigned int i)" --><p>
405 <table class="mdTable" cellpadding="2" cellspacing="0">
408 <table cellpadding="0" cellspacing="0" border="0">
410 <td class="md" nowrap valign="top">XED_DLL_EXPORT <a class="el" href="xed-attribute-enum_8h.html#848d4cf396be5a647413e94bc6f0a383">xed_attribute_enum_t</a> xed_attribute </td>
411 <td class="md" valign="top">( </td>
412 <td class="md" nowrap valign="top">unsigned int </td>
413 <td class="mdname1" valign="top" nowrap> <em>i</em> </td>
414 <td class="md" valign="top"> ) </td>
415 <td class="md" nowrap></td>
421 <table cellspacing="5" cellpadding="0" border="0">
429 Return the i'th global attribute in a linear sequence, independent of any instruction.
431 This is used for scanning and printing all attributes. </td>
434 <a class="anchor" name="g1dee8af51e3d8ed5a6c5dac13780be9e"></a><!-- doxytag: member="xed-inst.h::xed_attribute_max" ref="g1dee8af51e3d8ed5a6c5dac13780be9e" args="()" --><p>
435 <table class="mdTable" cellpadding="2" cellspacing="0">
438 <table cellpadding="0" cellspacing="0" border="0">
440 <td class="md" nowrap valign="top">XED_DLL_EXPORT unsigned int xed_attribute_max </td>
441 <td class="md" valign="top">( </td>
442 <td class="mdname1" valign="top" nowrap> </td>
443 <td class="md" valign="top"> ) </td>
444 <td class="md" nowrap></td>
450 <table cellspacing="5" cellpadding="0" border="0">
458 Return the maximum number of defined attributes, independent of any instruction.
463 <a class="anchor" name="g9a27c2bb97caf98a6024567b261d0652"></a><!-- doxytag: member="xed-decode.h::xed_decode" ref="g9a27c2bb97caf98a6024567b261d0652" args="(xed_decoded_inst_t *xedd, const xed_uint8_t *itext, const unsigned int bytes)" --><p>
464 <table class="mdTable" cellpadding="2" cellspacing="0">
467 <table cellpadding="0" cellspacing="0" border="0">
469 <td class="md" nowrap valign="top">XED_DLL_EXPORT <a class="el" href="xed-error-enum_8h.html#2611877aa5e8b566c1c2be45aa89c792">xed_error_enum_t</a> xed_decode </td>
470 <td class="md" valign="top">( </td>
471 <td class="md" nowrap valign="top"><a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
472 <td class="mdname" nowrap> <em>xedd</em>, </td>
475 <td class="md" nowrap align="right"></td>
477 <td class="md" nowrap>const xed_uint8_t * </td>
478 <td class="mdname" nowrap> <em>itext</em>, </td>
481 <td class="md" nowrap align="right"></td>
483 <td class="md" nowrap>const unsigned int </td>
484 <td class="mdname" nowrap> <em>bytes</em></td>
488 <td class="md">) </td>
489 <td class="md" colspan="2"></td>
495 <table cellspacing="5" cellpadding="0" border="0">
503 This is the main interface to the decoder.
505 <dl compact><dt><b>Parameters:</b></dt><dd>
506 <table border="0" cellspacing="2" cellpadding="0">
507 <tr><td valign="top"></td><td valign="top"><em>xedd</em> </td><td>the decoded instruction of type <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> . Mode/state sent in via xedd; See the <a class="el" href="group__INIT.html#g58af142456a133c3df29c763216a85cf">xed_state_t</a> </td></tr>
508 <tr><td valign="top"></td><td valign="top"><em>itext</em> </td><td>the pointer to the array of instruction text bytes </td></tr>
509 <tr><td valign="top"></td><td valign="top"><em>bytes</em> </td><td>the length of the itext input array. 1 to 15 bytes, anything more is ignored. </td></tr>
512 <dl compact><dt><b>Returns:</b></dt><dd><a class="el" href="xed-error-enum_8h.html#2611877aa5e8b566c1c2be45aa89c792">xed_error_enum_t</a> indiciating success (<a class="el" href="xed-error-enum_8h.html#2611877aa5e8b566c1c2be45aa89c792d9f5736eacb4d9dedd9aadf1d75b9de6">XED_ERROR_NONE</a>) or failure. Note failure can be due to not enough bytes in the input array.</dd></dl>
513 The maximum instruction is 15B and XED will tell you how long the actual instruction is via an API function call <a class="el" href="group__DEC.html#gd1051f7b86c94d5670f684a6ea79fcdf">xed_decoded_inst_get_length()</a>. However, it is not always safe or advisable for XED to read 15 bytes if the decode location is at the boundary of some sort of protection limit. For example, if one is decoding near the end of a page and the XED user does not want to cause extra page faults, one might send in the number of bytes that would stop at the page boundary. In this case, XED might not be able to decode the instruction and would return an error. The XED user would then have to decide if it was safe to touch the next page and try again to decode with more bytes. Also sometimes the user process does not have read access to the next page and this allows the user to prevent XED from causing process termination by limiting the memory range that XED will access. </td>
516 <a class="anchor" name="gd267d2d08e002b027915248689d1defe"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_conditionally_writes_registers" ref="gd267d2d08e002b027915248689d1defe" args="(const xed_decoded_inst_t *p)" --><p>
517 <table class="mdTable" cellpadding="2" cellspacing="0">
520 <table cellpadding="0" cellspacing="0" border="0">
522 <td class="md" nowrap valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#d355c921b747945a82d62233a599c7b5">xed_bool_t</a> xed_decoded_inst_conditionally_writes_registers </td>
523 <td class="md" valign="top">( </td>
524 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
525 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
526 <td class="md" valign="top"> ) </td>
527 <td class="md" nowrap></td>
533 <table cellspacing="5" cellpadding="0" border="0">
544 <a class="anchor" name="g988943de2c61305278f50a26bb9945bc"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_dump" ref="g988943de2c61305278f50a26bb9945bc" args="(const xed_decoded_inst_t *p, char *buf, int buflen)" --><p>
545 <table class="mdTable" cellpadding="2" cellspacing="0">
548 <table cellpadding="0" cellspacing="0" border="0">
550 <td class="md" nowrap valign="top">XED_DLL_EXPORT void xed_decoded_inst_dump </td>
551 <td class="md" valign="top">( </td>
552 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
553 <td class="mdname" nowrap> <em>p</em>, </td>
556 <td class="md" nowrap align="right"></td>
558 <td class="md" nowrap>char * </td>
559 <td class="mdname" nowrap> <em>buf</em>, </td>
562 <td class="md" nowrap align="right"></td>
564 <td class="md" nowrap>int </td>
565 <td class="mdname" nowrap> <em>buflen</em></td>
569 <td class="md">) </td>
570 <td class="md" colspan="2"></td>
576 <table cellspacing="5" cellpadding="0" border="0">
584 Print out all the information about the decoded instruction to the buffer buf whose length is maximally buflen.
589 <a class="anchor" name="g2ea7af52222fae8e9064d6ab63f5d3d8"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_dump_att_format" ref="g2ea7af52222fae8e9064d6ab63f5d3d8" args="(const xed_decoded_inst_t *p, char *buf, int buflen, xed_uint64_t runtime_address)" --><p>
590 <table class="mdTable" cellpadding="2" cellspacing="0">
593 <table cellpadding="0" cellspacing="0" border="0">
595 <td class="md" nowrap valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#d355c921b747945a82d62233a599c7b5">xed_bool_t</a> xed_decoded_inst_dump_att_format </td>
596 <td class="md" valign="top">( </td>
597 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
598 <td class="mdname" nowrap> <em>p</em>, </td>
601 <td class="md" nowrap align="right"></td>
603 <td class="md" nowrap>char * </td>
604 <td class="mdname" nowrap> <em>buf</em>, </td>
607 <td class="md" nowrap align="right"></td>
609 <td class="md" nowrap>int </td>
610 <td class="mdname" nowrap> <em>buflen</em>, </td>
613 <td class="md" nowrap align="right"></td>
615 <td class="md" nowrap>xed_uint64_t </td>
616 <td class="mdname" nowrap> <em>runtime_address</em></td>
620 <td class="md">) </td>
621 <td class="md" colspan="2"></td>
627 <table cellspacing="5" cellpadding="0" border="0">
635 Print the instructions with the destination operand on the right, with several exceptions (bound, invlpga, enter, and other instructions with two immediate operands).
637 Also use instruction name suffixes to indicate operation width. Several instructions names are different as well. Recommendation: buflen must be more than 16 bytes, preferably at least 100 bytes. <dl compact><dt><b>Parameters:</b></dt><dd>
638 <table border="0" cellspacing="2" cellpadding="0">
639 <tr><td valign="top"></td><td valign="top"><em>p</em> </td><td>a <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> for a decoded instruction </td></tr>
640 <tr><td valign="top"></td><td valign="top"><em>buf</em> </td><td>a buffer to write the disassembly in to. </td></tr>
641 <tr><td valign="top"></td><td valign="top"><em>buflen</em> </td><td>maximum length of the disassembly buffer </td></tr>
642 <tr><td valign="top"></td><td valign="top"><em>runtime_address</em> </td><td>the address of the instruction being disassembled </td></tr>
645 <dl compact><dt><b>Returns:</b></dt><dd>Returns 0 if the disassembly fails, 1 otherwise. </dd></dl>
649 <a class="anchor" name="gce27a86c7eeb2bb16423cd0cc3da843b"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_dump_att_format_context" ref="gce27a86c7eeb2bb16423cd0cc3da843b" args="(const xed_decoded_inst_t *p, char *buf, int buflen, xed_uint64_t runtime_address, void *context)" --><p>
650 <table class="mdTable" cellpadding="2" cellspacing="0">
653 <table cellpadding="0" cellspacing="0" border="0">
655 <td class="md" nowrap valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#d355c921b747945a82d62233a599c7b5">xed_bool_t</a> xed_decoded_inst_dump_att_format_context </td>
656 <td class="md" valign="top">( </td>
657 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
658 <td class="mdname" nowrap> <em>p</em>, </td>
661 <td class="md" nowrap align="right"></td>
663 <td class="md" nowrap>char * </td>
664 <td class="mdname" nowrap> <em>buf</em>, </td>
667 <td class="md" nowrap align="right"></td>
669 <td class="md" nowrap>int </td>
670 <td class="mdname" nowrap> <em>buflen</em>, </td>
673 <td class="md" nowrap align="right"></td>
675 <td class="md" nowrap>xed_uint64_t </td>
676 <td class="mdname" nowrap> <em>runtime_address</em>, </td>
679 <td class="md" nowrap align="right"></td>
681 <td class="md" nowrap>void * </td>
682 <td class="mdname" nowrap> <em>context</em></td>
686 <td class="md">) </td>
687 <td class="md" colspan="2"></td>
693 <table cellspacing="5" cellpadding="0" border="0">
701 Print the instructions with the destination operand on the right, with several exceptions (bound, invlpga, enter, and other instructions with two immediate operands).
703 Also use instruction name suffixes to indicate operation width. Several instructions names are different as well. buflen must be at least 100 bytes. <dl compact><dt><b>Parameters:</b></dt><dd>
704 <table border="0" cellspacing="2" cellpadding="0">
705 <tr><td valign="top"></td><td valign="top"><em>p</em> </td><td>a <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> for a decoded instruction </td></tr>
706 <tr><td valign="top"></td><td valign="top"><em>buf</em> </td><td>a buffer to write the disassembly in to. </td></tr>
707 <tr><td valign="top"></td><td valign="top"><em>buflen</em> </td><td>maximum length of the disassembly buffer </td></tr>
708 <tr><td valign="top"></td><td valign="top"><em>runtime_address</em> </td><td>the address of the instruction being disassembled </td></tr>
709 <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>A void* used only for the call back routine for symbolic disassembly if one is registered. </td></tr>
712 <dl compact><dt><b>Returns:</b></dt><dd>Returns 0 if the disassembly fails, 1 otherwise. </dd></dl>
716 <a class="anchor" name="g93fc27180e28da2f2904d72004d086c6"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_dump_intel_format" ref="g93fc27180e28da2f2904d72004d086c6" args="(const xed_decoded_inst_t *p, char *buf, int buflen, xed_uint64_t runtime_address)" --><p>
717 <table class="mdTable" cellpadding="2" cellspacing="0">
720 <table cellpadding="0" cellspacing="0" border="0">
722 <td class="md" nowrap valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#d355c921b747945a82d62233a599c7b5">xed_bool_t</a> xed_decoded_inst_dump_intel_format </td>
723 <td class="md" valign="top">( </td>
724 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
725 <td class="mdname" nowrap> <em>p</em>, </td>
728 <td class="md" nowrap align="right"></td>
730 <td class="md" nowrap>char * </td>
731 <td class="mdname" nowrap> <em>buf</em>, </td>
734 <td class="md" nowrap align="right"></td>
736 <td class="md" nowrap>int </td>
737 <td class="mdname" nowrap> <em>buflen</em>, </td>
740 <td class="md" nowrap align="right"></td>
742 <td class="md" nowrap>xed_uint64_t </td>
743 <td class="mdname" nowrap> <em>runtime_address</em></td>
747 <td class="md">) </td>
748 <td class="md" colspan="2"></td>
754 <table cellspacing="5" cellpadding="0" border="0">
762 Print the instructions with the destination on the left.
764 Use PTR qualifiers for memory access widths. Recommendation: buflen must be more than 16 bytes, preferably at least 100 bytes. <dl compact><dt><b>Parameters:</b></dt><dd>
765 <table border="0" cellspacing="2" cellpadding="0">
766 <tr><td valign="top"></td><td valign="top"><em>p</em> </td><td>a <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> for a decoded instruction </td></tr>
767 <tr><td valign="top"></td><td valign="top"><em>buf</em> </td><td>a buffer to write the disassembly in to. </td></tr>
768 <tr><td valign="top"></td><td valign="top"><em>buflen</em> </td><td>maximum length of the disassembly buffer </td></tr>
769 <tr><td valign="top"></td><td valign="top"><em>runtime_address</em> </td><td>the address of the instruction being disassembled </td></tr>
772 <dl compact><dt><b>Returns:</b></dt><dd>Returns 0 if the disassembly fails, 1 otherwise. </dd></dl>
776 <a class="anchor" name="g2d80d23c3217423b966700adf1a1d326"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_dump_intel_format_context" ref="g2d80d23c3217423b966700adf1a1d326" args="(const xed_decoded_inst_t *p, char *buf, int buflen, xed_uint64_t runtime_address, void *context)" --><p>
777 <table class="mdTable" cellpadding="2" cellspacing="0">
780 <table cellpadding="0" cellspacing="0" border="0">
782 <td class="md" nowrap valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#d355c921b747945a82d62233a599c7b5">xed_bool_t</a> xed_decoded_inst_dump_intel_format_context </td>
783 <td class="md" valign="top">( </td>
784 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
785 <td class="mdname" nowrap> <em>p</em>, </td>
788 <td class="md" nowrap align="right"></td>
790 <td class="md" nowrap>char * </td>
791 <td class="mdname" nowrap> <em>buf</em>, </td>
794 <td class="md" nowrap align="right"></td>
796 <td class="md" nowrap>int </td>
797 <td class="mdname" nowrap> <em>buflen</em>, </td>
800 <td class="md" nowrap align="right"></td>
802 <td class="md" nowrap>xed_uint64_t </td>
803 <td class="mdname" nowrap> <em>runtime_address</em>, </td>
806 <td class="md" nowrap align="right"></td>
808 <td class="md" nowrap>void * </td>
809 <td class="mdname" nowrap> <em>context</em></td>
813 <td class="md">) </td>
814 <td class="md" colspan="2"></td>
820 <table cellspacing="5" cellpadding="0" border="0">
828 Print the instructions with the destination on the left.
830 Use PTR qualifiers for memory access widths. Recommendation: buflen must be more than 16 bytes, preferably at least 100 bytes. <dl compact><dt><b>Parameters:</b></dt><dd>
831 <table border="0" cellspacing="2" cellpadding="0">
832 <tr><td valign="top"></td><td valign="top"><em>p</em> </td><td>a <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> for a decoded instruction </td></tr>
833 <tr><td valign="top"></td><td valign="top"><em>buf</em> </td><td>a buffer to write the disassembly in to. </td></tr>
834 <tr><td valign="top"></td><td valign="top"><em>buflen</em> </td><td>maximum length of the disassembly buffer </td></tr>
835 <tr><td valign="top"></td><td valign="top"><em>runtime_address</em> </td><td>the address of the instruction being disassembled </td></tr>
836 <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>A void* used only for the call back routine for symbolic disassembly if one is registered. </td></tr>
839 <dl compact><dt><b>Returns:</b></dt><dd>Returns 0 if the disassembly fails, 1 otherwise. </dd></dl>
843 <a class="anchor" name="gfc335b6bbcbfaadcf3b4c5174c9e9444"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_dump_xed_format" ref="gfc335b6bbcbfaadcf3b4c5174c9e9444" args="(const xed_decoded_inst_t *p, char *buf, int buflen, xed_uint64_t runtime_address)" --><p>
844 <table class="mdTable" cellpadding="2" cellspacing="0">
847 <table cellpadding="0" cellspacing="0" border="0">
849 <td class="md" nowrap valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#d355c921b747945a82d62233a599c7b5">xed_bool_t</a> xed_decoded_inst_dump_xed_format </td>
850 <td class="md" valign="top">( </td>
851 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
852 <td class="mdname" nowrap> <em>p</em>, </td>
855 <td class="md" nowrap align="right"></td>
857 <td class="md" nowrap>char * </td>
858 <td class="mdname" nowrap> <em>buf</em>, </td>
861 <td class="md" nowrap align="right"></td>
863 <td class="md" nowrap>int </td>
864 <td class="mdname" nowrap> <em>buflen</em>, </td>
867 <td class="md" nowrap align="right"></td>
869 <td class="md" nowrap>xed_uint64_t </td>
870 <td class="mdname" nowrap> <em>runtime_address</em></td>
874 <td class="md">) </td>
875 <td class="md" colspan="2"></td>
881 <table cellspacing="5" cellpadding="0" border="0">
889 <dl compact><dt><b>Parameters:</b></dt><dd>
890 <table border="0" cellspacing="2" cellpadding="0">
891 <tr><td valign="top"></td><td valign="top"><em>p</em> </td><td>a <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> for a decoded instruction </td></tr>
892 <tr><td valign="top"></td><td valign="top"><em>buf</em> </td><td>a buffer to write the disassembly in to. </td></tr>
893 <tr><td valign="top"></td><td valign="top"><em>buflen</em> </td><td>maximum length of the disassembly buffer </td></tr>
894 <tr><td valign="top"></td><td valign="top"><em>runtime_address</em> </td><td>the address of the instruction being disassembled </td></tr>
897 <dl compact><dt><b>Returns:</b></dt><dd>Returns 0 if the disassembly fails, 1 otherwise. </dd></dl>
901 <a class="anchor" name="g58454fb6c62c184c9bccdcec37af4a64"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_get_address_mode" ref="g58454fb6c62c184c9bccdcec37af4a64" args="(const xed_decoded_inst_t *p)" --><p>
902 <table class="mdTable" cellpadding="2" cellspacing="0">
905 <table cellpadding="0" cellspacing="0" border="0">
907 <td class="md" nowrap valign="top">static XED_INLINE <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> xed_decoded_inst_get_address_mode </td>
908 <td class="md" valign="top">( </td>
909 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
910 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
911 <td class="md" valign="top"> ) </td>
912 <td class="md" nowrap><code> [static]</code></td>
918 <table cellspacing="5" cellpadding="0" border="0">
928 Definition at line <a class="el" href="xed-decoded-inst_8h-source.html#l00152">152</a> of file <a class="el" href="xed-decoded-inst_8h-source.html">xed-decoded-inst.h</a>. </td>
931 <a class="anchor" name="gca8af81eeb8a2613a3710f2163674bf7"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_get_attribute" ref="gca8af81eeb8a2613a3710f2163674bf7" args="(const xed_decoded_inst_t *p, xed_attribute_enum_t attr)" --><p>
932 <table class="mdTable" cellpadding="2" cellspacing="0">
935 <table cellpadding="0" cellspacing="0" border="0">
937 <td class="md" nowrap valign="top">XED_DLL_EXPORT xed_uint32_t xed_decoded_inst_get_attribute </td>
938 <td class="md" valign="top">( </td>
939 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
940 <td class="mdname" nowrap> <em>p</em>, </td>
943 <td class="md" nowrap align="right"></td>
945 <td class="md" nowrap><a class="el" href="xed-attribute-enum_8h.html#848d4cf396be5a647413e94bc6f0a383">xed_attribute_enum_t</a> </td>
946 <td class="mdname" nowrap> <em>attr</em></td>
950 <td class="md">) </td>
951 <td class="md" colspan="2"></td>
957 <table cellspacing="5" cellpadding="0" border="0">
965 Returns 1 if the attribute is defined for this instruction.
970 <a class="anchor" name="gdc2c807ae2151c758ebc768d4d12bf84"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_get_attributes" ref="gdc2c807ae2151c758ebc768d4d12bf84" args="(const xed_decoded_inst_t *p)" --><p>
971 <table class="mdTable" cellpadding="2" cellspacing="0">
974 <table cellpadding="0" cellspacing="0" border="0">
976 <td class="md" nowrap valign="top">XED_DLL_EXPORT xed_uint32_t xed_decoded_inst_get_attributes </td>
977 <td class="md" valign="top">( </td>
978 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
979 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
980 <td class="md" valign="top"> ) </td>
981 <td class="md" nowrap></td>
987 <table cellspacing="5" cellpadding="0" border="0">
995 Returns the attribute bitvector.
1000 <a class="anchor" name="gef27a2e2c7c6cb84d8e6ba239267172a"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_get_base_reg" ref="gef27a2e2c7c6cb84d8e6ba239267172a" args="(const xed_decoded_inst_t *p, unsigned int mem_idx)" --><p>
1001 <table class="mdTable" cellpadding="2" cellspacing="0">
1004 <table cellpadding="0" cellspacing="0" border="0">
1006 <td class="md" nowrap valign="top">XED_DLL_EXPORT <a class="el" href="xed-reg-enum_8h.html#f05c33c5a68e9304d1d8ac0408ae3f61">xed_reg_enum_t</a> xed_decoded_inst_get_base_reg </td>
1007 <td class="md" valign="top">( </td>
1008 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
1009 <td class="mdname" nowrap> <em>p</em>, </td>
1012 <td class="md" nowrap align="right"></td>
1013 <td class="md"></td>
1014 <td class="md" nowrap>unsigned int </td>
1015 <td class="mdname" nowrap> <em>mem_idx</em></td>
1018 <td class="md"></td>
1019 <td class="md">) </td>
1020 <td class="md" colspan="2"></td>
1026 <table cellspacing="5" cellpadding="0" border="0">
1037 <a class="anchor" name="gada9b13de03dfeefff70f2d219504aae"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_get_branch_displacement" ref="gada9b13de03dfeefff70f2d219504aae" args="(const xed_decoded_inst_t *p)" --><p>
1038 <table class="mdTable" cellpadding="2" cellspacing="0">
1041 <table cellpadding="0" cellspacing="0" border="0">
1043 <td class="md" nowrap valign="top">XED_DLL_EXPORT xed_int32_t xed_decoded_inst_get_branch_displacement </td>
1044 <td class="md" valign="top">( </td>
1045 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
1046 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
1047 <td class="md" valign="top"> ) </td>
1048 <td class="md" nowrap></td>
1054 <table cellspacing="5" cellpadding="0" border="0">
1065 <a class="anchor" name="g6ce6a33dea91f1cb846c78cf2848be58"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_get_branch_displacement_width" ref="g6ce6a33dea91f1cb846c78cf2848be58" args="(const xed_decoded_inst_t *p)" --><p>
1066 <table class="mdTable" cellpadding="2" cellspacing="0">
1069 <table cellpadding="0" cellspacing="0" border="0">
1071 <td class="md" nowrap valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> xed_decoded_inst_get_branch_displacement_width </td>
1072 <td class="md" valign="top">( </td>
1073 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
1074 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
1075 <td class="md" valign="top"> ) </td>
1076 <td class="md" nowrap></td>
1082 <table cellspacing="5" cellpadding="0" border="0">
1095 <a class="anchor" name="g6983743d83d51517bae4404d3345b865"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_get_branch_displacement_width_bits" ref="g6983743d83d51517bae4404d3345b865" args="(const xed_decoded_inst_t *p)" --><p>
1096 <table class="mdTable" cellpadding="2" cellspacing="0">
1099 <table cellpadding="0" cellspacing="0" border="0">
1101 <td class="md" nowrap valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> xed_decoded_inst_get_branch_displacement_width_bits </td>
1102 <td class="md" valign="top">( </td>
1103 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
1104 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
1105 <td class="md" valign="top"> ) </td>
1106 <td class="md" nowrap></td>
1112 <table cellspacing="5" cellpadding="0" border="0">
1125 <a class="anchor" name="gdb8cfb26a825d8a8d8dcbf49857eab63"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_get_category" ref="gdb8cfb26a825d8a8d8dcbf49857eab63" args="(const xed_decoded_inst_t *p)" --><p>
1126 <table class="mdTable" cellpadding="2" cellspacing="0">
1129 <table cellpadding="0" cellspacing="0" border="0">
1131 <td class="md" nowrap valign="top">static XED_INLINE <a class="el" href="xed-category-enum_8h.html#3e6e23a35a7ad463e2422d7db98e49f5">xed_category_enum_t</a> xed_decoded_inst_get_category </td>
1132 <td class="md" valign="top">( </td>
1133 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
1134 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
1135 <td class="md" valign="top"> ) </td>
1136 <td class="md" nowrap><code> [static]</code></td>
1142 <table cellspacing="5" cellpadding="0" border="0">
1150 Return the instruction category enumeration.
1154 Definition at line <a class="el" href="xed-decoded-inst_8h-source.html#l00182">182</a> of file <a class="el" href="xed-decoded-inst_8h-source.html">xed-decoded-inst.h</a>. </td>
1157 <a class="anchor" name="g2ad01ffd078ac7166c8a2bc1be1b6d4d"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_get_extension" ref="g2ad01ffd078ac7166c8a2bc1be1b6d4d" args="(const xed_decoded_inst_t *p)" --><p>
1158 <table class="mdTable" cellpadding="2" cellspacing="0">
1161 <table cellpadding="0" cellspacing="0" border="0">
1163 <td class="md" nowrap valign="top">static XED_INLINE <a class="el" href="xed-extension-enum_8h.html#e7b9f64cdf123c5fda22bd10d5db9916">xed_extension_enum_t</a> xed_decoded_inst_get_extension </td>
1164 <td class="md" valign="top">( </td>
1165 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
1166 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
1167 <td class="md" valign="top"> ) </td>
1168 <td class="md" nowrap><code> [static]</code></td>
1174 <table cellspacing="5" cellpadding="0" border="0">
1182 Return the instruction extension enumeration.
1186 Definition at line <a class="el" href="xed-decoded-inst_8h-source.html#l00188">188</a> of file <a class="el" href="xed-decoded-inst_8h-source.html">xed-decoded-inst.h</a>. </td>
1189 <a class="anchor" name="g2bc965a8dc2a1fee79b80b2c45d4329c"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_get_iclass" ref="g2bc965a8dc2a1fee79b80b2c45d4329c" args="(const xed_decoded_inst_t *p)" --><p>
1190 <table class="mdTable" cellpadding="2" cellspacing="0">
1193 <table cellpadding="0" cellspacing="0" border="0">
1195 <td class="md" nowrap valign="top">static XED_INLINE <a class="el" href="xed-iclass-enum_8h.html#d318511ae9cc50f102251b3c91a1ab9f">xed_iclass_enum_t</a> xed_decoded_inst_get_iclass </td>
1196 <td class="md" valign="top">( </td>
1197 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
1198 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
1199 <td class="md" valign="top"> ) </td>
1200 <td class="md" nowrap><code> [static]</code></td>
1206 <table cellspacing="5" cellpadding="0" border="0">
1214 Return the instruction class enumeration.
1218 Definition at line <a class="el" href="xed-decoded-inst_8h-source.html#l00194">194</a> of file <a class="el" href="xed-decoded-inst_8h-source.html">xed-decoded-inst.h</a>. </td>
1221 <a class="anchor" name="gf51f3a8153bdedec0d8864cc0e89b5c7"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_get_iform_enum" ref="gf51f3a8153bdedec0d8864cc0e89b5c7" args="(const xed_decoded_inst_t *p)" --><p>
1222 <table class="mdTable" cellpadding="2" cellspacing="0">
1225 <table cellpadding="0" cellspacing="0" border="0">
1227 <td class="md" nowrap valign="top">static XED_INLINE <a class="el" href="xed-iform-enum_8h.html#f48986d6e090a75f7ab50e6d4a182e21">xed_iform_enum_t</a> xed_decoded_inst_get_iform_enum </td>
1228 <td class="md" valign="top">( </td>
1229 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
1230 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
1231 <td class="md" valign="top"> ) </td>
1232 <td class="md" nowrap><code> [static]</code></td>
1238 <table cellspacing="5" cellpadding="0" border="0">
1246 Return the instruction iform enum of type <a class="el" href="xed-iform-enum_8h.html#f48986d6e090a75f7ab50e6d4a182e21">xed_iform_enum_t</a> .
1250 Definition at line <a class="el" href="xed-decoded-inst_8h-source.html#l00213">213</a> of file <a class="el" href="xed-decoded-inst_8h-source.html">xed-decoded-inst.h</a>. </td>
1253 <a class="anchor" name="g8c85bf31ee09bde1bb5b957699a38f71"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_get_iform_enum_dispatch" ref="g8c85bf31ee09bde1bb5b957699a38f71" args="(const xed_decoded_inst_t *p)" --><p>
1254 <table class="mdTable" cellpadding="2" cellspacing="0">
1257 <table cellpadding="0" cellspacing="0" border="0">
1259 <td class="md" nowrap valign="top">static XED_INLINE unsigned int xed_decoded_inst_get_iform_enum_dispatch </td>
1260 <td class="md" valign="top">( </td>
1261 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
1262 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
1263 <td class="md" valign="top"> ) </td>
1264 <td class="md" nowrap><code> [static]</code></td>
1270 <table cellspacing="5" cellpadding="0" border="0">
1278 Return the instruction zero-based iform number based on masking the corresponding <a class="el" href="xed-iform-enum_8h.html#f48986d6e090a75f7ab50e6d4a182e21">xed_iform_enum_t</a>.
1280 This value is suitable for dispatching. The maximum value for a particular iclass is provided by <a class="el" href="group__DEC.html#g7b2e9c4095bddf90c3679c9fdd54b20c">xed_iform_max_per_iclass()</a> .
1282 Definition at line <a class="el" href="xed-decoded-inst_8h-source.html#l00224">224</a> of file <a class="el" href="xed-decoded-inst_8h-source.html">xed-decoded-inst.h</a>. </td>
1285 <a class="anchor" name="g7c752cb527745114566367dfa0bb176c"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_get_immediate_is_signed" ref="g7c752cb527745114566367dfa0bb176c" args="(const xed_decoded_inst_t *p)" --><p>
1286 <table class="mdTable" cellpadding="2" cellspacing="0">
1289 <table cellpadding="0" cellspacing="0" border="0">
1291 <td class="md" nowrap valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> xed_decoded_inst_get_immediate_is_signed </td>
1292 <td class="md" valign="top">( </td>
1293 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
1294 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
1295 <td class="md" valign="top"> ) </td>
1296 <td class="md" nowrap></td>
1302 <table cellspacing="5" cellpadding="0" border="0">
1310 Return true if the first immediate (IMM0) is signed.
1315 <a class="anchor" name="g91e972de2b4dfd4edac004d2cdf2768c"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_get_immediate_width" ref="g91e972de2b4dfd4edac004d2cdf2768c" args="(const xed_decoded_inst_t *p)" --><p>
1316 <table class="mdTable" cellpadding="2" cellspacing="0">
1319 <table cellpadding="0" cellspacing="0" border="0">
1321 <td class="md" nowrap valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> xed_decoded_inst_get_immediate_width </td>
1322 <td class="md" valign="top">( </td>
1323 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
1324 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
1325 <td class="md" valign="top"> ) </td>
1326 <td class="md" nowrap></td>
1332 <table cellspacing="5" cellpadding="0" border="0">
1340 Return the immediate width in BYTES.
1345 <a class="anchor" name="gd34f78b3aa239ec07a7d1b5537f7a12a"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_get_immediate_width_bits" ref="gd34f78b3aa239ec07a7d1b5537f7a12a" args="(const xed_decoded_inst_t *p)" --><p>
1346 <table class="mdTable" cellpadding="2" cellspacing="0">
1349 <table cellpadding="0" cellspacing="0" border="0">
1351 <td class="md" nowrap valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> xed_decoded_inst_get_immediate_width_bits </td>
1352 <td class="md" valign="top">( </td>
1353 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
1354 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
1355 <td class="md" valign="top"> ) </td>
1356 <td class="md" nowrap></td>
1362 <table cellspacing="5" cellpadding="0" border="0">
1370 Return the immediate width in BITS.
1375 <a class="anchor" name="gd39ecfe4d1c3d95161f291e4d9a18280"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_get_index_reg" ref="gd39ecfe4d1c3d95161f291e4d9a18280" args="(const xed_decoded_inst_t *p, unsigned int mem_idx)" --><p>
1376 <table class="mdTable" cellpadding="2" cellspacing="0">
1379 <table cellpadding="0" cellspacing="0" border="0">
1381 <td class="md" nowrap valign="top">XED_DLL_EXPORT <a class="el" href="xed-reg-enum_8h.html#f05c33c5a68e9304d1d8ac0408ae3f61">xed_reg_enum_t</a> xed_decoded_inst_get_index_reg </td>
1382 <td class="md" valign="top">( </td>
1383 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
1384 <td class="mdname" nowrap> <em>p</em>, </td>
1387 <td class="md" nowrap align="right"></td>
1388 <td class="md"></td>
1389 <td class="md" nowrap>unsigned int </td>
1390 <td class="mdname" nowrap> <em>mem_idx</em></td>
1393 <td class="md"></td>
1394 <td class="md">) </td>
1395 <td class="md" colspan="2"></td>
1401 <table cellspacing="5" cellpadding="0" border="0">
1412 <a class="anchor" name="gd1051f7b86c94d5670f684a6ea79fcdf"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_get_length" ref="gd1051f7b86c94d5670f684a6ea79fcdf" args="(const xed_decoded_inst_t *p)" --><p>
1413 <table class="mdTable" cellpadding="2" cellspacing="0">
1416 <table cellpadding="0" cellspacing="0" border="0">
1418 <td class="md" nowrap valign="top">static XED_INLINE <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> xed_decoded_inst_get_length </td>
1419 <td class="md" valign="top">( </td>
1420 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
1421 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
1422 <td class="md" valign="top"> ) </td>
1423 <td class="md" nowrap><code> [static]</code></td>
1429 <table cellspacing="5" cellpadding="0" border="0">
1437 Return the length of the decoded instruction in bytes.
1441 Definition at line <a class="el" href="xed-decoded-inst_8h-source.html#l00138">138</a> of file <a class="el" href="xed-decoded-inst_8h-source.html">xed-decoded-inst.h</a>. </td>
1444 <a class="anchor" name="ga8d22454961035b0fa6121c5f419817d"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_get_memory_displacement" ref="ga8d22454961035b0fa6121c5f419817d" args="(const xed_decoded_inst_t *p, unsigned int mem_idx)" --><p>
1445 <table class="mdTable" cellpadding="2" cellspacing="0">
1448 <table cellpadding="0" cellspacing="0" border="0">
1450 <td class="md" nowrap valign="top">XED_DLL_EXPORT xed_int64_t xed_decoded_inst_get_memory_displacement </td>
1451 <td class="md" valign="top">( </td>
1452 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
1453 <td class="mdname" nowrap> <em>p</em>, </td>
1456 <td class="md" nowrap align="right"></td>
1457 <td class="md"></td>
1458 <td class="md" nowrap>unsigned int </td>
1459 <td class="mdname" nowrap> <em>mem_idx</em></td>
1462 <td class="md"></td>
1463 <td class="md">) </td>
1464 <td class="md" colspan="2"></td>
1470 <table cellspacing="5" cellpadding="0" border="0">
1481 <a class="anchor" name="g275efe423fe90a10a674da18f3265bd4"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_get_memory_displacement_width" ref="g275efe423fe90a10a674da18f3265bd4" args="(const xed_decoded_inst_t *p, unsigned int mem_idx)" --><p>
1482 <table class="mdTable" cellpadding="2" cellspacing="0">
1485 <table cellpadding="0" cellspacing="0" border="0">
1487 <td class="md" nowrap valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> xed_decoded_inst_get_memory_displacement_width </td>
1488 <td class="md" valign="top">( </td>
1489 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
1490 <td class="mdname" nowrap> <em>p</em>, </td>
1493 <td class="md" nowrap align="right"></td>
1494 <td class="md"></td>
1495 <td class="md" nowrap>unsigned int </td>
1496 <td class="mdname" nowrap> <em>mem_idx</em></td>
1499 <td class="md"></td>
1500 <td class="md">) </td>
1501 <td class="md" colspan="2"></td>
1507 <table cellspacing="5" cellpadding="0" border="0">
1520 <a class="anchor" name="g1dbd440bd1bde01bd35d01ec1e518fb5"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_get_memory_displacement_width_bits" ref="g1dbd440bd1bde01bd35d01ec1e518fb5" args="(const xed_decoded_inst_t *p, unsigned int mem_idx)" --><p>
1521 <table class="mdTable" cellpadding="2" cellspacing="0">
1524 <table cellpadding="0" cellspacing="0" border="0">
1526 <td class="md" nowrap valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> xed_decoded_inst_get_memory_displacement_width_bits </td>
1527 <td class="md" valign="top">( </td>
1528 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
1529 <td class="mdname" nowrap> <em>p</em>, </td>
1532 <td class="md" nowrap align="right"></td>
1533 <td class="md"></td>
1534 <td class="md" nowrap>unsigned int </td>
1535 <td class="mdname" nowrap> <em>mem_idx</em></td>
1538 <td class="md"></td>
1539 <td class="md">) </td>
1540 <td class="md" colspan="2"></td>
1546 <table cellspacing="5" cellpadding="0" border="0">
1559 <a class="anchor" name="gecce1ea119eb21d3569ee0058d5ce084"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_get_memory_operand_length" ref="gecce1ea119eb21d3569ee0058d5ce084" args="(const xed_decoded_inst_t *p, unsigned int memop_idx)" --><p>
1560 <table class="mdTable" cellpadding="2" cellspacing="0">
1563 <table cellpadding="0" cellspacing="0" border="0">
1565 <td class="md" nowrap valign="top">XED_DLL_EXPORT unsigned int xed_decoded_inst_get_memory_operand_length </td>
1566 <td class="md" valign="top">( </td>
1567 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
1568 <td class="mdname" nowrap> <em>p</em>, </td>
1571 <td class="md" nowrap align="right"></td>
1572 <td class="md"></td>
1573 <td class="md" nowrap>unsigned int </td>
1574 <td class="mdname" nowrap> <em>memop_idx</em></td>
1577 <td class="md"></td>
1578 <td class="md">) </td>
1579 <td class="md" colspan="2"></td>
1585 <table cellspacing="5" cellpadding="0" border="0">
1596 <a class="anchor" name="g8b01e6acbf119ee549fc58792d91ad60"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_get_mode" ref="g8b01e6acbf119ee549fc58792d91ad60" args="(const xed_decoded_inst_t *p)" --><p>
1597 <table class="mdTable" cellpadding="2" cellspacing="0">
1600 <table cellpadding="0" cellspacing="0" border="0">
1602 <td class="md" nowrap valign="top">static XED_INLINE <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> xed_decoded_inst_get_mode </td>
1603 <td class="md" valign="top">( </td>
1604 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
1605 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
1606 <td class="md" valign="top"> ) </td>
1607 <td class="md" nowrap><code> [static]</code></td>
1613 <table cellspacing="5" cellpadding="0" border="0">
1623 Definition at line <a class="el" href="xed-decoded-inst_8h-source.html#l00148">148</a> of file <a class="el" href="xed-decoded-inst_8h-source.html">xed-decoded-inst.h</a>. </td>
1626 <a class="anchor" name="g86a1a2c5672d86de46115b903bc5f63e"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_get_old_iform" ref="g86a1a2c5672d86de46115b903bc5f63e" args="(const xed_decoded_inst_t *p)" --><p>
1627 <table class="mdTable" cellpadding="2" cellspacing="0">
1630 <table cellpadding="0" cellspacing="0" border="0">
1632 <td class="md" nowrap valign="top">static XED_INLINE <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> xed_decoded_inst_get_old_iform </td>
1633 <td class="md" valign="top">( </td>
1634 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
1635 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
1636 <td class="md" valign="top"> ) </td>
1637 <td class="md" nowrap><code> [static]</code></td>
1643 <table cellspacing="5" cellpadding="0" border="0">
1651 DEPRECATED Return the instruction iform number.
1653 The iform is zero-based number of the different instances of each iclass.
1655 Definition at line <a class="el" href="xed-decoded-inst_8h-source.html#l00240">240</a> of file <a class="el" href="xed-decoded-inst_8h-source.html">xed-decoded-inst.h</a>. </td>
1658 <a class="anchor" name="g5635f3a3d121bbcbb64d548dbb32e4c5"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_get_reg" ref="g5635f3a3d121bbcbb64d548dbb32e4c5" args="(const xed_decoded_inst_t *p, xed_operand_enum_t reg_operand)" --><p>
1659 <table class="mdTable" cellpadding="2" cellspacing="0">
1662 <table cellpadding="0" cellspacing="0" border="0">
1664 <td class="md" nowrap valign="top">static XED_INLINE <a class="el" href="xed-reg-enum_8h.html#f05c33c5a68e9304d1d8ac0408ae3f61">xed_reg_enum_t</a> xed_decoded_inst_get_reg </td>
1665 <td class="md" valign="top">( </td>
1666 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
1667 <td class="mdname" nowrap> <em>p</em>, </td>
1670 <td class="md" nowrap align="right"></td>
1671 <td class="md"></td>
1672 <td class="md" nowrap><a class="el" href="xed-operand-enum_8h.html#09c2a35d8bb7bfe68bb3d34b0a5e011a">xed_operand_enum_t</a> </td>
1673 <td class="mdname" nowrap> <em>reg_operand</em></td>
1676 <td class="md"></td>
1677 <td class="md">) </td>
1678 <td class="md" colspan="2"><code> [static]</code></td>
1684 <table cellspacing="5" cellpadding="0" border="0">
1692 Return the specified register operand.
1694 The specifier is of type <a class="el" href="xed-operand-enum_8h.html#09c2a35d8bb7bfe68bb3d34b0a5e011a">xed_operand_enum_t</a> .
1696 Definition at line <a class="el" href="xed-decoded-inst_8h-source.html#l00388">388</a> of file <a class="el" href="xed-decoded-inst_8h-source.html">xed-decoded-inst.h</a>. </td>
1699 <a class="anchor" name="g275353ead71e5915f810ef06c4149b68"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_get_rflags_info" ref="g275353ead71e5915f810ef06c4149b68" args="(const xed_decoded_inst_t *p)" --><p>
1700 <table class="mdTable" cellpadding="2" cellspacing="0">
1703 <table cellpadding="0" cellspacing="0" border="0">
1705 <td class="md" nowrap valign="top">XED_DLL_EXPORT const <a class="el" href="group__FLAGS.html#g7a0efe6ee18616a7d37af47d4e3cae10">xed_simple_flag_t</a>* xed_decoded_inst_get_rflags_info </td>
1706 <td class="md" valign="top">( </td>
1707 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
1708 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
1709 <td class="md" valign="top"> ) </td>
1710 <td class="md" nowrap></td>
1716 <table cellspacing="5" cellpadding="0" border="0">
1727 <a class="anchor" name="g77a570e03d56cd31e50f4bc54104b0f9"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_get_scale" ref="g77a570e03d56cd31e50f4bc54104b0f9" args="(const xed_decoded_inst_t *p, unsigned int mem_idx)" --><p>
1728 <table class="mdTable" cellpadding="2" cellspacing="0">
1731 <table cellpadding="0" cellspacing="0" border="0">
1733 <td class="md" nowrap valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> xed_decoded_inst_get_scale </td>
1734 <td class="md" valign="top">( </td>
1735 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
1736 <td class="mdname" nowrap> <em>p</em>, </td>
1739 <td class="md" nowrap align="right"></td>
1740 <td class="md"></td>
1741 <td class="md" nowrap>unsigned int </td>
1742 <td class="mdname" nowrap> <em>mem_idx</em></td>
1745 <td class="md"></td>
1746 <td class="md">) </td>
1747 <td class="md" colspan="2"></td>
1753 <table cellspacing="5" cellpadding="0" border="0">
1764 <a class="anchor" name="gd1d32b618885f9d22aa75101664497e4"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_get_second_immediate" ref="gd1d32b618885f9d22aa75101664497e4" args="(const xed_decoded_inst_t *p)" --><p>
1765 <table class="mdTable" cellpadding="2" cellspacing="0">
1768 <table cellpadding="0" cellspacing="0" border="0">
1770 <td class="md" nowrap valign="top">static XED_INLINE xed_uint8_t xed_decoded_inst_get_second_immediate </td>
1771 <td class="md" valign="top">( </td>
1772 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
1773 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
1774 <td class="md" valign="top"> ) </td>
1775 <td class="md" nowrap><code> [static]</code></td>
1781 <table cellspacing="5" cellpadding="0" border="0">
1789 Return the second immediate.
1793 Definition at line <a class="el" href="xed-decoded-inst_8h-source.html#l00382">382</a> of file <a class="el" href="xed-decoded-inst_8h-source.html">xed-decoded-inst.h</a>. </td>
1796 <a class="anchor" name="g1451e49df729a4fe1e650db6cb3343d2"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_get_seg_reg" ref="g1451e49df729a4fe1e650db6cb3343d2" args="(const xed_decoded_inst_t *p, unsigned int mem_idx)" --><p>
1797 <table class="mdTable" cellpadding="2" cellspacing="0">
1800 <table cellpadding="0" cellspacing="0" border="0">
1802 <td class="md" nowrap valign="top">XED_DLL_EXPORT <a class="el" href="xed-reg-enum_8h.html#f05c33c5a68e9304d1d8ac0408ae3f61">xed_reg_enum_t</a> xed_decoded_inst_get_seg_reg </td>
1803 <td class="md" valign="top">( </td>
1804 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
1805 <td class="mdname" nowrap> <em>p</em>, </td>
1808 <td class="md" nowrap align="right"></td>
1809 <td class="md"></td>
1810 <td class="md" nowrap>unsigned int </td>
1811 <td class="mdname" nowrap> <em>mem_idx</em></td>
1814 <td class="md"></td>
1815 <td class="md">) </td>
1816 <td class="md" colspan="2"></td>
1822 <table cellspacing="5" cellpadding="0" border="0">
1833 <a class="anchor" name="gbbc8dec2bddec619bfe8f9a39c7ffdf4"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_get_signed_immediate" ref="gbbc8dec2bddec619bfe8f9a39c7ffdf4" args="(const xed_decoded_inst_t *p)" --><p>
1834 <table class="mdTable" cellpadding="2" cellspacing="0">
1837 <table cellpadding="0" cellspacing="0" border="0">
1839 <td class="md" nowrap valign="top">XED_DLL_EXPORT xed_int32_t xed_decoded_inst_get_signed_immediate </td>
1840 <td class="md" valign="top">( </td>
1841 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
1842 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
1843 <td class="md" valign="top"> ) </td>
1844 <td class="md" nowrap></td>
1850 <table cellspacing="5" cellpadding="0" border="0">
1861 <a class="anchor" name="g6d7f689564c0060bd6c64adf7ff5da94"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_get_stack_address_mode" ref="g6d7f689564c0060bd6c64adf7ff5da94" args="(const xed_decoded_inst_t *p)" --><p>
1862 <table class="mdTable" cellpadding="2" cellspacing="0">
1865 <table cellpadding="0" cellspacing="0" border="0">
1867 <td class="md" nowrap valign="top">static XED_INLINE <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> xed_decoded_inst_get_stack_address_mode </td>
1868 <td class="md" valign="top">( </td>
1869 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
1870 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
1871 <td class="md" valign="top"> ) </td>
1872 <td class="md" nowrap><code> [static]</code></td>
1878 <table cellspacing="5" cellpadding="0" border="0">
1888 Definition at line <a class="el" href="xed-decoded-inst_8h-source.html#l00156">156</a> of file <a class="el" href="xed-decoded-inst_8h-source.html">xed-decoded-inst.h</a>. </td>
1891 <a class="anchor" name="g79461981ed1722ab09a094915fb72428"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_get_unsigned_immediate" ref="g79461981ed1722ab09a094915fb72428" args="(const xed_decoded_inst_t *p)" --><p>
1892 <table class="mdTable" cellpadding="2" cellspacing="0">
1895 <table cellpadding="0" cellspacing="0" border="0">
1897 <td class="md" nowrap valign="top">XED_DLL_EXPORT xed_uint64_t xed_decoded_inst_get_unsigned_immediate </td>
1898 <td class="md" valign="top">( </td>
1899 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
1900 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
1901 <td class="md" valign="top"> ) </td>
1902 <td class="md" nowrap></td>
1908 <table cellspacing="5" cellpadding="0" border="0">
1919 <a class="anchor" name="g6d902e3364c9393c5f3b42a3f30442a0"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_get_user_data" ref="g6d902e3364c9393c5f3b42a3f30442a0" args="(xed_decoded_inst_t *p)" --><p>
1920 <table class="mdTable" cellpadding="2" cellspacing="0">
1923 <table cellpadding="0" cellspacing="0" border="0">
1925 <td class="md" nowrap valign="top">static XED_INLINE xed_uint64_t xed_decoded_inst_get_user_data </td>
1926 <td class="md" valign="top">( </td>
1927 <td class="md" nowrap valign="top"><a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
1928 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
1929 <td class="md" valign="top"> ) </td>
1930 <td class="md" nowrap><code> [static]</code></td>
1936 <table cellspacing="5" cellpadding="0" border="0">
1944 Return a user data field for arbitrary use by the user after decoding.
1948 Definition at line <a class="el" href="xed-decoded-inst_8h-source.html#l00458">458</a> of file <a class="el" href="xed-decoded-inst_8h-source.html">xed-decoded-inst.h</a>. </td>
1951 <a class="anchor" name="ge507752abfa509bd72ee0903e873fe9e"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_inst" ref="ge507752abfa509bd72ee0903e873fe9e" args="(const xed_decoded_inst_t *p)" --><p>
1952 <table class="mdTable" cellpadding="2" cellspacing="0">
1955 <table cellpadding="0" cellspacing="0" border="0">
1957 <td class="md" nowrap valign="top">static XED_INLINE const <a class="el" href="group__DEC.html#g2b28c31e1e83e74ef5f613b38e0cc0ec">xed_inst_t</a>* xed_decoded_inst_inst </td>
1958 <td class="md" valign="top">( </td>
1959 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
1960 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
1961 <td class="md" valign="top"> ) </td>
1962 <td class="md" nowrap><code> [static]</code></td>
1968 <table cellspacing="5" cellpadding="0" border="0">
1976 Return the <a class="el" href="group__DEC.html#g2b28c31e1e83e74ef5f613b38e0cc0ec">xed_inst_t</a> structure for this instruction.
1978 This is the route to the basic operands form information.
1980 Definition at line <a class="el" href="xed-decoded-inst_8h-source.html#l00175">175</a> of file <a class="el" href="xed-decoded-inst_8h-source.html">xed-decoded-inst.h</a>. </td>
1983 <a class="anchor" name="ge8c0841f1b56911c50531e1fff2abb58"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_is_prefetch" ref="ge8c0841f1b56911c50531e1fff2abb58" args="(const xed_decoded_inst_t *p)" --><p>
1984 <table class="mdTable" cellpadding="2" cellspacing="0">
1987 <table cellpadding="0" cellspacing="0" border="0">
1989 <td class="md" nowrap valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#d355c921b747945a82d62233a599c7b5">xed_bool_t</a> xed_decoded_inst_is_prefetch </td>
1990 <td class="md" valign="top">( </td>
1991 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
1992 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
1993 <td class="md" valign="top"> ) </td>
1994 <td class="md" nowrap></td>
2000 <table cellspacing="5" cellpadding="0" border="0">
2008 Returns true if the instruction is a prefetch.
2013 <a class="anchor" name="g1d1b81a6e49ae396bdad946439794b5f"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_mem_read" ref="g1d1b81a6e49ae396bdad946439794b5f" args="(const xed_decoded_inst_t *p, unsigned int mem_idx)" --><p>
2014 <table class="mdTable" cellpadding="2" cellspacing="0">
2017 <table cellpadding="0" cellspacing="0" border="0">
2019 <td class="md" nowrap valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#d355c921b747945a82d62233a599c7b5">xed_bool_t</a> xed_decoded_inst_mem_read </td>
2020 <td class="md" valign="top">( </td>
2021 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
2022 <td class="mdname" nowrap> <em>p</em>, </td>
2025 <td class="md" nowrap align="right"></td>
2026 <td class="md"></td>
2027 <td class="md" nowrap>unsigned int </td>
2028 <td class="mdname" nowrap> <em>mem_idx</em></td>
2031 <td class="md"></td>
2032 <td class="md">) </td>
2033 <td class="md" colspan="2"></td>
2039 <table cellspacing="5" cellpadding="0" border="0">
2050 <a class="anchor" name="geda7bba6faea14f777752fbab269d425"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_mem_written" ref="geda7bba6faea14f777752fbab269d425" args="(const xed_decoded_inst_t *p, unsigned int mem_idx)" --><p>
2051 <table class="mdTable" cellpadding="2" cellspacing="0">
2054 <table cellpadding="0" cellspacing="0" border="0">
2056 <td class="md" nowrap valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#d355c921b747945a82d62233a599c7b5">xed_bool_t</a> xed_decoded_inst_mem_written </td>
2057 <td class="md" valign="top">( </td>
2058 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
2059 <td class="mdname" nowrap> <em>p</em>, </td>
2062 <td class="md" nowrap align="right"></td>
2063 <td class="md"></td>
2064 <td class="md" nowrap>unsigned int </td>
2065 <td class="mdname" nowrap> <em>mem_idx</em></td>
2068 <td class="md"></td>
2069 <td class="md">) </td>
2070 <td class="md" colspan="2"></td>
2076 <table cellspacing="5" cellpadding="0" border="0">
2087 <a class="anchor" name="g7dff98e10cc2432084fd5528f834bc35"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_mem_written_only" ref="g7dff98e10cc2432084fd5528f834bc35" args="(const xed_decoded_inst_t *p, unsigned int mem_idx)" --><p>
2088 <table class="mdTable" cellpadding="2" cellspacing="0">
2091 <table cellpadding="0" cellspacing="0" border="0">
2093 <td class="md" nowrap valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#d355c921b747945a82d62233a599c7b5">xed_bool_t</a> xed_decoded_inst_mem_written_only </td>
2094 <td class="md" valign="top">( </td>
2095 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
2096 <td class="mdname" nowrap> <em>p</em>, </td>
2099 <td class="md" nowrap align="right"></td>
2100 <td class="md"></td>
2101 <td class="md" nowrap>unsigned int </td>
2102 <td class="mdname" nowrap> <em>mem_idx</em></td>
2105 <td class="md"></td>
2106 <td class="md">) </td>
2107 <td class="md" colspan="2"></td>
2113 <table cellspacing="5" cellpadding="0" border="0">
2124 <a class="anchor" name="ga8cca4acafb5dee2b4ecfafee1cca7b8"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_noperands" ref="ga8cca4acafb5dee2b4ecfafee1cca7b8" args="(const xed_decoded_inst_t *p)" --><p>
2125 <table class="mdTable" cellpadding="2" cellspacing="0">
2128 <table cellpadding="0" cellspacing="0" border="0">
2130 <td class="md" nowrap valign="top">static XED_INLINE unsigned int xed_decoded_inst_noperands </td>
2131 <td class="md" valign="top">( </td>
2132 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
2133 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
2134 <td class="md" valign="top"> ) </td>
2135 <td class="md" nowrap><code> [static]</code></td>
2141 <table cellspacing="5" cellpadding="0" border="0">
2149 Return the number of operands.
2153 Definition at line <a class="el" href="xed-decoded-inst_8h-source.html#l00257">257</a> of file <a class="el" href="xed-decoded-inst_8h-source.html">xed-decoded-inst.h</a>. </td>
2156 <a class="anchor" name="gc093ecf9904ce025bafa8e7318ded0ec"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_number_of_memory_operands" ref="gc093ecf9904ce025bafa8e7318ded0ec" args="(const xed_decoded_inst_t *p)" --><p>
2157 <table class="mdTable" cellpadding="2" cellspacing="0">
2160 <table cellpadding="0" cellspacing="0" border="0">
2162 <td class="md" nowrap valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> xed_decoded_inst_number_of_memory_operands </td>
2163 <td class="md" valign="top">( </td>
2164 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
2165 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
2166 <td class="md" valign="top"> ) </td>
2167 <td class="md" nowrap></td>
2173 <table cellspacing="5" cellpadding="0" border="0">
2184 <a class="anchor" name="ga030199ba499d2bcb67cbf7740d8d4c6"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_operand_length" ref="ga030199ba499d2bcb67cbf7740d8d4c6" args="(const xed_decoded_inst_t *p, unsigned int operand_index)" --><p>
2185 <table class="mdTable" cellpadding="2" cellspacing="0">
2188 <table cellpadding="0" cellspacing="0" border="0">
2190 <td class="md" nowrap valign="top">XED_DLL_EXPORT unsigned int xed_decoded_inst_operand_length </td>
2191 <td class="md" valign="top">( </td>
2192 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
2193 <td class="mdname" nowrap> <em>p</em>, </td>
2196 <td class="md" nowrap align="right"></td>
2197 <td class="md"></td>
2198 <td class="md" nowrap>unsigned int </td>
2199 <td class="mdname" nowrap> <em>operand_index</em></td>
2202 <td class="md"></td>
2203 <td class="md">) </td>
2204 <td class="md" colspan="2"></td>
2210 <table cellspacing="5" cellpadding="0" border="0">
2218 Return the length in bytes of the operand_index'th operand.
2223 <a class="anchor" name="g698e5a357d20e47f32ba155963526abd"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_operands" ref="g698e5a357d20e47f32ba155963526abd" args="(xed_decoded_inst_t *p)" --><p>
2224 <table class="mdTable" cellpadding="2" cellspacing="0">
2227 <table cellpadding="0" cellspacing="0" border="0">
2229 <td class="md" nowrap valign="top">static XED_INLINE <a class="el" href="xed-operand-storage_8h.html#eb1037b79ccdc048af4887376f6382a4">xed_operand_values_t</a>* xed_decoded_inst_operands </td>
2230 <td class="md" valign="top">( </td>
2231 <td class="md" nowrap valign="top"><a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
2232 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
2233 <td class="md" valign="top"> ) </td>
2234 <td class="md" nowrap><code> [static]</code></td>
2240 <table cellspacing="5" cellpadding="0" border="0">
2248 Obtain a non-constant pointer to the operands.
2252 Definition at line <a class="el" href="xed-decoded-inst_8h-source.html#l00111">111</a> of file <a class="el" href="xed-decoded-inst_8h-source.html">xed-decoded-inst.h</a>. </td>
2255 <a class="anchor" name="g38e372d3227817713159035cb47ad1fd"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_operands_const" ref="g38e372d3227817713159035cb47ad1fd" args="(const xed_decoded_inst_t *p)" --><p>
2256 <table class="mdTable" cellpadding="2" cellspacing="0">
2259 <table cellpadding="0" cellspacing="0" border="0">
2261 <td class="md" nowrap valign="top">static XED_INLINE const <a class="el" href="xed-operand-storage_8h.html#eb1037b79ccdc048af4887376f6382a4">xed_operand_values_t</a>* xed_decoded_inst_operands_const </td>
2262 <td class="md" valign="top">( </td>
2263 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
2264 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
2265 <td class="md" valign="top"> ) </td>
2266 <td class="md" nowrap><code> [static]</code></td>
2272 <table cellspacing="5" cellpadding="0" border="0">
2280 Obtain a constant pointer to the operands.
2284 Definition at line <a class="el" href="xed-decoded-inst_8h-source.html#l00105">105</a> of file <a class="el" href="xed-decoded-inst_8h-source.html">xed-decoded-inst.h</a>. </td>
2287 <a class="anchor" name="gb34c7c4ac7369256b6b57b015a9490af"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_set_branch_displacement" ref="gb34c7c4ac7369256b6b57b015a9490af" args="(xed_decoded_inst_t *p, xed_int32_t disp, xed_uint_t length_bytes)" --><p>
2288 <table class="mdTable" cellpadding="2" cellspacing="0">
2291 <table cellpadding="0" cellspacing="0" border="0">
2293 <td class="md" nowrap valign="top">XED_DLL_EXPORT void xed_decoded_inst_set_branch_displacement </td>
2294 <td class="md" valign="top">( </td>
2295 <td class="md" nowrap valign="top"><a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
2296 <td class="mdname" nowrap> <em>p</em>, </td>
2299 <td class="md" nowrap align="right"></td>
2300 <td class="md"></td>
2301 <td class="md" nowrap>xed_int32_t </td>
2302 <td class="mdname" nowrap> <em>disp</em>, </td>
2305 <td class="md" nowrap align="right"></td>
2306 <td class="md"></td>
2307 <td class="md" nowrap><a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> </td>
2308 <td class="mdname" nowrap> <em>length_bytes</em></td>
2311 <td class="md"></td>
2312 <td class="md">) </td>
2313 <td class="md" colspan="2"></td>
2319 <table cellspacing="5" cellpadding="0" border="0">
2327 Set the branch displacement using a BYTE length.
2332 <a class="anchor" name="g1b46a3f333598d21438849fb03867702"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_set_branch_displacement_bits" ref="g1b46a3f333598d21438849fb03867702" args="(xed_decoded_inst_t *p, xed_int32_t disp, xed_uint_t length_bits)" --><p>
2333 <table class="mdTable" cellpadding="2" cellspacing="0">
2336 <table cellpadding="0" cellspacing="0" border="0">
2338 <td class="md" nowrap valign="top">XED_DLL_EXPORT void xed_decoded_inst_set_branch_displacement_bits </td>
2339 <td class="md" valign="top">( </td>
2340 <td class="md" nowrap valign="top"><a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
2341 <td class="mdname" nowrap> <em>p</em>, </td>
2344 <td class="md" nowrap align="right"></td>
2345 <td class="md"></td>
2346 <td class="md" nowrap>xed_int32_t </td>
2347 <td class="mdname" nowrap> <em>disp</em>, </td>
2350 <td class="md" nowrap align="right"></td>
2351 <td class="md"></td>
2352 <td class="md" nowrap><a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> </td>
2353 <td class="mdname" nowrap> <em>length_bits</em></td>
2356 <td class="md"></td>
2357 <td class="md">) </td>
2358 <td class="md" colspan="2"></td>
2364 <table cellspacing="5" cellpadding="0" border="0">
2372 Set the branch displacement a BITS length.
2377 <a class="anchor" name="gab164e3abdbd0902ced002923ded7c0a"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_set_immediate_signed" ref="gab164e3abdbd0902ced002923ded7c0a" args="(xed_decoded_inst_t *p, xed_int32_t x, xed_uint_t length_bytes)" --><p>
2378 <table class="mdTable" cellpadding="2" cellspacing="0">
2381 <table cellpadding="0" cellspacing="0" border="0">
2383 <td class="md" nowrap valign="top">XED_DLL_EXPORT void xed_decoded_inst_set_immediate_signed </td>
2384 <td class="md" valign="top">( </td>
2385 <td class="md" nowrap valign="top"><a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
2386 <td class="mdname" nowrap> <em>p</em>, </td>
2389 <td class="md" nowrap align="right"></td>
2390 <td class="md"></td>
2391 <td class="md" nowrap>xed_int32_t </td>
2392 <td class="mdname" nowrap> <em>x</em>, </td>
2395 <td class="md" nowrap align="right"></td>
2396 <td class="md"></td>
2397 <td class="md" nowrap><a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> </td>
2398 <td class="mdname" nowrap> <em>length_bytes</em></td>
2401 <td class="md"></td>
2402 <td class="md">) </td>
2403 <td class="md" colspan="2"></td>
2409 <table cellspacing="5" cellpadding="0" border="0">
2417 Set the signed immediate a BYTE length.
2422 <a class="anchor" name="g6654d373b4122309cb985a90baea2ec0"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_set_immediate_signed_bits" ref="g6654d373b4122309cb985a90baea2ec0" args="(xed_decoded_inst_t *p, xed_int32_t x, xed_uint_t length_bits)" --><p>
2423 <table class="mdTable" cellpadding="2" cellspacing="0">
2426 <table cellpadding="0" cellspacing="0" border="0">
2428 <td class="md" nowrap valign="top">XED_DLL_EXPORT void xed_decoded_inst_set_immediate_signed_bits </td>
2429 <td class="md" valign="top">( </td>
2430 <td class="md" nowrap valign="top"><a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
2431 <td class="mdname" nowrap> <em>p</em>, </td>
2434 <td class="md" nowrap align="right"></td>
2435 <td class="md"></td>
2436 <td class="md" nowrap>xed_int32_t </td>
2437 <td class="mdname" nowrap> <em>x</em>, </td>
2440 <td class="md" nowrap align="right"></td>
2441 <td class="md"></td>
2442 <td class="md" nowrap><a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> </td>
2443 <td class="mdname" nowrap> <em>length_bits</em></td>
2446 <td class="md"></td>
2447 <td class="md">) </td>
2448 <td class="md" colspan="2"></td>
2454 <table cellspacing="5" cellpadding="0" border="0">
2462 Set the signed immediate a BITS length.
2467 <a class="anchor" name="g7ad3c8a1764288cab0c02a035c8aec1c"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_set_immediate_unsigned" ref="g7ad3c8a1764288cab0c02a035c8aec1c" args="(xed_decoded_inst_t *p, xed_uint64_t x, xed_uint_t length_bytes)" --><p>
2468 <table class="mdTable" cellpadding="2" cellspacing="0">
2471 <table cellpadding="0" cellspacing="0" border="0">
2473 <td class="md" nowrap valign="top">XED_DLL_EXPORT void xed_decoded_inst_set_immediate_unsigned </td>
2474 <td class="md" valign="top">( </td>
2475 <td class="md" nowrap valign="top"><a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
2476 <td class="mdname" nowrap> <em>p</em>, </td>
2479 <td class="md" nowrap align="right"></td>
2480 <td class="md"></td>
2481 <td class="md" nowrap>xed_uint64_t </td>
2482 <td class="mdname" nowrap> <em>x</em>, </td>
2485 <td class="md" nowrap align="right"></td>
2486 <td class="md"></td>
2487 <td class="md" nowrap><a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> </td>
2488 <td class="mdname" nowrap> <em>length_bytes</em></td>
2491 <td class="md"></td>
2492 <td class="md">) </td>
2493 <td class="md" colspan="2"></td>
2499 <table cellspacing="5" cellpadding="0" border="0">
2507 Set the unsigned immediate a BYTE length.
2512 <a class="anchor" name="g3048427ba43f4978b291a36acea2eaae"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_set_immediate_unsigned_bits" ref="g3048427ba43f4978b291a36acea2eaae" args="(xed_decoded_inst_t *p, xed_uint64_t x, xed_uint_t length_bits)" --><p>
2513 <table class="mdTable" cellpadding="2" cellspacing="0">
2516 <table cellpadding="0" cellspacing="0" border="0">
2518 <td class="md" nowrap valign="top">XED_DLL_EXPORT void xed_decoded_inst_set_immediate_unsigned_bits </td>
2519 <td class="md" valign="top">( </td>
2520 <td class="md" nowrap valign="top"><a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
2521 <td class="mdname" nowrap> <em>p</em>, </td>
2524 <td class="md" nowrap align="right"></td>
2525 <td class="md"></td>
2526 <td class="md" nowrap>xed_uint64_t </td>
2527 <td class="mdname" nowrap> <em>x</em>, </td>
2530 <td class="md" nowrap align="right"></td>
2531 <td class="md"></td>
2532 <td class="md" nowrap><a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> </td>
2533 <td class="mdname" nowrap> <em>length_bits</em></td>
2536 <td class="md"></td>
2537 <td class="md">) </td>
2538 <td class="md" colspan="2"></td>
2544 <table cellspacing="5" cellpadding="0" border="0">
2552 Set the unsigned immediate a BITS length.
2557 <a class="anchor" name="g6a4b96d0db7e35adb4fa7e4eaed79c30"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_set_memory_displacement" ref="g6a4b96d0db7e35adb4fa7e4eaed79c30" args="(xed_decoded_inst_t *p, xed_int64_t disp, xed_uint_t length_bytes)" --><p>
2558 <table class="mdTable" cellpadding="2" cellspacing="0">
2561 <table cellpadding="0" cellspacing="0" border="0">
2563 <td class="md" nowrap valign="top">XED_DLL_EXPORT void xed_decoded_inst_set_memory_displacement </td>
2564 <td class="md" valign="top">( </td>
2565 <td class="md" nowrap valign="top"><a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
2566 <td class="mdname" nowrap> <em>p</em>, </td>
2569 <td class="md" nowrap align="right"></td>
2570 <td class="md"></td>
2571 <td class="md" nowrap>xed_int64_t </td>
2572 <td class="mdname" nowrap> <em>disp</em>, </td>
2575 <td class="md" nowrap align="right"></td>
2576 <td class="md"></td>
2577 <td class="md" nowrap><a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> </td>
2578 <td class="mdname" nowrap> <em>length_bytes</em></td>
2581 <td class="md"></td>
2582 <td class="md">) </td>
2583 <td class="md" colspan="2"></td>
2589 <table cellspacing="5" cellpadding="0" border="0">
2597 Set the memory displacement using a BYTE length.
2602 <a class="anchor" name="gc3c2f46de48f69534b4634b00e25e44d"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_set_memory_displacement_bits" ref="gc3c2f46de48f69534b4634b00e25e44d" args="(xed_decoded_inst_t *p, xed_int64_t disp, xed_uint_t length_bits)" --><p>
2603 <table class="mdTable" cellpadding="2" cellspacing="0">
2606 <table cellpadding="0" cellspacing="0" border="0">
2608 <td class="md" nowrap valign="top">XED_DLL_EXPORT void xed_decoded_inst_set_memory_displacement_bits </td>
2609 <td class="md" valign="top">( </td>
2610 <td class="md" nowrap valign="top"><a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
2611 <td class="mdname" nowrap> <em>p</em>, </td>
2614 <td class="md" nowrap align="right"></td>
2615 <td class="md"></td>
2616 <td class="md" nowrap>xed_int64_t </td>
2617 <td class="mdname" nowrap> <em>disp</em>, </td>
2620 <td class="md" nowrap align="right"></td>
2621 <td class="md"></td>
2622 <td class="md" nowrap><a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> </td>
2623 <td class="mdname" nowrap> <em>length_bits</em></td>
2626 <td class="md"></td>
2627 <td class="md">) </td>
2628 <td class="md" colspan="2"></td>
2634 <table cellspacing="5" cellpadding="0" border="0">
2642 Set the memory displacement a BITS length.
2647 <a class="anchor" name="ge568590fb678b524e5e1068d085d76dc"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_set_scale" ref="ge568590fb678b524e5e1068d085d76dc" args="(xed_decoded_inst_t *p, xed_uint_t scale)" --><p>
2648 <table class="mdTable" cellpadding="2" cellspacing="0">
2651 <table cellpadding="0" cellspacing="0" border="0">
2653 <td class="md" nowrap valign="top">XED_DLL_EXPORT void xed_decoded_inst_set_scale </td>
2654 <td class="md" valign="top">( </td>
2655 <td class="md" nowrap valign="top"><a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
2656 <td class="mdname" nowrap> <em>p</em>, </td>
2659 <td class="md" nowrap align="right"></td>
2660 <td class="md"></td>
2661 <td class="md" nowrap><a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> </td>
2662 <td class="mdname" nowrap> <em>scale</em></td>
2665 <td class="md"></td>
2666 <td class="md">) </td>
2667 <td class="md" colspan="2"></td>
2673 <table cellspacing="5" cellpadding="0" border="0">
2684 <a class="anchor" name="g87bdd1f7a9c5893a546351f205fed067"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_set_user_data" ref="g87bdd1f7a9c5893a546351f205fed067" args="(xed_decoded_inst_t *p, xed_uint64_t new_value)" --><p>
2685 <table class="mdTable" cellpadding="2" cellspacing="0">
2688 <table cellpadding="0" cellspacing="0" border="0">
2690 <td class="md" nowrap valign="top">static XED_INLINE void xed_decoded_inst_set_user_data </td>
2691 <td class="md" valign="top">( </td>
2692 <td class="md" nowrap valign="top"><a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
2693 <td class="mdname" nowrap> <em>p</em>, </td>
2696 <td class="md" nowrap align="right"></td>
2697 <td class="md"></td>
2698 <td class="md" nowrap>xed_uint64_t </td>
2699 <td class="mdname" nowrap> <em>new_value</em></td>
2702 <td class="md"></td>
2703 <td class="md">) </td>
2704 <td class="md" colspan="2"><code> [static]</code></td>
2710 <table cellspacing="5" cellpadding="0" border="0">
2718 Modify the user data field.
2722 Definition at line <a class="el" href="xed-decoded-inst_8h-source.html#l00463">463</a> of file <a class="el" href="xed-decoded-inst_8h-source.html">xed-decoded-inst.h</a>. </td>
2725 <a class="anchor" name="g6922f0d03774f1d9ec1d402fb70e5c63"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_uses_rflags" ref="g6922f0d03774f1d9ec1d402fb70e5c63" args="(const xed_decoded_inst_t *p)" --><p>
2726 <table class="mdTable" cellpadding="2" cellspacing="0">
2729 <table cellpadding="0" cellspacing="0" border="0">
2731 <td class="md" nowrap valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#d355c921b747945a82d62233a599c7b5">xed_bool_t</a> xed_decoded_inst_uses_rflags </td>
2732 <td class="md" valign="top">( </td>
2733 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
2734 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
2735 <td class="md" valign="top"> ) </td>
2736 <td class="md" nowrap></td>
2742 <table cellspacing="5" cellpadding="0" border="0">
2753 <a class="anchor" name="g61f6182ded3ebf9d95c25116278d370d"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_valid" ref="g61f6182ded3ebf9d95c25116278d370d" args="(const xed_decoded_inst_t *p)" --><p>
2754 <table class="mdTable" cellpadding="2" cellspacing="0">
2757 <table cellpadding="0" cellspacing="0" border="0">
2759 <td class="md" nowrap valign="top">static XED_INLINE <a class="el" href="xed-types_8h.html#d355c921b747945a82d62233a599c7b5">xed_bool_t</a> xed_decoded_inst_valid </td>
2760 <td class="md" valign="top">( </td>
2761 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
2762 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
2763 <td class="md" valign="top"> ) </td>
2764 <td class="md" nowrap><code> [static]</code></td>
2770 <table cellspacing="5" cellpadding="0" border="0">
2778 Return true if the instruction is valid.
2782 Definition at line <a class="el" href="xed-decoded-inst_8h-source.html#l00170">170</a> of file <a class="el" href="xed-decoded-inst_8h-source.html">xed-decoded-inst.h</a>. </td>
2785 <a class="anchor" name="g187a0e161873242e9989a186466a06b6"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_zero" ref="g187a0e161873242e9989a186466a06b6" args="(xed_decoded_inst_t *p)" --><p>
2786 <table class="mdTable" cellpadding="2" cellspacing="0">
2789 <table cellpadding="0" cellspacing="0" border="0">
2791 <td class="md" nowrap valign="top">XED_DLL_EXPORT void xed_decoded_inst_zero </td>
2792 <td class="md" valign="top">( </td>
2793 <td class="md" nowrap valign="top"><a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
2794 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
2795 <td class="md" valign="top"> ) </td>
2796 <td class="md" nowrap></td>
2802 <table cellspacing="5" cellpadding="0" border="0">
2810 Zero the decode structure completely.
2815 <a class="anchor" name="g02b8ece2f304b476494db4cf6d5b73d8"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_zero_keep_mode" ref="g02b8ece2f304b476494db4cf6d5b73d8" args="(xed_decoded_inst_t *p)" --><p>
2816 <table class="mdTable" cellpadding="2" cellspacing="0">
2819 <table cellpadding="0" cellspacing="0" border="0">
2821 <td class="md" nowrap valign="top">XED_DLL_EXPORT void xed_decoded_inst_zero_keep_mode </td>
2822 <td class="md" valign="top">( </td>
2823 <td class="md" nowrap valign="top"><a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
2824 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
2825 <td class="md" valign="top"> ) </td>
2826 <td class="md" nowrap></td>
2832 <table cellspacing="5" cellpadding="0" border="0">
2840 Zero the decode structure, but preserve the existing machine state/mode information.
2845 <a class="anchor" name="g15acf476d5d7d3b3fffa12e8ce4892aa"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_zero_keep_mode_from_operands" ref="g15acf476d5d7d3b3fffa12e8ce4892aa" args="(xed_decoded_inst_t *p, const xed_operand_values_t *operands)" --><p>
2846 <table class="mdTable" cellpadding="2" cellspacing="0">
2849 <table cellpadding="0" cellspacing="0" border="0">
2851 <td class="md" nowrap valign="top">XED_DLL_EXPORT void xed_decoded_inst_zero_keep_mode_from_operands </td>
2852 <td class="md" valign="top">( </td>
2853 <td class="md" nowrap valign="top"><a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
2854 <td class="mdname" nowrap> <em>p</em>, </td>
2857 <td class="md" nowrap align="right"></td>
2858 <td class="md"></td>
2859 <td class="md" nowrap>const <a class="el" href="xed-operand-storage_8h.html#eb1037b79ccdc048af4887376f6382a4">xed_operand_values_t</a> * </td>
2860 <td class="mdname" nowrap> <em>operands</em></td>
2863 <td class="md"></td>
2864 <td class="md">) </td>
2865 <td class="md" colspan="2"></td>
2871 <table cellspacing="5" cellpadding="0" border="0">
2879 Zero the decode structure, but copy the existing machine state/mode information from the supplied operands pointer.
2884 <a class="anchor" name="ge32686224b685dfc7be3f13504e0a0df"></a><!-- doxytag: member="xed-decoded-inst.h::xed_decoded_inst_zero_set_mode" ref="ge32686224b685dfc7be3f13504e0a0df" args="(xed_decoded_inst_t *p, const xed_state_t *dstate)" --><p>
2885 <table class="mdTable" cellpadding="2" cellspacing="0">
2888 <table cellpadding="0" cellspacing="0" border="0">
2890 <td class="md" nowrap valign="top">XED_DLL_EXPORT void xed_decoded_inst_zero_set_mode </td>
2891 <td class="md" valign="top">( </td>
2892 <td class="md" nowrap valign="top"><a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> * </td>
2893 <td class="mdname" nowrap> <em>p</em>, </td>
2896 <td class="md" nowrap align="right"></td>
2897 <td class="md"></td>
2898 <td class="md" nowrap>const <a class="el" href="group__INIT.html#g58af142456a133c3df29c763216a85cf">xed_state_t</a> * </td>
2899 <td class="mdname" nowrap> <em>dstate</em></td>
2902 <td class="md"></td>
2903 <td class="md">) </td>
2904 <td class="md" colspan="2"></td>
2910 <table cellspacing="5" cellpadding="0" border="0">
2918 Zero the decode structure, but set the machine state/mode information.
2923 <a class="anchor" name="g7b2e9c4095bddf90c3679c9fdd54b20c"></a><!-- doxytag: member="xed-decoded-inst.h::xed_iform_max_per_iclass" ref="g7b2e9c4095bddf90c3679c9fdd54b20c" args="(xed_iclass_enum_t iclass)" --><p>
2924 <table class="mdTable" cellpadding="2" cellspacing="0">
2927 <table cellpadding="0" cellspacing="0" border="0">
2929 <td class="md" nowrap valign="top">XED_DLL_EXPORT xed_uint32_t xed_iform_max_per_iclass </td>
2930 <td class="md" valign="top">( </td>
2931 <td class="md" nowrap valign="top"><a class="el" href="xed-iclass-enum_8h.html#d318511ae9cc50f102251b3c91a1ab9f">xed_iclass_enum_t</a> </td>
2932 <td class="mdname1" valign="top" nowrap> <em>iclass</em> </td>
2933 <td class="md" valign="top"> ) </td>
2934 <td class="md" nowrap></td>
2940 <table cellspacing="5" cellpadding="0" border="0">
2948 Return the maximum number of iforms for a particular iclass.
2950 This function returns valid data as soon as global data is initialized. (This function does not require a decoded instruction as input). </td>
2953 <a class="anchor" name="gaf47d56bea81c3f7f815fab8cbc64a50"></a><!-- doxytag: member="xed-inst.h::xed_inst_cpl" ref="gaf47d56bea81c3f7f815fab8cbc64a50" args="(const xed_inst_t *p)" --><p>
2954 <table class="mdTable" cellpadding="2" cellspacing="0">
2957 <table cellpadding="0" cellspacing="0" border="0">
2959 <td class="md" nowrap valign="top">XED_DLL_EXPORT unsigned int xed_inst_cpl </td>
2960 <td class="md" valign="top">( </td>
2961 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#g2b28c31e1e83e74ef5f613b38e0cc0ec">xed_inst_t</a> * </td>
2962 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
2963 <td class="md" valign="top"> ) </td>
2964 <td class="md" nowrap></td>
2970 <table cellspacing="5" cellpadding="0" border="0">
2978 Return the current privilege level (CPL).
2983 <a class="anchor" name="gdae8e18eaeb265c2aab6fc82a216e5de"></a><!-- doxytag: member="xed-inst.h::xed_inst_get_attribute" ref="gdae8e18eaeb265c2aab6fc82a216e5de" args="(const xed_inst_t *p, xed_attribute_enum_t attr)" --><p>
2984 <table class="mdTable" cellpadding="2" cellspacing="0">
2987 <table cellpadding="0" cellspacing="0" border="0">
2989 <td class="md" nowrap valign="top">static XED_INLINE xed_uint32_t xed_inst_get_attribute </td>
2990 <td class="md" valign="top">( </td>
2991 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#g2b28c31e1e83e74ef5f613b38e0cc0ec">xed_inst_t</a> * </td>
2992 <td class="mdname" nowrap> <em>p</em>, </td>
2995 <td class="md" nowrap align="right"></td>
2996 <td class="md"></td>
2997 <td class="md" nowrap><a class="el" href="xed-attribute-enum_8h.html#848d4cf396be5a647413e94bc6f0a383">xed_attribute_enum_t</a> </td>
2998 <td class="mdname" nowrap> <em>attr</em></td>
3001 <td class="md"></td>
3002 <td class="md">) </td>
3003 <td class="md" colspan="2"><code> [static]</code></td>
3009 <table cellspacing="5" cellpadding="0" border="0">
3017 Scan for the attribute attr and return 1 if it is found, 0 otherwise.
3021 Definition at line <a class="el" href="xed-inst_8h-source.html#l00303">303</a> of file <a class="el" href="xed-inst_8h-source.html">xed-inst.h</a>. </td>
3024 <a class="anchor" name="gfa48c095dbf6e00636253f974b2093d1"></a><!-- doxytag: member="xed-inst.h::xed_inst_get_attributes" ref="gfa48c095dbf6e00636253f974b2093d1" args="(const xed_inst_t *p)" --><p>
3025 <table class="mdTable" cellpadding="2" cellspacing="0">
3028 <table cellpadding="0" cellspacing="0" border="0">
3030 <td class="md" nowrap valign="top">static XED_INLINE xed_uint32_t xed_inst_get_attributes </td>
3031 <td class="md" valign="top">( </td>
3032 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#g2b28c31e1e83e74ef5f613b38e0cc0ec">xed_inst_t</a> * </td>
3033 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
3034 <td class="md" valign="top"> ) </td>
3035 <td class="md" nowrap><code> [static]</code></td>
3041 <table cellspacing="5" cellpadding="0" border="0">
3049 Return the attributes bit vector.
3053 Definition at line <a class="el" href="xed-inst_8h-source.html#l00311">311</a> of file <a class="el" href="xed-inst_8h-source.html">xed-inst.h</a>. </td>
3056 <a class="anchor" name="g5808f0c3992221777a51c9356bbfc1cf"></a><!-- doxytag: member="xed-inst.h::xed_inst_noperands" ref="g5808f0c3992221777a51c9356bbfc1cf" args="(const xed_inst_t *p)" --><p>
3057 <table class="mdTable" cellpadding="2" cellspacing="0">
3060 <table cellpadding="0" cellspacing="0" border="0">
3062 <td class="md" nowrap valign="top">static XED_INLINE unsigned int xed_inst_noperands </td>
3063 <td class="md" valign="top">( </td>
3064 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#g2b28c31e1e83e74ef5f613b38e0cc0ec">xed_inst_t</a> * </td>
3065 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
3066 <td class="md" valign="top"> ) </td>
3067 <td class="md" nowrap><code> [static]</code></td>
3073 <table cellspacing="5" cellpadding="0" border="0">
3081 Number of instruction operands.
3085 Definition at line <a class="el" href="xed-inst_8h-source.html#l00282">282</a> of file <a class="el" href="xed-inst_8h-source.html">xed-inst.h</a>. </td>
3088 <a class="anchor" name="g05c6c3704a2be54cdced61f99437c146"></a><!-- doxytag: member="xed-inst.h::xed_inst_operand" ref="g05c6c3704a2be54cdced61f99437c146" args="(const xed_inst_t *p, unsigned int i)" --><p>
3089 <table class="mdTable" cellpadding="2" cellspacing="0">
3092 <table cellpadding="0" cellspacing="0" border="0">
3094 <td class="md" nowrap valign="top">static XED_INLINE const <a class="el" href="group__DEC.html#g6e11e56c314f3035be79171df2f6938f">xed_operand_t</a>* xed_inst_operand </td>
3095 <td class="md" valign="top">( </td>
3096 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#g2b28c31e1e83e74ef5f613b38e0cc0ec">xed_inst_t</a> * </td>
3097 <td class="mdname" nowrap> <em>p</em>, </td>
3100 <td class="md" nowrap align="right"></td>
3101 <td class="md"></td>
3102 <td class="md" nowrap>unsigned int </td>
3103 <td class="mdname" nowrap> <em>i</em></td>
3106 <td class="md"></td>
3107 <td class="md">) </td>
3108 <td class="md" colspan="2"><code> [static]</code></td>
3114 <table cellspacing="5" cellpadding="0" border="0">
3122 Obtain a pointer to an individual operand.
3126 Definition at line <a class="el" href="xed-inst_8h-source.html#l00288">288</a> of file <a class="el" href="xed-inst_8h-source.html">xed-inst.h</a>. </td>
3129 <a class="anchor" name="ge7b820b7db6c7437f1e0c6bb11510b10"></a><!-- doxytag: member="xed-inst.h::xed_operand_conditional_read" ref="ge7b820b7db6c7437f1e0c6bb11510b10" args="(const xed_operand_t *p)" --><p>
3130 <table class="mdTable" cellpadding="2" cellspacing="0">
3133 <table cellpadding="0" cellspacing="0" border="0">
3135 <td class="md" nowrap valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> xed_operand_conditional_read </td>
3136 <td class="md" valign="top">( </td>
3137 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#g6e11e56c314f3035be79171df2f6938f">xed_operand_t</a> * </td>
3138 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
3139 <td class="md" valign="top"> ) </td>
3140 <td class="md" nowrap></td>
3146 <table cellspacing="5" cellpadding="0" border="0">
3154 If the operand has a conditional read (may also write).
3159 <a class="anchor" name="gd6b80021a33c772fa74a038f17343562"></a><!-- doxytag: member="xed-inst.h::xed_operand_conditional_write" ref="gd6b80021a33c772fa74a038f17343562" args="(const xed_operand_t *p)" --><p>
3160 <table class="mdTable" cellpadding="2" cellspacing="0">
3163 <table cellpadding="0" cellspacing="0" border="0">
3165 <td class="md" nowrap valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> xed_operand_conditional_write </td>
3166 <td class="md" valign="top">( </td>
3167 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#g6e11e56c314f3035be79171df2f6938f">xed_operand_t</a> * </td>
3168 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
3169 <td class="md" valign="top"> ) </td>
3170 <td class="md" nowrap></td>
3176 <table cellspacing="5" cellpadding="0" border="0">
3184 If the operand has a conditional write (may also read).
3189 <a class="anchor" name="g15cd2fdc19d6e7e9864df7b56e9235f0"></a><!-- doxytag: member="xed-inst.h::xed_operand_imm" ref="g15cd2fdc19d6e7e9864df7b56e9235f0" args="(const xed_operand_t *p)" --><p>
3190 <table class="mdTable" cellpadding="2" cellspacing="0">
3193 <table cellpadding="0" cellspacing="0" border="0">
3195 <td class="md" nowrap valign="top">static XED_INLINE xed_uint32_t xed_operand_imm </td>
3196 <td class="md" valign="top">( </td>
3197 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#g6e11e56c314f3035be79171df2f6938f">xed_operand_t</a> * </td>
3198 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
3199 <td class="md" valign="top"> ) </td>
3200 <td class="md" nowrap><code> [static]</code></td>
3206 <table cellspacing="5" cellpadding="0" border="0">
3214 <dl compact><dt><b>Parameters:</b></dt><dd>
3215 <table border="0" cellspacing="2" cellpadding="0">
3216 <tr><td valign="top"></td><td valign="top"><em>p</em> </td><td>an operand template, <a class="el" href="group__DEC.html#g6e11e56c314f3035be79171df2f6938f">xed_operand_t</a>. These operands represent branch displacements, memory displacements and various immediates </td></tr>
3221 Definition at line <a class="el" href="xed-inst_8h-source.html#l00146">146</a> of file <a class="el" href="xed-inst_8h-source.html">xed-inst.h</a>. </td>
3224 <a class="anchor" name="g336d0e245e83f1b90f609f72b136a2aa"></a><!-- doxytag: member="xed-inst.h::xed_operand_is_memory_addressing_register" ref="g336d0e245e83f1b90f609f72b136a2aa" args="(xed_operand_enum_t name)" --><p>
3225 <table class="mdTable" cellpadding="2" cellspacing="0">
3228 <table cellpadding="0" cellspacing="0" border="0">
3230 <td class="md" nowrap valign="top">static XED_INLINE <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> xed_operand_is_memory_addressing_register </td>
3231 <td class="md" valign="top">( </td>
3232 <td class="md" nowrap valign="top"><a class="el" href="xed-operand-enum_8h.html#09c2a35d8bb7bfe68bb3d34b0a5e011a">xed_operand_enum_t</a> </td>
3233 <td class="mdname1" valign="top" nowrap> <em>name</em> </td>
3234 <td class="md" valign="top"> ) </td>
3235 <td class="md" nowrap><code> [static]</code></td>
3241 <table cellspacing="5" cellpadding="0" border="0">
3249 Tests the enum for inclusion in XED_OPERAND_{BASE0,BASE1,INDEX,SEG0,SEG1}.
3251 <dl compact><dt><b>Parameters:</b></dt><dd>
3252 <table border="0" cellspacing="2" cellpadding="0">
3253 <tr><td valign="top"></td><td valign="top"><em>name</em> </td><td>the operand name, type <a class="el" href="xed-operand-enum_8h.html#09c2a35d8bb7bfe68bb3d34b0a5e011a">xed_operand_enum_t</a> </td></tr>
3256 <dl compact><dt><b>Returns:</b></dt><dd>1 if the operand name is for a memory addressing register operand, 0 otherwise. See also <a class="el" href="group__DEC.html#gb506c3ac00ee5350d9b5ab55270c392c">xed_operand_is_register</a> . </dd></dl>
3259 Definition at line <a class="el" href="xed-inst_8h-source.html#l00174">174</a> of file <a class="el" href="xed-inst_8h-source.html">xed-inst.h</a>. </td>
3262 <a class="anchor" name="gb506c3ac00ee5350d9b5ab55270c392c"></a><!-- doxytag: member="xed-inst.h::xed_operand_is_register" ref="gb506c3ac00ee5350d9b5ab55270c392c" args="(xed_operand_enum_t name)" --><p>
3263 <table class="mdTable" cellpadding="2" cellspacing="0">
3266 <table cellpadding="0" cellspacing="0" border="0">
3268 <td class="md" nowrap valign="top">static XED_INLINE <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> xed_operand_is_register </td>
3269 <td class="md" valign="top">( </td>
3270 <td class="md" nowrap valign="top"><a class="el" href="xed-operand-enum_8h.html#09c2a35d8bb7bfe68bb3d34b0a5e011a">xed_operand_enum_t</a> </td>
3271 <td class="mdname1" valign="top" nowrap> <em>name</em> </td>
3272 <td class="md" valign="top"> ) </td>
3273 <td class="md" nowrap><code> [static]</code></td>
3279 <table cellspacing="5" cellpadding="0" border="0">
3287 Tests the enum for inclusion in XED_OPERAND_REG0 through XED_OPERAND_REG15.
3289 <dl compact><dt><b>Parameters:</b></dt><dd>
3290 <table border="0" cellspacing="2" cellpadding="0">
3291 <tr><td valign="top"></td><td valign="top"><em>name</em> </td><td>the operand name, type <a class="el" href="xed-operand-enum_8h.html#09c2a35d8bb7bfe68bb3d34b0a5e011a">xed_operand_enum_t</a> </td></tr>
3294 <dl compact><dt><b>Returns:</b></dt><dd>1 if the operand name is REG0...REG15, 0 otherwise.</dd></dl>
3295 Note there are other registers for memory addressing; See <a class="el" href="group__DEC.html#g336d0e245e83f1b90f609f72b136a2aa">xed_operand_is_memory_addressing_register</a> .
3297 Definition at line <a class="el" href="xed-inst_8h-source.html#l00166">166</a> of file <a class="el" href="xed-inst_8h-source.html">xed-inst.h</a>. </td>
3300 <a class="anchor" name="g57209697b0dfb3e9ed4f694ca7cc16a4"></a><!-- doxytag: member="xed-inst.h::xed_operand_name" ref="g57209697b0dfb3e9ed4f694ca7cc16a4" args="(const xed_operand_t *p)" --><p>
3301 <table class="mdTable" cellpadding="2" cellspacing="0">
3304 <table cellpadding="0" cellspacing="0" border="0">
3306 <td class="md" nowrap valign="top">static XED_INLINE <a class="el" href="xed-operand-enum_8h.html#09c2a35d8bb7bfe68bb3d34b0a5e011a">xed_operand_enum_t</a> xed_operand_name </td>
3307 <td class="md" valign="top">( </td>
3308 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#g6e11e56c314f3035be79171df2f6938f">xed_operand_t</a> * </td>
3309 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
3310 <td class="md" valign="top"> ) </td>
3311 <td class="md" nowrap><code> [static]</code></td>
3317 <table cellspacing="5" cellpadding="0" border="0">
3327 Definition at line <a class="el" href="xed-inst_8h-source.html#l00084">84</a> of file <a class="el" href="xed-inst_8h-source.html">xed-inst.h</a>. </td>
3330 <a class="anchor" name="gf690022f17c39fbc270373f013034b5b"></a><!-- doxytag: member="xed-inst.h::xed_operand_nonterminal_name" ref="gf690022f17c39fbc270373f013034b5b" args="(const xed_operand_t *p)" --><p>
3331 <table class="mdTable" cellpadding="2" cellspacing="0">
3334 <table cellpadding="0" cellspacing="0" border="0">
3336 <td class="md" nowrap valign="top">static XED_INLINE <a class="el" href="xed-nonterminal-enum_8h.html#e0eb8f71a8f89cddf0df4b1a6a2b27af">xed_nonterminal_enum_t</a> xed_operand_nonterminal_name </td>
3337 <td class="md" valign="top">( </td>
3338 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#g6e11e56c314f3035be79171df2f6938f">xed_operand_t</a> * </td>
3339 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
3340 <td class="md" valign="top"> ) </td>
3341 <td class="md" nowrap><code> [static]</code></td>
3347 <table cellspacing="5" cellpadding="0" border="0">
3357 Definition at line <a class="el" href="xed-inst_8h-source.html#l00110">110</a> of file <a class="el" href="xed-inst_8h-source.html">xed-inst.h</a>. </td>
3360 <a class="anchor" name="g2e8b5df9fc68c6aa7fbeb98735e1d4a9"></a><!-- doxytag: member="xed-inst.h::xed_operand_operand_visibility" ref="g2e8b5df9fc68c6aa7fbeb98735e1d4a9" args="(const xed_operand_t *p)" --><p>
3361 <table class="mdTable" cellpadding="2" cellspacing="0">
3364 <table cellpadding="0" cellspacing="0" border="0">
3366 <td class="md" nowrap valign="top">static XED_INLINE <a class="el" href="xed-operand-visibility-enum_8h.html#e678c6279a7ba50bf58f2e357242b58d">xed_operand_visibility_enum_t</a> xed_operand_operand_visibility </td>
3367 <td class="md" valign="top">( </td>
3368 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#g6e11e56c314f3035be79171df2f6938f">xed_operand_t</a> * </td>
3369 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
3370 <td class="md" valign="top"> ) </td>
3371 <td class="md" nowrap><code> [static]</code></td>
3377 <table cellspacing="5" cellpadding="0" border="0">
3387 Definition at line <a class="el" href="xed-inst_8h-source.html#l00090">90</a> of file <a class="el" href="xed-inst_8h-source.html">xed-inst.h</a>. </td>
3390 <a class="anchor" name="gb5528945cff3a8531a58103fffdcee97"></a><!-- doxytag: member="xed-inst.h::xed_operand_print" ref="gb5528945cff3a8531a58103fffdcee97" args="(const xed_operand_t *p, char *buf, int buflen)" --><p>
3391 <table class="mdTable" cellpadding="2" cellspacing="0">
3394 <table cellpadding="0" cellspacing="0" border="0">
3396 <td class="md" nowrap valign="top">XED_DLL_EXPORT void xed_operand_print </td>
3397 <td class="md" valign="top">( </td>
3398 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#g6e11e56c314f3035be79171df2f6938f">xed_operand_t</a> * </td>
3399 <td class="mdname" nowrap> <em>p</em>, </td>
3402 <td class="md" nowrap align="right"></td>
3403 <td class="md"></td>
3404 <td class="md" nowrap>char * </td>
3405 <td class="mdname" nowrap> <em>buf</em>, </td>
3408 <td class="md" nowrap align="right"></td>
3409 <td class="md"></td>
3410 <td class="md" nowrap>int </td>
3411 <td class="mdname" nowrap> <em>buflen</em></td>
3414 <td class="md"></td>
3415 <td class="md">) </td>
3416 <td class="md" colspan="2"></td>
3422 <table cellspacing="5" cellpadding="0" border="0">
3430 Print the operand p into the buffer buf, of length buflen.
3432 <dl compact><dt><b>Parameters:</b></dt><dd>
3433 <table border="0" cellspacing="2" cellpadding="0">
3434 <tr><td valign="top"></td><td valign="top"><em>p</em> </td><td>an operand template, <a class="el" href="group__DEC.html#g6e11e56c314f3035be79171df2f6938f">xed_operand_t</a>. </td></tr>
3435 <tr><td valign="top"></td><td valign="top"><em>buf</em> </td><td>buffer that gets filled in </td></tr>
3436 <tr><td valign="top"></td><td valign="top"><em>buflen</em> </td><td>maximum buffer length </td></tr>
3442 <a class="anchor" name="g549f3a156257abb9979df806b436ad85"></a><!-- doxytag: member="xed-inst.h::xed_operand_read" ref="g549f3a156257abb9979df806b436ad85" args="(const xed_operand_t *p)" --><p>
3443 <table class="mdTable" cellpadding="2" cellspacing="0">
3446 <table cellpadding="0" cellspacing="0" border="0">
3448 <td class="md" nowrap valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> xed_operand_read </td>
3449 <td class="md" valign="top">( </td>
3450 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#g6e11e56c314f3035be79171df2f6938f">xed_operand_t</a> * </td>
3451 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
3452 <td class="md" valign="top"> ) </td>
3453 <td class="md" nowrap></td>
3459 <table cellspacing="5" cellpadding="0" border="0">
3467 If the operand is read, including conditional reads.
3472 <a class="anchor" name="g53d4f48a25de19a158ac617bd2302fcd"></a><!-- doxytag: member="xed-inst.h::xed_operand_read_and_written" ref="g53d4f48a25de19a158ac617bd2302fcd" args="(const xed_operand_t *p)" --><p>
3473 <table class="mdTable" cellpadding="2" cellspacing="0">
3476 <table cellpadding="0" cellspacing="0" border="0">
3478 <td class="md" nowrap valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> xed_operand_read_and_written </td>
3479 <td class="md" valign="top">( </td>
3480 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#g6e11e56c314f3035be79171df2f6938f">xed_operand_t</a> * </td>
3481 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
3482 <td class="md" valign="top"> ) </td>
3483 <td class="md" nowrap></td>
3489 <table cellspacing="5" cellpadding="0" border="0">
3497 If the operand is read-and-written, conditional reads and conditional writes.
3502 <a class="anchor" name="g9cb66680c46f2ba09edbf63a8df3b52b"></a><!-- doxytag: member="xed-inst.h::xed_operand_read_only" ref="g9cb66680c46f2ba09edbf63a8df3b52b" args="(const xed_operand_t *p)" --><p>
3503 <table class="mdTable" cellpadding="2" cellspacing="0">
3506 <table cellpadding="0" cellspacing="0" border="0">
3508 <td class="md" nowrap valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> xed_operand_read_only </td>
3509 <td class="md" valign="top">( </td>
3510 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#g6e11e56c314f3035be79171df2f6938f">xed_operand_t</a> * </td>
3511 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
3512 <td class="md" valign="top"> ) </td>
3513 <td class="md" nowrap></td>
3519 <table cellspacing="5" cellpadding="0" border="0">
3527 If the operand is read-only, including conditional reads.
3532 <a class="anchor" name="gc7b6d553eb70c5eeda751a20fe8ed1a4"></a><!-- doxytag: member="xed-inst.h::xed_operand_reg" ref="gc7b6d553eb70c5eeda751a20fe8ed1a4" args="(const xed_operand_t *p)" --><p>
3533 <table class="mdTable" cellpadding="2" cellspacing="0">
3536 <table cellpadding="0" cellspacing="0" border="0">
3538 <td class="md" nowrap valign="top">static XED_INLINE <a class="el" href="xed-reg-enum_8h.html#f05c33c5a68e9304d1d8ac0408ae3f61">xed_reg_enum_t</a> xed_operand_reg </td>
3539 <td class="md" valign="top">( </td>
3540 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#g6e11e56c314f3035be79171df2f6938f">xed_operand_t</a> * </td>
3541 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
3542 <td class="md" valign="top"> ) </td>
3543 <td class="md" nowrap><code> [static]</code></td>
3549 <table cellspacing="5" cellpadding="0" border="0">
3557 Careful with this one -- use <a class="el" href="group__DEC.html#g5635f3a3d121bbcbb64d548dbb32e4c5">xed_decoded_inst_get_reg()</a>! This one is probably not what you think it is.
3559 It is only used for hard-coded registers implicit in the instruction encoding. Most likely you want to get the <a class="el" href="xed-operand-enum_8h.html#09c2a35d8bb7bfe68bb3d34b0a5e011a">xed_operand_enum_t</a> and then look up the instruction using <a class="el" href="group__DEC.html#g5635f3a3d121bbcbb64d548dbb32e4c5">xed_decoded_inst_get_reg()</a>. The hard-coded registers are also available that way. <dl compact><dt><b>Parameters:</b></dt><dd>
3560 <table border="0" cellspacing="2" cellpadding="0">
3561 <tr><td valign="top"></td><td valign="top"><em>p</em> </td><td>an operand template, <a class="el" href="group__DEC.html#g6e11e56c314f3035be79171df2f6938f">xed_operand_t</a>. </td></tr>
3564 <dl compact><dt><b>Returns:</b></dt><dd>the hard-wired (implicit or suppressed) registers, type <a class="el" href="xed-reg-enum_8h.html#f05c33c5a68e9304d1d8ac0408ae3f61">xed_reg_enum_t</a> </dd></dl>
3567 Definition at line <a class="el" href="xed-inst_8h-source.html#l00123">123</a> of file <a class="el" href="xed-inst_8h-source.html">xed-inst.h</a>. </td>
3570 <a class="anchor" name="ge5299214951891952401b5061e48a6ca"></a><!-- doxytag: member="xed-inst.h::xed_operand_rw" ref="ge5299214951891952401b5061e48a6ca" args="(const xed_operand_t *p)" --><p>
3571 <table class="mdTable" cellpadding="2" cellspacing="0">
3574 <table cellpadding="0" cellspacing="0" border="0">
3576 <td class="md" nowrap valign="top">static XED_INLINE <a class="el" href="xed-operand-action-enum_8h.html#6bf8113365b84b9d6ab549fdfef2643f">xed_operand_action_enum_t</a> xed_operand_rw </td>
3577 <td class="md" valign="top">( </td>
3578 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#g6e11e56c314f3035be79171df2f6938f">xed_operand_t</a> * </td>
3579 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
3580 <td class="md" valign="top"> ) </td>
3581 <td class="md" nowrap><code> [static]</code></td>
3587 <table cellspacing="5" cellpadding="0" border="0">
3595 Returns the raw R/W action.
3597 There are many cases for conditional reads and writes.
3599 Definition at line <a class="el" href="xed-inst_8h-source.html#l00189">189</a> of file <a class="el" href="xed-inst_8h-source.html">xed-inst.h</a>. </td>
3602 <a class="anchor" name="gfea07afe6bade70f2ebfe3b491b99d41"></a><!-- doxytag: member="xed-inst.h::xed_operand_template_is_register" ref="gfea07afe6bade70f2ebfe3b491b99d41" args="(const xed_operand_t *p)" --><p>
3603 <table class="mdTable" cellpadding="2" cellspacing="0">
3606 <table cellpadding="0" cellspacing="0" border="0">
3608 <td class="md" nowrap valign="top">static XED_INLINE <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> xed_operand_template_is_register </td>
3609 <td class="md" valign="top">( </td>
3610 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#g6e11e56c314f3035be79171df2f6938f">xed_operand_t</a> * </td>
3611 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
3612 <td class="md" valign="top"> ) </td>
3613 <td class="md" nowrap><code> [static]</code></td>
3619 <table cellspacing="5" cellpadding="0" border="0">
3627 Careful with this one; See <a class="el" href="group__DEC.html#gb506c3ac00ee5350d9b5ab55270c392c">xed_operand_is_register()</a>.
3629 <dl compact><dt><b>Parameters:</b></dt><dd>
3630 <table border="0" cellspacing="2" cellpadding="0">
3631 <tr><td valign="top"></td><td valign="top"><em>p</em> </td><td>an operand template, <a class="el" href="group__DEC.html#g6e11e56c314f3035be79171df2f6938f">xed_operand_t</a>. </td></tr>
3634 <dl compact><dt><b>Returns:</b></dt><dd>1 if the operand template represents are register-type operand.</dd></dl>
3635 Related functions: Use <a class="el" href="group__DEC.html#g5635f3a3d121bbcbb64d548dbb32e4c5">xed_decoded_inst_get_reg()</a> to get the decoded name of /// the register, <a class="el" href="xed-reg-enum_8h.html#f05c33c5a68e9304d1d8ac0408ae3f61">xed_reg_enum_t</a>. Use <a class="el" href="group__DEC.html#gb506c3ac00ee5350d9b5ab55270c392c">xed_operand_is_register()</a> to test <a class="el" href="xed-operand-enum_8h.html#09c2a35d8bb7bfe68bb3d34b0a5e011a">xed_operand_enum_t</a> names.
3637 Definition at line <a class="el" href="xed-inst_8h-source.html#l00139">139</a> of file <a class="el" href="xed-inst_8h-source.html">xed-inst.h</a>. </td>
3640 <a class="anchor" name="gcaf67b54704bacb6b47f5f2afcf2a4b1"></a><!-- doxytag: member="xed-inst.h::xed_operand_type" ref="gcaf67b54704bacb6b47f5f2afcf2a4b1" args="(const xed_operand_t *p)" --><p>
3641 <table class="mdTable" cellpadding="2" cellspacing="0">
3644 <table cellpadding="0" cellspacing="0" border="0">
3646 <td class="md" nowrap valign="top">static XED_INLINE <a class="el" href="xed-operand-type-enum_8h.html#7f9198331fe1015a2df65f7b42aa43a8">xed_operand_type_enum_t</a> xed_operand_type </td>
3647 <td class="md" valign="top">( </td>
3648 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#g6e11e56c314f3035be79171df2f6938f">xed_operand_t</a> * </td>
3649 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
3650 <td class="md" valign="top"> ) </td>
3651 <td class="md" nowrap><code> [static]</code></td>
3657 <table cellspacing="5" cellpadding="0" border="0">
3665 <dl compact><dt><b>Returns:</b></dt><dd>The <a class="el" href="xed-operand-type-enum_8h.html#7f9198331fe1015a2df65f7b42aa43a8">xed_operand_type_enum_t</a> of the operand template. This is probably not what you want. </dd></dl>
3668 Definition at line <a class="el" href="xed-inst_8h-source.html#l00098">98</a> of file <a class="el" href="xed-inst_8h-source.html">xed-inst.h</a>. </td>
3671 <a class="anchor" name="g1159569c734bf712a40a2a88542d549d"></a><!-- doxytag: member="xed-inst.h::xed_operand_width" ref="g1159569c734bf712a40a2a88542d549d" args="(const xed_operand_t *p)" --><p>
3672 <table class="mdTable" cellpadding="2" cellspacing="0">
3675 <table cellpadding="0" cellspacing="0" border="0">
3677 <td class="md" nowrap valign="top">static XED_INLINE <a class="el" href="xed-operand-width-enum_8h.html#4bc2ed96b8433c06c363d614a2fa1676">xed_operand_width_enum_t</a> xed_operand_width </td>
3678 <td class="md" valign="top">( </td>
3679 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#g6e11e56c314f3035be79171df2f6938f">xed_operand_t</a> * </td>
3680 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
3681 <td class="md" valign="top"> ) </td>
3682 <td class="md" nowrap><code> [static]</code></td>
3688 <table cellspacing="5" cellpadding="0" border="0">
3698 Definition at line <a class="el" href="xed-inst_8h-source.html#l00104">104</a> of file <a class="el" href="xed-inst_8h-source.html">xed-inst.h</a>. </td>
3701 <a class="anchor" name="gadb2fcc833f5245dcbfd80dd0499694d"></a><!-- doxytag: member="xed-inst.h::xed_operand_written" ref="gadb2fcc833f5245dcbfd80dd0499694d" args="(const xed_operand_t *p)" --><p>
3702 <table class="mdTable" cellpadding="2" cellspacing="0">
3705 <table cellpadding="0" cellspacing="0" border="0">
3707 <td class="md" nowrap valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> xed_operand_written </td>
3708 <td class="md" valign="top">( </td>
3709 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#g6e11e56c314f3035be79171df2f6938f">xed_operand_t</a> * </td>
3710 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
3711 <td class="md" valign="top"> ) </td>
3712 <td class="md" nowrap></td>
3718 <table cellspacing="5" cellpadding="0" border="0">
3726 If the operand is written, including conditional writes.
3731 <a class="anchor" name="g7463fa65b041fb66790532ba6ea3ca50"></a><!-- doxytag: member="xed-inst.h::xed_operand_written_only" ref="g7463fa65b041fb66790532ba6ea3ca50" args="(const xed_operand_t *p)" --><p>
3732 <table class="mdTable" cellpadding="2" cellspacing="0">
3735 <table cellpadding="0" cellspacing="0" border="0">
3737 <td class="md" nowrap valign="top">XED_DLL_EXPORT <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> xed_operand_written_only </td>
3738 <td class="md" valign="top">( </td>
3739 <td class="md" nowrap valign="top">const <a class="el" href="group__DEC.html#g6e11e56c314f3035be79171df2f6938f">xed_operand_t</a> * </td>
3740 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
3741 <td class="md" valign="top"> ) </td>
3742 <td class="md" nowrap></td>
3748 <table cellspacing="5" cellpadding="0" border="0">
3756 If the operand is written-only, including conditional writes.
3761 <hr size="1"><address style="align: right;"><small>Generated on Thu May 15 03:15:09 2008 for XED2 by
3762 <a href="http://www.doxygen.org/index.html">
3763 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.6 </small></address>