Blame SOURCES/name-miscompare.patch

32dd66
On big-endian machines, a test case looking for the methods _L1D and _E1D
32dd66
in the same scope would fail (see tests/misc/badcode.asl:184).  The names
32dd66
to be compared were being treated as 32-bit ints, and not strings.  Hence,
32dd66
the characters were re-ordered incorrectly, mismatching the assumptions
32dd66
made in the remainder of the function.
32dd66
32dd66
diff -urN acpica-unix2-20130214/source/compiler/aslanalyze.c acpica-unix2-20130214-names/source/compiler/aslanalyze.c
32dd66
--- acpica-unix2-20130214/source/compiler/aslanalyze.c	2013-03-21 17:31:25.803324990 -0600
32dd66
+++ acpica-unix2-20130214-names/source/compiler/aslanalyze.c	2013-03-21 17:43:45.357616802 -0600
32dd66
@@ -446,7 +446,7 @@
32dd66
 
32dd66
     /* Need a null-terminated string version of NameSeg */
32dd66
 
32dd66
-    ACPI_MOVE_32_TO_32 (Name, &Op->Asl.NameSeg);
32dd66
+    ACPI_MOVE_NAME (Name, &Op->Asl.NameSeg);
32dd66
     Name[ACPI_NAME_SIZE] = 0;
32dd66
 
32dd66
     /*
32dd66
@@ -473,7 +473,7 @@
32dd66
      * We are now sure we have an _Lxx or _Exx.
32dd66
      * Create the target name that would cause collision (Flip E/L)
32dd66
      */
32dd66
-    ACPI_MOVE_32_TO_32 (Target, Name);
32dd66
+    ACPI_MOVE_NAME (Target, Name);
32dd66
 
32dd66
     /* Inject opposite letter ("L" versus "E") */
32dd66