Home | History | Annotate | Download | only in arm64

Lines Matching defs:code

2 // Use of this source code is governed by a BSD-style license that can be
10 #include "src/code-factory.h"
11 #include "src/code-stubs.h"
45 // Emit code to branch if the given condition holds.
46 // The code generated here doesn't modify the flags and they must have
71 // Emit code to compare lhs and rhs and branch if the condition holds.
381 void LCodeGen::CallCode(Handle<Code> code,
384 CallCodeGeneric(code, mode, instr, RECORD_SIMPLE_SAFEPOINT);
388 void LCodeGen::CallCodeGeneric(Handle<Code> code,
395 __ Call(code, mode);
398 if ((code->kind() == Code::BINARY_OP_IC) ||
399 (code->kind() == Code::COMPARE_IC)) {
400 // Signal that we don't inline smi code before these stubs in the
401 // optimizing code generator.
425 // No cell in x2 for construct type feedback in optimized code.
592 // NONE indicates that the scope shouldn't actually generate code to set up
676 // Reserve space for the stack slots needed by the code.
738 // We have not executed any compiled code yet, so cp still holds the
776 LDeferredCode* code = deferred_[i];
779 instructions_->at(code->instruction_index())->hydrogen_value();
785 code->instruction_index(),
786 code->instr()->hydrogen_value()->id(),
787 code->instr()->Mnemonic());
789 __ Bind(code->entry());
801 Comment(";;; Deferred code");
804 code->Generate();
813 __ B(code->exit());
817 // Force constant pool emission at the end of the deferred code to make
818 // sure that no constant pools are emitted after deferred code because
819 // deferred code generation is the last step which generates code. The two
870 // Reuse the existing needs_frame code.
880 // Reuse the existing restore_caller_doubles code.
892 // Generate common code for calling the second-level deopt table.
906 // sequence. Mark the generated code as done unless we bailed out.
922 void LCodeGen::FinishCode(Handle<Code> code) {
924 code->set_stack_slots(GetStackSlotCount());
925 code->set_safepoint_table_offset(safepoints_.GetCodeOffset());
926 if (code->is_optimized_code()) RegisterWeakObjectsInOptimizedCode(code);
927 PopulateDeoptimizationData(code);
931 void LCodeGen::PopulateDeoptimizationData(Handle<Code> code) {
973 code->set_deoptimization_data(*data);
1152 // instruction for patching the code here.
1272 // code saved the registers.
1786 Handle<Code> code =
1787 CodeFactory::BinaryOpIC(isolate(), instr->op(), NO_OVERWRITE).code();
1788 CallCode(code, RelocInfo::CODE_TARGET, instr);
2080 Handle<Code> code = Handle<Code>::cast(ToHandle(target));
2081 generator.BeforeCall(__ CallSize(code, RelocInfo::CODE_TARGET));
2085 __ Call(code, RelocInfo::CODE_TARGET, TypeFeedbackId::None());
2090 __ Add(target, target, Code::kHeaderSize - kHeapObjectTag);
2109 // Load the code entry address
2549 Handle<Code> ic = CodeFactory::CompareIC(isolate(), op).code();
2551 // Signal that we don't inline smi code before this stub.
2771 // TODO(svenpanne) Refactor this to avoid code duplication with DoFlooringDivI.
2860 // Use the fast case closure allocation code that allocates in new
3070 // x4 is expected in the associated deferred code and stub.
3101 // above, so check the size of the code generated.
3109 // Check null and string before calling the deferred code.
3119 // code.
3120 // Note that we can't jump directly to deferred code from
3122 // code can be out of range.
3392 Handle<Code> ic = CodeFactory::LoadIC(isolate(), mode).code();
3646 Handle<Code> ic = CodeFactory::KeyedLoadIC(isolate()).code();
3702 Handle<Code> ic = CodeFactory::LoadIC(isolate(), NOT_CONTEXTUAL).code();
3749 // a smi. In this case, the inline code sets the result and jumps directly
3779 // The inline (non-deferred) code will store result_bits into result.
3801 // The inline (non-deferred) code will store result_bits into result.
3989 // TODO(svenpanne) Refactor this to avoid code duplication with DoDivI.
4015 // "divisor" can't be null because the code would have already been
4250 // Theoretically, a variation of the branch-free code for integer division by
4745 // Runtime::TraceExit returns its parameter in x0. We're leaving the code
4812 // inputs and the debug code here needs a scratch register.
5085 // the deferred code.
5094 __ Add(temp, code_object, Code::kHeaderSize - kHeapObjectTag);
5329 Handle<Code> ic =
5330 CodeFactory::KeyedStoreIC(isolate(), instr->strict_mode()).code();
5435 Handle<Code> ic = StoreIC::initialize_stub(isolate(), instr->strict_mode());
5547 Handle<Code> ic = CodeFactory::CompareIC(isolate(), op).code();