Title: [220994] trunk/Source/_javascript_Core
Revision
220994
Author
[email protected]
Date
2017-08-21 18:07:32 -0700 (Mon, 21 Aug 2017)

Log Message

Only generate offline asm for the ARCHS (xcodebuild) or the current system (CMake)
https://bugs.webkit.org/show_bug.cgi?id=175690

Reviewed by Michael Saboff.

This should reduce some of the time we spend building offline asm
in our builds (except for linux since they already did this).

* CMakeLists.txt:
* _javascript_Core.xcodeproj/project.pbxproj:
* offlineasm/backends.rb:
* offlineasm/generate_offset_extractor.rb:

Modified Paths

Diff

Modified: trunk/Source/_javascript_Core/CMakeLists.txt (220993 => 220994)


--- trunk/Source/_javascript_Core/CMakeLists.txt	2017-08-22 01:07:17 UTC (rev 220993)
+++ trunk/Source/_javascript_Core/CMakeLists.txt	2017-08-22 01:07:32 UTC (rev 220994)
@@ -1162,7 +1162,7 @@
     ${DERIVED_SOURCES_JAVASCRIPTCORE_DIR}/BytecodeStructs.h
 )
 
-if ((${CMAKE_SYSTEM_NAME} STREQUAL "Linux"))
+if (NOT WIN32)
     if (WTF_CPU_X86)
         set(OFFLINE_ASM_BACKEND "X86")
     elseif (WTF_CPU_X86_64)

Modified: trunk/Source/_javascript_Core/ChangeLog (220993 => 220994)


--- trunk/Source/_javascript_Core/ChangeLog	2017-08-22 01:07:17 UTC (rev 220993)
+++ trunk/Source/_javascript_Core/ChangeLog	2017-08-22 01:07:32 UTC (rev 220994)
@@ -1,3 +1,18 @@
+2017-08-21  Keith Miller  <[email protected]>
+
+        Only generate offline asm for the ARCHS (xcodebuild) or the current system (CMake)
+        https://bugs.webkit.org/show_bug.cgi?id=175690
+
+        Reviewed by Michael Saboff.
+
+        This should reduce some of the time we spend building offline asm
+        in our builds (except for linux since they already did this).
+
+        * CMakeLists.txt:
+        * _javascript_Core.xcodeproj/project.pbxproj:
+        * offlineasm/backends.rb:
+        * offlineasm/generate_offset_extractor.rb:
+
 2017-08-20  Mark Lam  <[email protected]>
 
         Gardening: fix CLoop build.

Modified: trunk/Source/_javascript_Core/_javascript_Core.xcodeproj/project.pbxproj (220993 => 220994)


--- trunk/Source/_javascript_Core/_javascript_Core.xcodeproj/project.pbxproj	2017-08-22 01:07:17 UTC (rev 220993)
+++ trunk/Source/_javascript_Core/_javascript_Core.xcodeproj/project.pbxproj	2017-08-22 01:07:32 UTC (rev 220994)
@@ -9920,9 +9920,9 @@
 			outputPaths = (
 			);
 			runOnlyForDeploymentPostprocessing = 0;
-			shellPath = /bin/sh;
-			shellScript = "set -e\n\nmkdir -p \"${BUILT_PRODUCTS_DIR}/LLIntOffsets/\"\n\n/usr/bin/env ruby \"${SRCROOT}/offlineasm/generate_offset_extractor.rb\" \"-I${BUILT_PRODUCTS_DIR}/DerivedSources/_javascript_Core\" \"${SRCROOT}/llint/LowLevelInterpreter.asm\" \"${BUILT_PRODUCTS_DIR}/LLIntOffsets/LLIntDesiredOffsets.h\" \"X86,X86_64,ARMv7,ARMv7s,ARM64,C_LOOP\"\n";
-		};
+                        shellPath = /bin/sh;
+                        shellScript = "set -e\n\nmkdir -p \"${BUILT_PRODUCTS_DIR}/LLIntOffsets/\"\n\n/usr/bin/env ruby \"${SRCROOT}/offlineasm/generate_offset_extractor.rb\" \"-I${BUILT_PRODUCTS_DIR}/DerivedSources/_javascript_Core\" \"${SRCROOT}/llint/LowLevelInterpreter.asm\" \"${BUILT_PRODUCTS_DIR}/LLIntOffsets/LLIntDesiredOffsets.h\" \"${ARCHS}\"\n";
+                };
 		1A02D9A81B34A882000D1522 /* Add Symlink in /System/Library/PrivateFrameworks */ = {
 			isa = PBXShellScriptBuildPhase;
 			buildActionMask = 8;

Modified: trunk/Source/_javascript_Core/offlineasm/backends.rb (220993 => 220994)


--- trunk/Source/_javascript_Core/offlineasm/backends.rb	2017-08-22 01:07:17 UTC (rev 220993)
+++ trunk/Source/_javascript_Core/offlineasm/backends.rb	2017-08-22 01:07:32 UTC (rev 220994)
@@ -72,6 +72,21 @@
     $allBackends[backend] = true
 }
 
+def canonicalizeBackendNames(backendNames)
+    newBackendNames = []
+    backendNames.each {
+        | backendName |
+        backendName = backendName.upcase
+        if backendName =~ /ARM.*/
+            backendName.sub!(/ARMV7(S?)(.*)/) { | _ | 'ARMv7' + $1.downcase + $2 }
+        end
+        backendName = "X86" if backendName == "I386"
+        newBackendNames << backendName
+        newBackendNames << "ARMv7" if backendName == "ARMv7s"
+    }
+    newBackendNames.uniq
+end
+
 def includeOnlyBackends(list)
     newValidBackends = {}
     list.each {

Modified: trunk/Source/_javascript_Core/offlineasm/generate_offset_extractor.rb (220993 => 220994)


--- trunk/Source/_javascript_Core/offlineasm/generate_offset_extractor.rb	2017-08-22 01:07:17 UTC (rev 220993)
+++ trunk/Source/_javascript_Core/offlineasm/generate_offset_extractor.rb	2017-08-22 01:07:32 UTC (rev 220994)
@@ -39,11 +39,9 @@
 inputFlnm = ARGV.shift
 outputFlnm = ARGV.shift
 
-validBackends = ARGV.shift
-if validBackends
-    $stderr.puts "Only dealing with backends: #{validBackends}"
-    includeOnlyBackends(validBackends.split(","))
-end
+validBackends = canonicalizeBackendNames(ARGV.shift.split(","))
+$stderr.puts "Only dealing with backends: #{validBackends}"
+includeOnlyBackends(validBackends)
 
 def emitMagicNumber
     OFFSET_MAGIC_NUMBERS.each {
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to