WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
18626
SQUIRRELFISH: support the "slow script" dialog
https://bugs.webkit.org/show_bug.cgi?id=18626
Summary
SQUIRRELFISH: support the "slow script" dialog
Maciej Stachowiak
Reported
2008-04-19 14:37:09 PDT
SquirrelFish does not support the timeouts and callbacks that trunk uses to implement the "slow script" dialog. We'll need this to work to merge to trunk.
Attachments
Patch, regresses perf on some systems
(9.43 KB, patch)
2008-05-16 02:59 PDT
,
Oliver Hunt
no flags
Details
Formatted Diff
Diff
More complete version patch
(11.40 KB, patch)
2008-05-20 01:45 PDT
,
Oliver Hunt
no flags
Details
Formatted Diff
Diff
Final (hopefully) patch
(27.52 KB, patch)
2008-06-27 20:31 PDT
,
Oliver Hunt
no flags
Details
Formatted Diff
Diff
Show Obsolete
(2)
View All
Add attachment
proposed patch, testcase, etc.
Oliver Hunt
Comment 1
2008-05-15 02:32:38 PDT
Added for for, while, and do..while loops with M JavaScriptCore/ChangeLog M JavaScriptCore/VM/CodeBlock.cpp M JavaScriptCore/VM/CodeGenerator.cpp M JavaScriptCore/VM/CodeGenerator.h M JavaScriptCore/VM/ExceptionHelpers.cpp M JavaScriptCore/VM/ExceptionHelpers.h M JavaScriptCore/VM/Machine.cpp M JavaScriptCore/VM/Opcode.h M JavaScriptCore/kjs/interpreter.cpp M JavaScriptCore/kjs/nodes.cpp M JavaScriptCore/kjs/object.h Committed
r33483
Oliver Hunt
Comment 2
2008-05-15 05:56:46 PDT
That patch caused an epic regression on cameron's system so i rolled it out in
r33484
Oliver Hunt
Comment 3
2008-05-16 02:59:52 PDT
Created
attachment 21200
[details]
Patch, regresses perf on some systems
Geoffrey Garen
Comment 4
2008-05-17 12:05:05 PDT
Olliej also mentioned that the existing patch doesn't fix for...in.
Geoffrey Garen
Comment 5
2008-05-17 12:06:12 PDT
I'm working on this now.
Geoffrey Garen
Comment 6
2008-05-19 12:02:00 PDT
Oliver's patch measured as a 1.0% regression on my system. I changed it to use a local variable, like so: ++count; if (UNLIKELY(count == THRESHOLD)) { exceptionValue = createInterruptedExecutionException(exec); goto vm_throw; } (This isn't completely correct -- it's just a prototype.) That got the regression down to 0.2%. So, I think we could improve things by using a local variable in the common case, and only consulting the global object when the local variable reached some threshold.
Geoffrey Garen
Comment 7
2008-05-19 21:25:43 PDT
Back to Oliver.
Oliver Hunt
Comment 8
2008-05-20 01:45:32 PDT
Created
attachment 21250
[details]
More complete version patch This still regresses perf on some systems, but it doesn't on my system, so i can't do an further work on this :-(
Oliver Hunt
Comment 9
2008-06-27 20:31:44 PDT
Created
attachment 21979
[details]
Final (hopefully) patch
Oliver Hunt
Comment 10
2008-06-27 21:03:09 PDT
Comment on
attachment 21979
[details]
Final (hopefully) patch Reviewed by Sam
Oliver Hunt
Comment 11
2008-06-27 21:03:21 PDT
Committing to
http://svn.webkit.org/repository/webkit/trunk
... M JavaScriptCore/ChangeLog M JavaScriptCore/JavaScriptCore.exp M JavaScriptCore/VM/CodeBlock.cpp M JavaScriptCore/VM/CodeGenerator.cpp M JavaScriptCore/VM/ExceptionHelpers.cpp M JavaScriptCore/VM/ExceptionHelpers.h M JavaScriptCore/VM/LabelID.h M JavaScriptCore/VM/Machine.cpp M JavaScriptCore/VM/Machine.h M JavaScriptCore/VM/Opcode.cpp M JavaScriptCore/VM/Opcode.h M JavaScriptCore/kjs/JSGlobalObject.cpp M JavaScriptCore/kjs/JSGlobalObject.h M JavaScriptCore/kjs/JSObject.h M JavaScriptCore/kjs/interpreter.cpp Committed
r34842
Geoffrey Garen
Comment 12
2008-06-27 21:11:02 PDT
Woohoo!
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug