WebKit Bugzilla
New
Browse
Search+
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
[patch]
the patch
blah.patch (text/plain), 8.12 KB, created by
Filip Pizlo
on 2014-05-19 16:30:26 PDT
(
hide
)
Description:
the patch
Filename:
MIME Type:
Creator:
Filip Pizlo
Created:
2014-05-19 16:30:26 PDT
Size:
8.12 KB
patch
obsolete
>Index: PerformanceTests/SunSpider/ChangeLog >=================================================================== >--- PerformanceTests/SunSpider/ChangeLog (revision 169080) >+++ PerformanceTests/SunSpider/ChangeLog (working copy) >@@ -1,3 +1,12 @@ >+2014-05-19 Filip Pizlo <fpizlo@apple.com> >+ >+ Take care of some ARM64 test failures >+ https://bugs.webkit.org/show_bug.cgi?id=133090 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ * profiler-test.yaml: Skip these on not-x86. >+ > 2014-03-14 Maciej Stachowiak <mjs@apple.com> > > Replace "Apple Computer, Inc." with "Apple Inc." in copyright headers >Index: PerformanceTests/SunSpider/profiler-test.yaml >=================================================================== >--- PerformanceTests/SunSpider/profiler-test.yaml (revision 169065) >+++ PerformanceTests/SunSpider/profiler-test.yaml (working copy) >@@ -1,4 +1,4 @@ >-# Copyright (C) 2013 Apple Inc. All rights reserved. >+# Copyright (C) 2013, 2014 Apple Inc. All rights reserved. > # > # Redistribution and use in source and binary forms, with or without > # modification, are permitted provided that the following conditions >@@ -25,4 +25,9 @@ > # with the runProfiler command. > > - path: tests/sunspider-1.0 >- cmd: runProfiler >+ cmd: | >+ if $architecture =~ /x86/ >+ runProfiler >+ else >+ skip >+ end >Index: Source/JavaScriptCore/ChangeLog >=================================================================== >--- Source/JavaScriptCore/ChangeLog (revision 169080) >+++ Source/JavaScriptCore/ChangeLog (working copy) >@@ -1,3 +1,20 @@ >+2014-05-19 Filip Pizlo <fpizlo@apple.com> >+ >+ Take care of some ARM64 test failures >+ https://bugs.webkit.org/show_bug.cgi?id=133090 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ Constant blinding on ARM64 cannot use the scratch register. >+ >+ * assembler/MacroAssembler.h: >+ (JSC::MacroAssembler::convertInt32ToDouble): >+ (JSC::MacroAssembler::branchPtr): >+ (JSC::MacroAssembler::storePtr): >+ (JSC::MacroAssembler::store64): >+ * assembler/MacroAssemblerARM64.h: >+ (JSC::MacroAssemblerARM64::scratchRegisterForBlinding): >+ > 2014-05-19 Tanay C <tanay.c@samsung.com> > > Removing some check-webkit-style warnings from ./dfg >Index: Source/JavaScriptCore/assembler/MacroAssembler.h >=================================================================== >--- Source/JavaScriptCore/assembler/MacroAssembler.h (revision 169065) >+++ Source/JavaScriptCore/assembler/MacroAssembler.h (working copy) >@@ -1140,7 +1140,7 @@ public: > > void convertInt32ToDouble(Imm32 imm, FPRegisterID dest) > { >- if (shouldBlind(imm)) { >+ if (shouldBlind(imm) && haveScratchRegisterForBlinding()) { > RegisterID scratchRegister = scratchRegisterForBlinding(); > loadXorBlindedConstant(xorBlindConstant(imm), scratchRegister); > convertInt32ToDouble(scratchRegister, dest); >@@ -1176,7 +1176,7 @@ public: > > Jump branchPtr(RelationalCondition cond, RegisterID left, ImmPtr right) > { >- if (shouldBlind(right)) { >+ if (shouldBlind(right) && haveScratchRegisterForBlinding()) { > RegisterID scratchRegister = scratchRegisterForBlinding(); > loadRotationBlindedConstant(rotationBlindConstant(right), scratchRegister); > return branchPtr(cond, left, scratchRegister); >@@ -1186,7 +1186,7 @@ public: > > void storePtr(ImmPtr imm, Address dest) > { >- if (shouldBlind(imm)) { >+ if (shouldBlind(imm) && haveScratchRegisterForBlinding()) { > RegisterID scratchRegister = scratchRegisterForBlinding(); > loadRotationBlindedConstant(rotationBlindConstant(imm), scratchRegister); > storePtr(scratchRegister, dest); >@@ -1196,7 +1196,7 @@ public: > > void store64(Imm64 imm, Address dest) > { >- if (shouldBlind(imm)) { >+ if (shouldBlind(imm) && haveScratchRegisterForBlinding()) { > RegisterID scratchRegister = scratchRegisterForBlinding(); > loadRotationBlindedConstant(rotationBlindConstant(imm), scratchRegister); > store64(scratchRegister, dest); >Index: Source/JavaScriptCore/assembler/MacroAssemblerARM64.h >=================================================================== >--- Source/JavaScriptCore/assembler/MacroAssemblerARM64.h (revision 169065) >+++ Source/JavaScriptCore/assembler/MacroAssemblerARM64.h (working copy) >@@ -2408,7 +2408,11 @@ public: > return ARM64Assembler::maxJumpReplacementSize(); > } > >- RegisterID scratchRegisterForBlinding() { return getCachedDataTempRegisterIDAndInvalidate(); } >+ RegisterID scratchRegisterForBlinding() { >+ // We *do not* have a scratch register for blinding. >+ RELEASE_ASSERT_NOT_REACHED(); >+ return getCachedDataTempRegisterIDAndInvalidate(); >+ } > > static bool canJumpReplacePatchableBranchPtrWithPatch() { return false; } > static bool canJumpReplacePatchableBranch32WithPatch() { return false; } >Index: Tools/ChangeLog >=================================================================== >--- Tools/ChangeLog (revision 169080) >+++ Tools/ChangeLog (working copy) >@@ -1,3 +1,12 @@ >+2014-05-19 Filip Pizlo <fpizlo@apple.com> >+ >+ Take care of some ARM64 test failures >+ https://bugs.webkit.org/show_bug.cgi?id=133090 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ * Scripts/run-jsc-stress-tests: Make it easier to conditionally skip things. >+ > 2014-05-19 David Farler <dfarler@apple.com> > > Dashboard: OpenSource revision key changed from WebKitOpenSource to WebKit >Index: Tools/Scripts/run-jsc-stress-tests >=================================================================== >--- Tools/Scripts/run-jsc-stress-tests (revision 169065) >+++ Tools/Scripts/run-jsc-stress-tests (working copy) >@@ -176,6 +176,40 @@ unless $jscPath > exit 1 > end > >+# Try to determine architecture. Return nil on failure. >+def machOArchitectureCode >+ otoolLines = `otool -aSfh #{Shellwords.shellescape($jscPath.to_s)}`.split("\n") >+ otoolLines.each_with_index { >+ | value, index | >+ if value =~ /magic/ and value =~ /cputype/ >+ return otoolLines[index + 1].split[1].to_i >+ end >+ } >+ $stderr.puts "Warning: unable to determine architecture." >+ nil >+end >+ >+def determineArchitecture >+ code = machOArchitectureCode >+ return nil unless code >+ is64BitFlag = 0x01000000 >+ case code >+ when 7 >+ "x86" >+ when 7 | is64BitFlag >+ "x86-64" >+ when 12 >+ "arm" >+ when 12 | is64BitFlag >+ "arm64" >+ else >+ $stderr.puts "Warning: unable to determine architecture from code: #{code}" >+ nil >+ end >+end >+ >+$architecture = determineArchitecture >+ > $numFailures = 0 > > EAGER_OPTIONS = ["--thresholdForJITAfterWarmUp=10", "--thresholdForJITSoon=10", "--thresholdForOptimizeAfterWarmUp=20", "--thresholdForOptimizeAfterLongWarmUp=20", "--thresholdForOptimizeSoon=20", "--thresholdForFTLOptimizeAfterWarmUp=20", "--thresholdForFTLOptimizeSoon=20"] >@@ -478,6 +512,7 @@ def baseOutputName(kind) > end > > def addRunCommand(kind, command, outputHandler, errorHandler) >+ $didAddRunCommand = true > plan = Plan.new($benchmarkDirectory, command, baseOutputName(kind), outputHandler, errorHandler) > if $numProcessors > 1 and $runCommandOptions[:isSlow] > $runlist.unshift plan >@@ -490,7 +525,8 @@ end > # $benchmark), in which case those run commands have already been executed. Otherwise > # returns false, in which case you're supposed to add your own run commands. > def parseRunCommands >- didRun = false >+ oldDidAddRunCommand = $didAddRunCommand >+ $didAddRunCommand = false > > Dir.chdir($outputDir) { > File.open($benchmarkDirectory + $benchmark) { >@@ -506,12 +542,13 @@ def parseRunCommands > end > next unless doesMatch > eval $~.post_match >- didRun = true > } > } > } > >- didRun >+ result = $didAddRunCommand >+ $didAddRunCommand = result or oldDidAddRunCommand >+ result > end > > def slow! >@@ -797,6 +834,7 @@ def defaultRunMozillaTest(mode, *extraFi > end > > def skip >+ $didAddRunCommand = true > puts "Skipping #{$collectionName}/#{$benchmark}" > end >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Flags:
ggaren
:
review+
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 133090
: 231734