diff --git a/UefiPayloadPkg/Library/CbParseLib/CbParseLib.c b/UefiPayloadPkg/Library/CbParseLib/CbParseLib.c index 8a353f77f6..9e149532a7 100644 --- a/UefiPayloadPkg/Library/CbParseLib/CbParseLib.c +++ b/UefiPayloadPkg/Library/CbParseLib/CbParseLib.c @@ -282,7 +282,7 @@ FindCbMemTable ( for (Idx = 0; Idx < Root->num_entries; Idx++) { if (Entries[Idx].id == TableId) { if (IsImdEntry) { - *MemTable = (VOID *)((UINTN)Entries[Idx].start + (UINTN)Root); + *MemTable = (VOID *)((INTN)(INT32)Entries[Idx].start + (UINTN)Root); } else { *MemTable = (VOID *)(UINTN)Entries[Idx].start; }