Title: [281496] trunk/Source/_javascript_Core
Revision
281496
Author
[email protected]
Date
2021-08-24 09:57:27 -0700 (Tue, 24 Aug 2021)

Log Message

Unreviewed, reverting r281321.
https://bugs.webkit.org/show_bug.cgi?id=229449

causes crashes on ARM64

Reverted changeset:

"Add some offlineasm enhancements."
https://bugs.webkit.org/show_bug.cgi?id=229332
https://commits.webkit.org/r281321

Modified Paths

Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (281495 => 281496)


--- trunk/Source/_javascript_Core/ChangeLog	2021-08-24 16:29:27 UTC (rev 281495)
+++ trunk/Source/_javascript_Core/ChangeLog	2021-08-24 16:57:27 UTC (rev 281496)
@@ -1,3 +1,16 @@
+2021-08-24  Commit Queue  <[email protected]>
+
+        Unreviewed, reverting r281321.
+        https://bugs.webkit.org/show_bug.cgi?id=229449
+
+        causes crashes on ARM64
+
+        Reverted changeset:
+
+        "Add some offlineasm enhancements."
+        https://bugs.webkit.org/show_bug.cgi?id=229332
+        https://commits.webkit.org/r281321
+
 2021-08-23  Saam Barati  <[email protected]>
 
         Disable peephole optimizations in the byte code generator after rewriting instructions for for-in

Modified: trunk/Source/_javascript_Core/llint/LowLevelInterpreter.asm (281495 => 281496)


--- trunk/Source/_javascript_Core/llint/LowLevelInterpreter.asm	2021-08-24 16:29:27 UTC (rev 281495)
+++ trunk/Source/_javascript_Core/llint/LowLevelInterpreter.asm	2021-08-24 16:57:27 UTC (rev 281496)
@@ -1964,8 +1964,6 @@
 _js_trampoline_llint_function_for_construct_arity_check_tag_wide32:
     crash()
 
-include? LowLevelInterpreterAdditions
-
 # Value-representation-specific code.
 if JSVALUE64
     include LowLevelInterpreter64

Modified: trunk/Source/_javascript_Core/llint/LowLevelInterpreter.cpp (281495 => 281496)


--- trunk/Source/_javascript_Core/llint/LowLevelInterpreter.cpp	2021-08-24 16:29:27 UTC (rev 281495)
+++ trunk/Source/_javascript_Core/llint/LowLevelInterpreter.cpp	2021-08-24 16:57:27 UTC (rev 281496)
@@ -495,7 +495,7 @@
 #if CPU(ARM_THUMB2)
 #define OFFLINE_ASM_GLOBAL_LABEL(label)          \
     ".text\n"                                    \
-    ".balign 4\n"                                 \
+    ".align 4\n"                                 \
     ".globl " SYMBOL_STRING(label) "\n"          \
     HIDE_SYMBOL(label) "\n"                      \
     ".thumb\n"                                   \
@@ -504,7 +504,7 @@
 #elif CPU(ARM64)
 #define OFFLINE_ASM_GLOBAL_LABEL(label)         \
     ".text\n"                                   \
-    ".balign 4\n"                                \
+    ".align 4\n"                                \
     ".globl " SYMBOL_STRING(label) "\n"         \
     HIDE_SYMBOL(label) "\n"                     \
     SYMBOL_STRING(label) ":\n"

Modified: trunk/Source/_javascript_Core/offlineasm/ast.rb (281495 => 281496)


--- trunk/Source/_javascript_Core/offlineasm/ast.rb	2021-08-24 16:29:27 UTC (rev 281495)
+++ trunk/Source/_javascript_Core/offlineasm/ast.rb	2021-08-24 16:57:27 UTC (rev 281496)
@@ -944,15 +944,7 @@
         when "globalAnnotation"
             $asm.putGlobalAnnotation
         when "emit"
-            str = "";
-            for operand in operands do
-                if (operand.is_a? LocalLabelReference)
-                    str += operand.asmLabel
-                else
-                    str += "#{operand.dump}"
-                end
-            end
-            $asm.puts "#{str}"
+            $asm.puts "#{operands[0].dump}"
         when "tagCodePtr", "tagReturnAddress", "untagReturnAddress", "removeCodePtrTag", "untagArrayPtr", "removeArrayPtrTag"
         else
             raise "Unhandled opcode #{opcode} at #{codeOriginString}"

Modified: trunk/Source/_javascript_Core/offlineasm/parser.rb (281495 => 281496)


--- trunk/Source/_javascript_Core/offlineasm/parser.rb	2021-08-24 16:29:27 UTC (rev 281495)
+++ trunk/Source/_javascript_Core/offlineasm/parser.rb	2021-08-24 16:57:27 UTC (rev 281496)
@@ -200,8 +200,6 @@
             result << Token.new(CodeOrigin.new(file, lineNumber), $&)
         when /\A".*"/
             result << Token.new(CodeOrigin.new(file, lineNumber), $&)
-        when /\?/
-            result << Token.new(CodeOrigin.new(file, lineNumber), $&)
         else
             raise "Lexer error at #{CodeOrigin.new(file, lineNumber).to_s}, unexpected sequence #{str[0..20].inspect}"
         end
@@ -263,9 +261,6 @@
         @tokens = lex(data, fileName)
         @idx = 0
         @annotation = nil
-        # FIXME: CMake does not currently set BUILT_PRODUCTS_DIR.
-        # https://bugs.webkit.org/show_bug.cgi?id=229340
-        @buildProductsDirectory = ENV['BUILT_PRODUCTS_DIR'];
     end
     
     def parseError(*comment)
@@ -822,22 +817,11 @@
                 @idx += 1
             elsif @tokens[@idx] == "include"
                 @idx += 1
-                isOptional = false
-                if @tokens[@idx] == "?"
-                    isOptional = true
-                    @idx += 1
-                end
                 parseError unless isIdentifier(@tokens[@idx])
                 moduleName = @tokens[@idx].string
+                fileName = IncludeFile.new(moduleName, @tokens[@idx].codeOrigin.fileName.dirname).fileName
                 @idx += 1
-                additionsDirectoryName = "#{@buildProductsDirectory}/usr/local/include/WebKitAdditions/"
-                fileName = IncludeFile.new(moduleName, additionsDirectoryName).fileName
-                if not File.exists?(fileName)
-                    fileName = IncludeFile.new(moduleName, @tokens[@idx].codeOrigin.fileName.dirname).fileName
-                end
-                fileExists = File.exists?(fileName)
-                raise "File not found: #{fileName}" if not fileExists and not isOptional
-                list << parse(fileName) if fileExists
+                list << parse(fileName)
             else
                 parseError "Expecting terminal #{final} #{comment}"
             end
@@ -854,22 +838,12 @@
                 break
             elsif @tokens[@idx] == "include"
                 @idx += 1
-                isOptional = false
-                if @tokens[@idx] == "?"
-                    isOptional = true
-                    @idx += 1
-                end
                 parseError unless isIdentifier(@tokens[@idx])
                 moduleName = @tokens[@idx].string
+                fileName = IncludeFile.new(moduleName, @tokens[@idx].codeOrigin.fileName.dirname).fileName
                 @idx += 1
-                additionsDirectoryName = "#{@buildProductsDirectory}/usr/local/include/WebKitAdditions/"
-                fileName = IncludeFile.new(moduleName, additionsDirectoryName).fileName
-                if not File.exists?(fileName)
-                    fileName = IncludeFile.new(moduleName, @tokens[@idx].codeOrigin.fileName.dirname).fileName
-                end
-                fileExists = File.exists?(fileName)
-                raise "File not found: #{fileName}" if not fileExists and not isOptional
-                fileList << fileName if fileExists
+                
+                fileList << fileName
             else
                 @idx += 1
             end
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to