Title: [131287] trunk/Source/_javascript_Core
Revision
131287
Author
[email protected]
Date
2012-10-14 19:33:01 -0700 (Sun, 14 Oct 2012)

Log Message

REGRESSION(126886): Fat binary builds don't know how to handle architecture variants to which the LLInt is agnostic
https://bugs.webkit.org/show_bug.cgi?id=99270

Reviewed by Geoffrey Garen.

The fix is to hash cons the offsets based on configuration index, not the offsets
themselves.

* offlineasm/offsets.rb:

Modified Paths

Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (131286 => 131287)


--- trunk/Source/_javascript_Core/ChangeLog	2012-10-15 02:01:39 UTC (rev 131286)
+++ trunk/Source/_javascript_Core/ChangeLog	2012-10-15 02:33:01 UTC (rev 131287)
@@ -1,3 +1,15 @@
+2012-10-14  Filip Pizlo  <[email protected]>
+
+        REGRESSION(126886): Fat binary builds don't know how to handle architecture variants to which the LLInt is agnostic
+        https://bugs.webkit.org/show_bug.cgi?id=99270
+
+        Reviewed by Geoffrey Garen.
+
+        The fix is to hash cons the offsets based on configuration index, not the offsets
+        themselves.
+
+        * offlineasm/offsets.rb:
+
 2012-10-13  Filip Pizlo  <[email protected]>
 
         IndexingType should not have a bit for each type

Modified: trunk/Source/_javascript_Core/offlineasm/offsets.rb (131286 => 131287)


--- trunk/Source/_javascript_Core/offlineasm/offsets.rb	2012-10-15 02:01:39 UTC (rev 131286)
+++ trunk/Source/_javascript_Core/offlineasm/offsets.rb	2012-10-15 02:33:01 UTC (rev 131287)
@@ -60,7 +60,7 @@
 
 #
 # offsetsAndConfigurationIndex(ast, file) ->
-#     {[offsets, index], ...}
+#     [[offsets, index], ...]
 #
 # Parses the offsets from a file and returns a list of offsets and the
 # index of the configuration that is valid in this build target.
@@ -154,16 +154,19 @@
                     | data |
                     offsets << readInt(endianness, data)
                 }
-                if not result.has_key?(offsets)
-                    result[offsets] = index
-                end
+                result[index] = offsets
             }
         end
     }
     
     raise MissingMagicValuesException unless result.length >= 1
     
-    result
+    # result is {index1=>offsets1, index2=>offsets2} but we want to return
+    # [[offsets1, index1], [offsets2, index2]].
+    return result.map {
+        | pair |
+        pair.reverse
+    }
 end
 
 #
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to