Lines Matching defs:code
2 // Use of this source code is governed by a BSD-style license that can be
13 #include "src/codegen/code-factory.h"
27 #include "src/wasm/wasm-code-manager.h"
342 if (FLAG_riscv_c_extension && (rd.code() == rs.code()) &&
343 ((rd.code() & 0b11000) == 0b01000) &&
344 ((rt.rm().code() & 0b11000) == 0b01000)) {
351 (rd.code() == rs.code()) && (rd != zero_reg) &&
372 if (FLAG_riscv_c_extension && (rd.code() == rs.code()) &&
380 (rd.code() == rs.code()) && (rd != zero_reg) && (rt.immediate() != 0) &&
385 (rd.code() == rs.code()) && (rd == sp) &&
388 } else if (FLAG_riscv_c_extension && ((rd.code() & 0b11000) == 0b01000) &&
411 if (FLAG_riscv_c_extension && (rd.code() == rs.code()) &&
412 ((rd.code() & 0b11000) == 0b01000) &&
413 ((rt.rm().code() & 0b11000) == 0b01000)) {
420 if (FLAG_riscv_c_extension && (rd.code() == rs.code()) &&
453 if (FLAG_riscv_c_extension && (rd.code() == rs.code()) &&
454 ((rd.code() & 0b11000) == 0b01000) &&
455 ((rt.rm().code() & 0b11000) == 0b01000)) {
460 } else if (FLAG_riscv_c_extension && (rd.code() == rs.code()) &&
469 (rd.code() == rs.code()) && (rd == sp) &&
659 if (FLAG_riscv_c_extension && (rd.code() == rs.code()) &&
660 ((rd.code() & 0b11000) == 0b01000) &&
661 ((rt.rm().code() & 0b11000) == 0b01000)) {
668 !MustUseReg(rt.rmode()) && (rd.code() == rs.code()) &&
669 ((rd.code() & 0b11000) == 0b01000)) {
685 if (FLAG_riscv_c_extension && (rd.code() == rs.code()) &&
686 ((rd.code() & 0b11000) == 0b01000) &&
687 ((rt.rm().code() & 0b11000) == 0b01000)) {
707 if (FLAG_riscv_c_extension && (rd.code() == rs.code()) &&
708 ((rd.code() & 0b11000) == 0b01000) &&
709 ((rt.rm().code() & 0b11000) == 0b01000)) {
908 } else if (FLAG_riscv_c_extension && (rd.code() == rs.code()) &&
909 ((rd.code() & 0b11000) == 0b01000) && is_int6(rt.immediate())) {
921 } else if (FLAG_riscv_c_extension && (rd.code() == rs.code()) &&
922 ((rd.code() & 0b11000) == 0b01000) && is_int6(rt.immediate())) {
936 if (FLAG_riscv_c_extension && (rd.code() == rs.code()) &&
1260 DCHECK(scratch.code() != value.code());
1388 if (FLAG_riscv_c_extension && ((target.code() & 0b11000) == 0b01000) &&
1389 ((source.rm().code() & 0b11000) == 0b01000) &&
1412 if (FLAG_riscv_c_extension && ((value.code() & 0b11000) == 0b01000) &&
1413 ((source.rm().code() & 0b11000) == 0b01000) &&
1428 if (FLAG_riscv_c_extension && ((target.code() & 0b11000) == 0b01000) &&
1429 ((source.rm().code() & 0b11000) == 0b01000) &&
1445 if (FLAG_riscv_c_extension && ((value.code() & 0b11000) == 0b01000) &&
1446 ((source.rm().code() & 0b11000) == 0b01000) &&
1475 if (FLAG_riscv_c_extension && ((target.code() & 0b11000) == 0b01000) &&
1476 ((source.rm().code() & 0b11000) == 0b01000) &&
1491 if (FLAG_riscv_c_extension && ((value.code() & 0b11000) == 0b01000) &&
1492 ((source.rm().code() & 0b11000) == 0b01000) &&
1556 // non-isolate-independent code. In many cases it might be cheaper than
1573 // non-isolate-independent code. In many cases it might be cheaper than
1647 // this code to load another value which may need all 6 instructions.
2956 break; // No code needs to be emitted
2967 break; // No code needs to be emitted.
2986 break; // No code needs to be emitted.
3007 break; // No code needs to be emitted.
3026 break; // No code needs to be emitted.
3235 void TurboAssembler::Jump(Handle<Code> code, RelocInfo::Mode rmode,
3242 isolate()->builtins()->IsBuiltinHandle(code, &builtin) &&
3246 int32_t code_target_index = AddCodeTarget(code);
3258 int offset = static_cast<int>(code->builtin_id()) * kSystemPointerSize +
3273 int32_t target_index = AddCodeTarget(code);
3282 // Note: To call gcc-compiled C code on riscv64, you must call through t6.
3316 void TurboAssembler::Call(Handle<Code> code, RelocInfo::Mode rmode,
3320 isolate()->builtins()->IsBuiltinHandle(code, &builtin) &&
3324 int32_t code_target_index = AddCodeTarget(code);
3338 int offset = static_cast<int>(code->builtin_id()) * kSystemPointerSize +
3354 DCHECK(code->IsExecutable());
3355 int32_t target_index = AddCodeTarget(code);
3422 // Note that this assumes the caller code (i.e. the Code object currently
3435 // instruction past the real call into C code (the jalr(t6)), and push it.
3598 // Adjust this code if not the case.
3843 // We call indirectly through the code field in the function to
3846 Register code = kJavaScriptCallCodeStartRegister;
3847 LoadTaggedPointerField(code,
3851 CallCodeObject(code);
3854 JumpCodeObject(code);
4150 // should remove this need and make the runtime routine entry code
4154 Handle<Code> code =
4156 Call(code, RelocInfo::CODE_TARGET);
4173 Handle<Code> code = CodeFactory::CEntry(isolate(), 1, SaveFPRegsMode::kIgnore,
4175 Jump(code, RelocInfo::CODE_TARGET, al, zero_reg, Operand(zero_reg));
4280 // We don't actually want to generate a pile of code for this, so just
4289 // If the calling code cares about the exact number of
4907 // See x64 code for reasoning about how to address the isolate data fields.
4959 int code = config->GetAllocatableGeneralCode(i);
4960 Register candidate = Register::from_code(code);
4969 // register ra, which is needed while computing the code start address.
4997 // builtin code (which will later be embedded into the binary) or compiling
4998 // user JS code at runtime.
4999 // * Builtin code runs in --jitless mode and thus must not call into on-heap
5003 // targets are usually generated code and not builtin Code objects.