IdtTable[Index].Ia32IdtEntry.Bits.Selector = SYS_CODE64_SEL;\r
\r
IdtTable[Index].Ia32IdtEntry.Bits.OffsetLow = (UINT16) VectorAddress;\r
- IdtTable[Index].Ia32IdtEntry.Bits.OffsetHigh = (UINT16) (VectorAddress >> 16);\r
- IdtTable[Index].Offset32To63 = (UINT32) (VectorAddress >> 32);\r
+ IdtTable[Index].Ia32IdtEntry.Bits.OffsetHigh = (UINT16) (RShiftU64 (VectorAddress, 16));\r
+ IdtTable[Index].Offset32To63 = (UINT32) (RShiftU64 (VectorAddress, 32));\r
IdtTable[Index].Reserved = 0;\r
\r
CopyMem ((VOID *) (UINTN) VectorAddress, TemplateBase, SizeOfTemplate);\r