Blame SOURCES/name-miscompare.patch

44a778
On big-endian machines, a test case looking for the methods _L1D and _E1D
44a778
in the same scope would fail (see tests/misc/badcode.asl:184).  The names
44a778
to be compared were being treated as 32-bit ints, and not strings.  Hence,
44a778
the characters were re-ordered incorrectly, mismatching the assumptions
44a778
made in the remainder of the function.
44a778
44a778
diff --git a/source/compiler/aslanalyze.c b/source/compiler/aslanalyze.c
44a778
index bf5b37c..11eef08 100644
44a778
--- a/source/compiler/aslanalyze.c
44a778
+++ b/source/compiler/aslanalyze.c
44a778
@@ -461,7 +461,7 @@ ApCheckForGpeNameConflict (
44a778
 
44a778
     /* Need a null-terminated string version of NameSeg */
44a778
 
44a778
-    ACPI_MOVE_32_TO_32 (Name, &Op->Asl.NameSeg);
44a778
+    ACPI_MOVE_NAME (Name, &Op->Asl.NameSeg);
44a778
     Name[ACPI_NAME_SIZE] = 0;
44a778
 
44a778
     /*
44a778
@@ -488,7 +488,7 @@ ApCheckForGpeNameConflict (
44a778
      * We are now sure we have an _Lxx or _Exx.
44a778
      * Create the target name that would cause collision (Flip E/L)
44a778
      */
44a778
-    ACPI_MOVE_32_TO_32 (Target, Name);
44a778
+    ACPI_MOVE_NAME (Target, Name);
44a778
 
44a778
     /* Inject opposite letter ("L" versus "E") */
44a778