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>Encoding Instructions</h1><hr><a name="_details"></a><h2>Detailed Description</h2>
26 When you call <a class="el" href="group__ENC.html#g7c30222e2144a177903ce02beacb1996">xed_encode()</a> to encode instruction you must pass:<ol type=1>
27 <li>an encode structure that includes a machine state ( <a class="el" href="group__INIT.html#g58af142456a133c3df29c763216a85cf">xed_state_t</a> )</li><li>a pointer to the instruction text</li><li>a length of the text array</li></ol>
29 The class <a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> includes a <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.<p>
30 To add a LOCK, REP or REPNE prefix to a an encoder request, set it in the encoder request directly by calling <a class="el" href="group__ENC.html#g14ab62a6407df15f864fde3d4f81b7fe">xed_encoder_request_set_lock()</a>, <a class="el" href="group__ENC.html#g71d03e9d694f56fc362974f2d81e5464">xed_encoder_request_set_rep()</a> or <a class="el" href="group__ENC.html#gf651a483ec90cbf4495f87b114facc0b">xed_encoder_request_set_repne()</a>.<p>
31 To get nondefault width operands, during encoding, you have to call <a class="el" href="group__ENC.html#g53b937905ca110c4dd4b20e5695d8937">xed_encoder_request_set_effective_operand_width()</a> .<p>
32 To set nondefault addressing widths, you must call <a class="el" href="group__ENC.html#gb416edcadb0d2b59fb62cfcd93991c3d">xed_encoder_request_set_effective_address_size()</a>.<p>
33 To encode instructions you must set the following in the <a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a>. <ol>
35 the machine mode (machine width, addressing widths) </li>
37 the effective operand width </li>
41 for some instructions you need to specify prefixes (like REP, REPNE or LOCK). </li>
45 operand kind (XED_OPERAND_{AGEN,MEM0,MEM1,IMM0,IMM1,RELBR,PTR,REG0...REG15} </li>
48 xed_encoder_request_set_operand_order(&req,operand_index, XED_OPERAND_*); where the operand_index is a sequential index starting at zero.<p>
53 FOR MEMOPS: base,segment,index,scale,displacement for memops, </li>
55 FOR REGISTERS: register name </li>
57 FOR IMMEDIATES: immediate values </li>
64 See <a class="el" href="group__CMDLINE.html#ENCODE_EXAMPLE">An example of using the encoder</a> for an example of using the encoder.
66 <table border="0" cellpadding="0" cellspacing="0">
68 <tr><td colspan="2"><br><h2>Encoding</h2></td></tr>
69 <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__ENC.html#g7c30222e2144a177903ce02beacb1996">xed_encode</a> (<a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> *r, xed_uint8_t *array, const unsigned int ilen, unsigned int *olen)</td></tr>
71 <tr><td class="mdescLeft"> </td><td class="mdescRight">This is the main interface to the encoder. <a href="#g7c30222e2144a177903ce02beacb1996"></a><br></td></tr>
72 <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__ENC.html#g7d0d452bdd6f1cc20ab5c7cc14fe79e8">xed_encode_nop</a> (xed_uint8_t *array, const unsigned int ilen)</td></tr>
74 <tr><td class="mdescLeft"> </td><td class="mdescRight">This function will attempt to encode a NOP of exactly ilen bytes. <a href="#g7d0d452bdd6f1cc20ab5c7cc14fe79e8"></a><br></td></tr>
75 <tr><td colspan="2"><br><h2>String Printing</h2></td></tr>
76 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__ENC.html#gf69b263c9882f189c5a6c6992d0f6fe7">xed_encode_request_print</a> (const <a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> *p, char *buf, <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> buflen)</td></tr>
78 <tr><td colspan="2"><br><h2>Operand Order</h2></td></tr>
79 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT <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__ENC.html#g0a0e2a6e3de6d372c938b14277db0eea">xed_encoder_request_get_operand_order</a> (<a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> *p, <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> operand_index)</td></tr>
81 <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__ENC.html#gcfe5f5016d026ba1944e434a74e35345">xed_encoder_request_operand_order_entries</a> (<a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> *p)</td></tr>
83 <tr><td class="mdescLeft"> </td><td class="mdescRight">Retreive the number of entries in the encoder operand order array. <a href="#gcfe5f5016d026ba1944e434a74e35345"></a><br></td></tr>
84 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__ENC.html#g1e46ce602263f0de591b3ebc268cc12e">xed_encoder_request_set_operand_order</a> (<a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> *p, <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> operand_index, <a class="el" href="xed-operand-enum_8h.html#09c2a35d8bb7bfe68bb3d34b0a5e011a">xed_operand_enum_t</a> name)</td></tr>
86 <tr><td colspan="2"><br><h2>Memory</h2></td></tr>
87 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__ENC.html#gac846d407fd6537461a6efaccff7609d">xed_encoder_request_set_agen</a> (<a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> *p)</td></tr>
89 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__ENC.html#g9002c58e013af93550df7bd9b37e13ed">xed_encoder_request_set_base0</a> (<a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> *p, <a class="el" href="xed-reg-enum_8h.html#f05c33c5a68e9304d1d8ac0408ae3f61">xed_reg_enum_t</a> base_reg)</td></tr>
91 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__ENC.html#gf109d486d1eadf5c8b86d1cba8387d29">xed_encoder_request_set_base1</a> (<a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> *p, <a class="el" href="xed-reg-enum_8h.html#f05c33c5a68e9304d1d8ac0408ae3f61">xed_reg_enum_t</a> base_reg)</td></tr>
93 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__ENC.html#gd436ed3d253f15e11f4c943e0308db06">xed_encoder_request_set_index</a> (<a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> *p, <a class="el" href="xed-reg-enum_8h.html#f05c33c5a68e9304d1d8ac0408ae3f61">xed_reg_enum_t</a> index_reg)</td></tr>
95 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__ENC.html#g7b4e446882bcc615e917132f3fbb16b3">xed_encoder_request_set_mem0</a> (<a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> *p)</td></tr>
97 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__ENC.html#gfe70e5db7dc59e9880f2db3ec7e71d9d">xed_encoder_request_set_mem1</a> (<a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> *p)</td></tr>
99 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__ENC.html#gf745dfb40af1361b8a9b9f1ecb4f0228">xed_encoder_request_set_memory_displacement</a> (<a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> *p, xed_int64_t memdisp, <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> nbytes)</td></tr>
101 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__ENC.html#g03790a14a625c544edcbda559e359f14">xed_encoder_request_set_memory_operand_length</a> (<a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> *p, <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> nbytes)</td></tr>
103 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__ENC.html#gca791f284c852c6ae4c071ba5751d257">xed_encoder_request_set_scale</a> (<a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> *p, <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> scale)</td></tr>
105 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__ENC.html#g72a43d42aa1c15bba69bcab84439471a">xed_encoder_request_set_seg0</a> (<a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> *p, <a class="el" href="xed-reg-enum_8h.html#f05c33c5a68e9304d1d8ac0408ae3f61">xed_reg_enum_t</a> seg_reg)</td></tr>
107 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__ENC.html#gfb3db0b671837fab077f4db357c7fe04">xed_encoder_request_set_seg1</a> (<a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> *p, <a class="el" href="xed-reg-enum_8h.html#f05c33c5a68e9304d1d8ac0408ae3f61">xed_reg_enum_t</a> seg_reg)</td></tr>
109 <tr><td colspan="2"><br><h2>branches and far pointers</h2></td></tr>
110 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__ENC.html#g3594acbdb2001a816da28b7554b2ae4c">xed_encoder_request_set_branch_displacement</a> (<a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> *p, xed_int32_t brdisp, <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> nbytes)</td></tr>
112 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__ENC.html#g7be1c7da28a5d88f485f7e80b67959b4">xed_encoder_request_set_ptr</a> (<a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> *p)</td></tr>
114 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__ENC.html#gd447fb779e58b7eaae0dd54e51af6066">xed_encoder_request_set_relbr</a> (<a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> *p)</td></tr>
116 <tr><td colspan="2"><br><h2>Primary Encode Functions</h2></td></tr>
117 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__ENC.html#gb416edcadb0d2b59fb62cfcd93991c3d">xed_encoder_request_set_effective_address_size</a> (<a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> *p, <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> width_bits)</td></tr>
119 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__ENC.html#g53b937905ca110c4dd4b20e5695d8937">xed_encoder_request_set_effective_operand_width</a> (<a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> *p, <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> width_bits)</td></tr>
121 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__ENC.html#gba22ae36cab0f632d5461830cc9a3133">xed_encoder_request_set_reg</a> (<a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> *p, <a class="el" href="xed-operand-enum_8h.html#09c2a35d8bb7bfe68bb3d34b0a5e011a">xed_operand_enum_t</a> operand, <a class="el" href="xed-reg-enum_8h.html#f05c33c5a68e9304d1d8ac0408ae3f61">xed_reg_enum_t</a> reg)</td></tr>
123 <tr><td colspan="2"><br><h2>Prefixes</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__ENC.html#g14ab62a6407df15f864fde3d4f81b7fe">xed_encoder_request_set_lock</a> (<a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> *p)</td></tr>
126 <tr><td class="mdescLeft"> </td><td class="mdescRight">For locked (atomic read-modify-write) memops requests. <a href="#g14ab62a6407df15f864fde3d4f81b7fe"></a><br></td></tr>
127 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__ENC.html#g71d03e9d694f56fc362974f2d81e5464">xed_encoder_request_set_rep</a> (<a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> *p)</td></tr>
129 <tr><td class="mdescLeft"> </td><td class="mdescRight">for REP(F3) and REPNE(F2) prefixe on string ops <a href="#g71d03e9d694f56fc362974f2d81e5464"></a><br></td></tr>
130 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__ENC.html#gf651a483ec90cbf4495f87b114facc0b">xed_encoder_request_set_repne</a> (<a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> *p)</td></tr>
132 <tr><td class="mdescLeft"> </td><td class="mdescRight">for REP(F3) and REPNE(F2) prefixe on string ops <a href="#gf651a483ec90cbf4495f87b114facc0b"></a><br></td></tr>
133 <tr><td colspan="2"><br><h2>Immediates</h2></td></tr>
134 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__ENC.html#gf2477dc50a13ec112d7cf3f3fa5c9178">xed_encoder_request_set_simm</a> (<a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> *p, xed_int32_t simm, <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> nbytes)</td></tr>
136 <tr><td class="mdescLeft"> </td><td class="mdescRight">same storage as uimm0 <a href="#gf2477dc50a13ec112d7cf3f3fa5c9178"></a><br></td></tr>
137 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__ENC.html#g3f3721bb20e64524b475bd5f3d7bd1e0">xed_encoder_request_set_uimm0</a> (<a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> *p, xed_uint64_t uimm, <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> nbytes)</td></tr>
139 <tr><td class="mdescLeft"> </td><td class="mdescRight">Set the uimm0 using a BYTE width. <a href="#g3f3721bb20e64524b475bd5f3d7bd1e0"></a><br></td></tr>
140 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__ENC.html#g5dcaec413dfefdd6ca2ad179e5a181c9">xed_encoder_request_set_uimm0_bits</a> (<a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> *p, xed_uint64_t uimm, <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> nbits)</td></tr>
142 <tr><td class="mdescLeft"> </td><td class="mdescRight">Set the uimm0 using a BIT width. <a href="#g5dcaec413dfefdd6ca2ad179e5a181c9"></a><br></td></tr>
143 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__ENC.html#g4edd1347ebaceee3811584123b4daa9b">xed_encoder_request_set_uimm1</a> (<a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> *p, xed_uint8_t uimm)</td></tr>
145 <tr><td colspan="2"><br><h2>Initialization</h2></td></tr>
146 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__ENC.html#g1125aa21681440d97ff3bb9736b0b9ed">xed_encoder_request_zero</a> (<a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> *p)</td></tr>
148 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__ENC.html#g483f4ee86b11b94a8d79f309b5388e49">xed_encoder_request_zero_operand_order</a> (<a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> *p)</td></tr>
150 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__ENC.html#g8a379853ad688ff61de9e73862617e40">xed_encoder_request_zero_set_mode</a> (<a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> *p, const <a class="el" href="group__INIT.html#g58af142456a133c3df29c763216a85cf">xed_state_t</a> *dstate)</td></tr>
152 <tr><td colspan="2"><br><h2>Typedefs</h2></td></tr>
153 <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <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__ENC.html#g56df34e455c5fa7524ff651017ef87fe">xed_encoder_request_s</a></td></tr>
155 <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a></td></tr>
157 <tr><td colspan="2"><br><h2>Functions</h2></td></tr>
158 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT <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__ENC.html#gfb170645a9deebb7b3a74edae4de5e89">xed_encoder_request_get_iclass</a> (const <a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> *p)</td></tr>
160 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__ENC.html#g6c6a723c9a89d72d3ad51705cb6b8836">xed_encoder_request_init_from_decode</a> (struct <a class="el" href="structxed__decoded__inst__s.html">xed_decoded_inst_s</a> *d)</td></tr>
162 <tr><td class="mdescLeft"> </td><td class="mdescRight">Converts an decoder request to a valid encoder request. <a href="#g6c6a723c9a89d72d3ad51705cb6b8836"></a><br></td></tr>
163 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT <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__ENC.html#g8411194f443b2bbfe5fbb23c1896dc74">xed_encoder_request_operands</a> (<a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> *p)</td></tr>
165 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT 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__ENC.html#gbaed3d3191f648f4289ff8dcb43464b1">xed_encoder_request_operands_const</a> (const <a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> *p)</td></tr>
167 <tr><td class="memItemLeft" nowrap align="right" valign="top">XED_DLL_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__ENC.html#gff030e16b97deae21b1f7613684c54c7">xed_encoder_request_set_iclass</a> (<a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> *p, <a class="el" href="xed-iclass-enum_8h.html#d318511ae9cc50f102251b3c91a1ab9f">xed_iclass_enum_t</a> iclass)</td></tr>
170 <hr><h2>Typedef Documentation</h2>
171 <a class="anchor" name="g56df34e455c5fa7524ff651017ef87fe"></a><!-- doxytag: member="xed-encode.h::xed_encoder_request_s" ref="g56df34e455c5fa7524ff651017ef87fe" args="" --><p>
172 <table class="mdTable" cellpadding="2" cellspacing="0">
175 <table cellpadding="0" cellspacing="0" border="0">
177 <td class="md" nowrap valign="top">typedef struct <a class="el" href="structxed__decoded__inst__s.html">xed_decoded_inst_s</a> <a class="el" href="structxed__decoded__inst__s.html">xed_encoder_request_s</a> </td>
183 <table cellspacing="5" cellpadding="0" border="0">
193 Definition at line <a class="el" href="xed-encode_8h-source.html#l00054">54</a> of file <a class="el" href="xed-encode_8h-source.html">xed-encode.h</a>. </td>
196 <a class="anchor" name="g6f914541ddfa1ffe609acebff72d0b5f"></a><!-- doxytag: member="xed-encode.h::xed_encoder_request_t" ref="g6f914541ddfa1ffe609acebff72d0b5f" args="" --><p>
197 <table class="mdTable" cellpadding="2" cellspacing="0">
200 <table cellpadding="0" cellspacing="0" border="0">
202 <td class="md" nowrap valign="top">typedef <a class="el" href="group__DEC.html#ga704925b5f80885a0ac56640a7c70937">xed_decoded_inst_t</a> <a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> </td>
208 <table cellspacing="5" cellpadding="0" border="0">
218 Definition at line <a class="el" href="xed-encode_8h-source.html#l00056">56</a> of file <a class="el" href="xed-encode_8h-source.html">xed-encode.h</a>. </td>
221 <hr><h2>Function Documentation</h2>
222 <a class="anchor" name="g7c30222e2144a177903ce02beacb1996"></a><!-- doxytag: member="xed-encode.h::xed_encode" ref="g7c30222e2144a177903ce02beacb1996" args="(xed_encoder_request_t *r, xed_uint8_t *array, const unsigned int ilen, unsigned int *olen)" --><p>
223 <table class="mdTable" cellpadding="2" cellspacing="0">
226 <table cellpadding="0" cellspacing="0" border="0">
228 <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_encode </td>
229 <td class="md" valign="top">( </td>
230 <td class="md" nowrap valign="top"><a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> * </td>
231 <td class="mdname" nowrap> <em>r</em>, </td>
234 <td class="md" nowrap align="right"></td>
236 <td class="md" nowrap>xed_uint8_t * </td>
237 <td class="mdname" nowrap> <em>array</em>, </td>
240 <td class="md" nowrap align="right"></td>
242 <td class="md" nowrap>const unsigned int </td>
243 <td class="mdname" nowrap> <em>ilen</em>, </td>
246 <td class="md" nowrap align="right"></td>
248 <td class="md" nowrap>unsigned int * </td>
249 <td class="mdname" nowrap> <em>olen</em></td>
253 <td class="md">) </td>
254 <td class="md" colspan="2"></td>
260 <table cellspacing="5" cellpadding="0" border="0">
268 This is the main interface to the encoder.
270 The array should be at most 15 bytes long. The ilen parameter should indiciate this length. If the array is too short, the encoder may fail to encode the request. Failure is indicated by a return value of type <a class="el" href="xed-error-enum_8h.html#2611877aa5e8b566c1c2be45aa89c792">xed_error_enum_t</a> that is not equal to <a class="el" href="xed-error-enum_8h.html#2611877aa5e8b566c1c2be45aa89c792d9f5736eacb4d9dedd9aadf1d75b9de6">XED_ERROR_NONE</a>. Otherwise, <a class="el" href="xed-error-enum_8h.html#2611877aa5e8b566c1c2be45aa89c792d9f5736eacb4d9dedd9aadf1d75b9de6">XED_ERROR_NONE</a> is returned and the length of the encoded instruction is returned in olen.<p>
271 <dl compact><dt><b>Parameters:</b></dt><dd>
272 <table border="0" cellspacing="2" cellpadding="0">
273 <tr><td valign="top"></td><td valign="top"><em>r</em> </td><td>encoder request description (<a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a>), includes mode info </td></tr>
274 <tr><td valign="top"></td><td valign="top"><em>array</em> </td><td>the encoded instruction bytes are stored here </td></tr>
275 <tr><td valign="top"></td><td valign="top"><em>ilen</em> </td><td>the input length of array. </td></tr>
276 <tr><td valign="top"></td><td valign="top"><em>olen</em> </td><td>the actual length of array used for encoding </td></tr>
279 <dl compact><dt><b>Returns:</b></dt><dd>success/failure as a <a class="el" href="xed-error-enum_8h.html#2611877aa5e8b566c1c2be45aa89c792">xed_error_enum_t</a> </dd></dl>
283 <a class="anchor" name="g7d0d452bdd6f1cc20ab5c7cc14fe79e8"></a><!-- doxytag: member="xed-encode.h::xed_encode_nop" ref="g7d0d452bdd6f1cc20ab5c7cc14fe79e8" args="(xed_uint8_t *array, const unsigned int ilen)" --><p>
284 <table class="mdTable" cellpadding="2" cellspacing="0">
287 <table cellpadding="0" cellspacing="0" border="0">
289 <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_encode_nop </td>
290 <td class="md" valign="top">( </td>
291 <td class="md" nowrap valign="top">xed_uint8_t * </td>
292 <td class="mdname" nowrap> <em>array</em>, </td>
295 <td class="md" nowrap align="right"></td>
297 <td class="md" nowrap>const unsigned int </td>
298 <td class="mdname" nowrap> <em>ilen</em></td>
302 <td class="md">) </td>
303 <td class="md" colspan="2"></td>
309 <table cellspacing="5" cellpadding="0" border="0">
317 This function will attempt to encode a NOP of exactly ilen bytes.
319 If such a NOP is not encodeable, then false will be returned.<p>
320 <dl compact><dt><b>Parameters:</b></dt><dd>
321 <table border="0" cellspacing="2" cellpadding="0">
322 <tr><td valign="top"></td><td valign="top"><em>array</em> </td><td>the encoded instruction bytes are stored here </td></tr>
323 <tr><td valign="top"></td><td valign="top"><em>ilen</em> </td><td>the input length array. </td></tr>
326 <dl compact><dt><b>Returns:</b></dt><dd>success/failure as a <a class="el" href="xed-error-enum_8h.html#2611877aa5e8b566c1c2be45aa89c792">xed_error_enum_t</a> </dd></dl>
330 <a class="anchor" name="gf69b263c9882f189c5a6c6992d0f6fe7"></a><!-- doxytag: member="xed-encode.h::xed_encode_request_print" ref="gf69b263c9882f189c5a6c6992d0f6fe7" args="(const xed_encoder_request_t *p, char *buf, xed_uint_t buflen)" --><p>
331 <table class="mdTable" cellpadding="2" cellspacing="0">
334 <table cellpadding="0" cellspacing="0" border="0">
336 <td class="md" nowrap valign="top">XED_DLL_EXPORT void xed_encode_request_print </td>
337 <td class="md" valign="top">( </td>
338 <td class="md" nowrap valign="top">const <a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> * </td>
339 <td class="mdname" nowrap> <em>p</em>, </td>
342 <td class="md" nowrap align="right"></td>
344 <td class="md" nowrap>char * </td>
345 <td class="mdname" nowrap> <em>buf</em>, </td>
348 <td class="md" nowrap align="right"></td>
350 <td class="md" nowrap><a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> </td>
351 <td class="mdname" nowrap> <em>buflen</em></td>
355 <td class="md">) </td>
356 <td class="md" colspan="2"></td>
362 <table cellspacing="5" cellpadding="0" border="0">
373 <a class="anchor" name="gfb170645a9deebb7b3a74edae4de5e89"></a><!-- doxytag: member="xed-encode.h::xed_encoder_request_get_iclass" ref="gfb170645a9deebb7b3a74edae4de5e89" args="(const xed_encoder_request_t *p)" --><p>
374 <table class="mdTable" cellpadding="2" cellspacing="0">
377 <table cellpadding="0" cellspacing="0" border="0">
379 <td class="md" nowrap valign="top">XED_DLL_EXPORT <a class="el" href="xed-iclass-enum_8h.html#d318511ae9cc50f102251b3c91a1ab9f">xed_iclass_enum_t</a> xed_encoder_request_get_iclass </td>
380 <td class="md" valign="top">( </td>
381 <td class="md" nowrap valign="top">const <a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> * </td>
382 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
383 <td class="md" valign="top"> ) </td>
384 <td class="md" nowrap></td>
390 <table cellspacing="5" cellpadding="0" border="0">
401 <a class="anchor" name="g0a0e2a6e3de6d372c938b14277db0eea"></a><!-- doxytag: member="xed-encode.h::xed_encoder_request_get_operand_order" ref="g0a0e2a6e3de6d372c938b14277db0eea" args="(xed_encoder_request_t *p, xed_uint_t operand_index)" --><p>
402 <table class="mdTable" cellpadding="2" cellspacing="0">
405 <table cellpadding="0" cellspacing="0" border="0">
407 <td class="md" nowrap valign="top">XED_DLL_EXPORT <a class="el" href="xed-operand-enum_8h.html#09c2a35d8bb7bfe68bb3d34b0a5e011a">xed_operand_enum_t</a> xed_encoder_request_get_operand_order </td>
408 <td class="md" valign="top">( </td>
409 <td class="md" nowrap valign="top"><a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> * </td>
410 <td class="mdname" nowrap> <em>p</em>, </td>
413 <td class="md" nowrap align="right"></td>
415 <td class="md" nowrap><a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> </td>
416 <td class="mdname" nowrap> <em>operand_index</em></td>
420 <td class="md">) </td>
421 <td class="md" colspan="2"></td>
427 <table cellspacing="5" cellpadding="0" border="0">
435 Retreive the name of the n'th operand in the operand order.<p>
436 <dl compact><dt><b>Parameters:</b></dt><dd>
437 <table border="0" cellspacing="2" cellpadding="0">
438 <tr><td valign="top"><tt>[in]</tt> </td><td valign="top"><em>p</em> </td><td><a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> </td></tr>
439 <tr><td valign="top"><tt>[in]</tt> </td><td valign="top"><em>operand_index</em> </td><td>xed_uint_t representing n'th operand position </td></tr>
442 <dl compact><dt><b>Returns:</b></dt><dd>The <a class="el" href="xed-operand-enum_8h.html#09c2a35d8bb7bfe68bb3d34b0a5e011a">xed_operand_enum_t</a> operand name. </dd></dl>
446 <a class="anchor" name="g6c6a723c9a89d72d3ad51705cb6b8836"></a><!-- doxytag: member="xed-encode.h::xed_encoder_request_init_from_decode" ref="g6c6a723c9a89d72d3ad51705cb6b8836" args="(struct xed_decoded_inst_s *d)" --><p>
447 <table class="mdTable" cellpadding="2" cellspacing="0">
450 <table cellpadding="0" cellspacing="0" border="0">
452 <td class="md" nowrap valign="top">XED_DLL_EXPORT void xed_encoder_request_init_from_decode </td>
453 <td class="md" valign="top">( </td>
454 <td class="md" nowrap valign="top">struct <a class="el" href="structxed__decoded__inst__s.html">xed_decoded_inst_s</a> * </td>
455 <td class="mdname1" valign="top" nowrap> <em>d</em> </td>
456 <td class="md" valign="top"> ) </td>
457 <td class="md" nowrap></td>
463 <table cellspacing="5" cellpadding="0" border="0">
471 Converts an decoder request to a valid encoder request.
476 <a class="anchor" name="gcfe5f5016d026ba1944e434a74e35345"></a><!-- doxytag: member="xed-encode.h::xed_encoder_request_operand_order_entries" ref="gcfe5f5016d026ba1944e434a74e35345" args="(xed_encoder_request_t *p)" --><p>
477 <table class="mdTable" cellpadding="2" cellspacing="0">
480 <table cellpadding="0" cellspacing="0" border="0">
482 <td class="md" nowrap valign="top">static XED_INLINE <a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> xed_encoder_request_operand_order_entries </td>
483 <td class="md" valign="top">( </td>
484 <td class="md" nowrap valign="top"><a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> * </td>
485 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
486 <td class="md" valign="top"> ) </td>
487 <td class="md" nowrap><code> [static]</code></td>
493 <table cellspacing="5" cellpadding="0" border="0">
501 Retreive the number of entries in the encoder operand order array.
503 <dl compact><dt><b>Returns:</b></dt><dd>The number of entries in the encoder operand order array </dd></dl>
506 Definition at line <a class="el" href="xed-encode_8h-source.html#l00138">138</a> of file <a class="el" href="xed-encode_8h-source.html">xed-encode.h</a>. </td>
509 <a class="anchor" name="g8411194f443b2bbfe5fbb23c1896dc74"></a><!-- doxytag: member="xed-encode.h::xed_encoder_request_operands" ref="g8411194f443b2bbfe5fbb23c1896dc74" args="(xed_encoder_request_t *p)" --><p>
510 <table class="mdTable" cellpadding="2" cellspacing="0">
513 <table cellpadding="0" cellspacing="0" border="0">
515 <td class="md" nowrap valign="top">XED_DLL_EXPORT <a class="el" href="xed-operand-storage_8h.html#eb1037b79ccdc048af4887376f6382a4">xed_operand_values_t</a>* xed_encoder_request_operands </td>
516 <td class="md" valign="top">( </td>
517 <td class="md" nowrap valign="top"><a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> * </td>
518 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
519 <td class="md" valign="top"> ) </td>
520 <td class="md" nowrap></td>
526 <table cellspacing="5" cellpadding="0" border="0">
537 <a class="anchor" name="gbaed3d3191f648f4289ff8dcb43464b1"></a><!-- doxytag: member="xed-encode.h::xed_encoder_request_operands_const" ref="gbaed3d3191f648f4289ff8dcb43464b1" args="(const xed_encoder_request_t *p)" --><p>
538 <table class="mdTable" cellpadding="2" cellspacing="0">
541 <table cellpadding="0" cellspacing="0" border="0">
543 <td class="md" nowrap valign="top">XED_DLL_EXPORT const <a class="el" href="xed-operand-storage_8h.html#eb1037b79ccdc048af4887376f6382a4">xed_operand_values_t</a>* xed_encoder_request_operands_const </td>
544 <td class="md" valign="top">( </td>
545 <td class="md" nowrap valign="top">const <a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> * </td>
546 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
547 <td class="md" valign="top"> ) </td>
548 <td class="md" nowrap></td>
554 <table cellspacing="5" cellpadding="0" border="0">
565 <a class="anchor" name="gac846d407fd6537461a6efaccff7609d"></a><!-- doxytag: member="xed-encode.h::xed_encoder_request_set_agen" ref="gac846d407fd6537461a6efaccff7609d" args="(xed_encoder_request_t *p)" --><p>
566 <table class="mdTable" cellpadding="2" cellspacing="0">
569 <table cellpadding="0" cellspacing="0" border="0">
571 <td class="md" nowrap valign="top">XED_DLL_EXPORT void xed_encoder_request_set_agen </td>
572 <td class="md" valign="top">( </td>
573 <td class="md" nowrap valign="top"><a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> * </td>
574 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
575 <td class="md" valign="top"> ) </td>
576 <td class="md" nowrap></td>
582 <table cellspacing="5" cellpadding="0" border="0">
593 <a class="anchor" name="g9002c58e013af93550df7bd9b37e13ed"></a><!-- doxytag: member="xed-encode.h::xed_encoder_request_set_base0" ref="g9002c58e013af93550df7bd9b37e13ed" args="(xed_encoder_request_t *p, xed_reg_enum_t base_reg)" --><p>
594 <table class="mdTable" cellpadding="2" cellspacing="0">
597 <table cellpadding="0" cellspacing="0" border="0">
599 <td class="md" nowrap valign="top">XED_DLL_EXPORT void xed_encoder_request_set_base0 </td>
600 <td class="md" valign="top">( </td>
601 <td class="md" nowrap valign="top"><a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> * </td>
602 <td class="mdname" nowrap> <em>p</em>, </td>
605 <td class="md" nowrap align="right"></td>
607 <td class="md" nowrap><a class="el" href="xed-reg-enum_8h.html#f05c33c5a68e9304d1d8ac0408ae3f61">xed_reg_enum_t</a> </td>
608 <td class="mdname" nowrap> <em>base_reg</em></td>
612 <td class="md">) </td>
613 <td class="md" colspan="2"></td>
619 <table cellspacing="5" cellpadding="0" border="0">
630 <a class="anchor" name="gf109d486d1eadf5c8b86d1cba8387d29"></a><!-- doxytag: member="xed-encode.h::xed_encoder_request_set_base1" ref="gf109d486d1eadf5c8b86d1cba8387d29" args="(xed_encoder_request_t *p, xed_reg_enum_t base_reg)" --><p>
631 <table class="mdTable" cellpadding="2" cellspacing="0">
634 <table cellpadding="0" cellspacing="0" border="0">
636 <td class="md" nowrap valign="top">XED_DLL_EXPORT void xed_encoder_request_set_base1 </td>
637 <td class="md" valign="top">( </td>
638 <td class="md" nowrap valign="top"><a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> * </td>
639 <td class="mdname" nowrap> <em>p</em>, </td>
642 <td class="md" nowrap align="right"></td>
644 <td class="md" nowrap><a class="el" href="xed-reg-enum_8h.html#f05c33c5a68e9304d1d8ac0408ae3f61">xed_reg_enum_t</a> </td>
645 <td class="mdname" nowrap> <em>base_reg</em></td>
649 <td class="md">) </td>
650 <td class="md" colspan="2"></td>
656 <table cellspacing="5" cellpadding="0" border="0">
667 <a class="anchor" name="g3594acbdb2001a816da28b7554b2ae4c"></a><!-- doxytag: member="xed-encode.h::xed_encoder_request_set_branch_displacement" ref="g3594acbdb2001a816da28b7554b2ae4c" args="(xed_encoder_request_t *p, xed_int32_t brdisp, xed_uint_t nbytes)" --><p>
668 <table class="mdTable" cellpadding="2" cellspacing="0">
671 <table cellpadding="0" cellspacing="0" border="0">
673 <td class="md" nowrap valign="top">XED_DLL_EXPORT void xed_encoder_request_set_branch_displacement </td>
674 <td class="md" valign="top">( </td>
675 <td class="md" nowrap valign="top"><a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> * </td>
676 <td class="mdname" nowrap> <em>p</em>, </td>
679 <td class="md" nowrap align="right"></td>
681 <td class="md" nowrap>xed_int32_t </td>
682 <td class="mdname" nowrap> <em>brdisp</em>, </td>
685 <td class="md" nowrap align="right"></td>
687 <td class="md" nowrap><a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> </td>
688 <td class="mdname" nowrap> <em>nbytes</em></td>
692 <td class="md">) </td>
693 <td class="md" colspan="2"></td>
699 <table cellspacing="5" cellpadding="0" border="0">
710 <a class="anchor" name="gb416edcadb0d2b59fb62cfcd93991c3d"></a><!-- doxytag: member="xed-encode.h::xed_encoder_request_set_effective_address_size" ref="gb416edcadb0d2b59fb62cfcd93991c3d" args="(xed_encoder_request_t *p, xed_uint_t width_bits)" --><p>
711 <table class="mdTable" cellpadding="2" cellspacing="0">
714 <table cellpadding="0" cellspacing="0" border="0">
716 <td class="md" nowrap valign="top">XED_DLL_EXPORT void xed_encoder_request_set_effective_address_size </td>
717 <td class="md" valign="top">( </td>
718 <td class="md" nowrap valign="top"><a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> * </td>
719 <td class="mdname" nowrap> <em>p</em>, </td>
722 <td class="md" nowrap align="right"></td>
724 <td class="md" nowrap><a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> </td>
725 <td class="mdname" nowrap> <em>width_bits</em></td>
729 <td class="md">) </td>
730 <td class="md" colspan="2"></td>
736 <table cellspacing="5" cellpadding="0" border="0">
747 <a class="anchor" name="g53b937905ca110c4dd4b20e5695d8937"></a><!-- doxytag: member="xed-encode.h::xed_encoder_request_set_effective_operand_width" ref="g53b937905ca110c4dd4b20e5695d8937" args="(xed_encoder_request_t *p, xed_uint_t width_bits)" --><p>
748 <table class="mdTable" cellpadding="2" cellspacing="0">
751 <table cellpadding="0" cellspacing="0" border="0">
753 <td class="md" nowrap valign="top">XED_DLL_EXPORT void xed_encoder_request_set_effective_operand_width </td>
754 <td class="md" valign="top">( </td>
755 <td class="md" nowrap valign="top"><a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> * </td>
756 <td class="mdname" nowrap> <em>p</em>, </td>
759 <td class="md" nowrap align="right"></td>
761 <td class="md" nowrap><a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> </td>
762 <td class="mdname" nowrap> <em>width_bits</em></td>
766 <td class="md">) </td>
767 <td class="md" colspan="2"></td>
773 <table cellspacing="5" cellpadding="0" border="0">
784 <a class="anchor" name="gff030e16b97deae21b1f7613684c54c7"></a><!-- doxytag: member="xed-encode.h::xed_encoder_request_set_iclass" ref="gff030e16b97deae21b1f7613684c54c7" args="(xed_encoder_request_t *p, xed_iclass_enum_t iclass)" --><p>
785 <table class="mdTable" cellpadding="2" cellspacing="0">
788 <table cellpadding="0" cellspacing="0" border="0">
790 <td class="md" nowrap valign="top">XED_DLL_EXPORT void xed_encoder_request_set_iclass </td>
791 <td class="md" valign="top">( </td>
792 <td class="md" nowrap valign="top"><a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> * </td>
793 <td class="mdname" nowrap> <em>p</em>, </td>
796 <td class="md" nowrap align="right"></td>
798 <td class="md" nowrap><a class="el" href="xed-iclass-enum_8h.html#d318511ae9cc50f102251b3c91a1ab9f">xed_iclass_enum_t</a> </td>
799 <td class="mdname" nowrap> <em>iclass</em></td>
803 <td class="md">) </td>
804 <td class="md" colspan="2"></td>
810 <table cellspacing="5" cellpadding="0" border="0">
821 <a class="anchor" name="gd436ed3d253f15e11f4c943e0308db06"></a><!-- doxytag: member="xed-encode.h::xed_encoder_request_set_index" ref="gd436ed3d253f15e11f4c943e0308db06" args="(xed_encoder_request_t *p, xed_reg_enum_t index_reg)" --><p>
822 <table class="mdTable" cellpadding="2" cellspacing="0">
825 <table cellpadding="0" cellspacing="0" border="0">
827 <td class="md" nowrap valign="top">XED_DLL_EXPORT void xed_encoder_request_set_index </td>
828 <td class="md" valign="top">( </td>
829 <td class="md" nowrap valign="top"><a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> * </td>
830 <td class="mdname" nowrap> <em>p</em>, </td>
833 <td class="md" nowrap align="right"></td>
835 <td class="md" nowrap><a class="el" href="xed-reg-enum_8h.html#f05c33c5a68e9304d1d8ac0408ae3f61">xed_reg_enum_t</a> </td>
836 <td class="mdname" nowrap> <em>index_reg</em></td>
840 <td class="md">) </td>
841 <td class="md" colspan="2"></td>
847 <table cellspacing="5" cellpadding="0" border="0">
858 <a class="anchor" name="g14ab62a6407df15f864fde3d4f81b7fe"></a><!-- doxytag: member="xed-encode.h::xed_encoder_request_set_lock" ref="g14ab62a6407df15f864fde3d4f81b7fe" args="(xed_encoder_request_t *p)" --><p>
859 <table class="mdTable" cellpadding="2" cellspacing="0">
862 <table cellpadding="0" cellspacing="0" border="0">
864 <td class="md" nowrap valign="top">XED_DLL_EXPORT void xed_encoder_request_set_lock </td>
865 <td class="md" valign="top">( </td>
866 <td class="md" nowrap valign="top"><a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> * </td>
867 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
868 <td class="md" valign="top"> ) </td>
869 <td class="md" nowrap></td>
875 <table cellspacing="5" cellpadding="0" border="0">
883 For locked (atomic read-modify-write) memops requests.
888 <a class="anchor" name="g7b4e446882bcc615e917132f3fbb16b3"></a><!-- doxytag: member="xed-encode.h::xed_encoder_request_set_mem0" ref="g7b4e446882bcc615e917132f3fbb16b3" args="(xed_encoder_request_t *p)" --><p>
889 <table class="mdTable" cellpadding="2" cellspacing="0">
892 <table cellpadding="0" cellspacing="0" border="0">
894 <td class="md" nowrap valign="top">XED_DLL_EXPORT void xed_encoder_request_set_mem0 </td>
895 <td class="md" valign="top">( </td>
896 <td class="md" nowrap valign="top"><a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> * </td>
897 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
898 <td class="md" valign="top"> ) </td>
899 <td class="md" nowrap></td>
905 <table cellspacing="5" cellpadding="0" border="0">
916 <a class="anchor" name="gfe70e5db7dc59e9880f2db3ec7e71d9d"></a><!-- doxytag: member="xed-encode.h::xed_encoder_request_set_mem1" ref="gfe70e5db7dc59e9880f2db3ec7e71d9d" args="(xed_encoder_request_t *p)" --><p>
917 <table class="mdTable" cellpadding="2" cellspacing="0">
920 <table cellpadding="0" cellspacing="0" border="0">
922 <td class="md" nowrap valign="top">XED_DLL_EXPORT void xed_encoder_request_set_mem1 </td>
923 <td class="md" valign="top">( </td>
924 <td class="md" nowrap valign="top"><a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> * </td>
925 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
926 <td class="md" valign="top"> ) </td>
927 <td class="md" nowrap></td>
933 <table cellspacing="5" cellpadding="0" border="0">
944 <a class="anchor" name="gf745dfb40af1361b8a9b9f1ecb4f0228"></a><!-- doxytag: member="xed-encode.h::xed_encoder_request_set_memory_displacement" ref="gf745dfb40af1361b8a9b9f1ecb4f0228" args="(xed_encoder_request_t *p, xed_int64_t memdisp, xed_uint_t nbytes)" --><p>
945 <table class="mdTable" cellpadding="2" cellspacing="0">
948 <table cellpadding="0" cellspacing="0" border="0">
950 <td class="md" nowrap valign="top">XED_DLL_EXPORT void xed_encoder_request_set_memory_displacement </td>
951 <td class="md" valign="top">( </td>
952 <td class="md" nowrap valign="top"><a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> * </td>
953 <td class="mdname" nowrap> <em>p</em>, </td>
956 <td class="md" nowrap align="right"></td>
958 <td class="md" nowrap>xed_int64_t </td>
959 <td class="mdname" nowrap> <em>memdisp</em>, </td>
962 <td class="md" nowrap align="right"></td>
964 <td class="md" nowrap><a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> </td>
965 <td class="mdname" nowrap> <em>nbytes</em></td>
969 <td class="md">) </td>
970 <td class="md" colspan="2"></td>
976 <table cellspacing="5" cellpadding="0" border="0">
987 <a class="anchor" name="g03790a14a625c544edcbda559e359f14"></a><!-- doxytag: member="xed-encode.h::xed_encoder_request_set_memory_operand_length" ref="g03790a14a625c544edcbda559e359f14" args="(xed_encoder_request_t *p, xed_uint_t nbytes)" --><p>
988 <table class="mdTable" cellpadding="2" cellspacing="0">
991 <table cellpadding="0" cellspacing="0" border="0">
993 <td class="md" nowrap valign="top">XED_DLL_EXPORT void xed_encoder_request_set_memory_operand_length </td>
994 <td class="md" valign="top">( </td>
995 <td class="md" nowrap valign="top"><a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> * </td>
996 <td class="mdname" nowrap> <em>p</em>, </td>
999 <td class="md" nowrap align="right"></td>
1000 <td class="md"></td>
1001 <td class="md" nowrap><a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> </td>
1002 <td class="mdname" nowrap> <em>nbytes</em></td>
1005 <td class="md"></td>
1006 <td class="md">) </td>
1007 <td class="md" colspan="2"></td>
1013 <table cellspacing="5" cellpadding="0" border="0">
1024 <a class="anchor" name="g1e46ce602263f0de591b3ebc268cc12e"></a><!-- doxytag: member="xed-encode.h::xed_encoder_request_set_operand_order" ref="g1e46ce602263f0de591b3ebc268cc12e" args="(xed_encoder_request_t *p, xed_uint_t operand_index, xed_operand_enum_t name)" --><p>
1025 <table class="mdTable" cellpadding="2" cellspacing="0">
1028 <table cellpadding="0" cellspacing="0" border="0">
1030 <td class="md" nowrap valign="top">XED_DLL_EXPORT void xed_encoder_request_set_operand_order </td>
1031 <td class="md" valign="top">( </td>
1032 <td class="md" nowrap valign="top"><a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> * </td>
1033 <td class="mdname" nowrap> <em>p</em>, </td>
1036 <td class="md" nowrap align="right"></td>
1037 <td class="md"></td>
1038 <td class="md" nowrap><a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> </td>
1039 <td class="mdname" nowrap> <em>operand_index</em>, </td>
1042 <td class="md" nowrap align="right"></td>
1043 <td class="md"></td>
1044 <td class="md" nowrap><a class="el" href="xed-operand-enum_8h.html#09c2a35d8bb7bfe68bb3d34b0a5e011a">xed_operand_enum_t</a> </td>
1045 <td class="mdname" nowrap> <em>name</em></td>
1048 <td class="md"></td>
1049 <td class="md">) </td>
1050 <td class="md" colspan="2"></td>
1056 <table cellspacing="5" cellpadding="0" border="0">
1064 Specify the name as the n'th operand in the operand order.<p>
1065 The complication of this function is that the register operand names are specific to the position of the operand (REG0, REG1, REG2...). One can use this function for registers or one can use the xed_encoder_request_set_operand_name_reg() which takes integers instead of operand names.<p>
1066 <dl compact><dt><b>Parameters:</b></dt><dd>
1067 <table border="0" cellspacing="2" cellpadding="0">
1068 <tr><td valign="top"><tt>[in]</tt> </td><td valign="top"><em>p</em> </td><td><a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> </td></tr>
1069 <tr><td valign="top"><tt>[in]</tt> </td><td valign="top"><em>operand_index</em> </td><td>xed_uint_t representing n'th operand position </td></tr>
1070 <tr><td valign="top"><tt>[in]</tt> </td><td valign="top"><em>name</em> </td><td><a class="el" href="xed-operand-enum_8h.html#09c2a35d8bb7bfe68bb3d34b0a5e011a">xed_operand_enum_t</a> operand name. </td></tr>
1076 <a class="anchor" name="g7be1c7da28a5d88f485f7e80b67959b4"></a><!-- doxytag: member="xed-encode.h::xed_encoder_request_set_ptr" ref="g7be1c7da28a5d88f485f7e80b67959b4" args="(xed_encoder_request_t *p)" --><p>
1077 <table class="mdTable" cellpadding="2" cellspacing="0">
1080 <table cellpadding="0" cellspacing="0" border="0">
1082 <td class="md" nowrap valign="top">XED_DLL_EXPORT void xed_encoder_request_set_ptr </td>
1083 <td class="md" valign="top">( </td>
1084 <td class="md" nowrap valign="top"><a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> * </td>
1085 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
1086 <td class="md" valign="top"> ) </td>
1087 <td class="md" nowrap></td>
1093 <table cellspacing="5" cellpadding="0" border="0">
1104 <a class="anchor" name="gba22ae36cab0f632d5461830cc9a3133"></a><!-- doxytag: member="xed-encode.h::xed_encoder_request_set_reg" ref="gba22ae36cab0f632d5461830cc9a3133" args="(xed_encoder_request_t *p, xed_operand_enum_t operand, xed_reg_enum_t reg)" --><p>
1105 <table class="mdTable" cellpadding="2" cellspacing="0">
1108 <table cellpadding="0" cellspacing="0" border="0">
1110 <td class="md" nowrap valign="top">XED_DLL_EXPORT void xed_encoder_request_set_reg </td>
1111 <td class="md" valign="top">( </td>
1112 <td class="md" nowrap valign="top"><a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> * </td>
1113 <td class="mdname" nowrap> <em>p</em>, </td>
1116 <td class="md" nowrap align="right"></td>
1117 <td class="md"></td>
1118 <td class="md" nowrap><a class="el" href="xed-operand-enum_8h.html#09c2a35d8bb7bfe68bb3d34b0a5e011a">xed_operand_enum_t</a> </td>
1119 <td class="mdname" nowrap> <em>operand</em>, </td>
1122 <td class="md" nowrap align="right"></td>
1123 <td class="md"></td>
1124 <td class="md" nowrap><a class="el" href="xed-reg-enum_8h.html#f05c33c5a68e9304d1d8ac0408ae3f61">xed_reg_enum_t</a> </td>
1125 <td class="mdname" nowrap> <em>reg</em></td>
1128 <td class="md"></td>
1129 <td class="md">) </td>
1130 <td class="md" colspan="2"></td>
1136 <table cellspacing="5" cellpadding="0" border="0">
1144 Set the operands array element indexed by operand to the actual register name reg.<p>
1145 <dl compact><dt><b>Parameters:</b></dt><dd>
1146 <table border="0" cellspacing="2" cellpadding="0">
1147 <tr><td valign="top"><tt>[in]</tt> </td><td valign="top"><em>p</em> </td><td>xed_encoder_request_t </td></tr>
1148 <tr><td valign="top"><tt>[in]</tt> </td><td valign="top"><em>operand</em> </td><td>indicates which register operand storage field to use </td></tr>
1149 <tr><td valign="top"><tt>[in]</tt> </td><td valign="top"><em>reg</em> </td><td>the actual register represented (EAX, etc.) to store. </td></tr>
1155 <a class="anchor" name="gd447fb779e58b7eaae0dd54e51af6066"></a><!-- doxytag: member="xed-encode.h::xed_encoder_request_set_relbr" ref="gd447fb779e58b7eaae0dd54e51af6066" args="(xed_encoder_request_t *p)" --><p>
1156 <table class="mdTable" cellpadding="2" cellspacing="0">
1159 <table cellpadding="0" cellspacing="0" border="0">
1161 <td class="md" nowrap valign="top">XED_DLL_EXPORT void xed_encoder_request_set_relbr </td>
1162 <td class="md" valign="top">( </td>
1163 <td class="md" nowrap valign="top"><a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> * </td>
1164 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
1165 <td class="md" valign="top"> ) </td>
1166 <td class="md" nowrap></td>
1172 <table cellspacing="5" cellpadding="0" border="0">
1183 <a class="anchor" name="g71d03e9d694f56fc362974f2d81e5464"></a><!-- doxytag: member="xed-encode.h::xed_encoder_request_set_rep" ref="g71d03e9d694f56fc362974f2d81e5464" args="(xed_encoder_request_t *p)" --><p>
1184 <table class="mdTable" cellpadding="2" cellspacing="0">
1187 <table cellpadding="0" cellspacing="0" border="0">
1189 <td class="md" nowrap valign="top">XED_DLL_EXPORT void xed_encoder_request_set_rep </td>
1190 <td class="md" valign="top">( </td>
1191 <td class="md" nowrap valign="top"><a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> * </td>
1192 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
1193 <td class="md" valign="top"> ) </td>
1194 <td class="md" nowrap></td>
1200 <table cellspacing="5" cellpadding="0" border="0">
1208 for REP(F3) and REPNE(F2) prefixe on string ops
1213 <a class="anchor" name="gf651a483ec90cbf4495f87b114facc0b"></a><!-- doxytag: member="xed-encode.h::xed_encoder_request_set_repne" ref="gf651a483ec90cbf4495f87b114facc0b" args="(xed_encoder_request_t *p)" --><p>
1214 <table class="mdTable" cellpadding="2" cellspacing="0">
1217 <table cellpadding="0" cellspacing="0" border="0">
1219 <td class="md" nowrap valign="top">XED_DLL_EXPORT void xed_encoder_request_set_repne </td>
1220 <td class="md" valign="top">( </td>
1221 <td class="md" nowrap valign="top"><a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> * </td>
1222 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
1223 <td class="md" valign="top"> ) </td>
1224 <td class="md" nowrap></td>
1230 <table cellspacing="5" cellpadding="0" border="0">
1238 for REP(F3) and REPNE(F2) prefixe on string ops
1243 <a class="anchor" name="gca791f284c852c6ae4c071ba5751d257"></a><!-- doxytag: member="xed-encode.h::xed_encoder_request_set_scale" ref="gca791f284c852c6ae4c071ba5751d257" args="(xed_encoder_request_t *p, xed_uint_t scale)" --><p>
1244 <table class="mdTable" cellpadding="2" cellspacing="0">
1247 <table cellpadding="0" cellspacing="0" border="0">
1249 <td class="md" nowrap valign="top">XED_DLL_EXPORT void xed_encoder_request_set_scale </td>
1250 <td class="md" valign="top">( </td>
1251 <td class="md" nowrap valign="top"><a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> * </td>
1252 <td class="mdname" nowrap> <em>p</em>, </td>
1255 <td class="md" nowrap align="right"></td>
1256 <td class="md"></td>
1257 <td class="md" nowrap><a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> </td>
1258 <td class="mdname" nowrap> <em>scale</em></td>
1261 <td class="md"></td>
1262 <td class="md">) </td>
1263 <td class="md" colspan="2"></td>
1269 <table cellspacing="5" cellpadding="0" border="0">
1280 <a class="anchor" name="g72a43d42aa1c15bba69bcab84439471a"></a><!-- doxytag: member="xed-encode.h::xed_encoder_request_set_seg0" ref="g72a43d42aa1c15bba69bcab84439471a" args="(xed_encoder_request_t *p, xed_reg_enum_t seg_reg)" --><p>
1281 <table class="mdTable" cellpadding="2" cellspacing="0">
1284 <table cellpadding="0" cellspacing="0" border="0">
1286 <td class="md" nowrap valign="top">XED_DLL_EXPORT void xed_encoder_request_set_seg0 </td>
1287 <td class="md" valign="top">( </td>
1288 <td class="md" nowrap valign="top"><a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> * </td>
1289 <td class="mdname" nowrap> <em>p</em>, </td>
1292 <td class="md" nowrap align="right"></td>
1293 <td class="md"></td>
1294 <td class="md" nowrap><a class="el" href="xed-reg-enum_8h.html#f05c33c5a68e9304d1d8ac0408ae3f61">xed_reg_enum_t</a> </td>
1295 <td class="mdname" nowrap> <em>seg_reg</em></td>
1298 <td class="md"></td>
1299 <td class="md">) </td>
1300 <td class="md" colspan="2"></td>
1306 <table cellspacing="5" cellpadding="0" border="0">
1317 <a class="anchor" name="gfb3db0b671837fab077f4db357c7fe04"></a><!-- doxytag: member="xed-encode.h::xed_encoder_request_set_seg1" ref="gfb3db0b671837fab077f4db357c7fe04" args="(xed_encoder_request_t *p, xed_reg_enum_t seg_reg)" --><p>
1318 <table class="mdTable" cellpadding="2" cellspacing="0">
1321 <table cellpadding="0" cellspacing="0" border="0">
1323 <td class="md" nowrap valign="top">XED_DLL_EXPORT void xed_encoder_request_set_seg1 </td>
1324 <td class="md" valign="top">( </td>
1325 <td class="md" nowrap valign="top"><a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> * </td>
1326 <td class="mdname" nowrap> <em>p</em>, </td>
1329 <td class="md" nowrap align="right"></td>
1330 <td class="md"></td>
1331 <td class="md" nowrap><a class="el" href="xed-reg-enum_8h.html#f05c33c5a68e9304d1d8ac0408ae3f61">xed_reg_enum_t</a> </td>
1332 <td class="mdname" nowrap> <em>seg_reg</em></td>
1335 <td class="md"></td>
1336 <td class="md">) </td>
1337 <td class="md" colspan="2"></td>
1343 <table cellspacing="5" cellpadding="0" border="0">
1354 <a class="anchor" name="gf2477dc50a13ec112d7cf3f3fa5c9178"></a><!-- doxytag: member="xed-encode.h::xed_encoder_request_set_simm" ref="gf2477dc50a13ec112d7cf3f3fa5c9178" args="(xed_encoder_request_t *p, xed_int32_t simm, xed_uint_t nbytes)" --><p>
1355 <table class="mdTable" cellpadding="2" cellspacing="0">
1358 <table cellpadding="0" cellspacing="0" border="0">
1360 <td class="md" nowrap valign="top">XED_DLL_EXPORT void xed_encoder_request_set_simm </td>
1361 <td class="md" valign="top">( </td>
1362 <td class="md" nowrap valign="top"><a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> * </td>
1363 <td class="mdname" nowrap> <em>p</em>, </td>
1366 <td class="md" nowrap align="right"></td>
1367 <td class="md"></td>
1368 <td class="md" nowrap>xed_int32_t </td>
1369 <td class="mdname" nowrap> <em>simm</em>, </td>
1372 <td class="md" nowrap align="right"></td>
1373 <td class="md"></td>
1374 <td class="md" nowrap><a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> </td>
1375 <td class="mdname" nowrap> <em>nbytes</em></td>
1378 <td class="md"></td>
1379 <td class="md">) </td>
1380 <td class="md" colspan="2"></td>
1386 <table cellspacing="5" cellpadding="0" border="0">
1394 same storage as uimm0
1399 <a class="anchor" name="g3f3721bb20e64524b475bd5f3d7bd1e0"></a><!-- doxytag: member="xed-encode.h::xed_encoder_request_set_uimm0" ref="g3f3721bb20e64524b475bd5f3d7bd1e0" args="(xed_encoder_request_t *p, xed_uint64_t uimm, xed_uint_t nbytes)" --><p>
1400 <table class="mdTable" cellpadding="2" cellspacing="0">
1403 <table cellpadding="0" cellspacing="0" border="0">
1405 <td class="md" nowrap valign="top">XED_DLL_EXPORT void xed_encoder_request_set_uimm0 </td>
1406 <td class="md" valign="top">( </td>
1407 <td class="md" nowrap valign="top"><a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> * </td>
1408 <td class="mdname" nowrap> <em>p</em>, </td>
1411 <td class="md" nowrap align="right"></td>
1412 <td class="md"></td>
1413 <td class="md" nowrap>xed_uint64_t </td>
1414 <td class="mdname" nowrap> <em>uimm</em>, </td>
1417 <td class="md" nowrap align="right"></td>
1418 <td class="md"></td>
1419 <td class="md" nowrap><a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> </td>
1420 <td class="mdname" nowrap> <em>nbytes</em></td>
1423 <td class="md"></td>
1424 <td class="md">) </td>
1425 <td class="md" colspan="2"></td>
1431 <table cellspacing="5" cellpadding="0" border="0">
1439 Set the uimm0 using a BYTE width.
1444 <a class="anchor" name="g5dcaec413dfefdd6ca2ad179e5a181c9"></a><!-- doxytag: member="xed-encode.h::xed_encoder_request_set_uimm0_bits" ref="g5dcaec413dfefdd6ca2ad179e5a181c9" args="(xed_encoder_request_t *p, xed_uint64_t uimm, xed_uint_t nbits)" --><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 void xed_encoder_request_set_uimm0_bits </td>
1451 <td class="md" valign="top">( </td>
1452 <td class="md" nowrap valign="top"><a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_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>xed_uint64_t </td>
1459 <td class="mdname" nowrap> <em>uimm</em>, </td>
1462 <td class="md" nowrap align="right"></td>
1463 <td class="md"></td>
1464 <td class="md" nowrap><a class="el" href="xed-types_8h.html#0c92e8263b7ca02d8e4826ae5b79bb30">xed_uint_t</a> </td>
1465 <td class="mdname" nowrap> <em>nbits</em></td>
1468 <td class="md"></td>
1469 <td class="md">) </td>
1470 <td class="md" colspan="2"></td>
1476 <table cellspacing="5" cellpadding="0" border="0">
1484 Set the uimm0 using a BIT width.
1489 <a class="anchor" name="g4edd1347ebaceee3811584123b4daa9b"></a><!-- doxytag: member="xed-encode.h::xed_encoder_request_set_uimm1" ref="g4edd1347ebaceee3811584123b4daa9b" args="(xed_encoder_request_t *p, xed_uint8_t uimm)" --><p>
1490 <table class="mdTable" cellpadding="2" cellspacing="0">
1493 <table cellpadding="0" cellspacing="0" border="0">
1495 <td class="md" nowrap valign="top">XED_DLL_EXPORT void xed_encoder_request_set_uimm1 </td>
1496 <td class="md" valign="top">( </td>
1497 <td class="md" nowrap valign="top"><a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> * </td>
1498 <td class="mdname" nowrap> <em>p</em>, </td>
1501 <td class="md" nowrap align="right"></td>
1502 <td class="md"></td>
1503 <td class="md" nowrap>xed_uint8_t </td>
1504 <td class="mdname" nowrap> <em>uimm</em></td>
1507 <td class="md"></td>
1508 <td class="md">) </td>
1509 <td class="md" colspan="2"></td>
1515 <table cellspacing="5" cellpadding="0" border="0">
1526 <a class="anchor" name="g1125aa21681440d97ff3bb9736b0b9ed"></a><!-- doxytag: member="xed-encode.h::xed_encoder_request_zero" ref="g1125aa21681440d97ff3bb9736b0b9ed" args="(xed_encoder_request_t *p)" --><p>
1527 <table class="mdTable" cellpadding="2" cellspacing="0">
1530 <table cellpadding="0" cellspacing="0" border="0">
1532 <td class="md" nowrap valign="top">XED_DLL_EXPORT void xed_encoder_request_zero </td>
1533 <td class="md" valign="top">( </td>
1534 <td class="md" nowrap valign="top"><a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> * </td>
1535 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
1536 <td class="md" valign="top"> ) </td>
1537 <td class="md" nowrap></td>
1543 <table cellspacing="5" cellpadding="0" border="0">
1554 <a class="anchor" name="g483f4ee86b11b94a8d79f309b5388e49"></a><!-- doxytag: member="xed-encode.h::xed_encoder_request_zero_operand_order" ref="g483f4ee86b11b94a8d79f309b5388e49" args="(xed_encoder_request_t *p)" --><p>
1555 <table class="mdTable" cellpadding="2" cellspacing="0">
1558 <table cellpadding="0" cellspacing="0" border="0">
1560 <td class="md" nowrap valign="top">XED_DLL_EXPORT void xed_encoder_request_zero_operand_order </td>
1561 <td class="md" valign="top">( </td>
1562 <td class="md" nowrap valign="top"><a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> * </td>
1563 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
1564 <td class="md" valign="top"> ) </td>
1565 <td class="md" nowrap></td>
1571 <table cellspacing="5" cellpadding="0" border="0">
1579 clear the operand order array <dl compact><dt><b>Parameters:</b></dt><dd>
1580 <table border="0" cellspacing="2" cellpadding="0">
1581 <tr><td valign="top"><tt>[in]</tt> </td><td valign="top"><em>p</em> </td><td>xed_encoder_request_t </td></tr>
1587 <a class="anchor" name="g8a379853ad688ff61de9e73862617e40"></a><!-- doxytag: member="xed-encode.h::xed_encoder_request_zero_set_mode" ref="g8a379853ad688ff61de9e73862617e40" args="(xed_encoder_request_t *p, const xed_state_t *dstate)" --><p>
1588 <table class="mdTable" cellpadding="2" cellspacing="0">
1591 <table cellpadding="0" cellspacing="0" border="0">
1593 <td class="md" nowrap valign="top">XED_DLL_EXPORT void xed_encoder_request_zero_set_mode </td>
1594 <td class="md" valign="top">( </td>
1595 <td class="md" nowrap valign="top"><a class="el" href="group__ENC.html#g6f914541ddfa1ffe609acebff72d0b5f">xed_encoder_request_t</a> * </td>
1596 <td class="mdname" nowrap> <em>p</em>, </td>
1599 <td class="md" nowrap align="right"></td>
1600 <td class="md"></td>
1601 <td class="md" nowrap>const <a class="el" href="group__INIT.html#g58af142456a133c3df29c763216a85cf">xed_state_t</a> * </td>
1602 <td class="mdname" nowrap> <em>dstate</em></td>
1605 <td class="md"></td>
1606 <td class="md">) </td>
1607 <td class="md" colspan="2"></td>
1613 <table cellspacing="5" cellpadding="0" border="0">
1624 <hr size="1"><address style="align: right;"><small>Generated on Thu May 15 03:15:09 2008 for XED2 by
1625 <a href="http://www.doxygen.org/index.html">
1626 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.6 </small></address>