Bug 28621 - Restructure Executable types so that host functions do not hold a FunctionExecutable.
Summary: Restructure Executable types so that host functions do not hold a FunctionExe...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: JavaScriptCore (show other bugs)
Version: 528+ (Nightly build)
Hardware: PC OS X 10.5
: P2 Normal
Assignee: Gavin Barraclough
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-08-21 12:50 PDT by Gavin Barraclough
Modified: 2009-08-21 16:17 PDT (History)
1 user (show)

See Also:


Attachments
The Patch (27.90 KB, patch)
2009-08-21 13:00 PDT, Gavin Barraclough
no flags Details | Formatted Diff | Diff
damn you svn diff, I resolved those files, why don't you know that? (31.71 KB, patch)
2009-08-21 13:04 PDT, Gavin Barraclough
no flags Details | Formatted Diff | Diff
Remove dependency on Executable.h from JSFunction.h to make Darin a happy person. (32.80 KB, patch)
2009-08-21 14:11 PDT, Gavin Barraclough
oliver: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Gavin Barraclough 2009-08-21 12:50:48 PDT
All JSFunction objects have a pointer to an Executable*.  This is currently always a
FunctionExecutable, however this has a couple of drawbacks.  Host functions do not
store a range of information that the FunctionExecutable provides (source, name,
CodeBlock & information presently held on the FunctionBodyNode).
Comment 1 Gavin Barraclough 2009-08-21 13:00:34 PDT
Created attachment 38387 [details]
The Patch
Comment 2 Gavin Barraclough 2009-08-21 13:04:43 PDT
Created attachment 38388 [details]
damn you svn diff, I resolved those files, why don't you know that?
Comment 3 Gavin Barraclough 2009-08-21 14:11:13 PDT
Created attachment 38394 [details]
Remove dependency on Executable.h from JSFunction.h to make Darin a happy person.
Comment 4 Oliver Hunt 2009-08-21 14:40:12 PDT
Comment on attachment 38394 [details]
Remove dependency on Executable.h from JSFunction.h to make Darin a happy person.

r=me, rename JSExecutable to 5cr1pt3x3cut4b13
Comment 5 Gavin Barraclough 2009-08-21 14:55:09 PDT
Sending        JavaScriptCore/ChangeLog
Sending        JavaScriptCore/bytecode/CodeBlock.cpp
Sending        JavaScriptCore/bytecode/CodeBlock.h
Sending        JavaScriptCore/bytecode/EvalCodeCache.h
Sending        JavaScriptCore/debugger/Debugger.cpp
Sending        JavaScriptCore/interpreter/CachedCall.h
Sending        JavaScriptCore/interpreter/Interpreter.cpp
Sending        JavaScriptCore/jit/JITStubs.cpp
Sending        JavaScriptCore/profiler/Profiler.cpp
Sending        JavaScriptCore/runtime/Arguments.h
Sending        JavaScriptCore/runtime/Executable.cpp
Sending        JavaScriptCore/runtime/Executable.h
Sending        JavaScriptCore/runtime/FunctionPrototype.cpp
Sending        JavaScriptCore/runtime/JSFunction.cpp
Sending        JavaScriptCore/runtime/JSFunction.h
Transmitting file data ...............
Committed revision 47641.
Comment 6 Sam Weinig 2009-08-21 16:17:39 PDT
Is there a reason we don't call there HostExecutables?