RESOLVED FIXED 113647
FTL should implement InvalidationPoint in terms of llvm.stackmap
https://bugs.webkit.org/show_bug.cgi?id=113647
Summary FTL should implement InvalidationPoint in terms of llvm.stackmap
Filip Pizlo
Reported 2013-03-30 17:25:25 PDT
Fun.
Attachments
work in progress (29.81 KB, patch)
2013-10-28 20:51 PDT, Filip Pizlo
no flags
more (53.56 KB, patch)
2013-10-28 21:37 PDT, Filip Pizlo
no flags
it's done? (58.44 KB, patch)
2013-10-28 21:48 PDT, Filip Pizlo
buildbot: commit-queue-
it compiles! (93.80 KB, patch)
2013-10-29 11:00 PDT, Filip Pizlo
no flags
64-bit DFG is done (107.58 KB, patch)
2013-10-29 11:40 PDT, Filip Pizlo
no flags
fixed jettisoning logic (111.69 KB, patch)
2013-10-29 13:21 PDT, Filip Pizlo
no flags
work in progress (6.28 KB, patch)
2013-10-30 20:53 PDT, Filip Pizlo
no flags
the patch (7.50 KB, patch)
2013-10-31 13:30 PDT, Filip Pizlo
mhahnenberg: review+
Filip Pizlo
Comment 1 2013-03-31 18:54:17 PDT
Filip Pizlo
Comment 2 2013-10-28 20:51:59 PDT
Created attachment 215360 [details] work in progress
Filip Pizlo
Comment 3 2013-10-28 21:37:45 PDT
Filip Pizlo
Comment 4 2013-10-28 21:48:00 PDT
Created attachment 215363 [details] it's done? Dunno. I think I wrote all of the code.
WebKit Commit Bot
Comment 5 2013-10-29 03:14:13 PDT
Attachment 215363 [details] did not pass style-queue: Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'Source/JavaScriptCore/bytecode/CodeBlock.cpp', u'Source/JavaScriptCore/bytecode/CodeBlockJettisoningWatchpoint.cpp', u'Source/JavaScriptCore/bytecode/CodeBlockJettisoningWatchpoint.h', u'Source/JavaScriptCore/bytecode/ProfiledCodeBlockJettisoningWatchpoint.cpp', u'Source/JavaScriptCore/bytecode/ProfiledCodeBlockJettisoningWatchpoint.h', u'Source/JavaScriptCore/dfg/DFGAbstractHeap.h', u'Source/JavaScriptCore/dfg/DFGClobberize.cpp', u'Source/JavaScriptCore/dfg/DFGClobberize.h', u'Source/JavaScriptCore/dfg/DFGCommonData.cpp', u'Source/JavaScriptCore/dfg/DFGCommonData.h', u'Source/JavaScriptCore/dfg/DFGDesiredWatchpoints.cpp', u'Source/JavaScriptCore/dfg/DFGDesiredWatchpoints.h', u'Source/JavaScriptCore/dfg/DFGInvalidationPointInjectionPhase.cpp', u'Source/JavaScriptCore/dfg/DFGInvalidationPointInjectionPhase.h', u'Source/JavaScriptCore/dfg/DFGJITCompiler.cpp', u'Source/JavaScriptCore/dfg/DFGJumpReplacement.cpp', u'Source/JavaScriptCore/dfg/DFGJumpReplacement.h', u'Source/JavaScriptCore/dfg/DFGNodeType.h', u'Source/JavaScriptCore/dfg/DFGOSRExitCompilationInfo.h', u'Source/JavaScriptCore/dfg/DFGPlan.cpp', u'Source/JavaScriptCore/dfg/DFGSpeculativeJIT.cpp', u'Source/JavaScriptCore/dfg/DFGSpeculativeJIT.h', u'Source/JavaScriptCore/dfg/DFGSpeculativeJIT64.cpp', u'Source/JavaScriptCore/dfg/DFGWatchpointCollectionPhase.cpp', u'Source/JavaScriptCore/dfg/DFGWatchpointCollectionPhase.h']" exit_code: 1 Source/JavaScriptCore/bytecode/ProfiledCodeBlockJettisoningWatchpoint.h:26: #ifndef header guard has wrong style, please use: ProfiledCodeBlockJettisoningWatchpoint_h [build/header_guard] [5] Total errors found: 1 in 25 files If any of these errors are false positives, please file a bug against check-webkit-style.
Build Bot
Comment 6 2013-10-29 03:35:29 PDT
Comment on attachment 215363 [details] it's done? Attachment 215363 [details] did not pass mac-wk2-ews (mac-wk2): Output: http://webkit-queues.appspot.com/results/17138035
EFL EWS Bot
Comment 7 2013-10-29 03:38:04 PDT
Build Bot
Comment 8 2013-10-29 03:54:36 PDT
Build Bot
Comment 9 2013-10-29 03:54:43 PDT
kov's GTK+ EWS bot
Comment 10 2013-10-29 03:56:55 PDT
EFL EWS Bot
Comment 11 2013-10-29 06:57:41 PDT
Comment on attachment 215363 [details] it's done? Attachment 215363 [details] did not pass efl-wk2-ews (efl-wk2): Output: http://webkit-queues.appspot.com/results/16058086
Filip Pizlo
Comment 12 2013-10-29 11:00:21 PDT
Created attachment 215398 [details] it compiles!
Filip Pizlo
Comment 13 2013-10-29 11:40:17 PDT
Created attachment 215407 [details] 64-bit DFG is done Still need to actually implement the FTL backend code and port this to the DFG 32-bit.
WebKit Commit Bot
Comment 14 2013-10-29 12:05:31 PDT
Attachment 215407 [details] did not pass style-queue: Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'Source/JavaScriptCore/CMakeLists.txt', u'Source/JavaScriptCore/ChangeLog', u'Source/JavaScriptCore/GNUmakefile.list.am', u'Source/JavaScriptCore/JavaScriptCore.vcxproj/JavaScriptCore.vcxproj', u'Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj', u'Source/JavaScriptCore/assembler/AbstractMacroAssembler.h', u'Source/JavaScriptCore/bytecode/CodeBlock.cpp', u'Source/JavaScriptCore/bytecode/CodeBlock.h', u'Source/JavaScriptCore/bytecode/CodeBlockJettisoningWatchpoint.cpp', u'Source/JavaScriptCore/bytecode/CodeBlockJettisoningWatchpoint.h', u'Source/JavaScriptCore/bytecode/ExitKind.cpp', u'Source/JavaScriptCore/bytecode/ExitKind.h', u'Source/JavaScriptCore/bytecode/ProfiledCodeBlockJettisoningWatchpoint.cpp', u'Source/JavaScriptCore/bytecode/ProfiledCodeBlockJettisoningWatchpoint.h', u'Source/JavaScriptCore/dfg/DFGAbstractHeap.h', u'Source/JavaScriptCore/dfg/DFGAbstractInterpreterInlines.h', u'Source/JavaScriptCore/dfg/DFGClobberize.cpp', u'Source/JavaScriptCore/dfg/DFGClobberize.h', u'Source/JavaScriptCore/dfg/DFGCommonData.cpp', u'Source/JavaScriptCore/dfg/DFGCommonData.h', u'Source/JavaScriptCore/dfg/DFGDesiredWatchpoints.cpp', u'Source/JavaScriptCore/dfg/DFGDesiredWatchpoints.h', u'Source/JavaScriptCore/dfg/DFGFixupPhase.cpp', u'Source/JavaScriptCore/dfg/DFGInvalidationPointInjectionPhase.cpp', u'Source/JavaScriptCore/dfg/DFGInvalidationPointInjectionPhase.h', u'Source/JavaScriptCore/dfg/DFGJITCode.h', u'Source/JavaScriptCore/dfg/DFGJITCompiler.cpp', u'Source/JavaScriptCore/dfg/DFGJITCompiler.h', u'Source/JavaScriptCore/dfg/DFGJumpReplacement.cpp', u'Source/JavaScriptCore/dfg/DFGJumpReplacement.h', u'Source/JavaScriptCore/dfg/DFGNodeType.h', u'Source/JavaScriptCore/dfg/DFGOSRExitCompilationInfo.h', u'Source/JavaScriptCore/dfg/DFGPlan.cpp', u'Source/JavaScriptCore/dfg/DFGPredictionPropagationPhase.cpp', u'Source/JavaScriptCore/dfg/DFGSafeToExecute.h', u'Source/JavaScriptCore/dfg/DFGSpeculativeJIT.cpp', u'Source/JavaScriptCore/dfg/DFGSpeculativeJIT.h', u'Source/JavaScriptCore/dfg/DFGSpeculativeJIT64.cpp', u'Source/JavaScriptCore/dfg/DFGWatchpointCollectionPhase.cpp', u'Source/JavaScriptCore/dfg/DFGWatchpointCollectionPhase.h', u'Source/JavaScriptCore/jit/JumpReplacementWatchpoint.cpp', u'Source/JavaScriptCore/jit/JumpReplacementWatchpoint.h']" exit_code: 1 Source/JavaScriptCore/bytecode/ProfiledCodeBlockJettisoningWatchpoint.h:26: #ifndef header guard has wrong style, please use: ProfiledCodeBlockJettisoningWatchpoint_h [build/header_guard] [5] Total errors found: 1 in 36 files If any of these errors are false positives, please file a bug against check-webkit-style.
Filip Pizlo
Comment 15 2013-10-29 13:21:20 PDT
Created attachment 215414 [details] fixed jettisoning logic Now, jettisons count reoptimization correctly.
Filip Pizlo
Comment 16 2013-10-29 14:39:49 PDT
I think that I'll split this into a separate patch. The patches I've posted so far will be for https://bugs.webkit.org/show_bug.cgi?id=123472, which just adds the concept of InvalidationPoint. This bug will be for implementing InvalidationPoint in the FTL.
Filip Pizlo
Comment 17 2013-10-30 20:53:57 PDT
Created attachment 215608 [details] work in progress
Filip Pizlo
Comment 18 2013-10-31 13:30:20 PDT
Created attachment 215671 [details] the patch
Mark Hahnenberg
Comment 19 2013-10-31 13:53:05 PDT
Comment on attachment 215671 [details] the patch r=me
Filip Pizlo
Comment 20 2013-10-31 15:48:13 PDT
Note You need to log in before you can comment on or make changes to this bug.