Mozilla Home
Privacy
Cookies
Legal
Bugzilla
Browse
Advanced Search
New Bug
Reports
Documentation
Log In
Log In with GitHub
or
Remember me
Browse
Advanced Search
New Bug
Reports
Documentation
Attachment 8767832 Details for
Bug 1016936
[patch]
(Plan A) Part 2: Support JSOP_CHECKISOBJ in baseline.
03-Bug_1016936___Part_2__Support_JSOP_CHECK.patch (text/plain), 2.17 KB, created by
Tooru Fujisawa [:arai]
(
hide
)
Description:
(Plan A) Part 2: Support JSOP_CHECKISOBJ in baseline.
Filename:
MIME Type:
Creator:
Tooru Fujisawa [:arai]
Size:
2.17 KB
patch
obsolete
># HG changeset patch ># User Tooru Fujisawa <arai_a@mac.com> ># Date 1467687982 -32400 ># Tue Jul 05 12:06:22 2016 +0900 ># Node ID 7b3db06d27815e4f0684916da2b23a252185325b ># Parent 90a22ffc657eb6c6c094ae79f6e719093e7f9268 >Bug 1016936 - Part 2: Support JSOP_CHECKISOBJ in baseline. > >diff --git a/js/src/jit/BaselineCompiler.cpp b/js/src/jit/BaselineCompiler.cpp >--- a/js/src/jit/BaselineCompiler.cpp >+++ b/js/src/jit/BaselineCompiler.cpp >@@ -1291,16 +1291,39 @@ BaselineCompiler::emit_JSOP_HOLE() > > bool > BaselineCompiler::emit_JSOP_NULL() > { > frame.push(NullValue()); > return true; > } > >+typedef bool (*ThrowCheckIsObjectFn)(JSContext*, CheckIsObjectKind); >+static const VMFunction ThrowCheckIsObjectInfo = >+ FunctionInfo<ThrowCheckIsObjectFn>(ThrowCheckIsObject); >+ >+bool >+BaselineCompiler::emit_JSOP_CHECKISOBJ() >+{ >+ frame.syncStack(0); >+ masm.loadValue(frame.addressOfStackValue(frame.peek(-1)), R0); >+ >+ Label ok; >+ masm.branchTestObject(Assembler::Equal, R0, &ok); >+ >+ prepareVMCall(); >+ >+ pushArg(Imm32(GET_UINT8(pc))); >+ if (!callVM(ThrowCheckIsObjectInfo)) >+ return false; >+ >+ masm.bind(&ok); >+ return true; >+} >+ > typedef bool (*ThrowUninitializedThisFn)(JSContext*, BaselineFrame* frame); > static const VMFunction ThrowUninitializedThisInfo = > FunctionInfo<ThrowUninitializedThisFn>(BaselineThrowUninitializedThis); > > bool > BaselineCompiler::emit_JSOP_CHECKTHIS() > { > frame.syncStack(0); >diff --git a/js/src/jit/BaselineCompiler.h b/js/src/jit/BaselineCompiler.h >--- a/js/src/jit/BaselineCompiler.h >+++ b/js/src/jit/BaselineCompiler.h >@@ -205,16 +205,17 @@ namespace jit { > _(JSOP_RESUME) \ > _(JSOP_CALLEE) \ > _(JSOP_GETRVAL) \ > _(JSOP_SETRVAL) \ > _(JSOP_RETRVAL) \ > _(JSOP_RETURN) \ > _(JSOP_FUNCTIONTHIS) \ > _(JSOP_GLOBALTHIS) \ >+ _(JSOP_CHECKISOBJ) \ > _(JSOP_CHECKTHIS) \ > _(JSOP_CHECKRETURN) \ > _(JSOP_NEWTARGET) \ > _(JSOP_SUPERCALL) \ > _(JSOP_SPREADSUPERCALL) \ > _(JSOP_THROWSETCONST) \ > _(JSOP_THROWSETALIASEDCONST) \ > _(JSOP_INITHIDDENPROP_GETTER) \
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
Flags:
jandem
: review+
Actions:
View
|
Diff
|
Review
Attachments on
bug 1016936
:
8767796
|
8767805
|
8767828
|
8767830
|
8767831
| 8767832 |
8767834
|
8767835
|
8778862