207 lines
35 KiB
HTML
207 lines
35 KiB
HTML
<!-- HTML header for doxygen 1.9.1-->
|
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.15.0"/>
|
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
|
<title>L4Re Operating System Framework: l4/util/atomic.h File Reference</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="navtree.css" rel="stylesheet" type="text/css"/>
|
|
<script type="text/javascript" src="navtreedata.js"></script>
|
|
<script type="text/javascript" src="navtree.js"></script>
|
|
<script type="text/javascript" src="cookie.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" />
|
|
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
|
|
<link href="l4re-awesome.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="projectlogo"><img alt="Logo" src="L4Re_rgb_logo_quer_hg_h55.png"/></td>
|
|
<td id="projectalign" style="padding-left: 0.5em;">
|
|
<div id="projectname">L4Re Operating System Framework
|
|
</div>
|
|
<div id="projectbrief">Interface and Usage Documentation</div>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
<!-- end header part -->
|
|
<!-- Generated by Doxygen 1.15.0 -->
|
|
<script type="text/javascript">
|
|
var searchBox = new SearchBox("searchBox", "search/",'.html');
|
|
</script>
|
|
<script type="text/javascript">
|
|
$(function() { codefold.init(); });
|
|
</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',true);
|
|
$(function() { init_search(); });
|
|
});
|
|
</script>
|
|
<div id="main-nav"></div>
|
|
</div><!-- top -->
|
|
<div id="side-nav" class="ui-resizable side-nav-resizable">
|
|
<div id="nav-tree">
|
|
<div id="nav-tree-contents">
|
|
<div id="nav-sync" class="sync"></div>
|
|
</div>
|
|
</div>
|
|
<div id="splitbar" style="-moz-user-select:none;"
|
|
class="ui-resizable-handle">
|
|
</div>
|
|
</div>
|
|
<script type="text/javascript">
|
|
$(function(){initNavTree('l4_2util_2atomic_8h.html','',''); });
|
|
</script>
|
|
<div id="container">
|
|
<div id="doc-content">
|
|
<!-- 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">
|
|
<div id="MSearchResults">
|
|
<div class="SRPage">
|
|
<div id="SRIndex">
|
|
<div id="SRResults"></div>
|
|
<div class="SRStatus" id="Loading">Loading...</div>
|
|
<div class="SRStatus" id="Searching">Searching...</div>
|
|
<div class="SRStatus" id="NoMatches">No Matches</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="header">
|
|
<div class="headertitle"><div class="title">atomic.h File Reference<div class="ingroups"><a class="el" href="group__l4util__api.html">Utility Functions</a> » <a class="el" href="group__l4util__atomic.html">Atomic Instructions</a></div></div></div>
|
|
</div><!--header-->
|
|
<div class="contents">
|
|
|
|
<p>atomic operations header and generic implementations
|
|
<a href="#details">More...</a></p>
|
|
<div class="textblock"><code>#include <<a class="el" href="l4_2sys_2l4int_8h_source.html">l4/sys/l4int.h</a>></code><br />
|
|
<code>#include <<a class="el" href="compiler_8h_source.html">l4/sys/compiler.h</a>></code><br />
|
|
</div><div class="textblock"><div id="dynsection-0" onclick="return dynsection.toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;"><span class="dynarrow"><span class="arrowhead closed"></span></span>Include dependency graph for atomic.h:</div>
|
|
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
|
|
</div>
|
|
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
|
|
<div class="center"><iframe scrolling="no" loading="lazy" frameborder="0" src="l4_2util_2atomic_8h__incl.svg" width="272" height="183"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
|
|
</div>
|
|
</div><div class="textblock"><div id="dynsection-1" onclick="return dynsection.toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;"><span class="dynarrow"><span class="arrowhead closed"></span></span>This graph shows which files directly or indirectly include this file:</div>
|
|
<div id="dynsection-1-summary" class="dynsummary" style="display:block;">
|
|
</div>
|
|
<div id="dynsection-1-content" class="dyncontent" style="display:none;">
|
|
<div class="center"><iframe scrolling="no" loading="lazy" frameborder="0" src="l4_2util_2atomic_8h__dep__incl.svg" width="539" height="286"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
|
|
</div>
|
|
</div>
|
|
<p><a href="l4_2util_2atomic_8h_source.html">Go to the source code of this file.</a></p>
|
|
<table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 id="header-func-members" class="groupheader"><a id="func-members" name="func-members"></a>
|
|
Functions</h2></td></tr>
|
|
<tr class="memitem:ga8fabd69989ed49da101f8806e3e95567" id="r_ga8fabd69989ed49da101f8806e3e95567"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4util__atomic.html#ga8fabd69989ed49da101f8806e3e95567">l4util_cmpxchg32</a> (volatile <a class="el" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> *dest, <a class="el" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> cmp_val, <a class="el" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> new_val)</td></tr>
|
|
<tr class="memdesc:ga8fabd69989ed49da101f8806e3e95567"><td class="mdescLeft"> </td><td class="mdescRight">Atomic compare and exchange (32 bit version). <br /></td></tr>
|
|
<tr class="memitem:ga2690923e89bf236e2e2008be26522ead" id="r_ga2690923e89bf236e2e2008be26522ead"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4util__atomic.html#ga2690923e89bf236e2e2008be26522ead">l4util_cmpxchg16</a> (volatile <a class="el" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> *dest, <a class="el" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> cmp_val, <a class="el" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> new_val)</td></tr>
|
|
<tr class="memdesc:ga2690923e89bf236e2e2008be26522ead"><td class="mdescLeft"> </td><td class="mdescRight">Atomic compare and exchange (16 bit version). <br /></td></tr>
|
|
<tr class="memitem:ga2654b6ee96ea71c241feac5a6ee68fa3" id="r_ga2654b6ee96ea71c241feac5a6ee68fa3"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4util__atomic.html#ga2654b6ee96ea71c241feac5a6ee68fa3">l4util_cmpxchg8</a> (volatile <a class="el" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> *dest, <a class="el" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> cmp_val, <a class="el" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> new_val)</td></tr>
|
|
<tr class="memdesc:ga2654b6ee96ea71c241feac5a6ee68fa3"><td class="mdescLeft"> </td><td class="mdescRight">Atomic compare and exchange (8 bit version). <br /></td></tr>
|
|
<tr class="memitem:ga929dc4219f96656545bb658d95b0c7c2" id="r_ga929dc4219f96656545bb658d95b0c7c2"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4util__atomic.html#ga929dc4219f96656545bb658d95b0c7c2">l4util_cmpxchg</a> (volatile <a class="el" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> *dest, <a class="el" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> cmp_val, <a class="el" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> new_val)</td></tr>
|
|
<tr class="memdesc:ga929dc4219f96656545bb658d95b0c7c2"><td class="mdescLeft"> </td><td class="mdescRight">Atomic compare and exchange (machine wide fields). <br /></td></tr>
|
|
<tr class="memitem:ga0efbc55fcd7e6e08c53ef3f3ca867b70" id="r_ga0efbc55fcd7e6e08c53ef3f3ca867b70"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4util__atomic.html#ga0efbc55fcd7e6e08c53ef3f3ca867b70">l4util_xchg32</a> (volatile <a class="el" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> *dest, <a class="el" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> val)</td></tr>
|
|
<tr class="memdesc:ga0efbc55fcd7e6e08c53ef3f3ca867b70"><td class="mdescLeft"> </td><td class="mdescRight">Atomic exchange (32 bit version). <br /></td></tr>
|
|
<tr class="memitem:ga89f488ae750ea2fff27cec847497668f" id="r_ga89f488ae750ea2fff27cec847497668f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4util__atomic.html#ga89f488ae750ea2fff27cec847497668f">l4util_xchg16</a> (volatile <a class="el" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> *dest, <a class="el" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> val)</td></tr>
|
|
<tr class="memdesc:ga89f488ae750ea2fff27cec847497668f"><td class="mdescLeft"> </td><td class="mdescRight">Atomic exchange (16 bit version). <br /></td></tr>
|
|
<tr class="memitem:ga21d6cbbc6767a63310e03123c2847d52" id="r_ga21d6cbbc6767a63310e03123c2847d52"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4util__atomic.html#ga21d6cbbc6767a63310e03123c2847d52">l4util_xchg8</a> (volatile <a class="el" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> *dest, <a class="el" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> val)</td></tr>
|
|
<tr class="memdesc:ga21d6cbbc6767a63310e03123c2847d52"><td class="mdescLeft"> </td><td class="mdescRight">Atomic exchange (8 bit version). <br /></td></tr>
|
|
<tr class="memitem:ga958db4eb4925f98fa6f1d811b7e77074" id="r_ga958db4eb4925f98fa6f1d811b7e77074"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4util__atomic.html#ga958db4eb4925f98fa6f1d811b7e77074">l4util_xchg</a> (volatile <a class="el" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> *dest, <a class="el" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> val)</td></tr>
|
|
<tr class="memdesc:ga958db4eb4925f98fa6f1d811b7e77074"><td class="mdescLeft"> </td><td class="mdescRight">Atomic exchange (machine wide fields). <br /></td></tr>
|
|
<tr class="memitem:ga058914602433ca4f617675d1a3733183" id="r_ga058914602433ca4f617675d1a3733183"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4util__atomic.html#ga058914602433ca4f617675d1a3733183">l4util_atomic_add</a> (volatile long *dest, long val)</td></tr>
|
|
<tr class="memdesc:ga058914602433ca4f617675d1a3733183"><td class="mdescLeft"> </td><td class="mdescRight">Atomic add. <br /></td></tr>
|
|
<tr class="memitem:gabe604732a0a1f3182c86a4df022f5b02" id="r_gabe604732a0a1f3182c86a4df022f5b02"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4util__atomic.html#gabe604732a0a1f3182c86a4df022f5b02">l4util_atomic_inc</a> (volatile long *dest)</td></tr>
|
|
<tr class="memdesc:gabe604732a0a1f3182c86a4df022f5b02"><td class="mdescLeft"> </td><td class="mdescRight">Atomic increment. <br /></td></tr>
|
|
<tr id="func-members-0" class="groupHeader"><td colspan="2"><div class="groupHeader">Atomic add/sub/and/or (8,16,32 bit version) without result</div></td></tr>
|
|
<tr class="memitem:ga3bc077b2c3afe0bc32082c76bc190899" id="r_ga3bc077b2c3afe0bc32082c76bc190899"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4util__atomic.html#ga3bc077b2c3afe0bc32082c76bc190899">l4util_add8</a> (volatile <a class="el" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> *dest, <a class="el" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> val)</td></tr>
|
|
<tr class="memitem:gabefc9509b3ea9a5fb95eedb8ca87aa64" id="r_gabefc9509b3ea9a5fb95eedb8ca87aa64"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4util__atomic.html#gabefc9509b3ea9a5fb95eedb8ca87aa64">l4util_add16</a> (volatile <a class="el" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> *dest, <a class="el" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> val)</td></tr>
|
|
<tr class="memitem:ga67b7e8e3a2ef3544eeb5958f91de9ac8" id="r_ga67b7e8e3a2ef3544eeb5958f91de9ac8"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4util__atomic.html#ga67b7e8e3a2ef3544eeb5958f91de9ac8">l4util_add32</a> (volatile <a class="el" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> *dest, <a class="el" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> val)</td></tr>
|
|
<tr class="memitem:gac558ba233db4941d1d7b466325258d32" id="r_gac558ba233db4941d1d7b466325258d32"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4util__atomic.html#gac558ba233db4941d1d7b466325258d32">l4util_sub8</a> (volatile <a class="el" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> *dest, <a class="el" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> val)</td></tr>
|
|
<tr class="memitem:ga668fce4fab37f2b1d5b9f2de52477757" id="r_ga668fce4fab37f2b1d5b9f2de52477757"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4util__atomic.html#ga668fce4fab37f2b1d5b9f2de52477757">l4util_sub16</a> (volatile <a class="el" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> *dest, <a class="el" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> val)</td></tr>
|
|
<tr class="memitem:gadd44be0d85d1dee9b91cc5a9a992b469" id="r_gadd44be0d85d1dee9b91cc5a9a992b469"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4util__atomic.html#gadd44be0d85d1dee9b91cc5a9a992b469">l4util_sub32</a> (volatile <a class="el" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> *dest, <a class="el" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> val)</td></tr>
|
|
<tr class="memitem:gaa7c973733b4eb041bd2a7c013854800e" id="r_gaa7c973733b4eb041bd2a7c013854800e"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4util__atomic.html#gaa7c973733b4eb041bd2a7c013854800e">l4util_and8</a> (volatile <a class="el" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> *dest, <a class="el" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> val)</td></tr>
|
|
<tr class="memitem:gaeff143978d85db992e3e11bdcb818fa8" id="r_gaeff143978d85db992e3e11bdcb818fa8"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4util__atomic.html#gaeff143978d85db992e3e11bdcb818fa8">l4util_and16</a> (volatile <a class="el" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> *dest, <a class="el" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> val)</td></tr>
|
|
<tr class="memitem:ga06dc4832a8ba41b8fb06376a7c126191" id="r_ga06dc4832a8ba41b8fb06376a7c126191"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4util__atomic.html#ga06dc4832a8ba41b8fb06376a7c126191">l4util_and32</a> (volatile <a class="el" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> *dest, <a class="el" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> val)</td></tr>
|
|
<tr class="memitem:gab82aba80e64c5660e5715dea30f5d20e" id="r_gab82aba80e64c5660e5715dea30f5d20e"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4util__atomic.html#gab82aba80e64c5660e5715dea30f5d20e">l4util_or8</a> (volatile <a class="el" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> *dest, <a class="el" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> val)</td></tr>
|
|
<tr class="memitem:ga6193b99dc0138955c8b2d2b133e0c4b4" id="r_ga6193b99dc0138955c8b2d2b133e0c4b4"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4util__atomic.html#ga6193b99dc0138955c8b2d2b133e0c4b4">l4util_or16</a> (volatile <a class="el" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> *dest, <a class="el" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> val)</td></tr>
|
|
<tr class="memitem:ga5e5792f81b6087d56d2019bd6bf34ca9" id="r_ga5e5792f81b6087d56d2019bd6bf34ca9"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4util__atomic.html#ga5e5792f81b6087d56d2019bd6bf34ca9">l4util_or32</a> (volatile <a class="el" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> *dest, <a class="el" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> val)</td></tr>
|
|
<tr id="func-members-1" class="groupHeader"><td colspan="2"><div class="groupHeader">Atomic add/sub/and/or operations (8,16,32 bit) with result</div></td></tr>
|
|
<tr class="memitem:ga3f17df140ab3fe4a7f76fd0d286beb95" id="r_ga3f17df140ab3fe4a7f76fd0d286beb95"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4util__atomic.html#ga3f17df140ab3fe4a7f76fd0d286beb95">l4util_add8_res</a> (volatile <a class="el" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> *dest, <a class="el" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> val)</td></tr>
|
|
<tr class="memitem:gacc49a3760359d49dadd731ad8ee15bc0" id="r_gacc49a3760359d49dadd731ad8ee15bc0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4util__atomic.html#gacc49a3760359d49dadd731ad8ee15bc0">l4util_add16_res</a> (volatile <a class="el" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> *dest, <a class="el" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> val)</td></tr>
|
|
<tr class="memitem:ga2195f872d989c868b581169711a2836f" id="r_ga2195f872d989c868b581169711a2836f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4util__atomic.html#ga2195f872d989c868b581169711a2836f">l4util_add32_res</a> (volatile <a class="el" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> *dest, <a class="el" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> val)</td></tr>
|
|
<tr class="memitem:gac32d8a4634c4fc4b0e512f7f11dcff7c" id="r_gac32d8a4634c4fc4b0e512f7f11dcff7c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4util__atomic.html#gac32d8a4634c4fc4b0e512f7f11dcff7c">l4util_sub8_res</a> (volatile <a class="el" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> *dest, <a class="el" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> val)</td></tr>
|
|
<tr class="memitem:gadfcc0cc982df754167c8009f0c925528" id="r_gadfcc0cc982df754167c8009f0c925528"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4util__atomic.html#gadfcc0cc982df754167c8009f0c925528">l4util_sub16_res</a> (volatile <a class="el" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> *dest, <a class="el" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> val)</td></tr>
|
|
<tr class="memitem:gaf9e1612643aff26859d2b2bbb2e51bc8" id="r_gaf9e1612643aff26859d2b2bbb2e51bc8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4util__atomic.html#gaf9e1612643aff26859d2b2bbb2e51bc8">l4util_sub32_res</a> (volatile <a class="el" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> *dest, <a class="el" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> val)</td></tr>
|
|
<tr class="memitem:ga546f459244b8453b69701f00cff0ec62" id="r_ga546f459244b8453b69701f00cff0ec62"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4util__atomic.html#ga546f459244b8453b69701f00cff0ec62">l4util_and8_res</a> (volatile <a class="el" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> *dest, <a class="el" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> val)</td></tr>
|
|
<tr class="memitem:ga9e21b8546944b9f77ab6139267e1a595" id="r_ga9e21b8546944b9f77ab6139267e1a595"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4util__atomic.html#ga9e21b8546944b9f77ab6139267e1a595">l4util_and16_res</a> (volatile <a class="el" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> *dest, <a class="el" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> val)</td></tr>
|
|
<tr class="memitem:ga349d71fe4f5231a601976fd9a086c96a" id="r_ga349d71fe4f5231a601976fd9a086c96a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4util__atomic.html#ga349d71fe4f5231a601976fd9a086c96a">l4util_and32_res</a> (volatile <a class="el" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> *dest, <a class="el" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> val)</td></tr>
|
|
<tr class="memitem:gaf30110fd28cb24344f69082c7a905590" id="r_gaf30110fd28cb24344f69082c7a905590"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4util__atomic.html#gaf30110fd28cb24344f69082c7a905590">l4util_or8_res</a> (volatile <a class="el" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> *dest, <a class="el" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> val)</td></tr>
|
|
<tr class="memitem:ga2142acca70d2ecfc5bd51deab68a5323" id="r_ga2142acca70d2ecfc5bd51deab68a5323"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4util__atomic.html#ga2142acca70d2ecfc5bd51deab68a5323">l4util_or16_res</a> (volatile <a class="el" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> *dest, <a class="el" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> val)</td></tr>
|
|
<tr class="memitem:gabab82a3dda596dcc8c31ef4c65586290" id="r_gabab82a3dda596dcc8c31ef4c65586290"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4util__atomic.html#gabab82a3dda596dcc8c31ef4c65586290">l4util_or32_res</a> (volatile <a class="el" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> *dest, <a class="el" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> val)</td></tr>
|
|
<tr id="func-members-2" class="groupHeader"><td colspan="2"><div class="groupHeader">Atomic inc/dec (8,16,32 bit) without result</div></td></tr>
|
|
<tr class="memitem:ga6604d3e2103436b6440e8ec2145ccb32" id="r_ga6604d3e2103436b6440e8ec2145ccb32"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4util__atomic.html#ga6604d3e2103436b6440e8ec2145ccb32">l4util_inc8</a> (volatile <a class="el" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> *dest)</td></tr>
|
|
<tr class="memitem:gae72d6ac1cfb5d63bb2a9621dad354df0" id="r_gae72d6ac1cfb5d63bb2a9621dad354df0"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4util__atomic.html#gae72d6ac1cfb5d63bb2a9621dad354df0">l4util_inc16</a> (volatile <a class="el" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> *dest)</td></tr>
|
|
<tr class="memitem:ga03e484709d970295813352828f350928" id="r_ga03e484709d970295813352828f350928"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4util__atomic.html#ga03e484709d970295813352828f350928">l4util_inc32</a> (volatile <a class="el" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> *dest)</td></tr>
|
|
<tr class="memitem:gae9133c0ec1bdaa609ad9b9e09f9d0b2f" id="r_gae9133c0ec1bdaa609ad9b9e09f9d0b2f"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4util__atomic.html#gae9133c0ec1bdaa609ad9b9e09f9d0b2f">l4util_dec8</a> (volatile <a class="el" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> *dest)</td></tr>
|
|
<tr class="memitem:ga05a1236598cce89213b5a755601b62b7" id="r_ga05a1236598cce89213b5a755601b62b7"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4util__atomic.html#ga05a1236598cce89213b5a755601b62b7">l4util_dec16</a> (volatile <a class="el" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> *dest)</td></tr>
|
|
<tr class="memitem:ga8c9a8d2eab2b62ef678ae2d76fc6d54f" id="r_ga8c9a8d2eab2b62ef678ae2d76fc6d54f"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4util__atomic.html#ga8c9a8d2eab2b62ef678ae2d76fc6d54f">l4util_dec32</a> (volatile <a class="el" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> *dest)</td></tr>
|
|
<tr id="func-members-3" class="groupHeader"><td colspan="2"><div class="groupHeader">Atomic inc/dec (8,16,32 bit) with result</div></td></tr>
|
|
<tr class="memitem:gacad550336d214adea055514c1a2b58bb" id="r_gacad550336d214adea055514c1a2b58bb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4util__atomic.html#gacad550336d214adea055514c1a2b58bb">l4util_inc8_res</a> (volatile <a class="el" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> *dest)</td></tr>
|
|
<tr class="memitem:gad07ede75e613efc81fd51454b35f8ead" id="r_gad07ede75e613efc81fd51454b35f8ead"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4util__atomic.html#gad07ede75e613efc81fd51454b35f8ead">l4util_inc16_res</a> (volatile <a class="el" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> *dest)</td></tr>
|
|
<tr class="memitem:ga01a429694822f8afcea3ba5b5a3eee29" id="r_ga01a429694822f8afcea3ba5b5a3eee29"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4util__atomic.html#ga01a429694822f8afcea3ba5b5a3eee29">l4util_inc32_res</a> (volatile <a class="el" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> *dest)</td></tr>
|
|
<tr class="memitem:gaf10c6081fb0b071de1c53feb88886017" id="r_gaf10c6081fb0b071de1c53feb88886017"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4util__atomic.html#gaf10c6081fb0b071de1c53feb88886017">l4util_dec8_res</a> (volatile <a class="el" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> *dest)</td></tr>
|
|
<tr class="memitem:gaa2cbfc2598186e43938e93149c6bc43c" id="r_gaa2cbfc2598186e43938e93149c6bc43c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4util__atomic.html#gaa2cbfc2598186e43938e93149c6bc43c">l4util_dec16_res</a> (volatile <a class="el" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> *dest)</td></tr>
|
|
<tr class="memitem:ga2aa303a6dc86f4aac902dd428b50a684" id="r_ga2aa303a6dc86f4aac902dd428b50a684"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4util__atomic.html#ga2aa303a6dc86f4aac902dd428b50a684">l4util_dec32_res</a> (volatile <a class="el" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> *dest)</td></tr>
|
|
</table>
|
|
<a name="details" id="details"></a><h2 id="header-details" class="groupheader">Detailed Description</h2>
|
|
<div class="textblock"><p>atomic operations header and generic implementations </p>
|
|
<dl class="section date"><dt>Date</dt><dd>10/20/2000 </dd></dl>
|
|
<dl class="section author"><dt>Author</dt><dd>Lars Reuther <a href="#" onclick="location.href='mai'+'lto:'+'reu'+'th'+'er@'+'os'+'.in'+'f.'+'tu-'+'dr'+'esd'+'en'+'.de'; return false;">reuth<span class="obfuscator">.nosp@m.</span>er@o<span class="obfuscator">.nosp@m.</span>s.inf<span class="obfuscator">.nosp@m.</span>.tu-<span class="obfuscator">.nosp@m.</span>dresd<span class="obfuscator">.nosp@m.</span>en.d<span class="obfuscator">.nosp@m.</span>e</a>, Jork Loeser <a href="#" onclick="location.href='mai'+'lto:'+'jor'+'k@'+'os.'+'in'+'f.t'+'u-'+'dre'+'sd'+'en.'+'de'; return false;">jork@<span class="obfuscator">.nosp@m.</span>os.i<span class="obfuscator">.nosp@m.</span>nf.tu<span class="obfuscator">.nosp@m.</span>-dre<span class="obfuscator">.nosp@m.</span>sden.<span class="obfuscator">.nosp@m.</span>de</a> </dd></dl>
|
|
|
|
<p class="definition">Definition in file <a class="el" href="l4_2util_2atomic_8h_source.html">atomic.h</a>.</p>
|
|
</div></div><!-- contents -->
|
|
</div><!-- doc-content -->
|
|
<div id="page-nav" class="page-nav-panel">
|
|
<div id="page-nav-resize-handle"></div>
|
|
<div id="page-nav-tree">
|
|
<div id="page-nav-contents">
|
|
</div><!-- page-nav-contents -->
|
|
</div><!-- page-nav-tree -->
|
|
</div><!-- page-nav -->
|
|
</div><!-- container -->
|
|
<!-- HTML footer for doxygen 1.9.1-->
|
|
<!-- start footer part -->
|
|
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
|
<ul>
|
|
<li class="navelem"><b>l4</b></li><li class="navelem"><b>util</b></li><li class="navelem"><a href="l4_2util_2atomic_8h.html">atomic.h</a></li>
|
|
<li class="footer">Generated on <span class="timestamp"></span> for L4Re Operating System Framework by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.15.0 </li>
|
|
</ul>
|
|
</div>
|
|
</body>
|
|
</html>
|