From: Ard Biesheuvel Date: Wed, 5 Dec 2018 08:15:48 +0000 (+0100) Subject: BaseTools/CommonLib: drop the use of MAX_ADDRESS X-Git-Tag: edk2-stable201903~515 X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=commitdiff_plain;h=67938bcc9d9ed7b1867d29e47f3547bdf299f8c6 BaseTools/CommonLib: drop the use of MAX_ADDRESS The macro MAX_ADDRESS represents the largest virtual address that is valid for a certain architecture. For the BaseTools, this quantity is irrelevant, since the same tools can be used to build for different targets. Since we only refer to it in a single place, which is an ASSERT() that doesn't seem particularly useful (it ensures that memcpy() will not be called with arguments that will make it read beyond the end of the address space and wrap around), let's drop the ASSERT and all references to MAX_ADDRESS. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Ard Biesheuvel Reviewed-by: Philippe Mathieu-Daudé Reviewed-by: Laszlo Ersek Reviewed-by: Liming Gao --- diff --git a/BaseTools/Source/C/Common/CommonLib.c b/BaseTools/Source/C/Common/CommonLib.c index 42dfa82162..5c40fdb5fd 100644 --- a/BaseTools/Source/C/Common/CommonLib.c +++ b/BaseTools/Source/C/Common/CommonLib.c @@ -1236,7 +1236,6 @@ InternalAllocateCopyPool ( VOID *Memory; ASSERT (Buffer != NULL); - ASSERT (AllocationSize <= (MAX_ADDRESS - (UINTN) Buffer + 1)); Memory = malloc (AllocationSize); if (Memory != NULL) { diff --git a/BaseTools/Source/C/Include/AArch64/ProcessorBind.h b/BaseTools/Source/C/Include/AArch64/ProcessorBind.h index e7e9d83198..f956cab453 100644 --- a/BaseTools/Source/C/Include/AArch64/ProcessorBind.h +++ b/BaseTools/Source/C/Include/AArch64/ProcessorBind.h @@ -90,11 +90,6 @@ typedef INT64 INTN; /// #define MAX_2_BITS 0xC000000000000000 -/// -/// Maximum legal AARCH64 address -/// -#define MAX_ADDRESS 0xFFFFFFFFFFFFFFFF - /// /// The stack alignment required for AARCH64 /// diff --git a/BaseTools/Source/C/Include/Arm/ProcessorBind.h b/BaseTools/Source/C/Include/Arm/ProcessorBind.h index be4aac9766..856d2bd9ef 100644 --- a/BaseTools/Source/C/Include/Arm/ProcessorBind.h +++ b/BaseTools/Source/C/Include/Arm/ProcessorBind.h @@ -88,11 +88,6 @@ typedef INT32 INTN; /// #define MAX_2_BITS 0xC0000000 -/// -/// Maximum legal ARM address -/// -#define MAX_ADDRESS 0xFFFFFFFF - /// /// The stack alignment required for ARM /// diff --git a/BaseTools/Source/C/Include/Common/UefiBaseTypes.h b/BaseTools/Source/C/Include/Common/UefiBaseTypes.h index aa1aef3ce6..696ac15e4c 100644 --- a/BaseTools/Source/C/Include/Common/UefiBaseTypes.h +++ b/BaseTools/Source/C/Include/Common/UefiBaseTypes.h @@ -170,6 +170,5 @@ typedef union { #define EFI_MAX_BIT MAX_BIT -#define EFI_MAX_ADDRESS MAX_ADDRESS #endif diff --git a/BaseTools/Source/C/Include/Ia32/ProcessorBind.h b/BaseTools/Source/C/Include/Ia32/ProcessorBind.h index 4719b53d37..96ac691df0 100644 --- a/BaseTools/Source/C/Include/Ia32/ProcessorBind.h +++ b/BaseTools/Source/C/Include/Ia32/ProcessorBind.h @@ -131,11 +131,6 @@ typedef INT32 INTN; #define MAX_BIT 0x80000000 #define MAX_2_BITS 0xC0000000 -// -// Maximum legal IA-32 address -// -#define MAX_ADDRESS 0xFFFFFFFF - // // Modifier to ensure that all protocol member functions and EFI intrinsics // use the correct C calling convention. All protocol member functions and diff --git a/BaseTools/Source/C/Include/X64/ProcessorBind.h b/BaseTools/Source/C/Include/X64/ProcessorBind.h index c625f8cef4..9877385083 100644 --- a/BaseTools/Source/C/Include/X64/ProcessorBind.h +++ b/BaseTools/Source/C/Include/X64/ProcessorBind.h @@ -150,11 +150,6 @@ typedef INT64 INTN; #define MAX_BIT 0x8000000000000000ULL #define MAX_2_BITS 0xC000000000000000ULL -// -// Maximum legal Itanium-based address -// -#define MAX_ADDRESS 0xFFFFFFFFFFFFFFFFULL - // // Modifier to ensure that all protocol member functions and EFI intrinsics // use the correct C calling convention. All protocol member functions and