Fix compile with debuggersupport=off.
BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/9546051 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10952 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
This commit is contained in:
parent
64340007e0
commit
67540abe08
4
Makefile
4
Makefile
@ -75,6 +75,10 @@ ifeq ($(vfp3), off)
|
||||
else
|
||||
GYPFLAGS += -Dv8_can_use_vfp_instructions=true
|
||||
endif
|
||||
# debuggersupport=off
|
||||
ifeq ($(debuggersupport), off)
|
||||
GYPFLAGS += -Dv8_enable_debugger_support=0
|
||||
endif
|
||||
# soname_version=1.2.3
|
||||
ifdef soname_version
|
||||
GYPFLAGS += -Dsoname_version=$(soname_version)
|
||||
|
@ -41,9 +41,6 @@
|
||||
'include_dirs+': [
|
||||
'../src',
|
||||
],
|
||||
'defines': [
|
||||
'ENABLE_DEBUGGER_SUPPORT',
|
||||
],
|
||||
'sources': [
|
||||
'd8.cc',
|
||||
],
|
||||
|
@ -10722,16 +10722,6 @@ static SaveContext* FindSavedContextForFrame(Isolate* isolate,
|
||||
}
|
||||
|
||||
|
||||
RUNTIME_FUNCTION(MaybeObject*, Runtime_IsConstructCall) {
|
||||
NoHandleAllocation ha;
|
||||
ASSERT(args.length() == 0);
|
||||
JavaScriptFrameIterator it(isolate);
|
||||
JavaScriptFrame* frame = it.frame();
|
||||
FrameInspector frame_inspector(frame, frame->GetInlineCount() - 1, isolate);
|
||||
return isolate->heap()->ToBoolean(frame_inspector.IsConstructor());
|
||||
}
|
||||
|
||||
|
||||
// Return an array with frame details
|
||||
// args[0]: number: break id
|
||||
// args[1]: number: frame index
|
||||
|
@ -70,8 +70,6 @@ namespace internal {
|
||||
F(GetPrototype, 1, 1) \
|
||||
F(IsInPrototypeChain, 2, 1) \
|
||||
\
|
||||
F(IsConstructCall, 0, 1) \
|
||||
\
|
||||
F(GetOwnProperty, 2, 1) \
|
||||
\
|
||||
F(IsExtensible, 1, 1) \
|
||||
|
@ -126,39 +126,21 @@ invoke(h3, [8, 6, 4]);
|
||||
// Check that %_IsConstructCall returns correct value when inlined
|
||||
var NON_CONSTRUCT_MARKER = {};
|
||||
var CONSTRUCT_MARKER = {};
|
||||
function baz1(x) {
|
||||
function baz(x) {
|
||||
return (!%_IsConstructCall()) ? NON_CONSTRUCT_MARKER : CONSTRUCT_MARKER;
|
||||
}
|
||||
|
||||
function bar1(x, y, z) {
|
||||
var non_construct = baz1(0); /* baz should be inlined */
|
||||
function bar(x, y, z) {
|
||||
var non_construct = baz(0); /* baz should be inlined */
|
||||
assertSame(non_construct, NON_CONSTRUCT_MARKER);
|
||||
var non_construct = baz1(); /* baz should be inlined */
|
||||
var non_construct = baz(); /* baz should be inlined */
|
||||
assertSame(non_construct, NON_CONSTRUCT_MARKER);
|
||||
var non_construct = baz1(0, 0); /* baz should be inlined */
|
||||
var non_construct = baz(0, 0); /* baz should be inlined */
|
||||
assertSame(non_construct, NON_CONSTRUCT_MARKER);
|
||||
var construct = new baz1(0);
|
||||
var construct = new baz(0);
|
||||
assertSame(construct, CONSTRUCT_MARKER);
|
||||
var construct = new baz1(0, 0);
|
||||
var construct = new baz(0, 0);
|
||||
assertSame(construct, CONSTRUCT_MARKER);
|
||||
}
|
||||
|
||||
function baz2(x) {
|
||||
return (!%IsConstructCall()) ? NON_CONSTRUCT_MARKER : CONSTRUCT_MARKER;
|
||||
}
|
||||
|
||||
function bar2(x, y, z) {
|
||||
var non_construct = baz2(0); /* baz should be inlined */
|
||||
assertSame(non_construct, NON_CONSTRUCT_MARKER);
|
||||
var non_construct = baz2(); /* baz should be inlined */
|
||||
assertSame(non_construct, NON_CONSTRUCT_MARKER);
|
||||
var non_construct = baz2(0, 0); /* baz should be inlined */
|
||||
assertSame(non_construct, NON_CONSTRUCT_MARKER);
|
||||
var construct = new baz2(0);
|
||||
assertSame(construct, CONSTRUCT_MARKER);
|
||||
var construct = new baz2(0, 0);
|
||||
assertSame(construct, CONSTRUCT_MARKER);
|
||||
}
|
||||
|
||||
invoke(bar1, [1, 2, 3]);
|
||||
invoke(bar2, [1, 2, 3]);
|
||||
invoke(bar, [1, 2, 3]);
|
||||
|
Loading…
Reference in New Issue
Block a user