Bug 122940

Summary: A CodeBlock's StructureStubInfos shouldn't be in a Vector that we search using code origins and machine code PCs
Product: WebKit Reporter: Filip Pizlo <fpizlo>
Component: JavaScriptCoreAssignee: Filip Pizlo <fpizlo>
Status: RESOLVED FIXED    
Severity: Normal CC: barraclough, benjamin, cmarcelo, commit-queue, ggaren, gyuyoung.kim, mark.lam, mhahnenberg, msaboff, oliver, rakuco, sam
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: All   
OS: All   
Bug Depends on: 122941    
Bug Blocks: 122939    
Attachments:
Description Flags
work in progress
none
getting close
none
sort of starting to compile
none
it compiles!
none
the patch
none
the patch
none
the patch oliver: review+

Description Filip Pizlo 2013-10-16 21:49:57 PDT
Patch forthcoming.
Comment 1 Filip Pizlo 2013-10-17 15:23:56 PDT
Created attachment 214520 [details]
work in progress
Comment 2 Filip Pizlo 2013-10-17 19:49:31 PDT
Created attachment 214540 [details]
getting close

Still have a bunch of gluing to do...
Comment 3 Filip Pizlo 2013-10-17 20:38:15 PDT
Created attachment 214541 [details]
sort of starting to compile
Comment 4 Filip Pizlo 2013-10-17 23:55:20 PDT
Created attachment 214543 [details]
it compiles!

And of course it doesn't work at all, yet.
Comment 5 Oliver Hunt 2013-10-18 08:48:18 PDT
(In reply to comment #4)
> Created an attachment (id=214543) [details]
> it compiles!
> 
> And of course it doesn't work at all, yet.

Details, details.

RS=me

:D
Comment 6 Oliver Hunt 2013-10-18 09:18:17 PDT
Comment on attachment 214543 [details]
it compiles!

View in context: https://bugs.webkit.org/attachment.cgi?id=214543&action=review

> Source/WTF/wtf/BagToHashMap.h:35
> +void toHashMap(Bag<ElementType>& bag, KeyGetterFunctor& getKey, HashMap<KeyType, ElementType*>& result)

const Bag&?
Comment 7 Filip Pizlo 2013-10-18 18:15:04 PDT
(In reply to comment #6)
> (From update of attachment 214543 [details])
> View in context: https://bugs.webkit.org/attachment.cgi?id=214543&action=review
> 
> > Source/WTF/wtf/BagToHashMap.h:35
> > +void toHashMap(Bag<ElementType>& bag, KeyGetterFunctor& getKey, HashMap<KeyType, ElementType*>& result)
> 
> const Bag&?

Then I'd have to add const versions of Bag's iterator.

If we ever find this to be a worthwhile thing to do then we can do it.
Comment 8 Filip Pizlo 2013-10-18 18:19:06 PDT
Created attachment 214627 [details]
the patch
Comment 9 WebKit Commit Bot 2013-10-18 18:20:21 PDT
Attachment 214627 [details] did not pass style-queue:

Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'Source/JavaScriptCore/ChangeLog', u'Source/JavaScriptCore/bytecode/CodeBlock.cpp', u'Source/JavaScriptCore/bytecode/CodeBlock.h', u'Source/JavaScriptCore/bytecode/CodeOrigin.h', u'Source/JavaScriptCore/bytecode/GetByIdStatus.cpp', u'Source/JavaScriptCore/bytecode/GetByIdStatus.h', u'Source/JavaScriptCore/bytecode/PutByIdStatus.cpp', u'Source/JavaScriptCore/bytecode/PutByIdStatus.h', u'Source/JavaScriptCore/bytecode/StructureStubInfo.h', u'Source/JavaScriptCore/dfg/DFGByteCodeParser.cpp', u'Source/JavaScriptCore/dfg/DFGJITCompiler.cpp', u'Source/JavaScriptCore/dfg/DFGJITCompiler.h', u'Source/JavaScriptCore/dfg/DFGSpeculativeJIT.cpp', u'Source/JavaScriptCore/dfg/DFGSpeculativeJIT.h', u'Source/JavaScriptCore/dfg/DFGSpeculativeJIT32_64.cpp', u'Source/JavaScriptCore/dfg/DFGSpeculativeJIT64.cpp', u'Source/JavaScriptCore/jit/CCallHelpers.h', u'Source/JavaScriptCore/jit/JIT.cpp', u'Source/JavaScriptCore/jit/JIT.h', u'Source/JavaScriptCore/jit/JITInlines.h', u'Source/JavaScriptCore/jit/JITOperations.cpp', u'Source/JavaScriptCore/jit/JITOperations.h', u'Source/JavaScriptCore/jit/JITPropertyAccess.cpp', u'Source/JavaScriptCore/jit/JITPropertyAccess32_64.cpp', u'Source/JavaScriptCore/jit/Repatch.cpp', u'Source/WTF/ChangeLog', u'Source/WTF/GNUmakefile.list.am', u'Source/WTF/WTF.vcxproj/WTF.vcxproj', u'Source/WTF/WTF.xcodeproj/project.pbxproj', u'Source/WTF/wtf/BagToHashMap.h', u'Source/WTF/wtf/CMakeLists.txt']" exit_code: 1
Source/JavaScriptCore/bytecode/GetByIdStatus.h:74:  The parameter name "map" adds no information, so it should be removed.  [readability/parameter_name] [5]
Source/JavaScriptCore/bytecode/CodeBlock.h:929:  The parameter name "map" adds no information, so it should be removed.  [readability/parameter_name] [5]
Total errors found: 2 in 31 files


If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 10 Filip Pizlo 2013-10-18 18:40:38 PDT
Created attachment 214628 [details]
the patch
Comment 11 Filip Pizlo 2013-10-18 18:42:22 PDT
Created attachment 214629 [details]
the patch
Comment 12 Oliver Hunt 2013-10-18 18:53:25 PDT
Comment on attachment 214629 [details]
the patch

View in context: https://bugs.webkit.org/attachment.cgi?id=214629&action=review

> Source/WTF/wtf/CMakeLists.txt:7
> +    BatToHashMap.h

Halloween already?
Comment 13 Filip Pizlo 2013-10-18 19:18:51 PDT
Landed in http://trac.webkit.org/changeset/157660