2015-10-08 14:55:01 -04:00
<!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" / >
2017-02-22 23:37:31 -05:00
< meta name = "generator" content = "Doxygen 1.8.13" / >
2016-11-07 15:21:37 -05:00
< meta name = "viewport" content = "width=device-width, initial-scale=1" / >
2015-10-08 14:55:01 -04:00
< title > Crashpad: crashpad::CPUContextX86 Struct 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 = "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" / >
2016-11-08 14:26:59 -05:00
< link href = "crashpad_doxygen.css" rel = "stylesheet" type = "text/css" / >
2015-10-08 14:55:01 -04:00
< / 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;" >
2016-01-06 16:09:15 -05:00
< td id = "projectalign" style = "padding-left: 0.5em;" >
2015-10-08 14:55:01 -04:00
< div id = "projectname" > Crashpad
< / div >
< / td >
< / tr >
< / tbody >
< / table >
< / div >
<!-- end header part -->
2017-02-22 23:37:31 -05:00
<!-- Generated by Doxygen 1.8.13 -->
2015-10-08 14:55:01 -04:00
< script type = "text/javascript" >
var searchBox = new SearchBox("searchBox", "search",false,'Search');
< / script >
2016-11-07 15:21:37 -05:00
< 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 >
2015-10-08 14:55:01 -04:00
<!-- 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 id = "nav-path" class = "navpath" >
< ul >
< li class = "navelem" > < a class = "el" href = "namespacecrashpad.html" > crashpad< / a > < / li > < li class = "navelem" > < a class = "el" href = "structcrashpad_1_1CPUContextX86.html" > CPUContextX86< / a > < / li > < / ul >
< / div >
< / div > <!-- top -->
< div class = "header" >
< div class = "summary" >
< a href = "#nested-classes" > Classes< / a > |
< a href = "#pub-types" > Public Types< / a > |
< a href = "#pub-static-methods" > Static Public Member Functions< / a > |
< a href = "#pub-attribs" > Public Attributes< / a > |
< a href = "structcrashpad_1_1CPUContextX86-members.html" > List of all members< / a > < / div >
< div class = "headertitle" >
< div class = "title" > crashpad::CPUContextX86 Struct Reference< / div > < / div >
< / div > <!-- header -->
< div class = "contents" >
< p > A context structure carrying 32-bit x86 CPU state.
< a href = "structcrashpad_1_1CPUContextX86.html#details" > More...< / a > < / p >
< p > < code > #include " snapshot/cpu_context.h" < / code > < / p >
< table class = "memberdecls" >
< tr class = "heading" > < td colspan = "2" > < h2 class = "groupheader" > < a name = "nested-classes" > < / a >
Classes< / h2 > < / td > < / tr >
2017-02-22 23:28:15 -05:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcrashpad_1_1CPUContextX86_1_1Fsave.html" > Fsave< / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2015-10-08 14:55:01 -04:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcrashpad_1_1CPUContextX86_1_1Fxsave.html" > Fxsave< / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > union   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "unioncrashpad_1_1CPUContextX86_1_1X87OrMMXRegister.html" > X87OrMMXRegister< / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< / table > < table class = "memberdecls" >
< tr class = "heading" > < td colspan = "2" > < h2 class = "groupheader" > < a name = "pub-types" > < / a >
Public Types< / h2 > < / td > < / tr >
2016-11-07 15:21:37 -05:00
< tr class = "memitem:a1b86f3500e303d8d06ad611b709a8de3" > < td class = "memItemLeft" align = "right" valign = "top" > < a id = "a1b86f3500e303d8d06ad611b709a8de3" > < / a >
2015-10-08 14:55:01 -04:00
using  < / td > < td class = "memItemRight" valign = "bottom" > < b > X87Register< / b > = uint8_t[10]< / td > < / tr >
< tr class = "separator:a1b86f3500e303d8d06ad611b709a8de3" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2016-11-07 15:21:37 -05:00
< tr class = "memitem:a7fbd28260ed735f338ae970c99fa9ef5" > < td class = "memItemLeft" align = "right" valign = "top" > < a id = "a7fbd28260ed735f338ae970c99fa9ef5" > < / a >
2015-10-08 14:55:01 -04:00
using  < / td > < td class = "memItemRight" valign = "bottom" > < b > XMMRegister< / b > = uint8_t[16]< / td > < / tr >
< tr class = "separator:a7fbd28260ed735f338ae970c99fa9ef5" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< / table > < table class = "memberdecls" >
< tr class = "heading" > < td colspan = "2" > < h2 class = "groupheader" > < a name = "pub-static-methods" > < / a >
Static Public Member Functions< / h2 > < / td > < / tr >
2017-02-22 23:28:15 -05:00
< tr class = "memitem:ab90efe3c4cf0e10d820a12d7227383c0" > < td class = "memItemLeft" align = "right" valign = "top" > static void  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcrashpad_1_1CPUContextX86.html#ab90efe3c4cf0e10d820a12d7227383c0" > FxsaveToFsave< / a > (const < a class = "el" href = "structcrashpad_1_1CPUContextX86_1_1Fxsave.html" > Fxsave< / a > & fxsave, < a class = "el" href = "structcrashpad_1_1CPUContextX86_1_1Fsave.html" > Fsave< / a > *fsave)< / td > < / tr >
< tr class = "memdesc:ab90efe3c4cf0e10d820a12d7227383c0" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Converts an < code > fxsave< / code > area to an < code > fsave< / code > area. < a href = "#ab90efe3c4cf0e10d820a12d7227383c0" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:ab90efe3c4cf0e10d820a12d7227383c0" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a8b6ecedc4f28b2e6b1564dc57489a8d9" > < td class = "memItemLeft" align = "right" valign = "top" > static void  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcrashpad_1_1CPUContextX86.html#a8b6ecedc4f28b2e6b1564dc57489a8d9" > FsaveToFxsave< / a > (const < a class = "el" href = "structcrashpad_1_1CPUContextX86_1_1Fsave.html" > Fsave< / a > & fsave, < a class = "el" href = "structcrashpad_1_1CPUContextX86_1_1Fxsave.html" > Fxsave< / a > *fxsave)< / td > < / tr >
< tr class = "memdesc:a8b6ecedc4f28b2e6b1564dc57489a8d9" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Converts an < code > fsave< / code > area to an < code > fxsave< / code > area. < a href = "#a8b6ecedc4f28b2e6b1564dc57489a8d9" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:a8b6ecedc4f28b2e6b1564dc57489a8d9" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2015-10-08 14:55:01 -04:00
< tr class = "memitem:aaa6da129178e00395358c4f288d5dc06" > < td class = "memItemLeft" align = "right" valign = "top" > static uint16_t  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcrashpad_1_1CPUContextX86.html#aaa6da129178e00395358c4f288d5dc06" > FxsaveToFsaveTagWord< / a > (uint16_t fsw, uint8_t fxsave_tag, const < a class = "el" href = "unioncrashpad_1_1CPUContextX86_1_1X87OrMMXRegister.html" > X87OrMMXRegister< / a > st_mm[8])< / td > < / tr >
< tr class = "memdesc:aaa6da129178e00395358c4f288d5dc06" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Converts x87 floating-point tag words from < code > fxsave< / code > (abridged, 8-bit) to < code > fsave< / code > (full, 16-bit) form. < a href = "#aaa6da129178e00395358c4f288d5dc06" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:aaa6da129178e00395358c4f288d5dc06" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2017-02-22 23:28:15 -05:00
< tr class = "memitem:a30c413e9272b7f2167c305a486e88dc0" > < td class = "memItemLeft" align = "right" valign = "top" > static uint8_t  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcrashpad_1_1CPUContextX86.html#a30c413e9272b7f2167c305a486e88dc0" > FsaveToFxsaveTagWord< / a > (uint16_t fsave_tag)< / td > < / tr >
< tr class = "memdesc:a30c413e9272b7f2167c305a486e88dc0" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Converts x87 floating-point tag words from < code > fsave< / code > (full, 16-bit) to < code > fxsave< / code > (abridged, 8-bit) form. < a href = "#a30c413e9272b7f2167c305a486e88dc0" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:a30c413e9272b7f2167c305a486e88dc0" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2015-10-08 14:55:01 -04:00
< / table > < table class = "memberdecls" >
< tr class = "heading" > < td colspan = "2" > < h2 class = "groupheader" > < a name = "pub-attribs" > < / a >
Public Attributes< / h2 > < / td > < / tr >
2016-11-07 15:21:37 -05:00
< tr class = "memitem:af1876d30ed4b46d1c3da751b381a9809" > < td class = "memItemLeft" align = "right" valign = "top" > < a id = "af1876d30ed4b46d1c3da751b381a9809" > < / a >
2015-10-08 14:55:01 -04:00
uint32_t  < / td > < td class = "memItemRight" valign = "bottom" > < b > eax< / b > < / td > < / tr >
< tr class = "separator:af1876d30ed4b46d1c3da751b381a9809" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2016-11-07 15:21:37 -05:00
< tr class = "memitem:a90e4096b4212c09ccb16d5d514b7d4f7" > < td class = "memItemLeft" align = "right" valign = "top" > < a id = "a90e4096b4212c09ccb16d5d514b7d4f7" > < / a >
2015-10-08 14:55:01 -04:00
uint32_t  < / td > < td class = "memItemRight" valign = "bottom" > < b > ebx< / b > < / td > < / tr >
< tr class = "separator:a90e4096b4212c09ccb16d5d514b7d4f7" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2016-11-07 15:21:37 -05:00
< tr class = "memitem:aa43911bac13ef61a60f616708ea20ab0" > < td class = "memItemLeft" align = "right" valign = "top" > < a id = "aa43911bac13ef61a60f616708ea20ab0" > < / a >
2015-10-08 14:55:01 -04:00
uint32_t  < / td > < td class = "memItemRight" valign = "bottom" > < b > ecx< / b > < / td > < / tr >
< tr class = "separator:aa43911bac13ef61a60f616708ea20ab0" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2016-11-07 15:21:37 -05:00
< tr class = "memitem:a80fc20a1c67efa7eac25941ee99a2317" > < td class = "memItemLeft" align = "right" valign = "top" > < a id = "a80fc20a1c67efa7eac25941ee99a2317" > < / a >
2015-10-08 14:55:01 -04:00
uint32_t  < / td > < td class = "memItemRight" valign = "bottom" > < b > edx< / b > < / td > < / tr >
< tr class = "separator:a80fc20a1c67efa7eac25941ee99a2317" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2016-11-07 15:21:37 -05:00
< tr class = "memitem:a86559f9edbf8dcbf18280f003ba0fb62" > < td class = "memItemLeft" align = "right" valign = "top" > < a id = "a86559f9edbf8dcbf18280f003ba0fb62" > < / a >
2015-10-08 14:55:01 -04:00
uint32_t  < / td > < td class = "memItemRight" valign = "bottom" > < b > edi< / b > < / td > < / tr >
< tr class = "separator:a86559f9edbf8dcbf18280f003ba0fb62" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2016-11-07 15:21:37 -05:00
< tr class = "memitem:a75ab6394821251a9a3fdbaf231ea77f9" > < td class = "memItemLeft" align = "right" valign = "top" > < a id = "a75ab6394821251a9a3fdbaf231ea77f9" > < / a >
2015-10-08 14:55:01 -04:00
uint32_t  < / td > < td class = "memItemRight" valign = "bottom" > < b > esi< / b > < / td > < / tr >
< tr class = "separator:a75ab6394821251a9a3fdbaf231ea77f9" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2016-11-07 15:21:37 -05:00
< tr class = "memitem:a8f2ff349ac577e7894b58854e11792ca" > < td class = "memItemLeft" align = "right" valign = "top" > < a id = "a8f2ff349ac577e7894b58854e11792ca" > < / a >
2015-10-08 14:55:01 -04:00
uint32_t  < / td > < td class = "memItemRight" valign = "bottom" > < b > ebp< / b > < / td > < / tr >
< tr class = "separator:a8f2ff349ac577e7894b58854e11792ca" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2016-11-07 15:21:37 -05:00
< tr class = "memitem:a6959676f8b059bfdcb71f1191992cb04" > < td class = "memItemLeft" align = "right" valign = "top" > < a id = "a6959676f8b059bfdcb71f1191992cb04" > < / a >
2015-10-08 14:55:01 -04:00
uint32_t  < / td > < td class = "memItemRight" valign = "bottom" > < b > esp< / b > < / td > < / tr >
< tr class = "separator:a6959676f8b059bfdcb71f1191992cb04" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2016-11-07 15:21:37 -05:00
< tr class = "memitem:ab0408af8f7e7a741cd63c68d1b997639" > < td class = "memItemLeft" align = "right" valign = "top" > < a id = "ab0408af8f7e7a741cd63c68d1b997639" > < / a >
2015-10-08 14:55:01 -04:00
uint32_t  < / td > < td class = "memItemRight" valign = "bottom" > < b > eip< / b > < / td > < / tr >
< tr class = "separator:ab0408af8f7e7a741cd63c68d1b997639" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2016-11-07 15:21:37 -05:00
< tr class = "memitem:a446a7a69ec0957a1a0612671e632c786" > < td class = "memItemLeft" align = "right" valign = "top" > < a id = "a446a7a69ec0957a1a0612671e632c786" > < / a >
2015-10-08 14:55:01 -04:00
uint32_t  < / td > < td class = "memItemRight" valign = "bottom" > < b > eflags< / b > < / td > < / tr >
< tr class = "separator:a446a7a69ec0957a1a0612671e632c786" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2016-11-07 15:21:37 -05:00
< tr class = "memitem:a53520606c959396cf6e89e0ad2d0eab3" > < td class = "memItemLeft" align = "right" valign = "top" > < a id = "a53520606c959396cf6e89e0ad2d0eab3" > < / a >
2015-10-08 14:55:01 -04:00
uint16_t  < / td > < td class = "memItemRight" valign = "bottom" > < b > cs< / b > < / td > < / tr >
< tr class = "separator:a53520606c959396cf6e89e0ad2d0eab3" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2016-11-07 15:21:37 -05:00
< tr class = "memitem:ad7a2c7e5f70443d38e65304e0fec9d86" > < td class = "memItemLeft" align = "right" valign = "top" > < a id = "ad7a2c7e5f70443d38e65304e0fec9d86" > < / a >
2015-10-08 14:55:01 -04:00
uint16_t  < / td > < td class = "memItemRight" valign = "bottom" > < b > ds< / b > < / td > < / tr >
< tr class = "separator:ad7a2c7e5f70443d38e65304e0fec9d86" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2016-11-07 15:21:37 -05:00
< tr class = "memitem:a1f91fd9ab18a58e13d1d62bb85f3dc88" > < td class = "memItemLeft" align = "right" valign = "top" > < a id = "a1f91fd9ab18a58e13d1d62bb85f3dc88" > < / a >
2015-10-08 14:55:01 -04:00
uint16_t  < / td > < td class = "memItemRight" valign = "bottom" > < b > es< / b > < / td > < / tr >
< tr class = "separator:a1f91fd9ab18a58e13d1d62bb85f3dc88" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2016-11-07 15:21:37 -05:00
< tr class = "memitem:a20d5127b89e7dff29502d5250fb4a8a2" > < td class = "memItemLeft" align = "right" valign = "top" > < a id = "a20d5127b89e7dff29502d5250fb4a8a2" > < / a >
2015-10-08 14:55:01 -04:00
uint16_t  < / td > < td class = "memItemRight" valign = "bottom" > < b > fs< / b > < / td > < / tr >
< tr class = "separator:a20d5127b89e7dff29502d5250fb4a8a2" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2016-11-07 15:21:37 -05:00
< tr class = "memitem:ac77f0c61de16a30b51214823f72cdaf2" > < td class = "memItemLeft" align = "right" valign = "top" > < a id = "ac77f0c61de16a30b51214823f72cdaf2" > < / a >
2015-10-08 14:55:01 -04:00
uint16_t  < / td > < td class = "memItemRight" valign = "bottom" > < b > gs< / b > < / td > < / tr >
< tr class = "separator:ac77f0c61de16a30b51214823f72cdaf2" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2016-11-07 15:21:37 -05:00
< tr class = "memitem:aaff8e374679288e022bef7ffe0ded2d5" > < td class = "memItemLeft" align = "right" valign = "top" > < a id = "aaff8e374679288e022bef7ffe0ded2d5" > < / a >
2015-10-08 14:55:01 -04:00
uint16_t  < / td > < td class = "memItemRight" valign = "bottom" > < b > ss< / b > < / td > < / tr >
< tr class = "separator:aaff8e374679288e022bef7ffe0ded2d5" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2016-11-07 15:21:37 -05:00
< tr class = "memitem:a915df1291a3ddb8ee7daccbfaece2c01" > < td class = "memItemLeft" align = "right" valign = "top" > < a id = "a915df1291a3ddb8ee7daccbfaece2c01" > < / a >
2015-10-08 14:55:01 -04:00
< a class = "el" href = "structcrashpad_1_1CPUContextX86_1_1Fxsave.html" > Fxsave< / a >   < / td > < td class = "memItemRight" valign = "bottom" > < b > fxsave< / b > < / td > < / tr >
< tr class = "separator:a915df1291a3ddb8ee7daccbfaece2c01" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2016-11-07 15:21:37 -05:00
< tr class = "memitem:a8e826ef3eee39c733fcc40d3e0c873e0" > < td class = "memItemLeft" align = "right" valign = "top" > < a id = "a8e826ef3eee39c733fcc40d3e0c873e0" > < / a >
2015-10-08 14:55:01 -04:00
uint32_t  < / td > < td class = "memItemRight" valign = "bottom" > < b > dr0< / b > < / td > < / tr >
< tr class = "separator:a8e826ef3eee39c733fcc40d3e0c873e0" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2016-11-07 15:21:37 -05:00
< tr class = "memitem:a8e1f953936c7027edc74005dd60cdab6" > < td class = "memItemLeft" align = "right" valign = "top" > < a id = "a8e1f953936c7027edc74005dd60cdab6" > < / a >
2015-10-08 14:55:01 -04:00
uint32_t  < / td > < td class = "memItemRight" valign = "bottom" > < b > dr1< / b > < / td > < / tr >
< tr class = "separator:a8e1f953936c7027edc74005dd60cdab6" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2016-11-07 15:21:37 -05:00
< tr class = "memitem:a76e5455c5017597a6b89a6262e69734d" > < td class = "memItemLeft" align = "right" valign = "top" > < a id = "a76e5455c5017597a6b89a6262e69734d" > < / a >
2015-10-08 14:55:01 -04:00
uint32_t  < / td > < td class = "memItemRight" valign = "bottom" > < b > dr2< / b > < / td > < / tr >
< tr class = "separator:a76e5455c5017597a6b89a6262e69734d" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2016-11-07 15:21:37 -05:00
< tr class = "memitem:a7149920a1dbc459ed0e15fd09509027e" > < td class = "memItemLeft" align = "right" valign = "top" > < a id = "a7149920a1dbc459ed0e15fd09509027e" > < / a >
2015-10-08 14:55:01 -04:00
uint32_t  < / td > < td class = "memItemRight" valign = "bottom" > < b > dr3< / b > < / td > < / tr >
< tr class = "separator:a7149920a1dbc459ed0e15fd09509027e" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2016-11-07 15:21:37 -05:00
< tr class = "memitem:adcf1ba86b334f3ab529363e5a44fe776" > < td class = "memItemLeft" align = "right" valign = "top" > < a id = "adcf1ba86b334f3ab529363e5a44fe776" > < / a >
2015-10-08 14:55:01 -04:00
uint32_t  < / td > < td class = "memItemRight" valign = "bottom" > < b > dr4< / b > < / td > < / tr >
< tr class = "separator:adcf1ba86b334f3ab529363e5a44fe776" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2016-11-07 15:21:37 -05:00
< tr class = "memitem:a0fa3979cbadfa9adfe012e8c030ff609" > < td class = "memItemLeft" align = "right" valign = "top" > < a id = "a0fa3979cbadfa9adfe012e8c030ff609" > < / a >
2015-10-08 14:55:01 -04:00
uint32_t  < / td > < td class = "memItemRight" valign = "bottom" > < b > dr5< / b > < / td > < / tr >
< tr class = "separator:a0fa3979cbadfa9adfe012e8c030ff609" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2016-11-07 15:21:37 -05:00
< tr class = "memitem:a455365ee9641826c95708c1cde906ac3" > < td class = "memItemLeft" align = "right" valign = "top" > < a id = "a455365ee9641826c95708c1cde906ac3" > < / a >
2015-10-08 14:55:01 -04:00
uint32_t  < / td > < td class = "memItemRight" valign = "bottom" > < b > dr6< / b > < / td > < / tr >
< tr class = "separator:a455365ee9641826c95708c1cde906ac3" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2016-11-07 15:21:37 -05:00
< tr class = "memitem:a01c285e56fc7421b8852f9df9f63af69" > < td class = "memItemLeft" align = "right" valign = "top" > < a id = "a01c285e56fc7421b8852f9df9f63af69" > < / a >
2015-10-08 14:55:01 -04:00
uint32_t  < / td > < td class = "memItemRight" valign = "bottom" > < b > dr7< / b > < / td > < / tr >
< tr class = "separator:a01c285e56fc7421b8852f9df9f63af69" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< / table >
< a name = "details" id = "details" > < / a > < h2 class = "groupheader" > Detailed Description< / h2 >
< div class = "textblock" > < p > A context structure carrying 32-bit x86 CPU state. < / p >
< / div > < h2 class = "groupheader" > Member Function Documentation< / h2 >
2017-02-22 23:28:15 -05:00
< a id = "a8b6ecedc4f28b2e6b1564dc57489a8d9" > < / a >
2017-02-22 23:37:31 -05:00
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a8b6ecedc4f28b2e6b1564dc57489a8d9" > ◆ < / a > < / span > FsaveToFxsave()< / h2 >
2017-02-22 23:28:15 -05:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
< td class = "memname" > void crashpad::CPUContextX86::FsaveToFxsave < / td >
< td > (< / td >
< td class = "paramtype" > const < a class = "el" href = "structcrashpad_1_1CPUContextX86_1_1Fsave.html" > Fsave< / a > &   < / td >
< td class = "paramname" > < em > fsave< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < a class = "el" href = "structcrashpad_1_1CPUContextX86_1_1Fxsave.html" > Fxsave< / a > *  < / td >
< td class = "paramname" > < em > fxsave< / em >   < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel" > static< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > Converts an < code > fsave< / code > area to an < code > fxsave< / code > area. < / p >
< p > < code > fsave< / code > state is restricted to the x87 FPU, while < code > fxsave< / code > state includes state related to the x87 FPU as well as state specific to SSE.< / p >
< p > As the < code > fsave< / code > format is a subset of the < code > fxsave< / code > format, this operation cannot fully populate the < code > fxsave< / code > area. Fields in < em > fxsave< / em > that have no equivalent in < em > fsave< / em > are set to < code > 0< / code > , including Fxsave::mxcsr, Fxsave::mxcsr_mask, Fxsave::xmm, and Fxsave::available. < a class = "el" href = "structcrashpad_1_1CPUContextX86.html#a30c413e9272b7f2167c305a486e88dc0" title = "Converts x87 floating-point tag words from fsave (full, 16-bit) to fxsave (abridged, 8-bit) form. " > FsaveToFxsaveTagWord()< / a > is used to derive Fxsave::ftw from the full 16-bit form used by < code > fsave< / code > . Reserved fields in < em > fxsave< / em > are set to < code > 0< / code > .< / p >
< dl class = "params" > < dt > Parameters< / dt > < dd >
< table class = "params" >
< tr > < td class = "paramdir" > [in]< / td > < td class = "paramname" > fsave< / td > < td > The < code > fsave< / code > area to convert. < / td > < / tr >
< tr > < td class = "paramdir" > [out]< / td > < td class = "paramname" > fxsave< / td > < td > The < code > fxsave< / code > area to populate.< / td > < / tr >
< / table >
< / dd >
< / dl >
< dl class = "section see" > < dt > See also< / dt > < dd > < a class = "el" href = "structcrashpad_1_1CPUContextX86.html#ab90efe3c4cf0e10d820a12d7227383c0" title = "Converts an fxsave area to an fsave area. " > FxsaveToFsave()< / a > < / dd > < / dl >
< / div >
< / div >
< a id = "a30c413e9272b7f2167c305a486e88dc0" > < / a >
2017-02-22 23:37:31 -05:00
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a30c413e9272b7f2167c305a486e88dc0" > ◆ < / a > < / span > FsaveToFxsaveTagWord()< / h2 >
2017-02-22 23:28:15 -05:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
< td class = "memname" > uint8_t crashpad::CPUContextX86::FsaveToFxsaveTagWord < / td >
< td > (< / td >
< td class = "paramtype" > uint16_t  < / td >
< td class = "paramname" > < em > fsave_tag< / em > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel" > static< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > Converts x87 floating-point tag words from < code > fsave< / code > (full, 16-bit) to < code > fxsave< / code > (abridged, 8-bit) form. < / p >
< p > This function performs the inverse operation of < a class = "el" href = "structcrashpad_1_1CPUContextX86.html#aaa6da129178e00395358c4f288d5dc06" title = "Converts x87 floating-point tag words from fxsave (abridged, 8-bit) to fsave (full, 16-bit) form. " > FxsaveToFsaveTagWord()< / a > .< / p >
< dl class = "params" > < dt > Parameters< / dt > < dd >
< table class = "params" >
< tr > < td class = "paramdir" > [in]< / td > < td class = "paramname" > fsave_tag< / td > < td > The full FPU tag word.< / td > < / tr >
< / table >
< / dd >
< / dl >
< dl class = "section return" > < dt > Returns< / dt > < dd > The abridged FPU tag word. < / dd > < / dl >
< / div >
< / div >
< a id = "ab90efe3c4cf0e10d820a12d7227383c0" > < / a >
2017-02-22 23:37:31 -05:00
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#ab90efe3c4cf0e10d820a12d7227383c0" > ◆ < / a > < / span > FxsaveToFsave()< / h2 >
2017-02-22 23:28:15 -05:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
< td class = "memname" > void crashpad::CPUContextX86::FxsaveToFsave < / td >
< td > (< / td >
< td class = "paramtype" > const < a class = "el" href = "structcrashpad_1_1CPUContextX86_1_1Fxsave.html" > Fxsave< / a > &   < / td >
< td class = "paramname" > < em > fxsave< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < a class = "el" href = "structcrashpad_1_1CPUContextX86_1_1Fsave.html" > Fsave< / a > *  < / td >
< td class = "paramname" > < em > fsave< / em >   < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel" > static< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > Converts an < code > fxsave< / code > area to an < code > fsave< / code > area. < / p >
< p > < code > fsave< / code > state is restricted to the x87 FPU, while < code > fxsave< / code > state includes state related to the x87 FPU as well as state specific to SSE.< / p >
< p > As the < code > fxsave< / code > format is a superset of the < code > fsave< / code > format, this operation fully populates the < code > fsave< / code > area. < code > fsave< / code > uses the full 16-bit form for the x87 floating-point tag word, so < a class = "el" href = "structcrashpad_1_1CPUContextX86.html#aaa6da129178e00395358c4f288d5dc06" title = "Converts x87 floating-point tag words from fxsave (abridged, 8-bit) to fsave (full, 16-bit) form. " > FxsaveToFsaveTagWord()< / a > is used to derive Fsave::ftw from the abridged 8-bit form used by < code > fxsave< / code > . Reserved fields in < em > fsave< / em > are set to < code > 0< / code > .< / p >
< dl class = "params" > < dt > Parameters< / dt > < dd >
< table class = "params" >
< tr > < td class = "paramdir" > [in]< / td > < td class = "paramname" > fxsave< / td > < td > The < code > fxsave< / code > area to convert. < / td > < / tr >
< tr > < td class = "paramdir" > [out]< / td > < td class = "paramname" > fsave< / td > < td > The < code > fsave< / code > area to populate.< / td > < / tr >
< / table >
< / dd >
< / dl >
< dl class = "section see" > < dt > See also< / dt > < dd > < a class = "el" href = "structcrashpad_1_1CPUContextX86.html#a8b6ecedc4f28b2e6b1564dc57489a8d9" title = "Converts an fsave area to an fxsave area. " > FsaveToFxsave()< / a > < / dd > < / dl >
< / div >
< / div >
2016-11-07 15:21:37 -05:00
< a id = "aaa6da129178e00395358c4f288d5dc06" > < / a >
2017-02-22 23:37:31 -05:00
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#aaa6da129178e00395358c4f288d5dc06" > ◆ < / a > < / span > FxsaveToFsaveTagWord()< / h2 >
2016-11-07 15:21:37 -05:00
2015-10-08 14:55:01 -04:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
< td class = "memname" > uint16_t crashpad::CPUContextX86::FxsaveToFsaveTagWord < / td >
< td > (< / td >
< td class = "paramtype" > uint16_t  < / td >
< td class = "paramname" > < em > fsw< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > uint8_t  < / td >
< td class = "paramname" > < em > fxsave_tag< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > const < a class = "el" href = "unioncrashpad_1_1CPUContextX86_1_1X87OrMMXRegister.html" > X87OrMMXRegister< / a >   < / td >
< td class = "paramname" > < em > st_mm< / em > [8]  < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel" > static< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > Converts x87 floating-point tag words from < code > fxsave< / code > (abridged, 8-bit) to < code > fsave< / code > (full, 16-bit) form. < / p >
2017-02-22 23:28:15 -05:00
< p > < code > fxsave< / code > stores the x87 floating-point tag word in abridged 8-bit form, and < code > fsave< / code > stores it in full 16-bit form. Some users, notably CPUContextX86::Fsave::ftw, require the full 16-bit form, where most other contemporary code uses < code > fxsave< / code > and thus the abridged 8-bit form found in CPUContextX86::Fxsave::ftw.< / p >
2015-10-08 14:55:01 -04:00
< p > This function converts an abridged tag word to the full version by using the abridged tag word and the contents of the registers it describes. See Intel Software Developer’ s Manual, Volume 2A: Instruction Set Reference A-M (253666-052), 3.2 “FXSAVE”, specifically, the notes on the abridged FTW and recreating the FSAVE format, and AMD Architecture Programmer’ s Manual, Volume 2: System Programming (24593-3.24), “FXSAVE Format for x87 Tag Word”.< / p >
2017-02-22 23:28:15 -05:00
< dl class = "section see" > < dt > See also< / dt > < dd > < a class = "el" href = "structcrashpad_1_1CPUContextX86.html#a30c413e9272b7f2167c305a486e88dc0" title = "Converts x87 floating-point tag words from fsave (full, 16-bit) to fxsave (abridged, 8-bit) form. " > FsaveToFxsaveTagWord()< / a > < / dd > < / dl >
2015-10-08 14:55:01 -04:00
< dl class = "params" > < dt > Parameters< / dt > < dd >
< table class = "params" >
< tr > < td class = "paramdir" > [in]< / td > < td class = "paramname" > fsw< / td > < td > The FPU status word, used to map logical < em > st_mm< / em > registers to their physical counterparts. This can be taken from CPUContextX86::Fxsave::fsw. < / td > < / tr >
< tr > < td class = "paramdir" > [in]< / td > < td class = "paramname" > fxsave_tag< / td > < td > The abridged FPU tag word. This can be taken from CPUContextX86::Fxsave::ftw. < / td > < / tr >
< tr > < td class = "paramdir" > [in]< / td > < td class = "paramname" > st_mm< / td > < td > The floating-point registers in logical order. This can be taken from CPUContextX86::Fxsave::st_mm.< / td > < / tr >
< / table >
< / dd >
< / dl >
< dl class = "section return" > < dt > Returns< / dt > < dd > The full FPU tag word. < / dd > < / dl >
< / div >
< / div >
< hr / > The documentation for this struct was generated from the following files:< ul >
< li > snapshot/cpu_context.h< / li >
< li > snapshot/cpu_context.cc< / li >
< / ul >
< / div > <!-- contents -->
<!-- start footer part -->
< hr class = "footer" / > < address class = "footer" > < small >
Generated by   < a href = "http://www.doxygen.org/index.html" >
< img class = "footer" src = "doxygen.png" alt = "doxygen" / >
2017-02-22 23:37:31 -05:00
< / a > 1.8.13
2015-10-08 14:55:01 -04:00
< / small > < / address >
< / body >
< / html >