Lines Matching refs:Code
6 // * Redistributions of source code must retain the above copyright
333 Code::Flags flags = Code::ComputeFlags(Code::FUNCTION);
334 Handle<Code> code = CodeGenerator::MakeCodeEpilogue(&masm, flags, info);
335 code->set_optimizable(info->IsOptimizable() &&
338 cgen.PopulateDeoptimizationData(code);
339 cgen.PopulateTypeFeedbackInfo(code);
340 cgen.PopulateTypeFeedbackCells(code);
341 code->set_has_deoptimization_support(info->HasDeoptimizationSupport());
342 code->set_handler_table(*cgen.handler_table());
344 code->set_has_debug_break_slots(
346 code->set_compiled_optimizable(info->IsOptimizable());
348 code->set_allow_osr_at_loop_nesting_level(0);
349 code->set_profiler_ticks(0);
350 code->set_back_edge_table_offset(table_offset);
351 code->set_back_edges_patched_for_osr(false);
352 CodeGenerator::PrintCode(code, info);
353 info->SetCode(code); // May be an empty handle.
355 if (FLAG_gdbjit && !code.is_null()) {
359 GDBJIT(RegisterDetailedLineInfo(*code, lineinfo));
362 if (!code.is_null()) {
365 LOG_CODE_EVENT(isolate, CodeEndLinePosInfoRecordEvent(*code, line_info));
367 return !code.is_null();
374 // and code-relative pc offset.
388 void FullCodeGenerator::PopulateDeoptimizationData(Handle<Code> code) {
399 code->set_deoptimization_data(*data);
403 void FullCodeGenerator::PopulateTypeFeedbackInfo(Handle<Code> code) {
407 code->set_type_feedback_info(*info);
412 // The generation of debug code must match between the snapshot code and the
413 // code that is generated later. This is assumed by the debugger when it is
414 // calculating PC offsets after generating a debug version of code. Therefore
415 // we disable the production of debug code in the full compiler if we are
426 void FullCodeGenerator::PopulateTypeFeedbackCells(Handle<Code> code) {
436 TypeFeedbackInfo::cast(code->type_feedback_info())->set_type_feedback_cells(
453 // real state of the unoptimized code at the return site.
465 // There's no need to prepare this code for bailouts from already optimized
466 // code or code that can't be optimized.
489 uint8_t depth = Min(loop_depth(), Code::kMaxLoopNestingMarker);
695 // 4. Initialize: execute the module bodies (and other code) in sequence. This
716 // Generate code for allocating all modules, including nested ones.
732 // Invoke the platform-dependent code generator to do the actual
841 // position will be postponed to the breakable code (typically an IC).
867 // position will be postponed to the breakable code (typically an IC).
898 // Lookup table for code generators for special runtime calls which are
1333 // statement code starts.
1380 // statement code starts.
1415 // Exception handler code, the exception is in the result register.
1438 // Try block code. Sets up the exception handler chain.
1457 // calls the finally block code before continuing.
1460 // try handler and calls the finally block code before continuing
1465 // handler code. The handler code then calls the finally-block before
1475 // Jump to try-handler setup and try-block code.
1479 // Exception handler code. This code is only executed when an exception
1493 ExitFinallyBlock(); // Return to the calling code.