IntelFrameworkModulePkg/BiosThunk: Fix 32 bits arch build failure when disable optimization.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: eric Dong <eric.dong@intel.com>
Reviewed-by: Feng Tian <feng.tian@intel.com>

git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@18319 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
eric Dong 2015-08-26 08:31:27 +00:00 committed by ydong10
parent 23cc8adbaf
commit 1f70d74786
1 changed files with 3 additions and 3 deletions

View File

@ -1,7 +1,7 @@
/** @file
Routines that use BIOS to support INT 13 devices.
Copyright (c) 1999 - 2010, Intel Corporation. All rights reserved.<BR>
Copyright (c) 1999 - 2015, Intel Corporation. All rights reserved.<BR>
This program and the accompanying materials
are licensed and made available under the terms and conditions
@ -870,7 +870,7 @@ Edd11BiosReadBlocks (
// Otherwise when offset adding data size exceeds 0xFFFF, if OpROM does not normalize TransferBuffer,
// INT13 function 42H will return data boundary error 09H.
//
AddressPacket->SegOffset = (UINT32) ((TransferBuffer >> 4) << 16);
AddressPacket->SegOffset = (UINT32) LShiftU64 (RShiftU64(TransferBuffer, 4), 16);
AddressPacket->Lba = (UINT64) Lba;
Regs.H.AH = 0x42;
@ -1023,7 +1023,7 @@ Edd11BiosWriteBlocks (
// Otherwise when offset adding data size exceeds 0xFFFF, if OpROM does not normalize TransferBuffer,
// INT13 function 42H will return data boundary error 09H.
//
AddressPacket->SegOffset = (UINT32) ((TransferBuffer >> 4) << 16);
AddressPacket->SegOffset = (UINT32) LShiftU64 (RShiftU64(TransferBuffer, 4), 16);
AddressPacket->Lba = (UINT64) Lba;
Regs.H.AH = 0x43;