v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
Loading...
Searching...
No Matches
builtins-riscv.cc File Reference
Include dependency graph for builtins-riscv.cc:

Go to the source code of this file.

Namespaces

namespace  v8
 
namespace  v8::internal
 

Macros

#define __   ACCESS_MASM(masm)
 
#define JUMP_IF_EQUAL(NAME)
 
#define DEFINE_REG(Name)
 
#define ASSIGN_REG(Name)
 
#define DEFINE_PINNED(Name, Reg)
 
#define ASSIGN_PINNED(Name, Reg)
 
#define DEFINE_SCOPED(Name)
 
#define FREE_REG(Name)
 

Functions

static void v8::internal::AssertCodeIsBaseline (MacroAssembler *masm, Register code, Register scratch)
 
static void v8::internal::GetSharedFunctionInfoBytecodeOrBaseline (MacroAssembler *masm, Register sfi, Register bytecode, Register scratch1, Label *is_baseline, Label *is_unavailable)
 
static void v8::internal::Generate_CheckStackOverflow (MacroAssembler *masm, Register argc, Register scratch1, Register scratch2)
 
static void v8::internal::Generate_JSEntryTrampolineHelper (MacroAssembler *masm, bool is_construct)
 
static void v8::internal::LeaveInterpreterFrame (MacroAssembler *masm, Register scratch1, Register scratch2)
 
static void v8::internal::AdvanceBytecodeOffsetOrReturn (MacroAssembler *masm, Register bytecode_array, Register bytecode_offset, Register bytecode, Register scratch1, Register scratch2, Register scratch3, Label *if_return)
 
static void v8::internal::GenerateInterpreterPushArgs (MacroAssembler *masm, Register num_args, Register start_address, Register scratch)
 
static void v8::internal::Generate_InterpreterEnterBytecode (MacroAssembler *masm)
 

Macro Definition Documentation

◆ __

#define __   ACCESS_MASM(masm)

Definition at line 37 of file builtins-riscv.cc.

◆ ASSIGN_PINNED

#define ASSIGN_PINNED ( Name,
Reg )
Value:
regs.Pinned(Reg, &Name);

Definition at line 3851 of file builtins-riscv.cc.

◆ ASSIGN_REG

#define ASSIGN_REG ( Name)
Value:
regs.Ask(&Name);

Definition at line 3845 of file builtins-riscv.cc.

◆ DEFINE_PINNED

#define DEFINE_PINNED ( Name,
Reg )
Value:
Register Name = no_reg; \
regs.Pinned(Reg, &Name);

Definition at line 3847 of file builtins-riscv.cc.

◆ DEFINE_REG

#define DEFINE_REG ( Name)
Value:
Register Name = no_reg; \
regs.Ask(&Name);

Definition at line 3841 of file builtins-riscv.cc.

◆ DEFINE_SCOPED

#define DEFINE_SCOPED ( Name)
Value:
DEFINE_REG(Name) \
RegisterAllocator::Scoped scope_##Name(&regs, &Name);
#define DEFINE_REG(Name)
DeclarationScope * scope_

Definition at line 3853 of file builtins-riscv.cc.

◆ FREE_REG

#define FREE_REG ( Name)
Value:
regs.Free(&Name);

Definition at line 3857 of file builtins-riscv.cc.

◆ JUMP_IF_EQUAL

#define JUMP_IF_EQUAL ( NAME)
Value:
__ Branch(if_return, eq, bytecode, \
Operand(static_cast<int64_t>(interpreter::Bytecode::k##NAME)));
#define __
#define NAME(feat,...)

Variable Documentation

◆ allocated_registers_

std::vector<Register*> allocated_registers_
private

Definition at line 3836 of file builtins-riscv.cc.

◆ allocator_

RegisterAllocator* allocator_
private

Definition at line 3744 of file builtins-riscv.cc.

◆ available_

RegList available_
private

Definition at line 3838 of file builtins-riscv.cc.

◆ initial_

const RegList initial_
private

Definition at line 3837 of file builtins-riscv.cc.

◆ reg_

Register* reg_
private

Definition at line 3745 of file builtins-riscv.cc.