Home | History | Annotate | Download | only in src

Lines Matching refs:code

6 //     * Redistributions of source code must retain the above copyright
127 Handle<Code> code(shared_info()->code());
128 SetCode(code);
132 // Determine whether to use the full compiler for all code. If the flag
135 // the code from the full compiler supports mode precise break points. For the
136 // crankshaft adaptive compiler debugging the optimized code is not possible at
190 // In case we are not optimizing simply return the code from
191 // the full code generator.
196 // We should never arrive here if there is not code object on the
198 Handle<Code> code(info->shared_info()->code());
199 ASSERT(code->kind() == Code::FUNCTION);
205 // Fall back to using the full code generator if it's not possible
207 // generated code for this from the shared function object.
209 info->SetCode(code);
221 // necessarily that we optimized the code.
241 // necessarily that we optimized the code.
252 info->SetCode(code);
257 // Recompile the unoptimized version of the code if the current version
259 // run the full code generator to get a baseline for the compile-time
267 // optimized code.
275 shared->EnableDeoptimizationSupport(*unoptimized.code());
276 // The existing unoptimized code was replaced with the new one.
282 // Check that the unoptimized, shared code is ready for
284 // optimizable marker in the code object and optimize anyway. This
285 // is safe as long as the unoptimized code has deoptimization
287 ASSERT(FLAG_always_opt || code->optimizable());
297 TypeFeedbackOracle oracle(code, global_context, info->isolate());
302 info->SetCode(Handle<Code>::null());
307 Handle<Code> optimized_code = graph->Compile(info);
315 // Keep using the shared code.
318 // Mark the shared code as unoptimizable unless it was an inlined
323 // that we optimized the code.
336 // Precondition: code has been parsed. Postcondition: the code field in
345 // Precondition: code has been parsed. Postcondition: the code field in
377 Code* code = it.frame()->LookupCode();
379 it.frame()->pc() - code->instruction_start());
408 // Compile the code.
417 ASSERT(!info->code().is_null());
422 info->code(),
433 *info->code(),
438 info->code(),
445 *info->code(),
448 GDBJIT(AddCode(Handle<String>(), script, info->code(), info));
578 // Explicitly disable optimization for eval code. We're not yet prepared
579 // to handle eval-code in the optimizing compiler.
629 // Compile the code.
635 ASSERT(!info->code().is_null());
636 Handle<Code> code = info->code();
638 // function info, e.g., we might have flushed the code and must
639 // reset this bit when lazy compiling the code again.
640 if (shared->optimization_disabled()) code->set_optimizable(false);
647 function->ReplaceCode(*code);
649 // Update the shared function info with the compiled code and the
652 // trigger a GC, causing the ASSERT below to be invalid if the code
653 // was flushed. By setting the code object last we avoid this.
656 shared->set_code(*code);
658 function->ReplaceCode(*code);
674 // Check the function has compiled code.
686 // active as it makes no sense to compile optimized code then.
700 ASSERT(info->code().is_null());
707 // Precondition: code has been parsed and scopes have been analyzed.
724 // Generate code
726 Handle<Code> code = info.isolate()->builtins()->LazyCompile();
727 info.SetCode(code);
730 ASSERT(!info.code().is_null());
740 info.code(),
793 // Log the code generation. If source information is available include
799 Handle<Code> code = info->code();
800 if (*code == info->isolate()->builtins()->builtin(Builtins::kLazyCompile))
807 *code,
814 *code,
822 Handle<Code>(info->code()),