WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
148559
Add noDFG() to jsc to prevent DFG compilation of a specified function
https://bugs.webkit.org/show_bug.cgi?id=148559
Summary
Add noDFG() to jsc to prevent DFG compilation of a specified function
Mark Lam
Reported
2015-08-27 21:57:57 PDT
Just like noInline() allows us to prevent inlining of a function, noOptimize() allows us to prevent optimization of a function.
Attachments
the fix.
(10.33 KB, patch)
2015-08-27 22:03 PDT
,
Mark Lam
ggaren
: review+
Details
Formatted Diff
Diff
View All
Add attachment
proposed patch, testcase, etc.
Mark Lam
Comment 1
2015-08-27 22:03:57 PDT
Created
attachment 260120
[details]
the fix.
Geoffrey Garen
Comment 2
2015-08-27 22:27:26 PDT
Comment on
attachment 260120
[details]
the fix. View in context:
https://bugs.webkit.org/attachment.cgi?id=260120&action=review
> Source/JavaScriptCore/jsc.cpp:635 > + addFunction(vm, "noOptimize", functionNeverOptimizeFunction, 1);
Let's call this noDFG and functionNoDFG. "noOptimize" implies no baseline JIT, which is not the case.
Saam Barati
Comment 3
2015-08-27 22:28:21 PDT
Comment on
attachment 260120
[details]
the fix. r=me
Saam Barati
Comment 4
2015-08-27 22:30:13 PDT
(In reply to
comment #2
)
> Comment on
attachment 260120
[details]
> the fix. > > View in context: >
https://bugs.webkit.org/attachment.cgi?id=260120&action=review
> > > Source/JavaScriptCore/jsc.cpp:635 > > + addFunction(vm, "noOptimize", functionNeverOptimizeFunction, 1); > > Let's call this noDFG and functionNoDFG. "noOptimize" implies no baseline > JIT, which is not the case.
I also like the name "dontDFGCompile"
Mark Lam
Comment 5
2015-08-27 22:35:33 PDT
(In reply to
comment #2
)
> Comment on
attachment 260120
[details]
> the fix. > > View in context: >
https://bugs.webkit.org/attachment.cgi?id=260120&action=review
> > > Source/JavaScriptCore/jsc.cpp:635 > > + addFunction(vm, "noOptimize", functionNeverOptimizeFunction, 1); > > Let's call this noDFG and functionNoDFG. "noOptimize" implies no baseline > JIT, which is not the case.
I think fpizlo has always used the term “optimize” (in our code base) to mean DFG and higher, and precludes baseline. For example, in JITCode.h, he distinguished between isOptimizingJIT() and isBaselineCode(). And he suggested the term “noOptimize” when he asked me to implement this. But sure, I’ll change it to noDFG().
Mark Lam
Comment 6
2015-08-27 22:45:54 PDT
(In reply to
comment #5
)
> But sure, I’ll change it to noDFG().
I just realized that you meant for me to only change the function in jsc.cpp and not elsewhere in the patch. Will do.
Mark Lam
Comment 7
2015-08-27 23:02:06 PDT
Thanks for the reviews. I opted to go with noDFG() instead of dontDFGCompile() because noDFG() is shorter and adequately conveys the purpose. Landed in
r189086
: <
http://trac.webkit.org/r189086
>.
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