diff options
author | vboxsync <vboxsync@cfe28804-0f27-0410-a406-dd0f0b0b656f> | 2019-11-06 16:17:57 +0000 |
---|---|---|
committer | vboxsync <vboxsync@cfe28804-0f27-0410-a406-dd0f0b0b656f> | 2019-11-06 16:17:57 +0000 |
commit | 7a0010a8768809b3bff2e93ee43855a2ef04f39a (patch) | |
tree | ebc048f4f964cbfd81d0d4f0be975af72a675adc /src/VBox/Devices/EFI/Firmware | |
parent | 143788253e1cc4390cc6fdd7d558616493c86d28 (diff) | |
download | VirtualBox-svn-7a0010a8768809b3bff2e93ee43855a2ef04f39a.tar.gz |
EFI/Firmware/VBoxPrintHex.c: Use RShiftU64() instead of >> to avoid unresolved symbol errors when compiling with optimizations turned of for x86
git-svn-id: https://www.virtualbox.org/svn/vbox/trunk@81716 cfe28804-0f27-0410-a406-dd0f0b0b656f
Diffstat (limited to 'src/VBox/Devices/EFI/Firmware')
-rw-r--r-- | src/VBox/Devices/EFI/Firmware/VBoxPkg/Library/VBoxDebugLib/VBoxPrintHex.c | 34 |
1 files changed, 18 insertions, 16 deletions
diff --git a/src/VBox/Devices/EFI/Firmware/VBoxPkg/Library/VBoxDebugLib/VBoxPrintHex.c b/src/VBox/Devices/EFI/Firmware/VBoxPkg/Library/VBoxDebugLib/VBoxPrintHex.c index de718d891e0..2ed05742a0f 100644 --- a/src/VBox/Devices/EFI/Firmware/VBoxPkg/Library/VBoxDebugLib/VBoxPrintHex.c +++ b/src/VBox/Devices/EFI/Firmware/VBoxPkg/Library/VBoxDebugLib/VBoxPrintHex.c @@ -29,6 +29,8 @@ /********************************************************************************************************************************* * Header Files * *********************************************************************************************************************************/ +#include <Library/BaseLib.h> + #include "VBoxDebugLib.h" #include "DevEFI.h" #include "iprt/asm.h" @@ -58,25 +60,25 @@ size_t VBoxPrintHex(UINT64 uValue, size_t cbType) switch (cbType) { case 8: - vboxPrintHexChar(s_szHex[(uValue >> 60) & 0xf]); - vboxPrintHexChar(s_szHex[(uValue >> 56) & 0xf]); - vboxPrintHexChar(s_szHex[(uValue >> 52) & 0xf]); - vboxPrintHexChar(s_szHex[(uValue >> 48) & 0xf]); - vboxPrintHexChar(s_szHex[(uValue >> 44) & 0xf]); - vboxPrintHexChar(s_szHex[(uValue >> 40) & 0xf]); - vboxPrintHexChar(s_szHex[(uValue >> 36) & 0xf]); - vboxPrintHexChar(s_szHex[(uValue >> 32) & 0xf]); + vboxPrintHexChar(s_szHex[RShiftU64(uValue, 60) & 0xf]); + vboxPrintHexChar(s_szHex[RShiftU64(uValue, 56) & 0xf]); + vboxPrintHexChar(s_szHex[RShiftU64(uValue, 52) & 0xf]); + vboxPrintHexChar(s_szHex[RShiftU64(uValue, 48) & 0xf]); + vboxPrintHexChar(s_szHex[RShiftU64(uValue, 44) & 0xf]); + vboxPrintHexChar(s_szHex[RShiftU64(uValue, 40) & 0xf]); + vboxPrintHexChar(s_szHex[RShiftU64(uValue, 36) & 0xf]); + vboxPrintHexChar(s_szHex[RShiftU64(uValue, 32) & 0xf]); case 4: - vboxPrintHexChar(s_szHex[(uValue >> 28) & 0xf]); - vboxPrintHexChar(s_szHex[(uValue >> 24) & 0xf]); - vboxPrintHexChar(s_szHex[(uValue >> 20) & 0xf]); - vboxPrintHexChar(s_szHex[(uValue >> 16) & 0xf]); + vboxPrintHexChar(s_szHex[RShiftU64(uValue, 28) & 0xf]); + vboxPrintHexChar(s_szHex[RShiftU64(uValue, 24) & 0xf]); + vboxPrintHexChar(s_szHex[RShiftU64(uValue, 20) & 0xf]); + vboxPrintHexChar(s_szHex[RShiftU64(uValue, 16) & 0xf]); case 2: - vboxPrintHexChar(s_szHex[(uValue >> 12) & 0xf]); - vboxPrintHexChar(s_szHex[(uValue >> 8) & 0xf]); + vboxPrintHexChar(s_szHex[RShiftU64(uValue, 12) & 0xf]); + vboxPrintHexChar(s_szHex[RShiftU64(uValue, 8) & 0xf]); case 1: - vboxPrintHexChar(s_szHex[(uValue >> 4) & 0xf]); - vboxPrintHexChar(s_szHex[(uValue ) & 0xf]); + vboxPrintHexChar(s_szHex[RShiftU64(uValue, 4) & 0xf]); + vboxPrintHexChar(s_szHex[ (uValue ) & 0xf]); break; } return cbType * 2; |