Sophie

Sophie

distrib > Mageia > 7 > x86_64 > media > nonfree-updates > by-pkgid > b86a85131cc739c1c53d0b55840a4328 > files > 1596

nvidia-cuda-toolkit-devel-10.1.168-1.2.mga7.nonfree.x86_64.rpm

<!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" lang="en-us" xml:lang="en-us">
   <head>
      <meta http-equiv="Content-Type" content="text/html; charset=utf-8"></meta>
      <meta http-equiv="X-UA-Compatible" content="IE=edge"></meta>
      <meta name="copyright" content="(C) Copyright 2005"></meta>
      <meta name="DC.rights.owner" content="(C) Copyright 2005"></meta>
      <meta name="DC.Type" content="cppModule"></meta>
      <meta name="DC.Title" content="DWARF Utilities"></meta>
      <meta name="abstract" content=""></meta>
      <meta name="description" content=""></meta>
      <meta name="DC.Format" content="XHTML"></meta>
      <meta name="DC.Identifier" content="group__DWARF"></meta>
      <link rel="stylesheet" type="text/css" href="../common/formatting/commonltr.css"></link>
      <link rel="stylesheet" type="text/css" href="../common/formatting/site.css"></link>
      <title>Debugger API :: CUDA Toolkit Documentation</title>
      <!--[if lt IE 9]>
      <script src="../common/formatting/html5shiv-printshiv.min.js"></script>
      <![endif]-->
      <script type="text/javascript" charset="utf-8" src="//assets.adobedtm.com/b92787824f2e0e9b68dc2e993f9bd995339fe417/satelliteLib-7ba51e58dc61bcb0e9311aadd02a0108ab24cc6c.js"></script>
      <script type="text/javascript" charset="utf-8" src="../common/formatting/jquery.min.js"></script>
      <script type="text/javascript" charset="utf-8" src="../common/formatting/jquery.ba-hashchange.min.js"></script>
      <script type="text/javascript" charset="utf-8" src="../common/formatting/jquery.scrollintoview.min.js"></script>
      <script type="text/javascript" src="../search/htmlFileList.js"></script>
      <script type="text/javascript" src="../search/htmlFileInfoList.js"></script>
      <script type="text/javascript" src="../search/nwSearchFnt.min.js"></script>
      <script type="text/javascript" src="../search/stemmers/en_stemmer.min.js"></script>
      <script type="text/javascript" src="../search/index-1.js"></script>
      <script type="text/javascript" src="../search/index-2.js"></script>
      <script type="text/javascript" src="../search/index-3.js"></script>
      <link rel="canonical" href="http://docs.nvidia.com/cuda/debugger-api/index.html"></link>
      <link rel="stylesheet" type="text/css" href="../common/formatting/qwcode.highlight.css"></link>
   </head>
   <body>
      
      <header id="header"><span id="company">NVIDIA</span><span id="site-title">CUDA Toolkit Documentation</span><form id="search" method="get" action="search">
            <input type="text" name="search-text"></input><fieldset id="search-location">
               <legend>Search In:</legend>
               <label><input type="radio" name="search-type" value="site"></input>Entire Site</label>
               <label><input type="radio" name="search-type" value="document"></input>Just This Document</label></fieldset>
            <button type="reset">clear search</button>
            <button id="submit" type="submit">search</button></form>
      </header>
      <div id="site-content">
         <nav id="site-nav">
            <div class="category closed"><a href="../index.html" title="The root of the site.">CUDA Toolkit 
                  
                  
                  v10.1.168</a></div>
            <div class="category"><a href="index.html" title="Debugger API">Debugger API</a></div>
            <ul>
               <li>
                  <div class="section-link"><a href="release-notes.html#release-notes">1.&nbsp;Release Notes</a></div>
                  <ul>
                     <li>
                        <div class="section-link"><a href="release-notes.html#about-this-document">1.1.&nbsp;7.0 Release</a></div>
                     </li>
                     <li>
                        <div class="section-link"><a href="release-notes.html#unique_1088301352">1.2.&nbsp;6.5 Release</a></div>
                     </li>
                  </ul>
               </li>
               <li>
                  <div class="section-link"><a href="r_main.html#r_main">2.&nbsp;Introduction</a></div>
                  <ul>
                     <li>
                        <div class="section-link"><a href="r_main.html#r_api">2.1.&nbsp;Debugger API</a></div>
                     </li>
                     <li>
                        <div class="section-link"><a href="r_main.html#r_elf">2.2.&nbsp;ELF and DWARF</a></div>
                     </li>
                     <li>
                        <div class="section-link"><a href="r_main.html#r_abi31">2.3.&nbsp;ABI Support</a></div>
                     </li>
                     <li>
                        <div class="section-link"><a href="r_main.html#r_exceptions31">2.4.&nbsp;Exception Reporting</a></div>
                     </li>
                     <li>
                        <div class="section-link"><a href="r_main.html#r_attach">2.5.&nbsp;Attaching and Detaching</a></div>
                     </li>
                  </ul>
               </li>
               <li>
                  <div class="section-link"><a href="modules.html#modules">3.&nbsp;Modules</a></div>
                  <ul>
                     <li>
                        <div class="section-link"><a href="group__GENERAL.html#group__GENERAL">3.1.&nbsp;General</a></div>
                     </li>
                     <li>
                        <div class="section-link"><a href="group__INIT.html#group__INIT">3.2.&nbsp;Initialization</a></div>
                     </li>
                     <li>
                        <div class="section-link"><a href="group__EXEC.html#group__EXEC">3.3.&nbsp;Device Execution Control</a></div>
                     </li>
                     <li>
                        <div class="section-link"><a href="group__BP.html#group__BP">3.4.&nbsp;Breakpoints</a></div>
                     </li>
                     <li>
                        <div class="section-link"><a href="group__READ.html#group__READ">3.5.&nbsp;Device State Inspection</a></div>
                     </li>
                     <li>
                        <div class="section-link"><a href="group__WRITE.html#group__WRITE">3.6.&nbsp;Device State Alteration</a></div>
                     </li>
                     <li>
                        <div class="section-link"><a href="group__GRID.html#group__GRID">3.7.&nbsp;Grid Properties</a></div>
                     </li>
                     <li>
                        <div class="section-link"><a href="group__DEV.html#group__DEV">3.8.&nbsp;Device Properties</a></div>
                     </li>
                     <li>
                        <div class="section-link"><a href="group__DWARF.html#group__DWARF">3.9.&nbsp;DWARF Utilities</a></div>
                     </li>
                     <li>
                        <div class="section-link"><a href="group__EVENT.html#group__EVENT">3.10.&nbsp;Events</a></div>
                     </li>
                  </ul>
               </li>
               <li>
                  <div class="section-link"><a href="annotated.html#annotated">4.&nbsp;Data Structures</a></div>
                  <ul>
                     <li>
                        <div class="section-link"><a href="structCUDBGAPI__st.html#structCUDBGAPI__st">4.1.&nbsp;CUDBGAPI_st</a></div>
                     </li>
                     <li>
                        <div class="section-link"><a href="structCUDBGEvent.html#structCUDBGEvent">4.2.&nbsp;CUDBGEvent</a></div>
                     </li>
                     <li>
                        <div class="section-link"><a href="unionCUDBGEvent_1_1cases__st.html#unionCUDBGEvent_1_1cases__st">4.3.&nbsp;CUDBGEvent::cases_st</a></div>
                     </li>
                     <li>
                        <div class="section-link"><a href="structCUDBGEvent_1_1cases__st_1_1contextCreate__st.html#structCUDBGEvent_1_1cases__st_1_1contextCreate__st">4.4.&nbsp;CUDBGEvent::cases_st::contextCreate_st</a></div>
                     </li>
                     <li>
                        <div class="section-link"><a href="structCUDBGEvent_1_1cases__st_1_1contextDestroy__st.html#structCUDBGEvent_1_1cases__st_1_1contextDestroy__st">4.5.&nbsp;CUDBGEvent::cases_st::contextDestroy_st</a></div>
                     </li>
                     <li>
                        <div class="section-link"><a href="structCUDBGEvent_1_1cases__st_1_1contextPop__st.html#structCUDBGEvent_1_1cases__st_1_1contextPop__st">4.6.&nbsp;CUDBGEvent::cases_st::contextPop_st</a></div>
                     </li>
                     <li>
                        <div class="section-link"><a href="structCUDBGEvent_1_1cases__st_1_1contextPush__st.html#structCUDBGEvent_1_1cases__st_1_1contextPush__st">4.7.&nbsp;CUDBGEvent::cases_st::contextPush_st</a></div>
                     </li>
                     <li>
                        <div class="section-link"><a href="structCUDBGEvent_1_1cases__st_1_1elfImageLoaded__st.html#structCUDBGEvent_1_1cases__st_1_1elfImageLoaded__st">4.8.&nbsp;CUDBGEvent::cases_st::elfImageLoaded_st</a></div>
                     </li>
                     <li>
                        <div class="section-link"><a href="structCUDBGEvent_1_1cases__st_1_1internalError__st.html#structCUDBGEvent_1_1cases__st_1_1internalError__st">4.9.&nbsp;CUDBGEvent::cases_st::internalError_st</a></div>
                     </li>
                     <li>
                        <div class="section-link"><a href="structCUDBGEvent_1_1cases__st_1_1kernelFinished__st.html#structCUDBGEvent_1_1cases__st_1_1kernelFinished__st">4.10.&nbsp;CUDBGEvent::cases_st::kernelFinished_st</a></div>
                     </li>
                     <li>
                        <div class="section-link"><a href="structCUDBGEvent_1_1cases__st_1_1kernelReady__st.html#structCUDBGEvent_1_1cases__st_1_1kernelReady__st">4.11.&nbsp;CUDBGEvent::cases_st::kernelReady_st</a></div>
                     </li>
                     <li>
                        <div class="section-link"><a href="structCUDBGEventCallbackData.html#structCUDBGEventCallbackData">4.12.&nbsp;CUDBGEventCallbackData</a></div>
                     </li>
                     <li>
                        <div class="section-link"><a href="structCUDBGEventCallbackData40.html#structCUDBGEventCallbackData40">4.13.&nbsp;CUDBGEventCallbackData40</a></div>
                     </li>
                     <li>
                        <div class="section-link"><a href="structCUDBGGridInfo.html#structCUDBGGridInfo">4.14.&nbsp;CUDBGGridInfo</a></div>
                     </li>
                  </ul>
               </li>
               <li>
                  <div class="section-link"><a href="functions.html#functions">5.&nbsp;Data Fields</a></div>
               </li>
               <li>
                  <div class="section-link"><a href="deprecated.html#deprecated">6.&nbsp;Deprecated List</a></div>
               </li>
               <li>
                  <div class="section-link"><a href="notices-header.html#notices-header">Notices</a></div>
                  <ul></ul>
               </li>
            </ul>
         </nav>
         <div id="resize-nav"></div>
         <nav id="search-results">
            <h2>Search Results</h2>
            <ol></ol>
         </nav>
         
         <div id="contents-container">
            <div id="breadcrumbs-container">
               <div id="breadcrumbs"><a href="group__DEV.html" shape="rect">&lt; Previous</a> | <a href="group__EVENT.html" shape="rect">Next &gt;</a></div>
               <div id="release-info">Debugger API
                  (<a href="../../pdf/CUDA_Debugger_API.pdf">PDF</a>)
                  -
                   
                  
                  
                  v10.1.168
                  (<a href="https://developer.nvidia.com/cuda-toolkit-archive">older</a>)
                  -
                  Last updated April 24, 2019
                  -
                  <a href="mailto:CUDAIssues@nvidia.com?subject=CUDA Toolkit Documentation Feedback: Debugger API">Send Feedback</a></div>
            </div>
            <article id="contents">
               <div class="topic reference apiRef apiPackage cppModule" id="group__DWARF"><a name="group__DWARF" shape="rect">
                     <!-- --></a><h2 class="topictitle2 cppModule">3.9.&nbsp;DWARF Utilities</h2>
                  <div class="section">
                     <p></p>
                  </div>
                  <h3 class="fake_sectiontitle member_header">Variables</h3>
                  <dl class="members">
                     <dt><span class="member_type"><a href="group__GENERAL.html#group__GENERAL_1gb6db1f210c2e621fabb0820e8cee28ce" title="Result values of all the API routines. " shape="rect">CUDBGResult</a>
                           &nbsp;</span><span class="member_name">( *<a href="#group__DWARF_1g80726303817744dc098f79fde1e4b1b8" shape="rect">CUDBGAPI_st::disassemble</a> )(  uint32_t<span>&nbsp;</span><span class="keyword keyword apiItemName">dev</span>, uint64_t<span>&nbsp;</span><span class="keyword keyword apiItemName">addr</span>, uint32_t*<span>&nbsp;</span><span class="keyword keyword apiItemName">instSize</span>, char*<span>&nbsp;</span><span class="keyword keyword apiItemName">buf</span>, uint32_t<span>&nbsp;</span><span class="keyword keyword apiItemName">sz</span> )</span></dt>
                     <dd class="shortdesc"><span></span><span class="desc">Disassemble instruction at instruction address. </span></dd>
                     <dt><span class="member_type"><a href="group__GENERAL.html#group__GENERAL_1gb6db1f210c2e621fabb0820e8cee28ce" title="Result values of all the API routines. " shape="rect">CUDBGResult</a>
                           &nbsp;</span><span class="member_name">( *<a href="#group__DWARF_1gb5bc313ab611a302aa214a94a960067e" shape="rect">CUDBGAPI_st::getElfImageByHandle</a> )(  uint32_t<span>&nbsp;</span><span class="keyword keyword apiItemName">devId</span>, uint64_t<span>&nbsp;</span><span class="keyword keyword apiItemName">handle</span>, CUDBGElfImageType<span>&nbsp;</span><span class="keyword keyword apiItemName">type</span>, void*<span>&nbsp;</span><span class="keyword keyword apiItemName">elfImage</span>, uint64_t<span>&nbsp;</span><span class="keyword keyword apiItemName">size</span> )</span></dt>
                     <dd class="shortdesc"><span></span><span class="desc">Get the relocated or non-relocated ELF image for the given handle on the given device. </span></dd>
                     <dt><span class="member_type"><a href="group__GENERAL.html#group__GENERAL_1gb6db1f210c2e621fabb0820e8cee28ce" title="Result values of all the API routines. " shape="rect">CUDBGResult</a>
                           &nbsp;</span><span class="member_name">( *<a href="#group__DWARF_1g833c1562f67f05c9fbdd58ec417d01cc" shape="rect">CUDBGAPI_st::getHostAddrFromDeviceAddr</a> )(  uint32_t<span>&nbsp;</span><span class="keyword keyword apiItemName">dev</span>, uint64_t<span>&nbsp;</span><span class="keyword keyword apiItemName">device_addr</span>, uint64_t*<span>&nbsp;</span><span class="keyword keyword apiItemName">host_addr</span> )</span></dt>
                     <dd class="shortdesc"><span></span><span class="desc">given a device virtual address, return a corresponding system memory virtual address. </span></dd>
                     <dt><span class="member_type"><a href="group__GENERAL.html#group__GENERAL_1gb6db1f210c2e621fabb0820e8cee28ce" title="Result values of all the API routines. " shape="rect">CUDBGResult</a>
                           &nbsp;</span><span class="member_name">( *<a href="#group__DWARF_1g026307b7c5c90f07094fb8c20116f1f1" shape="rect">CUDBGAPI_st::getPhysicalRegister30</a> )(  uint64_t<span>&nbsp;</span><span class="keyword keyword apiItemName">pc</span>, char*<span>&nbsp;</span><span class="keyword keyword apiItemName">reg</span>, uint32_t*<span>&nbsp;</span><span class="keyword keyword apiItemName">buf</span>, uint32_t<span>&nbsp;</span><span class="keyword keyword apiItemName">sz</span>, uint32_t*<span>&nbsp;</span><span class="keyword keyword apiItemName">numPhysRegs</span>, CUDBGRegClass*<span>&nbsp;</span><span class="keyword keyword apiItemName">regClass</span> )</span></dt>
                     <dd class="shortdesc"><span></span><span class="desc">Get the physical register number(s) assigned to a virtual register name 'reg' at a given PC, if 'reg' is live at that PC.
                           </span></dd>
                     <dt><span class="member_type"><a href="group__GENERAL.html#group__GENERAL_1gb6db1f210c2e621fabb0820e8cee28ce" title="Result values of all the API routines. " shape="rect">CUDBGResult</a>
                           &nbsp;</span><span class="member_name">( *<a href="#group__DWARF_1g754fb566179e807136f6d9571497fa18" shape="rect">CUDBGAPI_st::getPhysicalRegister40</a> )(  uint32_t<span>&nbsp;</span><span class="keyword keyword apiItemName">dev</span>, uint32_t<span>&nbsp;</span><span class="keyword keyword apiItemName">sm</span>, uint32_t<span>&nbsp;</span><span class="keyword keyword apiItemName">wp</span>, uint64_t<span>&nbsp;</span><span class="keyword keyword apiItemName">pc</span>, char*<span>&nbsp;</span><span class="keyword keyword apiItemName">reg</span>, uint32_t*<span>&nbsp;</span><span class="keyword keyword apiItemName">buf</span>, uint32_t<span>&nbsp;</span><span class="keyword keyword apiItemName">sz</span>, uint32_t*<span>&nbsp;</span><span class="keyword keyword apiItemName">numPhysRegs</span>, CUDBGRegClass*<span>&nbsp;</span><span class="keyword keyword apiItemName">regClass</span> )</span></dt>
                     <dd class="shortdesc"><span></span><span class="desc">Get the physical register number(s) assigned to a virtual register name 'reg' at a given PC, if 'reg' is live at that PC.
                           </span></dd>
                     <dt><span class="member_type"><a href="group__GENERAL.html#group__GENERAL_1gb6db1f210c2e621fabb0820e8cee28ce" title="Result values of all the API routines. " shape="rect">CUDBGResult</a>
                           &nbsp;</span><span class="member_name">( *<a href="#group__DWARF_1gb590b6e4de3fba2f134f304b4fe201ce" shape="rect">CUDBGAPI_st::isDeviceCodeAddress</a> )(  uintptr_t<span>&nbsp;</span><span class="keyword keyword apiItemName">addr</span>, bool*<span>&nbsp;</span><span class="keyword keyword apiItemName">isDeviceAddress</span> )</span></dt>
                     <dd class="shortdesc"><span></span><span class="desc">Determines whether a virtual address resides within device code. </span></dd>
                     <dt><span class="member_type"><a href="group__GENERAL.html#group__GENERAL_1gb6db1f210c2e621fabb0820e8cee28ce" title="Result values of all the API routines. " shape="rect">CUDBGResult</a>
                           &nbsp;</span><span class="member_name">( *<a href="#group__DWARF_1ga8c708428aeed1f270b90168d9455b1b" shape="rect">CUDBGAPI_st::isDeviceCodeAddress55</a> )(  uintptr_t<span>&nbsp;</span><span class="keyword keyword apiItemName">addr</span>, bool*<span>&nbsp;</span><span class="keyword keyword apiItemName">isDeviceAddress</span> )</span></dt>
                     <dd class="shortdesc"><span></span><span class="desc">Determines whether a virtual address resides within device code. This API is strongly deprecated. Use CUDBGAPI_st::isDeviceCodeAddress
                           instead. </span></dd>
                     <dt><span class="member_type"><a href="group__GENERAL.html#group__GENERAL_1gb6db1f210c2e621fabb0820e8cee28ce" title="Result values of all the API routines. " shape="rect">CUDBGResult</a>
                           &nbsp;</span><span class="member_name">( *<a href="#group__DWARF_1gee489c2a457b29a1aa213cda4168b2ba" shape="rect">CUDBGAPI_st::lookupDeviceCodeSymbol</a> )(  char*<span>&nbsp;</span><span class="keyword keyword apiItemName">symName</span>, bool*<span>&nbsp;</span><span class="keyword keyword apiItemName">symFound</span>, uintptr_t*<span>&nbsp;</span><span class="keyword keyword apiItemName">symAddr</span> )</span></dt>
                     <dd class="shortdesc"><span></span><span class="desc">Determines whether a symbol represents a function in device code and returns its virtual address. </span></dd>
                  </dl>
                  <div class="description">
                     <h3 class="sectiontitle">Variables</h3>
                     <dl class="description">
                        <dt class="description"><a name="group__DWARF_1g80726303817744dc098f79fde1e4b1b8" id="group__DWARF_1g80726303817744dc098f79fde1e4b1b8" shape="rect">
                              <!-- --></a><span><a href="group__GENERAL.html#group__GENERAL_1gb6db1f210c2e621fabb0820e8cee28ce" title="Result values of all the API routines. " shape="rect">CUDBGResult</a>
                              ( *CUDBGAPI_st::disassemble )(  uint32_t<span>&nbsp;</span><span class="keyword keyword apiItemName">dev</span>, uint64_t<span>&nbsp;</span><span class="keyword keyword apiItemName">addr</span>, uint32_t*<span>&nbsp;</span><span class="keyword keyword apiItemName">instSize</span>, char*<span>&nbsp;</span><span class="keyword keyword apiItemName">buf</span>, uint32_t<span>&nbsp;</span><span class="keyword keyword apiItemName">sz</span> )</span></dt>
                        <dd class="description">
                           <div class="section">
                              <p>Disassemble instruction at instruction address.  Since CUDA 3.0.</p>
                              <p class="p"></p>
                              <p class="p"></p>
                           </div>
                           <div class="section">
                              <h6 class="parameter_header">
                                 Parameters
                                 
                              </h6>
                              <dl class="table-display-params">
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">dev</span></tt></dt>
                                 <dd>- device index </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">addr</span></tt></dt>
                                 <dd>- instruction address </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">instSize</span></tt></dt>
                                 <dd>- instruction size (32 or 64 bits) </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">buf</span></tt></dt>
                                 <dd>- disassembled instruction buffer </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">sz</span></tt></dt>
                                 <dd>- disassembled instruction buffer size</dd>
                              </dl>
                           </div>
                           <div class="section">
                              <h6 class="return_header">Returns</h6>
                              <p class="return">CUDBG_SUCCESS, CUDBG_ERROR_INVALID_ARGS, CUDBG_ERROR_INVALID_DEVICE, CUDBG_ERROR_UNKNOWN </p>
                           </div>
                        </dd>
                        <dt class="description"><a name="group__DWARF_1gb5bc313ab611a302aa214a94a960067e" id="group__DWARF_1gb5bc313ab611a302aa214a94a960067e" shape="rect">
                              <!-- --></a><span><a href="group__GENERAL.html#group__GENERAL_1gb6db1f210c2e621fabb0820e8cee28ce" title="Result values of all the API routines. " shape="rect">CUDBGResult</a>
                              ( *CUDBGAPI_st::getElfImageByHandle )(  uint32_t<span>&nbsp;</span><span class="keyword keyword apiItemName">devId</span>, uint64_t<span>&nbsp;</span><span class="keyword keyword apiItemName">handle</span>, CUDBGElfImageType<span>&nbsp;</span><span class="keyword keyword apiItemName">type</span>, void*<span>&nbsp;</span><span class="keyword keyword apiItemName">elfImage</span>, uint64_t<span>&nbsp;</span><span class="keyword keyword apiItemName">size</span> )</span></dt>
                        <dd class="description">
                           <div class="section">
                              <p>Get the relocated or non-relocated ELF image for the given handle on the given device.  The handle is provided in the ELF
                                 Image Loaded notification event.
                              </p>
                              <p class="p">Since CUDA 6.0.</p>
                              <p class="p"></p>
                              <p class="p"></p>
                           </div>
                           <div class="section">
                              <h6 class="parameter_header">
                                 Parameters
                                 
                              </h6>
                              <dl class="table-display-params">
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">devId</span></tt></dt>
                                 <dd>- device index </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">handle</span></tt></dt>
                                 <dd>- elf image handle </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">type</span></tt></dt>
                                 <dd>- type of the requested ELF image </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">elfImage</span></tt></dt>
                                 <dd>- pointer to the ELF image </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">size</span></tt></dt>
                                 <dd></dd>
                              </dl>
                           </div>
                           <div class="section">
                              <h6 class="return_header">Returns</h6>
                              <p class="return">CUDBG_SUCCESS, CUDBG_ERROR_INVALID_ARGS, CUDBG_ERROR_INVALID_DEVICE, CUDBG_ERROR_UNINITIALIZED </p>
                           </div>
                        </dd>
                        <dt class="description"><a name="group__DWARF_1g833c1562f67f05c9fbdd58ec417d01cc" id="group__DWARF_1g833c1562f67f05c9fbdd58ec417d01cc" shape="rect">
                              <!-- --></a><span><a href="group__GENERAL.html#group__GENERAL_1gb6db1f210c2e621fabb0820e8cee28ce" title="Result values of all the API routines. " shape="rect">CUDBGResult</a>
                              ( *CUDBGAPI_st::getHostAddrFromDeviceAddr )(  uint32_t<span>&nbsp;</span><span class="keyword keyword apiItemName">dev</span>, uint64_t<span>&nbsp;</span><span class="keyword keyword apiItemName">device_addr</span>, uint64_t*<span>&nbsp;</span><span class="keyword keyword apiItemName">host_addr</span> )</span></dt>
                        <dd class="description">
                           <div class="section">
                              <p>given a device virtual address, return a corresponding system memory virtual address.  Since CUDA 4.1.</p>
                              <p class="p"></p>
                              <p class="p"></p>
                              <p class="p apiDesc_subtitle"><strong class="ph b">See also:</strong></p>
                              <p class="p see_subsection"><a class="xref" href="group__READ.html#group__READ_1g132516a9f3750484f299d36328f6bf49" title="Reads content at an address in the generic address space. This function determines if the given address falls into the local, shared, or global memory window. It then accesses memory taking into account the hardware co-ordinates provided as inputs." shape="rect">readGenericMemory</a></p>
                              <p class="p see_subsection"><a class="xref" href="group__WRITE.html#group__WRITE_1gf5e9ec0bda0f5cbdd7135603a5987398" title="Writes content to an address in the generic address space. This function determines if the given address falls into the local, shared, or global memory window. It then accesses memory taking into account the hardware co-ordinates provided as inputs." shape="rect">writeGenericMemory</a></p>
                              <p class="p see_subsection"></p>
                              <p class="p"></p>
                           </div>
                           <div class="section">
                              <h6 class="parameter_header">
                                 Parameters
                                 
                              </h6>
                              <dl class="table-display-params">
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">dev</span></tt></dt>
                                 <dd>- device index </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">device_addr</span></tt></dt>
                                 <dd>- device memory address </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">host_addr</span></tt></dt>
                                 <dd>- returned system memory address</dd>
                              </dl>
                           </div>
                           <div class="section">
                              <h6 class="return_header">Returns</h6>
                              <p class="return">CUDBG_SUCCESS, CUDBG_ERROR_INVALID_ARGS, CUDBG_ERROR_INVALID_DEVICE, CUDBG_ERROR_INVALID_CONTEXT, CUDBG_ERROR_INVALID_MEMORY_SEGMENT</p>
                           </div>
                        </dd>
                        <dt class="description"><a name="group__DWARF_1g026307b7c5c90f07094fb8c20116f1f1" id="group__DWARF_1g026307b7c5c90f07094fb8c20116f1f1" shape="rect">
                              <!-- --></a><span><a href="group__GENERAL.html#group__GENERAL_1gb6db1f210c2e621fabb0820e8cee28ce" title="Result values of all the API routines. " shape="rect">CUDBGResult</a>
                              ( *CUDBGAPI_st::getPhysicalRegister30 )(  uint64_t<span>&nbsp;</span><span class="keyword keyword apiItemName">pc</span>, char*<span>&nbsp;</span><span class="keyword keyword apiItemName">reg</span>, uint32_t*<span>&nbsp;</span><span class="keyword keyword apiItemName">buf</span>, uint32_t<span>&nbsp;</span><span class="keyword keyword apiItemName">sz</span>, uint32_t*<span>&nbsp;</span><span class="keyword keyword apiItemName">numPhysRegs</span>, CUDBGRegClass*<span>&nbsp;</span><span class="keyword keyword apiItemName">regClass</span> )</span></dt>
                        <dd class="description">
                           <div class="section">
                              <p>Get the physical register number(s) assigned to a virtual register name 'reg' at a given PC, if 'reg' is live at that PC.
                                 Since CUDA 3.0.
                              </p>
                              <p class="p"></p>
                              <p class="p"></p>
                              <p class="p"></p>
                           </div>
                           <div class="section">
                              <h6 class="parameter_header">
                                 Parameters
                                 
                              </h6>
                              <dl class="table-display-params">
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">pc</span></tt></dt>
                                 <dd>- Program counter </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">reg</span></tt></dt>
                                 <dd>- virtual register index </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">buf</span></tt></dt>
                                 <dd>- physical register name(s) </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">sz</span></tt></dt>
                                 <dd>- the physical register name buffer size </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">numPhysRegs</span></tt></dt>
                                 <dd>- number of physical register names returned </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">regClass</span></tt></dt>
                                 <dd>- the class of the physical registers</dd>
                              </dl>
                           </div>
                           <div class="section">
                              <h6 class="return_header">Returns</h6>
                              <p class="return">CUDBG_SUCCESS, CUDBG_ERROR_INVALID_ARGS, CUDBG_ERROR_UKNOWN_FUNCTION, CUDBG_ERROR_UNKNOWN </p>
                           </div>
                        </dd>
                        <dt class="description"><a name="group__DWARF_1g754fb566179e807136f6d9571497fa18" id="group__DWARF_1g754fb566179e807136f6d9571497fa18" shape="rect">
                              <!-- --></a><span><a href="group__GENERAL.html#group__GENERAL_1gb6db1f210c2e621fabb0820e8cee28ce" title="Result values of all the API routines. " shape="rect">CUDBGResult</a>
                              ( *CUDBGAPI_st::getPhysicalRegister40 )(  uint32_t<span>&nbsp;</span><span class="keyword keyword apiItemName">dev</span>, uint32_t<span>&nbsp;</span><span class="keyword keyword apiItemName">sm</span>, uint32_t<span>&nbsp;</span><span class="keyword keyword apiItemName">wp</span>, uint64_t<span>&nbsp;</span><span class="keyword keyword apiItemName">pc</span>, char*<span>&nbsp;</span><span class="keyword keyword apiItemName">reg</span>, uint32_t*<span>&nbsp;</span><span class="keyword keyword apiItemName">buf</span>, uint32_t<span>&nbsp;</span><span class="keyword keyword apiItemName">sz</span>, uint32_t*<span>&nbsp;</span><span class="keyword keyword apiItemName">numPhysRegs</span>, CUDBGRegClass*<span>&nbsp;</span><span class="keyword keyword apiItemName">regClass</span> )</span></dt>
                        <dd class="description">
                           <div class="section">
                              <p>Get the physical register number(s) assigned to a virtual register name 'reg' at a given PC, if 'reg' is live at that PC.
                                 Get the physical register number(s) assigned to a virtual register name 'reg' at a given PC, if 'reg' is live at that PC.
                                 If a virtual register name is mapped to more than one physical register, the physical register with the lowest physical register
                                 index will contain the highest bits of the virtual register, and the physical register with the highest physical register
                                 index will contain the lowest bits.
                              </p>
                              <p class="p">Since CUDA 3.1.</p>
                              <p class="p"></p>
                              <p class="p"></p>
                              <p class="p"></p>
                           </div>
                           <div class="section">
                              <h6 class="parameter_header">
                                 Parameters
                                 
                              </h6>
                              <dl class="table-display-params">
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">dev</span></tt></dt>
                                 <dd>- device index </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">sm</span></tt></dt>
                                 <dd>- SM index </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">wp</span></tt></dt>
                                 <dd>- warp indx </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">pc</span></tt></dt>
                                 <dd>- Program counter </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">reg</span></tt></dt>
                                 <dd>- virtual register index </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">buf</span></tt></dt>
                                 <dd>- physical register name(s) </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">sz</span></tt></dt>
                                 <dd>- the physical register name buffer size </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">numPhysRegs</span></tt></dt>
                                 <dd>- number of physical register names returned </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">regClass</span></tt></dt>
                                 <dd>- the class of the physical registers</dd>
                              </dl>
                           </div>
                           <div class="section">
                              <h6 class="return_header">Returns</h6>
                              <p class="return">CUDBG_SUCCESS, CUDBG_ERROR_INVALID_ARGS, CUDBG_ERROR_UKNOWN_FUNCTION, CUDBG_ERROR_UNKNOWN </p>
                           </div>
                        </dd>
                        <dt class="description"><a name="group__DWARF_1gb590b6e4de3fba2f134f304b4fe201ce" id="group__DWARF_1gb590b6e4de3fba2f134f304b4fe201ce" shape="rect">
                              <!-- --></a><span><a href="group__GENERAL.html#group__GENERAL_1gb6db1f210c2e621fabb0820e8cee28ce" title="Result values of all the API routines. " shape="rect">CUDBGResult</a>
                              ( *CUDBGAPI_st::isDeviceCodeAddress )(  uintptr_t<span>&nbsp;</span><span class="keyword keyword apiItemName">addr</span>, bool*<span>&nbsp;</span><span class="keyword keyword apiItemName">isDeviceAddress</span> )</span></dt>
                        <dd class="description">
                           <div class="section">
                              <p>Determines whether a virtual address resides within device code.  Since CUDA 3.0.</p>
                              <p class="p"></p>
                              <p class="p"></p>
                           </div>
                           <div class="section">
                              <h6 class="parameter_header">
                                 Parameters
                                 
                              </h6>
                              <dl class="table-display-params">
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">addr</span></tt></dt>
                                 <dd>- virtual address </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">isDeviceAddress</span></tt></dt>
                                 <dd>- true if address resides within device code</dd>
                              </dl>
                           </div>
                           <div class="section">
                              <h6 class="return_header">Returns</h6>
                              <p class="return">CUDBG_ERROR_INVALID_ARGS, CUDBG_ERROR_UNINITIALIZED, CUDBG_SUCCESS </p>
                           </div>
                        </dd>
                        <dt class="description"><a name="group__DWARF_1ga8c708428aeed1f270b90168d9455b1b" id="group__DWARF_1ga8c708428aeed1f270b90168d9455b1b" shape="rect">
                              <!-- --></a><span><a href="group__GENERAL.html#group__GENERAL_1gb6db1f210c2e621fabb0820e8cee28ce" title="Result values of all the API routines. " shape="rect">CUDBGResult</a>
                              ( *CUDBGAPI_st::isDeviceCodeAddress55 )(  uintptr_t<span>&nbsp;</span><span class="keyword keyword apiItemName">addr</span>, bool*<span>&nbsp;</span><span class="keyword keyword apiItemName">isDeviceAddress</span> )</span></dt>
                        <dd class="description">
                           <div class="section">
                              <p>Determines whether a virtual address resides within device code. This API is strongly deprecated. Use CUDBGAPI_st::isDeviceCodeAddress
                                 instead.  Since CUDA 3.0.
                              </p>
                              <p class="p"></p>
                              <p class="p"></p>
                              <p class="p"></p>
                           </div>
                           <div class="section">
                              <h6 class="parameter_header">
                                 Parameters
                                 
                              </h6>
                              <dl class="table-display-params">
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">addr</span></tt></dt>
                                 <dd>- virtual address </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">isDeviceAddress</span></tt></dt>
                                 <dd>- true if address resides within device code</dd>
                              </dl>
                           </div>
                           <div class="section">
                              <h6 class="return_header">Returns</h6>
                              <p class="return">CUDBG_ERROR_INVALID_ARGS, CUDBG_ERROR_UNINITIALIZED, CUDBG_SUCCESS </p>
                           </div>
                        </dd>
                        <dt class="description"><a name="group__DWARF_1gee489c2a457b29a1aa213cda4168b2ba" id="group__DWARF_1gee489c2a457b29a1aa213cda4168b2ba" shape="rect">
                              <!-- --></a><span><a href="group__GENERAL.html#group__GENERAL_1gb6db1f210c2e621fabb0820e8cee28ce" title="Result values of all the API routines. " shape="rect">CUDBGResult</a>
                              ( *CUDBGAPI_st::lookupDeviceCodeSymbol )(  char*<span>&nbsp;</span><span class="keyword keyword apiItemName">symName</span>, bool*<span>&nbsp;</span><span class="keyword keyword apiItemName">symFound</span>, uintptr_t*<span>&nbsp;</span><span class="keyword keyword apiItemName">symAddr</span> )</span></dt>
                        <dd class="description">
                           <div class="section">
                              <p>Determines whether a symbol represents a function in device code and returns its virtual address.  Since CUDA 3.0.</p>
                              <p class="p"></p>
                              <p class="p"></p>
                           </div>
                           <div class="section">
                              <h6 class="parameter_header">
                                 Parameters
                                 
                              </h6>
                              <dl class="table-display-params">
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">symName</span></tt></dt>
                                 <dd>- symbol name </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">symFound</span></tt></dt>
                                 <dd>- set to true if the symbol is found </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">symAddr</span></tt></dt>
                                 <dd>- the symbol virtual address if found</dd>
                              </dl>
                           </div>
                           <div class="section">
                              <h6 class="return_header">Returns</h6>
                              <p class="return">CUDBG_ERROR_INVALID_ARGS, CUDBG_ERROR_UNINITIALIZED, CUDBG_SUCCESS </p>
                           </div>
                        </dd>
                     </dl>
                  </div>
               </div>
               
               <hr id="contents-end"></hr>
               
            </article>
         </div>
      </div>
      <script language="JavaScript" type="text/javascript" charset="utf-8" src="../common/formatting/common.min.js"></script>
      <script language="JavaScript" type="text/javascript" charset="utf-8" src="../common/scripts/google-analytics/google-analytics-write.js"></script>
      <script language="JavaScript" type="text/javascript" charset="utf-8" src="../common/scripts/google-analytics/google-analytics-tracker.js"></script>
      <script type="text/javascript">var switchTo5x=true;</script><script type="text/javascript" src="http://w.sharethis.com/button/buttons.js"></script><script type="text/javascript">stLight.options({publisher: "998dc202-a267-4d8e-bce9-14debadb8d92", doNotHash: false, doNotCopy: false, hashAddressBar: false});</script><script type="text/javascript">_satellite.pageBottom();</script></body>
</html>