SSEコントロールレジスタ値の設定
Namespace: fvalgcliAssembly: fvalgcli (in fvalgcli.dll) Version: 3.1.0.0 (3.1.0.11)
Syntax
C# |
---|
public static int fnFIE_set_control_sse( uint set, uint mask ) |
Visual Basic |
---|
Public Shared Function fnFIE_set_control_sse ( set As UInteger, mask As UInteger ) As Integer |
Parameters
- set
- Type: System..::..UInt32
レジスタ値 次の値のbit-ORによる組み合わせで指定してください- F_FPU_EM_IM
- F_FPU_EM_DM
- F_FPU_EM_ZM
- F_FPU_EM_OM
- F_FPU_EM_UM
- F_FPU_EM_PM
- F_FPU_FZ_SAVE
- F_FPU_FZ_FLUSH
- F_FPU_RC_CHOP
- F_FPU_RC_UP
- F_FPU_RC_DOWN
- F_FPU_RC_NEAR
- mask
- Type: System..::..UInt32
設定マスク 次のマスク値のbit-ORによる組み合わせで指定してください- F_FPU_EM_MASK
- F_FPU_RC_MASK
- F_FPU_FZ_MASK
Return Value
Type: Int32以下のエラーコードを返します。
エラーコード:
f_err | 内容 |
---|---|
F_ERR_NONE | 正常終了 |
F_ERR_UNSUPPORTED | サポートされていません |
Examples
C# | Copy |
---|---|
// $Revision: 1.1 $ using System; using System.Collections.Generic; using System.Text; using fvalgcli; namespace TC { public partial class FIE { /// <summary> /// SSEコントロールレジスタ値の設定. /// </summary> [FvPluginExecute] public void fnFIE_set_control_sse() { int status = (int)f_err.F_ERR_NONE; uint val = 0; try { status = api.fnFIE_get_control_sse(ref val); Assert.IsTrue(status == (int)f_err.F_ERR_NONE, "fnFIE_get_control_sse: エラーが発生しました。({0})", (f_err)status); Console.WriteLine("SSE FPU Control Register=0x{0:X}", val); Console.WriteLine("IM={0}", val & 1); Console.WriteLine("DM={0}", val >> 1 & 1); Console.WriteLine("ZM={0}", val >> 2 & 1); Console.WriteLine("OM={0}", val >> 3 & 1); Console.WriteLine("UM={0}", val >> 4 & 1); Console.WriteLine("PM={0}", val >> 5 & 1); Console.WriteLine("PC={0}", val >> 8 & 3); Console.WriteLine("RC={0}", val >> 10 & 3); Console.WriteLine("zero flush={0}", val >> 15 & 1); status = api.fnFIE_set_control_sse(val, 0); Assert.IsTrue(status == (int)f_err.F_ERR_NONE, "fnFIE_set_control_sse: エラーが発生しました。({0})", (f_err)status); } finally { } } } } |
Visual Basic | Copy |
---|---|
' $Revision: 1.1 $ Imports System.Collections.Generic Imports System.Text Imports fvalgcli Public Partial Class FIE ''' <summary> ''' SSEコントロールレジスタ値の設定. ''' </summary> <FvPluginExecute> _ Public Sub fnFIE_set_control_sse() Dim status As Integer = CInt(f_err.F_ERR_NONE) Dim val As UInteger = 0 Try status = api.fnFIE_get_control_sse(val) Assert.IsTrue(status = CInt(f_err.F_ERR_NONE), "fnFIE_get_control_sse: エラーが発生しました。({0})", CType(status, f_err)) Console.WriteLine("SSE FPU Control Register=0x{0:X}", val) Console.WriteLine("IM={0}", val And 1) Console.WriteLine("DM={0}", val >> 1 And 1) Console.WriteLine("ZM={0}", val >> 2 And 1) Console.WriteLine("OM={0}", val >> 3 And 1) Console.WriteLine("UM={0}", val >> 4 And 1) Console.WriteLine("PM={0}", val >> 5 And 1) Console.WriteLine("PC={0}", val >> 8 And 3) Console.WriteLine("RC={0}", val >> 10 And 3) Console.WriteLine("zero flush={0}", val >> 15 And 1) status = api.fnFIE_set_control_sse(val, 0) Assert.IsTrue(status = CInt(f_err.F_ERR_NONE), "fnFIE_set_control_sse: エラーが発生しました。({0})", CType(status, f_err)) Finally End Try End Sub End Class |