UefiCpuPkg BaseUefiCpuLib: Change the initialization value for x87 FPU Control Word for x64 arch from 0x27f to 0x37f per UEFI 2.3.1c spec.

Signed-off-by: Sun Rui <rui.sun@intel.com>
Reviewed-by: Fan Jeff <jeff.fan@intel.com>


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13506 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
rsun3 2012-07-05 08:44:57 +00:00
parent 8f8ca22e59
commit e768377c22
2 changed files with 7 additions and 7 deletions

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
#* #*
#* Copyright (c) 2009 - 2010, Intel Corporation. All rights reserved.<BR> #* Copyright (c) 2009 - 2012, Intel Corporation. All rights reserved.<BR>
#* This program and the accompanying materials #* This program and the accompanying materials
#* are licensed and made available under the terms and conditions of the BSD License #* are licensed and made available under the terms and conditions of the BSD License
#* which accompanies this distribution. The full text of the license may be found at #* which accompanies this distribution. The full text of the license may be found at
@ -15,8 +15,8 @@
# #
# Initializes floating point units for requirement of UEFI specification. # Initializes floating point units for requirement of UEFI specification.
# #
# This function initializes floating-point control word to 0x027F (all exceptions # This function initializes floating-point control word to 0x037F (all exceptions
# masked,double-precision, round-to-nearest) and multimedia-extensions control word # masked,double-extended-precision, round-to-nearest) and multimedia-extensions control word
# (if supported) to 0x1F80 (all exceptions masked, round-to-nearest, flush to zero # (if supported) to 0x1F80 (all exceptions masked, round-to-nearest, flush to zero
# for masked underflow). # for masked underflow).
# #
@ -32,7 +32,7 @@ ASM_PFX(InitializeFloatingPointUnits):
# Float control word initial value: # Float control word initial value:
# all exceptions masked, double-precision, round-to-nearest # all exceptions masked, double-precision, round-to-nearest
# #
pushq $0x027F pushq $0x037F
lea (%rsp), %rax lea (%rsp), %rax
fldcw (%rax) fldcw (%rax)
popq %rax popq %rax

View File

@ -1,6 +1,6 @@
;------------------------------------------------------------------------------ ;------------------------------------------------------------------------------
;* ;*
;* Copyright (c) 2009, Intel Corporation. All rights reserved.<BR> ;* Copyright (c) 2009 - 2012, Intel Corporation. All rights reserved.<BR>
;* This program and the accompanying materials ;* This program and the accompanying materials
;* are licensed and made available under the terms and conditions of the BSD License ;* are licensed and made available under the terms and conditions of the BSD License
;* which accompanies this distribution. The full text of the license may be found at ;* which accompanies this distribution. The full text of the license may be found at
@ -16,9 +16,9 @@
.const .const
; ;
; Float control word initial value: ; Float control word initial value:
; all exceptions masked, double-precision, round-to-nearest ; all exceptions masked, double-extended-precision, round-to-nearest
; ;
mFpuControlWord DW 027Fh mFpuControlWord DW 037Fh
; ;
; Multimedia-extensions control word: ; Multimedia-extensions control word:
; all exceptions masked, round-to-nearest, flush to zero for masked underflow ; all exceptions masked, round-to-nearest, flush to zero for masked underflow