⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fpparchlib.html

📁 Vxworks API操作系统和驱动程序设计API。压缩的HTML文件
💻 HTML
📖 第 1 页 / 共 2 页
字号:
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;registers&nbsp;<b>st/mm0</b>&nbsp;-&nbsp;<b>st/mm7</b>&nbsp;(10&nbsp;bytes&nbsp;*&nbsp;8)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;512&nbsp;byte&nbsp;new&nbsp;context&nbsp;with&nbsp;fxsave&nbsp;and&nbsp;fxrstor&nbsp;instruction<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;control&nbsp;word,&nbsp;status&nbsp;word,&nbsp;tag&nbsp;word,&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;last&nbsp;FP&nbsp;instruction&nbsp;op&nbsp;code,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;instruction&nbsp;pointer,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;instruction&nbsp;pointer&nbsp;selector,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;data&nbsp;pointer,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;data&nbsp;pointer&nbsp;selector,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;registers&nbsp;<b>st/mm0</b>&nbsp;-&nbsp;<b>st/mm7</b>&nbsp;(10&nbsp;bytes&nbsp;*&nbsp;8)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;registers&nbsp;<b>xmm0</b>&nbsp;-&nbsp;<b>xmm7</b>&nbsp;(16&nbsp;bytes&nbsp;*&nbsp;8)<p><b>ARM</b>:<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;currently,&nbsp;on&nbsp;this&nbsp;architecture,&nbsp;this&nbsp;routine&nbsp;does&nbsp;nothing.<p><b>SimSolaris</b>:<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;register&nbsp;<b>fsr</b><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;registers&nbsp;<b>f0</b>&nbsp;-&nbsp;<b>f31</b><p><b>SimNT</b>:<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;this&nbsp;routine&nbsp;does&nbsp;nothing&nbsp;on&nbsp;Windows&nbsp;simulator.&nbsp;Floating&nbsp;point<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;registers&nbsp;are&nbsp;saved&nbsp;by&nbsp;Windows.<p></blockquote><h4>RETURNS</h4><blockquote><p>N/A<p></blockquote><h4>SEE ALSO</h4><blockquote><p><b><a href="./fppArchLib.html#top">fppArchLib</a></b>, <b><a href="./fppArchLib.html#fppRestore">fppRestore</a>(&nbsp;)</b><hr><a name="fppRestore"></a><p align=right><a href="rtnIndex.htm"><i>OS Libraries :  Routines</i></a></p></blockquote><h1>fppRestore(&nbsp;)</h1> <blockquote></a></blockquote><h4>NAME</h4><blockquote>  <p><strong>fppRestore(&nbsp;)</strong> - restore the floating-point coprocessor context</p></blockquote><h4>SYNOPSIS</h4><blockquote><p><pre>void fppRestore    (    FP_CONTEXT * pFpContext   /* where to restore context from */    )</pre></blockquote><h4>DESCRIPTION</h4><blockquote><p>This routine restores the floating-point coprocessor context.The context restored is:<p><b>MC680x0</b>:<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;registers&nbsp;<b>fpcr</b>,&nbsp;<b>fpsr</b>,&nbsp;and&nbsp;<b>fpiar</b><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;registers&nbsp;<b>f0</b>&nbsp;-&nbsp;<b>f7</b><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;internal&nbsp;state&nbsp;frame&nbsp;(if&nbsp;NULL,&nbsp;the&nbsp;other&nbsp;registers&nbsp;are&nbsp;not&nbsp;saved.)<p><b>MIPS</b>:<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;register&nbsp;<b>fpcsr</b><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;registers&nbsp;<b>fp0</b>&nbsp;-&nbsp;<b>fp31</b><p><b>SH-4</b>:<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;registers&nbsp;<b>fpcsr</b>&nbsp;and&nbsp;<b>fpul</b><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;registers&nbsp;<b>fr0</b>&nbsp;-&nbsp;<b>fr15</b><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;registers&nbsp;<b>xf0</b>&nbsp;-&nbsp;<b>xf15</b><p><b>x86</b>:<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;108&nbsp;byte&nbsp;old&nbsp;context&nbsp;with&nbsp;fsave&nbsp;and&nbsp;frstor&nbsp;instruction<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;control&nbsp;word,&nbsp;status&nbsp;word,&nbsp;tag&nbsp;word,&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;instruction&nbsp;pointer,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;instruction&nbsp;pointer&nbsp;selector,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;last&nbsp;FP&nbsp;instruction&nbsp;op&nbsp;code,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;data&nbsp;pointer,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;data&nbsp;pointer&nbsp;selector,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;registers&nbsp;<b>st/mm0</b>&nbsp;-&nbsp;<b>st/mm7</b>&nbsp;(10&nbsp;bytes&nbsp;*&nbsp;8)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;512&nbsp;byte&nbsp;new&nbsp;context&nbsp;with&nbsp;fxsave&nbsp;and&nbsp;fxrstor&nbsp;instruction<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;control&nbsp;word,&nbsp;status&nbsp;word,&nbsp;tag&nbsp;word,&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;last&nbsp;FP&nbsp;instruction&nbsp;op&nbsp;code,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;instruction&nbsp;pointer,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;instruction&nbsp;pointer&nbsp;selector,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;data&nbsp;pointer,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;data&nbsp;pointer&nbsp;selector,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;registers&nbsp;<b>st/mm0</b>&nbsp;-&nbsp;<b>st/mm7</b>&nbsp;(10&nbsp;bytes&nbsp;*&nbsp;8)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;registers&nbsp;<b>xmm0</b>&nbsp;-&nbsp;<b>xmm7</b>&nbsp;(16&nbsp;bytes&nbsp;*&nbsp;8)<p><b>ARM</b>:<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;currently,&nbsp;on&nbsp;this&nbsp;architecture,&nbsp;this&nbsp;routine&nbsp;does&nbsp;nothing.<p><b>SimSolaris</b>:<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;register&nbsp;<b>fsr</b><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;registers&nbsp;<b>f0</b>&nbsp;-&nbsp;<b>f31</b><p><b>SimNT</b>:<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;this&nbsp;routine&nbsp;does&nbsp;nothing&nbsp;on&nbsp;Windows&nbsp;simulator.&nbsp;<p></blockquote><h4>RETURNS</h4><blockquote><p>N/A<p></blockquote><h4>SEE ALSO</h4><blockquote><p><b><a href="./fppArchLib.html#top">fppArchLib</a></b>, <b><a href="./fppArchLib.html#fppSave">fppSave</a>(&nbsp;)</b><hr><a name="fppProbe"></a><p align=right><a href="rtnIndex.htm"><i>OS Libraries :  Routines</i></a></p></blockquote><h1>fppProbe(&nbsp;)</h1> <blockquote></a></blockquote><h4>NAME</h4><blockquote>  <p><strong>fppProbe(&nbsp;)</strong> - probe for the presence of a floating-point coprocessor</p></blockquote><h4>SYNOPSIS</h4><blockquote><p><pre>STATUS fppProbe (void)</pre></blockquote><h4>DESCRIPTION</h4><blockquote><p>This routine determines whether there is afloating-point coprocessor in the system.<p>The implementation of this routine is architecture-dependent:<p><dl><dt><b>MC680x0</b>, <b>x86</b>, <b>SH-4</b>:<dd>This routine sets the illegal coprocessor opcode trap vector and executesa coprocessor instruction.  If the instruction causes an exception,<b><a href="./fppArchLib.html#fppProbe">fppProbe</a>(&nbsp;)</b> returns ERROR.  Note that this routine saves and restoresthe illegal coprocessor opcode trap vector that was there prior to thiscall.<p>The probe is only performed the first time this routine is called.The result is stored in a static and returned on subsequentcalls without actually probing.<p><dt><b>MIPS</b>:<dd>This routine simply reads the R-Series status register and reportsthe bit that indicates whether coprocessor 1 is usable.  This bitmust be correctly initialized in the BSP.<p><dt><b>ARM</b>:<dd>This routine currently returns ERROR to indicate no floating-point coprocessor support.<p><dt><b>SimNT</b>, <b>SimSolaris</b>:<dd>This routine currently returns OK.</dl></blockquote><h4>RETURNS</h4><blockquote><p><p>OK, or ERROR if there is no floating-point coprocessor.</blockquote><h4>SEE ALSO</h4><blockquote><p><b><a href="./fppArchLib.html#top">fppArchLib</a></b><hr><a name="fppTaskRegsGet"></a><p align=right><a href="rtnIndex.htm"><i>OS Libraries :  Routines</i></a></p></blockquote><h1>fppTaskRegsGet(&nbsp;)</h1> <blockquote></a></blockquote><h4>NAME</h4><blockquote>  <p><strong>fppTaskRegsGet(&nbsp;)</strong> - get the floating-point registers from a task TCB</p></blockquote><h4>SYNOPSIS</h4><blockquote><p><pre>STATUS fppTaskRegsGet    (    int         task,         /* task to get info about */    FPREG_SET * pFpRegSet     /* ptr to floating-point register set */    )</pre></blockquote><h4>DESCRIPTION</h4><blockquote><p>This routine copies a task's floating-point registers and/or statusregisters to the locations whose pointers are passed asparameters.  The floating-point registers are copied intoan array containing all the registers.<p></blockquote><h4>NOTE</h4><blockquote><p>This routine only works well if <i>task</i> is not the calling task.If a task tries to discover its own registers, the values will be stale(that is, left over from the last task switch).<p></blockquote><h4>RETURNS</h4><blockquote><p>OK, or ERROR if there is no floating-pointsupport or there is an invalid state.<p></blockquote><h4>SEE ALSO</h4><blockquote><p><b><a href="./fppArchLib.html#top">fppArchLib</a></b>, <b><a href="./fppArchLib.html#fppTaskRegsSet">fppTaskRegsSet</a>(&nbsp;)</b><hr><a name="fppTaskRegsSet"></a><p align=right><a href="rtnIndex.htm"><i>OS Libraries :  Routines</i></a></p></blockquote><h1>fppTaskRegsSet(&nbsp;)</h1> <blockquote></a></blockquote><h4>NAME</h4><blockquote>  <p><strong>fppTaskRegsSet(&nbsp;)</strong> - set the floating-point registers of a task</p></blockquote><h4>SYNOPSIS</h4><blockquote><p><pre>STATUS fppTaskRegsSet    (    int         task,         /* task to set registers for */    FPREG_SET * pFpRegSet     /* ptr to floating-point register set */    )</pre></blockquote><h4>DESCRIPTION</h4><blockquote><p>This routine loads the specified values into the TCB of a specified task.The register values are copied from the array at <i>pFpRegSet</i>.<p></blockquote><h4>RETURNS</h4><blockquote><p>OK, or ERROR if there is no floating-pointsupport or there is an invalid state.<p></blockquote><h4>SEE ALSO</h4><blockquote><p><b><a href="./fppArchLib.html#top">fppArchLib</a></b>, <b><a href="./fppArchLib.html#fppTaskRegsGet">fppTaskRegsGet</a>(&nbsp;)</b></body></html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -