You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

488 lines
27 KiB

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Pin: REG (generic)</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Pin
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">REG (generic)<div class="ingroups"><a class="el" href="group__REG__BASIC__API.html">REG: Register Object</a></div></div> </div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:gaf80ceacaa3a934ad5972e0793427d77b"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__REG__CPU__GENERIC.html#gaf80ceacaa3a934ad5972e0793427d77b">LEVEL_BASE::REG_is_reg</a> (<a class="el" href="group__REG__CPU__IA32.html#ga0f57fb50e80d686a588694f73046f2aa">REG</a> reg)</td></tr>
<tr class="separator:gaf80ceacaa3a934ad5972e0793427d77b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf4703e8d5045dd238b3ebcc957d6d44f"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__REG__CPU__GENERIC.html#gaf4703e8d5045dd238b3ebcc957d6d44f">LEVEL_BASE::REG_is_pseudo</a> (<a class="el" href="group__REG__CPU__IA32.html#ga0f57fb50e80d686a588694f73046f2aa">REG</a> reg)</td></tr>
<tr class="separator:gaf4703e8d5045dd238b3ebcc957d6d44f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9e9222f251798bc4c34c21951b834bef"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__REG__CPU__GENERIC.html#ga9e9222f251798bc4c34c21951b834bef">LEVEL_BASE::REG_is_gr</a> (<a class="el" href="group__REG__CPU__IA32.html#ga0f57fb50e80d686a588694f73046f2aa">REG</a> reg)</td></tr>
<tr class="separator:ga9e9222f251798bc4c34c21951b834bef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9df4771a54d108bf5b25b7b9ff066df7"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__REG__CPU__GENERIC.html#ga9df4771a54d108bf5b25b7b9ff066df7">LEVEL_BASE::REG_is_fr</a> (<a class="el" href="group__REG__CPU__IA32.html#ga0f57fb50e80d686a588694f73046f2aa">REG</a> reg)</td></tr>
<tr class="separator:ga9df4771a54d108bf5b25b7b9ff066df7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga864136a9269b4a41f372930fb99f6331"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__REG__CPU__GENERIC.html#ga864136a9269b4a41f372930fb99f6331">LEVEL_BASE::REG_is_br</a> (<a class="el" href="group__REG__CPU__IA32.html#ga0f57fb50e80d686a588694f73046f2aa">REG</a> reg)</td></tr>
<tr class="separator:ga864136a9269b4a41f372930fb99f6331"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga899144a9da7c31faf924b2531bdfd043"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__REG__CPU__GENERIC.html#ga899144a9da7c31faf924b2531bdfd043">LEVEL_BASE::REG_is_gr64</a> (<a class="el" href="group__REG__CPU__IA32.html#ga0f57fb50e80d686a588694f73046f2aa">REG</a> reg)</td></tr>
<tr class="separator:ga899144a9da7c31faf924b2531bdfd043"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7055a98ab9c731f5298d3121c4680147"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__REG__CPU__GENERIC.html#ga7055a98ab9c731f5298d3121c4680147">LEVEL_BASE::REG_is_gr32</a> (<a class="el" href="group__REG__CPU__IA32.html#ga0f57fb50e80d686a588694f73046f2aa">REG</a> reg)</td></tr>
<tr class="separator:ga7055a98ab9c731f5298d3121c4680147"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9e8002106363717afe345a04d7222eae"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__REG__CPU__GENERIC.html#ga9e8002106363717afe345a04d7222eae">LEVEL_BASE::REG_is_pin_gr32</a> (<a class="el" href="group__REG__CPU__IA32.html#ga0f57fb50e80d686a588694f73046f2aa">REG</a> reg)</td></tr>
<tr class="separator:ga9e8002106363717afe345a04d7222eae"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gafb9f6d1c28a3347ac3d9cdc30057e97c"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__REG__CPU__GENERIC.html#gafb9f6d1c28a3347ac3d9cdc30057e97c">LEVEL_BASE::REG_is_gr16</a> (<a class="el" href="group__REG__CPU__IA32.html#ga0f57fb50e80d686a588694f73046f2aa">REG</a> reg)</td></tr>
<tr class="separator:gafb9f6d1c28a3347ac3d9cdc30057e97c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gacb1662786710c3bc36d06f3c2e81d283"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__REG__CPU__GENERIC.html#gacb1662786710c3bc36d06f3c2e81d283">LEVEL_BASE::REG_is_gr8</a> (<a class="el" href="group__REG__CPU__IA32.html#ga0f57fb50e80d686a588694f73046f2aa">REG</a> reg)</td></tr>
<tr class="separator:gacb1662786710c3bc36d06f3c2e81d283"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga818a7c07d6b5ba00582e9423d8df2765"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__REG__CPU__GENERIC.html#ga818a7c07d6b5ba00582e9423d8df2765">LEVEL_BASE::REG_is_seg</a> (<a class="el" href="group__REG__CPU__IA32.html#ga0f57fb50e80d686a588694f73046f2aa">REG</a> reg)</td></tr>
<tr class="separator:ga818a7c07d6b5ba00582e9423d8df2765"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac37c0b898549b66e3a1996af61ad8b24"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__REG__CPU__GENERIC.html#gac37c0b898549b66e3a1996af61ad8b24">LEVEL_BASE::REG_is_pin_gr</a> (<a class="el" href="group__REG__CPU__IA32.html#ga0f57fb50e80d686a588694f73046f2aa">REG</a> reg)</td></tr>
<tr class="separator:gac37c0b898549b66e3a1996af61ad8b24"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga79d8088435908a802d3065ce71d22789"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__REG__CPU__GENERIC.html#ga79d8088435908a802d3065ce71d22789">LEVEL_BASE::REG_is_pin_gr_half32</a> (<a class="el" href="group__REG__CPU__IA32.html#ga0f57fb50e80d686a588694f73046f2aa">REG</a> reg)</td></tr>
<tr class="separator:ga79d8088435908a802d3065ce71d22789"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaaaa0c78b248ba24359988a2b713760b4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__REG__CPU__IA32.html#ga0f57fb50e80d686a588694f73046f2aa">REG</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__REG__CPU__GENERIC.html#gaaaa0c78b248ba24359988a2b713760b4">LEVEL_BASE::REG_INVALID</a> ()</td></tr>
<tr class="separator:gaaaa0c78b248ba24359988a2b713760b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6943727d6a1cf567d35754720011ae23"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__REG__CPU__GENERIC.html#ga6943727d6a1cf567d35754720011ae23">LEVEL_BASE::REG_valid</a> (<a class="el" href="group__REG__CPU__IA32.html#ga0f57fb50e80d686a588694f73046f2aa">REG</a> reg)</td></tr>
<tr class="separator:ga6943727d6a1cf567d35754720011ae23"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaab70d1853934af8a6978602cd2d24496"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__REG__CPU__GENERIC.html#gaab70d1853934af8a6978602cd2d24496">LEVEL_BASE::REG_is_pin64</a> (<a class="el" href="group__REG__CPU__IA32.html#ga0f57fb50e80d686a588694f73046f2aa">REG</a> reg)</td></tr>
<tr class="separator:gaab70d1853934af8a6978602cd2d24496"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab0bf483b4ebd1284397635de397158ac"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__REG__CPU__IA32.html#ga0f57fb50e80d686a588694f73046f2aa">REG</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__REG__CPU__GENERIC.html#gab0bf483b4ebd1284397635de397158ac">LEVEL_BASE::REG_FullRegName</a> (const <a class="el" href="group__REG__CPU__IA32.html#ga0f57fb50e80d686a588694f73046f2aa">REG</a> reg)</td></tr>
<tr class="separator:gab0bf483b4ebd1284397635de397158ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga44ff31760c2de7aae1d8b4bb0cc06729"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__REG__CPU__GENERIC.html#ga44ff31760c2de7aae1d8b4bb0cc06729">LEVEL_BASE::REG_StringShort</a> (<a class="el" href="group__REG__CPU__IA32.html#ga0f57fb50e80d686a588694f73046f2aa">REG</a> reg)</td></tr>
<tr class="separator:ga44ff31760c2de7aae1d8b4bb0cc06729"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac83862ca36497c4ef0d334f4fe8e1661"><td class="memItemLeft" align="right" valign="top">REG&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__REG__CPU__GENERIC.html#gac83862ca36497c4ef0d334f4fe8e1661">LEVEL_PINCLIENT::PIN_ClaimToolRegister</a> ()</td></tr>
<tr class="separator:gac83862ca36497c4ef0d334f4fe8e1661"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<dl class="section user"><dt>Availability:</dt><dd><b>Mode:</b> JIT &amp; Probe<br />
<b>O/S</b>: Linux &amp; Windows<br />
<b>CPU:</b> All<br />
</dd></dl>
<h2 class="groupheader">Function Documentation</h2>
<a id="gac83862ca36497c4ef0d334f4fe8e1661"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gac83862ca36497c4ef0d334f4fe8e1661">&#9670;&nbsp;</a></span>PIN_ClaimToolRegister()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">REG LEVEL_PINCLIENT::PIN_ClaimToolRegister </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Claim a PIN scratch register for use by this tool.</p>
<p>By using this function to claim scratch registers tools can avoid contention if a tool is composed from different components each of which uses scratch registers. Using this function is to be preferred to directly using the REG_INST_Gn register enumerations.</p>
<p>Note that although this function is available in probe mode, use of Pin scratch registers is not currently supported in probe mode, so this function is useless there.</p>
<dl class="section return"><dt>Returns</dt><dd>A register to be used, or <a class="el" href="group__REG__CPU__GENERIC.html#gaaaa0c78b248ba24359988a2b713760b4">REG_INVALID()</a> if all of the scratch registers available for tool use have been allocated.</dd></dl>
<dl class="section user"><dt>Availability:</dt><dd><b>Mode:</b> JIT &amp; Probe<br />
<b>O/S</b>: Linux, Windows &amp; macOS*<br />
<b>CPU:</b> All<br />
</dd></dl>
</div>
</div>
<a id="gab0bf483b4ebd1284397635de397158ac"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gab0bf483b4ebd1284397635de397158ac">&#9670;&nbsp;</a></span>REG_FullRegName()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="group__REG__CPU__IA32.html#ga0f57fb50e80d686a588694f73046f2aa">REG</a> LEVEL_BASE::REG_FullRegName </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="group__REG__CPU__IA32.html#ga0f57fb50e80d686a588694f73046f2aa">REG</a>&#160;</td>
<td class="paramname"><em>reg</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>If reg is a partial register, return the name of the full register containing it. For example, on IA-32, if reg is REG_AL, the function will return REG_EAX. If reg is a full register, the function returns it unchanged. If reg is not in range of REG enumeration, returns invalid reg. </p>
</div>
</div>
<a id="gaaaa0c78b248ba24359988a2b713760b4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaaaa0c78b248ba24359988a2b713760b4">&#9670;&nbsp;</a></span>REG_INVALID()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="group__REG__CPU__IA32.html#ga0f57fb50e80d686a588694f73046f2aa">REG</a> LEVEL_BASE::REG_INVALID </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Return the invalid register. </p>
</div>
</div>
<a id="ga864136a9269b4a41f372930fb99f6331"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga864136a9269b4a41f372930fb99f6331">&#9670;&nbsp;</a></span>REG_is_br()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">BOOL LEVEL_BASE::REG_is_br </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__REG__CPU__IA32.html#ga0f57fb50e80d686a588694f73046f2aa">REG</a>&#160;</td>
<td class="paramname"><em>reg</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>true if reg is a branch register </dd></dl>
</div>
</div>
<a id="ga9df4771a54d108bf5b25b7b9ff066df7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga9df4771a54d108bf5b25b7b9ff066df7">&#9670;&nbsp;</a></span>REG_is_fr()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">BOOL LEVEL_BASE::REG_is_fr </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__REG__CPU__IA32.html#ga0f57fb50e80d686a588694f73046f2aa">REG</a>&#160;</td>
<td class="paramname"><em>reg</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>true if reg is a floating register </dd></dl>
</div>
</div>
<a id="ga9e9222f251798bc4c34c21951b834bef"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga9e9222f251798bc4c34c21951b834bef">&#9670;&nbsp;</a></span>REG_is_gr()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">BOOL LEVEL_BASE::REG_is_gr </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__REG__CPU__IA32.html#ga0f57fb50e80d686a588694f73046f2aa">REG</a>&#160;</td>
<td class="paramname"><em>reg</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>true if reg is a FULL WIDTH general purpose register </dd></dl>
</div>
</div>
<a id="gafb9f6d1c28a3347ac3d9cdc30057e97c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gafb9f6d1c28a3347ac3d9cdc30057e97c">&#9670;&nbsp;</a></span>REG_is_gr16()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">BOOL LEVEL_BASE::REG_is_gr16 </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__REG__CPU__IA32.html#ga0f57fb50e80d686a588694f73046f2aa">REG</a>&#160;</td>
<td class="paramname"><em>reg</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>true if reg is a 16-bit general purpose register </dd></dl>
</div>
</div>
<a id="ga7055a98ab9c731f5298d3121c4680147"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga7055a98ab9c731f5298d3121c4680147">&#9670;&nbsp;</a></span>REG_is_gr32()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">BOOL LEVEL_BASE::REG_is_gr32 </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__REG__CPU__IA32.html#ga0f57fb50e80d686a588694f73046f2aa">REG</a>&#160;</td>
<td class="paramname"><em>reg</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>true if reg is a 32-bit general purpose register </dd></dl>
</div>
</div>
<a id="ga899144a9da7c31faf924b2531bdfd043"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga899144a9da7c31faf924b2531bdfd043">&#9670;&nbsp;</a></span>REG_is_gr64()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">BOOL LEVEL_BASE::REG_is_gr64 </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__REG__CPU__IA32.html#ga0f57fb50e80d686a588694f73046f2aa">REG</a>&#160;</td>
<td class="paramname"><em>reg</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>true if reg is a 64-bit general purpose register </dd></dl>
</div>
</div>
<a id="gacb1662786710c3bc36d06f3c2e81d283"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gacb1662786710c3bc36d06f3c2e81d283">&#9670;&nbsp;</a></span>REG_is_gr8()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">BOOL LEVEL_BASE::REG_is_gr8 </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__REG__CPU__IA32.html#ga0f57fb50e80d686a588694f73046f2aa">REG</a>&#160;</td>
<td class="paramname"><em>reg</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>true if reg is a 8-bit general purpose register </dd></dl>
</div>
</div>
<a id="gaab70d1853934af8a6978602cd2d24496"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaab70d1853934af8a6978602cd2d24496">&#9670;&nbsp;</a></span>REG_is_pin64()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">BOOL LEVEL_BASE::REG_is_pin64 </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__REG__CPU__IA32.html#ga0f57fb50e80d686a588694f73046f2aa">REG</a>&#160;</td>
<td class="paramname"><em>reg</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>true if reg is a 64-bit pin register </dd></dl>
</div>
</div>
<a id="gac37c0b898549b66e3a1996af61ad8b24"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gac37c0b898549b66e3a1996af61ad8b24">&#9670;&nbsp;</a></span>REG_is_pin_gr()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">BOOL LEVEL_BASE::REG_is_pin_gr </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__REG__CPU__IA32.html#ga0f57fb50e80d686a588694f73046f2aa">REG</a>&#160;</td>
<td class="paramname"><em>reg</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>true if reg is a FULL WIDTH general purpose pin virtual register </dd></dl>
</div>
</div>
<a id="ga9e8002106363717afe345a04d7222eae"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga9e8002106363717afe345a04d7222eae">&#9670;&nbsp;</a></span>REG_is_pin_gr32()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">BOOL LEVEL_BASE::REG_is_pin_gr32 </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__REG__CPU__IA32.html#ga0f57fb50e80d686a588694f73046f2aa">REG</a>&#160;</td>
<td class="paramname"><em>reg</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>true if reg is a 32-bit pin register </dd></dl>
</div>
</div>
<a id="ga79d8088435908a802d3065ce71d22789"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga79d8088435908a802d3065ce71d22789">&#9670;&nbsp;</a></span>REG_is_pin_gr_half32()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">BOOL LEVEL_BASE::REG_is_pin_gr_half32 </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__REG__CPU__IA32.html#ga0f57fb50e80d686a588694f73046f2aa">REG</a>&#160;</td>
<td class="paramname"><em>reg</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>true if reg is a FULL WIDTH general purpose pin virtual register </dd></dl>
</div>
</div>
<a id="gaf4703e8d5045dd238b3ebcc957d6d44f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaf4703e8d5045dd238b3ebcc957d6d44f">&#9670;&nbsp;</a></span>REG_is_pseudo()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">BOOL LEVEL_BASE::REG_is_pseudo </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__REG__CPU__IA32.html#ga0f57fb50e80d686a588694f73046f2aa">REG</a>&#160;</td>
<td class="paramname"><em>reg</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="gaf80ceacaa3a934ad5972e0793427d77b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaf80ceacaa3a934ad5972e0793427d77b">&#9670;&nbsp;</a></span>REG_is_reg()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">BOOL LEVEL_BASE::REG_is_reg </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__REG__CPU__IA32.html#ga0f57fb50e80d686a588694f73046f2aa">REG</a>&#160;</td>
<td class="paramname"><em>reg</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="ga818a7c07d6b5ba00582e9423d8df2765"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga818a7c07d6b5ba00582e9423d8df2765">&#9670;&nbsp;</a></span>REG_is_seg()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">BOOL LEVEL_BASE::REG_is_seg </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__REG__CPU__IA32.html#ga0f57fb50e80d686a588694f73046f2aa">REG</a>&#160;</td>
<td class="paramname"><em>reg</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>true if reg is a segment register </dd></dl>
</div>
</div>
<a id="ga44ff31760c2de7aae1d8b4bb0cc06729"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga44ff31760c2de7aae1d8b4bb0cc06729">&#9670;&nbsp;</a></span>REG_StringShort()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string LEVEL_BASE::REG_StringShort </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__REG__CPU__IA32.html#ga0f57fb50e80d686a588694f73046f2aa">REG</a>&#160;</td>
<td class="paramname"><em>reg</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>convert a REG into a printable string </p>
</div>
</div>
<a id="ga6943727d6a1cf567d35754720011ae23"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga6943727d6a1cf567d35754720011ae23">&#9670;&nbsp;</a></span>REG_valid()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">BOOL LEVEL_BASE::REG_valid </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__REG__CPU__IA32.html#ga0f57fb50e80d686a588694f73046f2aa">REG</a>&#160;</td>
<td class="paramname"><em>reg</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Check if register is valid. </p>
</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.13
</small></address>
</body>
</html>