\r
case EFI_IMAGE_REL_BASED_HIGH:\r
F16 = (UINT16 *) Fixup;\r
- *F16 = (UINT16) ((*F16 << 16) + (UINT16) Adjust);\r
+ *F16 = (UINT16) (*F16 + ((UINT16) ((UINT32) Adjust >> 16)));\r
if (FixupData != NULL) {\r
*(UINT16 *) FixupData = *F16;\r
FixupData = FixupData + sizeof (UINT16);\r