- ((UINT16 *) &InterruptHandle)[0] = (UINT16) IdtGateDecriptor->Bits.OffsetLow;\r
- ((UINT16 *) &InterruptHandle)[1] = (UINT16) IdtGateDecriptor->Bits.OffsetHigh;\r
- ((UINT32 *) &InterruptHandle)[1] = (UINT32) IdtGateDecriptor->Bits.OffsetUpper;\r
+ InterruptHandle = ((UINTN) IdtGateDecriptor->Bits.OffsetLow) |\r
+ (((UINTN) IdtGateDecriptor->Bits.OffsetHigh) << 16) |\r
+ (((UINTN) IdtGateDecriptor->Bits.OffsetUpper) << 32) ;\r