Compartilhar via


VfpOemInitEx (Compact 2013)

10/16/2014

This function initializes extended custom support in the OEM adaptation layer (OAL) for vector floating-point (VFP) coprocessors.

Syntax

void VfpOemInitEx(
        OEMGLOBAL* pOemGlobal,
       DWORD dwFPSID,
    PFN_VfpEnableCoproc         pfnVfpEnableCoproc,
    PFN_SaveRestoreVFPCtrlRegs  pfnSaveVFPCtrlRegs,
    PFN_SaveRestoreVFPCtrlRegs  pfnRestoreVFPCtrlRegs,
    PFN_HandleVFPException      pfnHandleVFPException,
    PFN_IsVFPFeaturePresent     pfnIsVFPFeaturePresent
);

Parameters

  • pOemGlobal
    Pointer to an OEMGLOBAL structure.
  • dwFPSID
    Either the specific Floating-Point System ID value matching the hardware VFP implementation, or one of the following values:

    VFP_FULL_EMULATION_FPSID

    VFP_AUTO_DETECT_FPSID

    See the Remarks section for more information.

  • pfnVfpEnableCoproc
    Pointer to a function that turns on the VFP.
  • pfnSaveVFPCtrlRegs
    Pointer to a function that saves the state of the extra implementation-specific VFP registers for the current thread. VfpOemInitEx uses this value to set the pfnOEMSaveVFPCtrlRegs member of OEMGlobal.
  • pfnRestoreVFPCtrlRegs
    Pointer to a function that restores the state of the extra implementation-specific VFP registers for the current thread. VfpOemInitEx uses this value to set the pfnOEMRestoreVFPCtrlRegs member of OEMGlobal.
  • pfnHandleVFPException
    Pointer to a function that handles a floating-point exception that is reported by VFP hardware. VfpOemInitEx uses this value to set the pfnHandleVFPExcp member of OEMGlobal.
  • pfnIsVFPFeaturePresent
    Pointer to a function that queries the OAL for information about VFP hardware. VfpOemInitEx uses this value to set the pfnIsVFPFeaturePresent member of OEMGlobal.

Return Value

None.

Remarks

The OAL uses this function in ARM platforms that have VFP coprocessors. You call this function from OEMInit to initialize the VFP coprocessor on ARM CPUs with this feature.

You can use VfpOemInitEx to define custom implementations of the functions to turn on the VFP, save and restore the registers, handle exceptions, and query the OAL about VFP hardware.

The allowed values for dwFPSID are described in the following table.

  • <Hardware-specific FPSID>
    The specific Floating-Point System ID value matching the hardware VFP implementation. For more information, see the CPU documentation for your hardware.
  • VFP_FULL_EMULATION_FPSID
    The operating system will emulate VFP support in software. This value should only be used in testing, as software VFP emulation significantly degrades system performance.
  • VFP_AUTO_DETECT_FPSID
    The operating system will auto-detect hardware VFP features. VFP must be supported in hardware.

See Also

Reference

Coprocessor Reference