5 #ifndef V8_COMPILER_CODE_GENERATOR_IMPL_H_
6 #define V8_COMPILER_CODE_GENERATOR_IMPL_H_
52 return static_cast<uint8_t
>(
InputInt32(index) & 0x1F);
56 return static_cast<uint8_t
>(
InputInt32(index) & 0x3F);
71 DCHECK(block_id < gen_->schedule()->BasicBlockCount());
72 return gen_->schedule()->GetBlockById(block_id);
91 DCHECK(op->IsDoubleRegister());
96 if (operand->IsImmediate()) {
97 return gen_->code()->GetImmediate(operand->
index());
99 return gen_->code()->GetConstant(operand->
index());
123 #if V8_TARGET_ARCH_ARM64 || V8_TARGET_ARCH_ARM
void CheckConstPool(bool force_emit, bool require_jump)
DoubleRegister ToDoubleRegister(InstructionOperand *op)
uint8_t InputInt6(int index)
int8_t InputInt8(int index)
Handle< HeapObject > ToHeapObject(InstructionOperand *operand)
Register InputRegister(int index)
double ToDouble(InstructionOperand *operand)
Register OutputRegister(int index=0)
Constant ToConstant(InstructionOperand *operand)
Register ToRegister(InstructionOperand *op)
DoubleRegister OutputDoubleRegister()
Handle< HeapObject > InputHeapObject(int index)
double InputDouble(int index)
uint8_t InputInt5(int index)
Linkage * linkage() const
InstructionOperandConverter(CodeGenerator *gen, Instruction *instr)
int16_t InputInt16(int index)
Isolate * isolate() const
Label * InputLabel(int index)
BasicBlock * InputBlock(int index)
int32_t InputInt32(int index)
Register TempRegister(int index)
DoubleRegister InputDoubleRegister(int index)
InstructionOperand * Output() const
InstructionOperand * TempAt(size_t i) const
InstructionOperand * InputAt(size_t i) const
InstructionOperand * OutputAt(size_t i) const
#define DCHECK(condition)
static void FinishCode(MacroAssembler *masm)
Debugger support for the V8 JavaScript engine.
static DwVfpRegister FromAllocationIndex(int index)
static Register FromAllocationIndex(int index)