RESOLVED FIXED 122538
FTL should be able to do simple OSR exits using llvm.webkit.stackmap
https://bugs.webkit.org/show_bug.cgi?id=122538
Summary FTL should be able to do simple OSR exits using llvm.webkit.stackmap
Filip Pizlo
Reported 2013-10-08 19:11:42 PDT
This bug is just for getting a basic prototype working. Patch forthcoming.
Attachments
the patch (75.07 KB, patch)
2013-10-08 19:20 PDT, Filip Pizlo
no flags
the patch (77.66 KB, patch)
2013-10-08 19:23 PDT, Filip Pizlo
gtk-ews: commit-queue-
the patch (77.74 KB, patch)
2013-10-08 19:52 PDT, Filip Pizlo
no flags
the patch (77.66 KB, patch)
2013-10-08 20:10 PDT, Filip Pizlo
oliver: review+
Filip Pizlo
Comment 1 2013-10-08 19:20:56 PDT
Created attachment 213741 [details] the patch
WebKit Commit Bot
Comment 2 2013-10-08 19:22:03 PDT
Attachment 213741 [details] did not pass style-queue: Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'Source/JavaScriptCore/ChangeLog', u'Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj', u'Source/JavaScriptCore/assembler/AbstractMacroAssembler.h', u'Source/JavaScriptCore/assembler/MacroAssembler.h', u'Source/JavaScriptCore/assembler/MacroAssemblerX86Common.h', u'Source/JavaScriptCore/assembler/X86Assembler.h', u'Source/JavaScriptCore/dfg/DFGPlan.cpp', u'Source/JavaScriptCore/ftl/FTLCArgumentGetter.cpp', u'Source/JavaScriptCore/ftl/FTLCArgumentGetter.h', u'Source/JavaScriptCore/ftl/FTLCompile.cpp', u'Source/JavaScriptCore/ftl/FTLExitThunkGenerator.cpp', u'Source/JavaScriptCore/ftl/FTLExitThunkGenerator.h', u'Source/JavaScriptCore/ftl/FTLExitValue.h', u'Source/JavaScriptCore/ftl/FTLFail.cpp', u'Source/JavaScriptCore/ftl/FTLIntrinsicRepository.h', u'Source/JavaScriptCore/ftl/FTLJITCode.h', u'Source/JavaScriptCore/ftl/FTLLowerDFGToLLVM.cpp', u'Source/JavaScriptCore/ftl/FTLOSRExit.h', u'Source/JavaScriptCore/ftl/FTLOSRExitCompilationInfo.h', u'Source/JavaScriptCore/ftl/FTLOSRExitCompiler.cpp', u'Source/JavaScriptCore/ftl/FTLSaveRestore.cpp', u'Source/JavaScriptCore/ftl/FTLSaveRestore.h', u'Source/JavaScriptCore/ftl/FTLStackMaps.cpp', u'Source/JavaScriptCore/ftl/FTLStackMaps.h', u'Source/JavaScriptCore/ftl/FTLState.h', u'Source/JavaScriptCore/ftl/FTLThunks.cpp', u'Source/JavaScriptCore/ftl/FTLValueFormat.cpp', u'Source/JavaScriptCore/ftl/FTLValueFormat.h', u'Source/JavaScriptCore/runtime/DataView.cpp', u'Source/JavaScriptCore/runtime/DataView.h', u'Source/JavaScriptCore/runtime/Options.h']" exit_code: 1 Source/JavaScriptCore/ftl/FTLStackMaps.h:49: The parameter name "view" adds no information, so it should be removed. [readability/parameter_name] [5] Source/JavaScriptCore/ftl/FTLStackMaps.h:66: The parameter name "view" adds no information, so it should be removed. [readability/parameter_name] [5] Source/JavaScriptCore/ftl/FTLStackMaps.h:88: The parameter name "view" adds no information, so it should be removed. [readability/parameter_name] [5] Source/JavaScriptCore/ftl/FTLStackMaps.h:95: The parameter name "view" adds no information, so it should be removed. [readability/parameter_name] [5] Source/JavaScriptCore/ftl/FTLCompile.cpp:33: Alphabetical sorting problem. [build/include_order] [4] Source/JavaScriptCore/ftl/FTLSaveRestore.cpp:31: Alphabetical sorting problem. [build/include_order] [4] Source/JavaScriptCore/ftl/FTLValueFormat.cpp:43: When wrapping a line, only indent 4 spaces. [whitespace/indent] [3] Source/JavaScriptCore/ftl/FTLValueFormat.cpp:58: When wrapping a line, only indent 4 spaces. [whitespace/indent] [3] Source/JavaScriptCore/ftl/FTLValueFormat.cpp:65: When wrapping a line, only indent 4 spaces. [whitespace/indent] [3] Source/JavaScriptCore/ftl/FTLValueFormat.cpp:70: When wrapping a line, only indent 4 spaces. [whitespace/indent] [3] Source/JavaScriptCore/ftl/FTLValueFormat.cpp:75: When wrapping a line, only indent 4 spaces. [whitespace/indent] [3] Source/JavaScriptCore/ftl/FTLValueFormat.cpp:83: When wrapping a line, only indent 4 spaces. [whitespace/indent] [3] Total errors found: 12 in 31 files If any of these errors are false positives, please file a bug against check-webkit-style.
Filip Pizlo
Comment 3 2013-10-08 19:23:35 PDT
Created attachment 213742 [details] the patch Forgot some files.
WebKit Commit Bot
Comment 4 2013-10-08 19:24:38 PDT
Attachment 213742 [details] did not pass style-queue: Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'Source/JavaScriptCore/ChangeLog', u'Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj', u'Source/JavaScriptCore/assembler/AbstractMacroAssembler.h', u'Source/JavaScriptCore/assembler/MacroAssembler.h', u'Source/JavaScriptCore/assembler/MacroAssemblerX86Common.h', u'Source/JavaScriptCore/assembler/X86Assembler.h', u'Source/JavaScriptCore/dfg/DFGPlan.cpp', u'Source/JavaScriptCore/ftl/FTLCArgumentGetter.cpp', u'Source/JavaScriptCore/ftl/FTLCArgumentGetter.h', u'Source/JavaScriptCore/ftl/FTLCompile.cpp', u'Source/JavaScriptCore/ftl/FTLExitThunkGenerator.cpp', u'Source/JavaScriptCore/ftl/FTLExitThunkGenerator.h', u'Source/JavaScriptCore/ftl/FTLExitValue.h', u'Source/JavaScriptCore/ftl/FTLFail.cpp', u'Source/JavaScriptCore/ftl/FTLIntrinsicRepository.h', u'Source/JavaScriptCore/ftl/FTLJITCode.h', u'Source/JavaScriptCore/ftl/FTLLowerDFGToLLVM.cpp', u'Source/JavaScriptCore/ftl/FTLOSRExit.h', u'Source/JavaScriptCore/ftl/FTLOSRExitCompilationInfo.h', u'Source/JavaScriptCore/ftl/FTLOSRExitCompiler.cpp', u'Source/JavaScriptCore/ftl/FTLSaveRestore.cpp', u'Source/JavaScriptCore/ftl/FTLSaveRestore.h', u'Source/JavaScriptCore/ftl/FTLStackMaps.cpp', u'Source/JavaScriptCore/ftl/FTLStackMaps.h', u'Source/JavaScriptCore/ftl/FTLState.h', u'Source/JavaScriptCore/ftl/FTLThunks.cpp', u'Source/JavaScriptCore/ftl/FTLValueFormat.cpp', u'Source/JavaScriptCore/ftl/FTLValueFormat.h', u'Source/JavaScriptCore/runtime/DataView.cpp', u'Source/JavaScriptCore/runtime/DataView.h', u'Source/JavaScriptCore/runtime/Options.h', u'Source/WTF/ChangeLog', u'Source/WTF/wtf/PrintStream.cpp', u'Source/WTF/wtf/PrintStream.h', u'Source/WTF/wtf/RefCountedArray.h']" exit_code: 1 Source/JavaScriptCore/ftl/FTLStackMaps.h:49: The parameter name "view" adds no information, so it should be removed. [readability/parameter_name] [5] Source/JavaScriptCore/ftl/FTLStackMaps.h:66: The parameter name "view" adds no information, so it should be removed. [readability/parameter_name] [5] Source/JavaScriptCore/ftl/FTLStackMaps.h:88: The parameter name "view" adds no information, so it should be removed. [readability/parameter_name] [5] Source/JavaScriptCore/ftl/FTLStackMaps.h:95: The parameter name "view" adds no information, so it should be removed. [readability/parameter_name] [5] Source/JavaScriptCore/ftl/FTLCompile.cpp:33: Alphabetical sorting problem. [build/include_order] [4] Source/JavaScriptCore/ftl/FTLSaveRestore.cpp:31: Alphabetical sorting problem. [build/include_order] [4] Source/JavaScriptCore/ftl/FTLValueFormat.cpp:43: When wrapping a line, only indent 4 spaces. [whitespace/indent] [3] Source/JavaScriptCore/ftl/FTLValueFormat.cpp:58: When wrapping a line, only indent 4 spaces. [whitespace/indent] [3] Source/JavaScriptCore/ftl/FTLValueFormat.cpp:65: When wrapping a line, only indent 4 spaces. [whitespace/indent] [3] Source/JavaScriptCore/ftl/FTLValueFormat.cpp:70: When wrapping a line, only indent 4 spaces. [whitespace/indent] [3] Source/JavaScriptCore/ftl/FTLValueFormat.cpp:75: When wrapping a line, only indent 4 spaces. [whitespace/indent] [3] Source/JavaScriptCore/ftl/FTLValueFormat.cpp:83: When wrapping a line, only indent 4 spaces. [whitespace/indent] [3] Total errors found: 12 in 35 files If any of these errors are false positives, please file a bug against check-webkit-style.
kov's GTK+ EWS bot
Comment 5 2013-10-08 19:36:06 PDT
Filip Pizlo
Comment 6 2013-10-08 19:52:45 PDT
Created attachment 213745 [details] the patch Attempt to fix gcc build.
WebKit Commit Bot
Comment 7 2013-10-08 19:55:52 PDT
Attachment 213745 [details] did not pass style-queue: Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'Source/JavaScriptCore/ChangeLog', u'Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj', u'Source/JavaScriptCore/assembler/AbstractMacroAssembler.h', u'Source/JavaScriptCore/assembler/MacroAssembler.h', u'Source/JavaScriptCore/assembler/MacroAssemblerX86Common.h', u'Source/JavaScriptCore/assembler/X86Assembler.h', u'Source/JavaScriptCore/dfg/DFGPlan.cpp', u'Source/JavaScriptCore/ftl/FTLCArgumentGetter.cpp', u'Source/JavaScriptCore/ftl/FTLCArgumentGetter.h', u'Source/JavaScriptCore/ftl/FTLCompile.cpp', u'Source/JavaScriptCore/ftl/FTLExitThunkGenerator.cpp', u'Source/JavaScriptCore/ftl/FTLExitThunkGenerator.h', u'Source/JavaScriptCore/ftl/FTLExitValue.h', u'Source/JavaScriptCore/ftl/FTLFail.cpp', u'Source/JavaScriptCore/ftl/FTLIntrinsicRepository.h', u'Source/JavaScriptCore/ftl/FTLJITCode.h', u'Source/JavaScriptCore/ftl/FTLLowerDFGToLLVM.cpp', u'Source/JavaScriptCore/ftl/FTLOSRExit.h', u'Source/JavaScriptCore/ftl/FTLOSRExitCompilationInfo.h', u'Source/JavaScriptCore/ftl/FTLOSRExitCompiler.cpp', u'Source/JavaScriptCore/ftl/FTLSaveRestore.cpp', u'Source/JavaScriptCore/ftl/FTLSaveRestore.h', u'Source/JavaScriptCore/ftl/FTLStackMaps.cpp', u'Source/JavaScriptCore/ftl/FTLStackMaps.h', u'Source/JavaScriptCore/ftl/FTLState.h', u'Source/JavaScriptCore/ftl/FTLThunks.cpp', u'Source/JavaScriptCore/ftl/FTLValueFormat.cpp', u'Source/JavaScriptCore/ftl/FTLValueFormat.h', u'Source/JavaScriptCore/runtime/DataView.cpp', u'Source/JavaScriptCore/runtime/DataView.h', u'Source/JavaScriptCore/runtime/Options.h', u'Source/WTF/ChangeLog', u'Source/WTF/wtf/PrintStream.cpp', u'Source/WTF/wtf/PrintStream.h', u'Source/WTF/wtf/RefCountedArray.h']" exit_code: 1 Source/JavaScriptCore/ftl/FTLStackMaps.h:49: The parameter name "view" adds no information, so it should be removed. [readability/parameter_name] [5] Source/JavaScriptCore/ftl/FTLStackMaps.h:66: The parameter name "view" adds no information, so it should be removed. [readability/parameter_name] [5] Source/JavaScriptCore/ftl/FTLStackMaps.h:88: The parameter name "view" adds no information, so it should be removed. [readability/parameter_name] [5] Source/JavaScriptCore/ftl/FTLStackMaps.h:95: The parameter name "view" adds no information, so it should be removed. [readability/parameter_name] [5] Source/JavaScriptCore/ftl/FTLCompile.cpp:33: Alphabetical sorting problem. [build/include_order] [4] Source/JavaScriptCore/ftl/FTLSaveRestore.cpp:31: Alphabetical sorting problem. [build/include_order] [4] Source/JavaScriptCore/ftl/FTLValueFormat.cpp:43: When wrapping a line, only indent 4 spaces. [whitespace/indent] [3] Source/JavaScriptCore/ftl/FTLValueFormat.cpp:58: When wrapping a line, only indent 4 spaces. [whitespace/indent] [3] Source/JavaScriptCore/ftl/FTLValueFormat.cpp:65: When wrapping a line, only indent 4 spaces. [whitespace/indent] [3] Source/JavaScriptCore/ftl/FTLValueFormat.cpp:70: When wrapping a line, only indent 4 spaces. [whitespace/indent] [3] Source/JavaScriptCore/ftl/FTLValueFormat.cpp:75: When wrapping a line, only indent 4 spaces. [whitespace/indent] [3] Source/JavaScriptCore/ftl/FTLValueFormat.cpp:83: When wrapping a line, only indent 4 spaces. [whitespace/indent] [3] Total errors found: 12 in 35 files If any of these errors are false positives, please file a bug against check-webkit-style.
Filip Pizlo
Comment 8 2013-10-08 20:10:51 PDT
Created attachment 213746 [details] the patch Fix style.
Nadav Rotem
Comment 9 2013-10-09 17:12:34 PDT
You changed whitespace in Source/JavaScriptCore/assembler/MacroAssemblerX86Common.h The LLVM parts look good to me. Can you break this patch to multiple small patches. For example PrintStream.h can go in separately.
Filip Pizlo
Comment 10 2013-10-09 17:30:06 PDT
(In reply to comment #9) > You changed whitespace in Source/JavaScriptCore/assembler/MacroAssemblerX86Common.h > I will revert. > The LLVM parts look good to me. > > Can you break this patch to multiple small patches. For example PrintStream.h can go in separately. I'll land the WTF changes separately. But we usually don't make a big deal of splitting work up into smaller patches. We prefer to have a one-to-one mapping between patches and commits, and we prefer for each commit to be thoroughly tested. So splitting up into patches, especially for complex changes like this, is not necessarily a win.
Note You need to log in before you can comment on or make changes to this bug.