Re: [edk2-devel] [PATCH 6/8] BaseTools: switch from EFI_IMAGE_MACHINE_* to IMAGE_FILE_MACHINE_*

2023-03-23 Thread Chao Li

Reviewed-by: Chao Li 


Thanks,
Chao
在 2023/3/23 19:17, Gerd Hoffmann 写道:

Use the newer versions of the machine #defines.

Signed-off-by: Gerd Hoffmann
---
  BaseTools/Source/C/EfiRom/EfiRom.h| 10 ++---
  .../C/Include/IndustryStandard/PeImage.h  |  1 +
  BaseTools/Source/C/Common/BasePeCoff.c| 28 ++---
  BaseTools/Source/C/GenFv/GenFvInternalLib.c   | 42 +--
  BaseTools/Source/C/GenFw/Elf32Convert.c   |  6 +--
  BaseTools/Source/C/GenFw/Elf64Convert.c   | 10 ++---
  BaseTools/Source/C/GenFw/GenFw.c  |  8 +---
  7 files changed, 50 insertions(+), 55 deletions(-)

diff --git a/BaseTools/Source/C/EfiRom/EfiRom.h 
b/BaseTools/Source/C/EfiRom/EfiRom.h
index 0b39e2af2e0c..887a6a51e25b 100644
--- a/BaseTools/Source/C/EfiRom/EfiRom.h
+++ b/BaseTools/Source/C/EfiRom/EfiRom.h
@@ -108,11 +108,11 @@ typedef struct {
  // Machine Types
  //
  static STRING_LOOKUP  mMachineTypes[] = {
-  { EFI_IMAGE_MACHINE_IA32, "IA32" },
-  { EFI_IMAGE_MACHINE_X64, "X64" },
-  { EFI_IMAGE_MACHINE_EBC, "EBC" },
-  { EFI_IMAGE_MACHINE_ARMT, "ARM" },
-  { EFI_IMAGE_MACHINE_AARCH64, "AA64" },
+  { IMAGE_FILE_MACHINE_I386, "IA32" },
+  { IMAGE_FILE_MACHINE_X64, "X64" },
+  { IMAGE_FILE_MACHINE_EBC, "EBC" },
+  { IMAGE_FILE_MACHINE_ARMTHUMB_MIXED, "ARM" },
+  { IMAGE_FILE_MACHINE_ARM64, "AA64" },
{ 0, NULL }
  };
  
diff --git a/BaseTools/Source/C/Include/IndustryStandard/PeImage.h b/BaseTools/Source/C/Include/IndustryStandard/PeImage.h

index 77ded3f61139..6e044938f5c6 100644
--- a/BaseTools/Source/C/Include/IndustryStandard/PeImage.h
+++ b/BaseTools/Source/C/Include/IndustryStandard/PeImage.h
@@ -42,6 +42,7 @@
  #define IMAGE_FILE_MACHINE_X64 0x8664
  #define IMAGE_FILE_MACHINE_ARM 0x01c0  // Thumb only
  #define IMAGE_FILE_MACHINE_ARMT0x01c2  // 32bit Mixed ARM and 
Thumb/Thumb 2  Little Endian
+#define IMAGE_FILE_MACHINE_ARMTHUMB_MIXED IMAGE_FILE_MACHINE_ARMT
  #define IMAGE_FILE_MACHINE_ARM64   0xAA64  // 64bit ARM Architecture, 
Little Endian
  #define IMAGE_FILE_MACHINE_RISCV64 0x5064  // 64bit RISC-V ISA
  #define IMAGE_FILE_MACHINE_LOONGARCH64 0x6264  // 64bit LoongArch Architecture
diff --git a/BaseTools/Source/C/Common/BasePeCoff.c 
b/BaseTools/Source/C/Common/BasePeCoff.c
index 78ef072bc354..bd410fb97d3d 100644
--- a/BaseTools/Source/C/Common/BasePeCoff.c
+++ b/BaseTools/Source/C/Common/BasePeCoff.c
@@ -188,13 +188,13 @@ Routine Description:
  ImageContext->Machine = TeHdr->Machine;
}
  
-  if (ImageContext->Machine != EFI_IMAGE_MACHINE_IA32 && \

-  ImageContext->Machine != EFI_IMAGE_MACHINE_X64  && \
-  ImageContext->Machine != EFI_IMAGE_MACHINE_ARMT && \
-  ImageContext->Machine != EFI_IMAGE_MACHINE_EBC  && \
-  ImageContext->Machine != EFI_IMAGE_MACHINE_AARCH64 && \
-  ImageContext->Machine != EFI_IMAGE_MACHINE_RISCV64 && \
-  ImageContext->Machine != EFI_IMAGE_MACHINE_LOONGARCH64) {
+  if (ImageContext->Machine != IMAGE_FILE_MACHINE_I386 && \
+  ImageContext->Machine != IMAGE_FILE_MACHINE_X64  && \
+  ImageContext->Machine != IMAGE_FILE_MACHINE_ARMTHUMB_MIXED && \
+  ImageContext->Machine != IMAGE_FILE_MACHINE_EBC  && \
+  ImageContext->Machine != IMAGE_FILE_MACHINE_ARM64 && \
+  ImageContext->Machine != IMAGE_FILE_MACHINE_RISCV64 && \
+  ImageContext->Machine != IMAGE_FILE_MACHINE_LOONGARCH64) {
  //
  // unsupported PeImage machine type
  //
@@ -801,16 +801,16 @@ Routine Description:
  
default:

  switch (MachineType) {
-case EFI_IMAGE_MACHINE_IA32:
+case IMAGE_FILE_MACHINE_I386:
Status = PeCoffLoaderRelocateIa32Image (Reloc, Fixup, , 
Adjust);
break;
-case EFI_IMAGE_MACHINE_ARMT:
+case IMAGE_FILE_MACHINE_ARMTHUMB_MIXED:
Status = PeCoffLoaderRelocateArmImage (, Fixup, , 
Adjust);
break;
-case EFI_IMAGE_MACHINE_RISCV64:
+case IMAGE_FILE_MACHINE_RISCV64:
Status = PeCoffLoaderRelocateRiscVImage (Reloc, Fixup, , 
Adjust);
break;
-case EFI_IMAGE_MACHINE_LOONGARCH64:
+case IMAGE_FILE_MACHINE_LOONGARCH64:
Status = PeCoffLoaderRelocateLoongArch64Image (Reloc, Fixup, 
, Adjust);
break;
  default:
@@ -1305,14 +1305,14 @@ PeCoffLoaderGetPdbPointer (
  //   generate PE32+ image with PE32 Magic.
  //
  switch (Hdr.Pe32->FileHeader.Machine) {
-case EFI_IMAGE_MACHINE_IA32:
-case EFI_IMAGE_MACHINE_ARMT:
+case IMAGE_FILE_MACHINE_I386:
+case IMAGE_FILE_MACHINE_ARMTHUMB_MIXED:
//
// Assume PE32 image with IA32 Machine field.
//
Magic = EFI_IMAGE_NT_OPTIONAL_HDR32_MAGIC;
break;
-case EFI_IMAGE_MACHINE_X64:
+case IMAGE_FILE_MACHINE_X64:
//
// Assume PE32+ image with X64 Machine field
//
diff --git a/BaseTools/Source/C/GenFv/GenFvInternalLib.c 

[edk2-devel] [PATCH 6/8] BaseTools: switch from EFI_IMAGE_MACHINE_* to IMAGE_FILE_MACHINE_*

2023-03-23 Thread Gerd Hoffmann
Use the newer versions of the machine #defines.

Signed-off-by: Gerd Hoffmann 
---
 BaseTools/Source/C/EfiRom/EfiRom.h| 10 ++---
 .../C/Include/IndustryStandard/PeImage.h  |  1 +
 BaseTools/Source/C/Common/BasePeCoff.c| 28 ++---
 BaseTools/Source/C/GenFv/GenFvInternalLib.c   | 42 +--
 BaseTools/Source/C/GenFw/Elf32Convert.c   |  6 +--
 BaseTools/Source/C/GenFw/Elf64Convert.c   | 10 ++---
 BaseTools/Source/C/GenFw/GenFw.c  |  8 +---
 7 files changed, 50 insertions(+), 55 deletions(-)

diff --git a/BaseTools/Source/C/EfiRom/EfiRom.h 
b/BaseTools/Source/C/EfiRom/EfiRom.h
index 0b39e2af2e0c..887a6a51e25b 100644
--- a/BaseTools/Source/C/EfiRom/EfiRom.h
+++ b/BaseTools/Source/C/EfiRom/EfiRom.h
@@ -108,11 +108,11 @@ typedef struct {
 // Machine Types
 //
 static STRING_LOOKUP  mMachineTypes[] = {
-  { EFI_IMAGE_MACHINE_IA32, "IA32" },
-  { EFI_IMAGE_MACHINE_X64, "X64" },
-  { EFI_IMAGE_MACHINE_EBC, "EBC" },
-  { EFI_IMAGE_MACHINE_ARMT, "ARM" },
-  { EFI_IMAGE_MACHINE_AARCH64, "AA64" },
+  { IMAGE_FILE_MACHINE_I386, "IA32" },
+  { IMAGE_FILE_MACHINE_X64, "X64" },
+  { IMAGE_FILE_MACHINE_EBC, "EBC" },
+  { IMAGE_FILE_MACHINE_ARMTHUMB_MIXED, "ARM" },
+  { IMAGE_FILE_MACHINE_ARM64, "AA64" },
   { 0, NULL }
 };
 
diff --git a/BaseTools/Source/C/Include/IndustryStandard/PeImage.h 
b/BaseTools/Source/C/Include/IndustryStandard/PeImage.h
index 77ded3f61139..6e044938f5c6 100644
--- a/BaseTools/Source/C/Include/IndustryStandard/PeImage.h
+++ b/BaseTools/Source/C/Include/IndustryStandard/PeImage.h
@@ -42,6 +42,7 @@
 #define IMAGE_FILE_MACHINE_X64 0x8664
 #define IMAGE_FILE_MACHINE_ARM 0x01c0  // Thumb only
 #define IMAGE_FILE_MACHINE_ARMT0x01c2  // 32bit Mixed ARM and 
Thumb/Thumb 2  Little Endian
+#define IMAGE_FILE_MACHINE_ARMTHUMB_MIXED IMAGE_FILE_MACHINE_ARMT
 #define IMAGE_FILE_MACHINE_ARM64   0xAA64  // 64bit ARM Architecture, 
Little Endian
 #define IMAGE_FILE_MACHINE_RISCV64 0x5064  // 64bit RISC-V ISA
 #define IMAGE_FILE_MACHINE_LOONGARCH64 0x6264  // 64bit LoongArch Architecture
diff --git a/BaseTools/Source/C/Common/BasePeCoff.c 
b/BaseTools/Source/C/Common/BasePeCoff.c
index 78ef072bc354..bd410fb97d3d 100644
--- a/BaseTools/Source/C/Common/BasePeCoff.c
+++ b/BaseTools/Source/C/Common/BasePeCoff.c
@@ -188,13 +188,13 @@ Routine Description:
 ImageContext->Machine = TeHdr->Machine;
   }
 
-  if (ImageContext->Machine != EFI_IMAGE_MACHINE_IA32 && \
-  ImageContext->Machine != EFI_IMAGE_MACHINE_X64  && \
-  ImageContext->Machine != EFI_IMAGE_MACHINE_ARMT && \
-  ImageContext->Machine != EFI_IMAGE_MACHINE_EBC  && \
-  ImageContext->Machine != EFI_IMAGE_MACHINE_AARCH64 && \
-  ImageContext->Machine != EFI_IMAGE_MACHINE_RISCV64 && \
-  ImageContext->Machine != EFI_IMAGE_MACHINE_LOONGARCH64) {
+  if (ImageContext->Machine != IMAGE_FILE_MACHINE_I386 && \
+  ImageContext->Machine != IMAGE_FILE_MACHINE_X64  && \
+  ImageContext->Machine != IMAGE_FILE_MACHINE_ARMTHUMB_MIXED && \
+  ImageContext->Machine != IMAGE_FILE_MACHINE_EBC  && \
+  ImageContext->Machine != IMAGE_FILE_MACHINE_ARM64 && \
+  ImageContext->Machine != IMAGE_FILE_MACHINE_RISCV64 && \
+  ImageContext->Machine != IMAGE_FILE_MACHINE_LOONGARCH64) {
 //
 // unsupported PeImage machine type
 //
@@ -801,16 +801,16 @@ Routine Description:
 
   default:
 switch (MachineType) {
-case EFI_IMAGE_MACHINE_IA32:
+case IMAGE_FILE_MACHINE_I386:
   Status = PeCoffLoaderRelocateIa32Image (Reloc, Fixup, , 
Adjust);
   break;
-case EFI_IMAGE_MACHINE_ARMT:
+case IMAGE_FILE_MACHINE_ARMTHUMB_MIXED:
   Status = PeCoffLoaderRelocateArmImage (, Fixup, , 
Adjust);
   break;
-case EFI_IMAGE_MACHINE_RISCV64:
+case IMAGE_FILE_MACHINE_RISCV64:
   Status = PeCoffLoaderRelocateRiscVImage (Reloc, Fixup, , 
Adjust);
   break;
-case EFI_IMAGE_MACHINE_LOONGARCH64:
+case IMAGE_FILE_MACHINE_LOONGARCH64:
   Status = PeCoffLoaderRelocateLoongArch64Image (Reloc, Fixup, 
, Adjust);
   break;
 default:
@@ -1305,14 +1305,14 @@ PeCoffLoaderGetPdbPointer (
 //   generate PE32+ image with PE32 Magic.
 //
 switch (Hdr.Pe32->FileHeader.Machine) {
-case EFI_IMAGE_MACHINE_IA32:
-case EFI_IMAGE_MACHINE_ARMT:
+case IMAGE_FILE_MACHINE_I386:
+case IMAGE_FILE_MACHINE_ARMTHUMB_MIXED:
   //
   // Assume PE32 image with IA32 Machine field.
   //
   Magic = EFI_IMAGE_NT_OPTIONAL_HDR32_MAGIC;
   break;
-case EFI_IMAGE_MACHINE_X64:
+case IMAGE_FILE_MACHINE_X64:
   //
   // Assume PE32+ image with X64 Machine field
   //
diff --git a/BaseTools/Source/C/GenFv/GenFvInternalLib.c 
b/BaseTools/Source/C/GenFv/GenFvInternalLib.c
index c8d5cac8e26e..f466324d6192 100644
--- a/BaseTools/Source/C/GenFv/GenFvInternalLib.c
+++