Add a few missing nops to signal no inlined code was generated.
Review URL: http://codereview.chromium.org/3399005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5454 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
This commit is contained in:
parent
141e82b31e
commit
c3f04bf46f
@ -988,6 +988,7 @@ void FullCodeGenerator::EmitLoadGlobalSlotCheckExtensions(
|
|||||||
? RelocInfo::CODE_TARGET
|
? RelocInfo::CODE_TARGET
|
||||||
: RelocInfo::CODE_TARGET_CONTEXT;
|
: RelocInfo::CODE_TARGET_CONTEXT;
|
||||||
__ call(ic, mode);
|
__ call(ic, mode);
|
||||||
|
__ nop(); // Signal no inlined code.
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -3138,7 +3139,7 @@ void FullCodeGenerator::VisitCallRuntime(CallRuntime* expr) {
|
|||||||
InLoopFlag in_loop = (loop_depth() > 0) ? IN_LOOP : NOT_IN_LOOP;
|
InLoopFlag in_loop = (loop_depth() > 0) ? IN_LOOP : NOT_IN_LOOP;
|
||||||
Handle<Code> ic = CodeGenerator::ComputeCallInitialize(arg_count, in_loop);
|
Handle<Code> ic = CodeGenerator::ComputeCallInitialize(arg_count, in_loop);
|
||||||
__ call(ic, RelocInfo::CODE_TARGET);
|
__ call(ic, RelocInfo::CODE_TARGET);
|
||||||
// Restore context register.
|
// Restore context register.
|
||||||
__ mov(esi, Operand(ebp, StandardFrameConstants::kContextOffset));
|
__ mov(esi, Operand(ebp, StandardFrameConstants::kContextOffset));
|
||||||
} else {
|
} else {
|
||||||
// Call the C runtime function.
|
// Call the C runtime function.
|
||||||
@ -3483,6 +3484,7 @@ void FullCodeGenerator::VisitForTypeofValue(Expression* expr, Location where) {
|
|||||||
// Use a regular load, not a contextual load, to avoid a reference
|
// Use a regular load, not a contextual load, to avoid a reference
|
||||||
// error.
|
// error.
|
||||||
__ call(ic, RelocInfo::CODE_TARGET);
|
__ call(ic, RelocInfo::CODE_TARGET);
|
||||||
|
__ nop(); // Signal no inlined code.
|
||||||
if (where == kStack) __ push(eax);
|
if (where == kStack) __ push(eax);
|
||||||
} else if (proxy != NULL &&
|
} else if (proxy != NULL &&
|
||||||
proxy->var()->slot() != NULL &&
|
proxy->var()->slot() != NULL &&
|
||||||
|
@ -938,6 +938,7 @@ void FullCodeGenerator::EmitLoadGlobalSlotCheckExtensions(
|
|||||||
? RelocInfo::CODE_TARGET
|
? RelocInfo::CODE_TARGET
|
||||||
: RelocInfo::CODE_TARGET_CONTEXT;
|
: RelocInfo::CODE_TARGET_CONTEXT;
|
||||||
__ call(ic, mode);
|
__ call(ic, mode);
|
||||||
|
__ nop(); // Signal no inlined code.
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -3174,6 +3175,7 @@ void FullCodeGenerator::VisitForTypeofValue(Expression* expr, Location where) {
|
|||||||
// Use a regular load, not a contextual load, to avoid a reference
|
// Use a regular load, not a contextual load, to avoid a reference
|
||||||
// error.
|
// error.
|
||||||
__ Call(ic, RelocInfo::CODE_TARGET);
|
__ Call(ic, RelocInfo::CODE_TARGET);
|
||||||
|
__ nop(); // Signal no inlined code.
|
||||||
if (where == kStack) __ push(rax);
|
if (where == kStack) __ push(rax);
|
||||||
} else if (proxy != NULL &&
|
} else if (proxy != NULL &&
|
||||||
proxy->var()->slot() != NULL &&
|
proxy->var()->slot() != NULL &&
|
||||||
|
Loading…
Reference in New Issue
Block a user