Home
last modified time | relevance | path

Searched refs:Immediate (Results 1 - 25 of 25) sorted by relevance

/arkcompiler/ets_runtime/ecmascript/compiler/trampoline/aarch64/
H A Doptimized_fast_call.cpp59 __ Add(tmpArgV, tmpArgV, Immediate(DOUBLE_SLOT_SIZE)); in OptimizedFastCallEntry()
118 __ Add(__ AvailableRegister4(), sp, Immediate(4 * FRAME_SLOT_SIZE)); // 4 skip fp lr type x19 in OptimizedFastCallAndPushArgv()
130 __ Add(expectedNumArgs, expectedNumArgs, Immediate(NUM_MANDATORY_JSFUNC_ARGS)); in OptimizedFastCallAndPushArgv()
138 __ Cmp(actualNumArgsReg, Immediate(3)); // 3: 3 args in OptimizedFastCallAndPushArgv()
140 __ Mov(Register(X3), Immediate(JSTaggedValue::VALUE_UNDEFINED)); in OptimizedFastCallAndPushArgv()
141 __ Mov(Register(X4), Immediate(JSTaggedValue::VALUE_UNDEFINED)); in OptimizedFastCallAndPushArgv()
142 __ Mov(Register(X5), Immediate(JSTaggedValue::VALUE_UNDEFINED)); in OptimizedFastCallAndPushArgv()
143 __ Mov(Register(X6), Immediate(JSTaggedValue::VALUE_UNDEFINED)); in OptimizedFastCallAndPushArgv()
144 __ Mov(Register(X7), Immediate(JSTaggedValue::VALUE_UNDEFINED)); in OptimizedFastCallAndPushArgv()
150 __ Cmp(actualNumArgsReg, Immediate( in OptimizedFastCallAndPushArgv()
[all...]
H A Doptimized_call.cpp72 __ Mov(frameType, Immediate(static_cast<int64_t>(FrameType::LEAVE_FRAME))); in CallRuntime()
75 __ Add(fp, sp, Immediate(2 * FRAME_SLOT_SIZE)); // 2 : 2 means pairs in CallRuntime()
85 __ Add(argV, fp, Immediate(GetStackArgOffSetToFp(2))); // 2: the third arg id in CallRuntime()
94 __ Add(sp, sp, Immediate(2 * FRAME_SLOT_SIZE)); in CallRuntime()
106 __ Add(argc, argc, Immediate(numExtraArgs)); in IncreaseStackForArguments()
112 __ Sub(currentSp, currentSp, Immediate(FRAME_SLOT_SIZE)); in IncreaseStackForArguments()
157 __ Add(tmpArgV, tmpArgV, Immediate(TRIPLE_SLOT_SIZE)); in JSFunctionEntry()
159 __ Cmp(Register(X6), Immediate(1)); in JSFunctionEntry()
224 __ Add(expectedNumArgs, expectedNumArgs, Immediate(NUM_MANDATORY_JSFUNC_ARGS)); in OptimizedCallAndPushArgv()
226 __ Add(argV, sp, Immediate(funcSlotOffSe in OptimizedCallAndPushArgv()
[all...]
H A Dcommon_call.cpp42 __ Mov(frameTypeRegister, Immediate(static_cast<int64_t>(FrameType::ASM_INTERPRETER_BRIDGE_FRAME))); in PushAsmInterpBridgeFrame()
47 __ Add(fp, sp, Immediate(24)); // 24: skip frame type, prevSp, pc in PushAsmInterpBridgeFrame()
76 __ Mov(frameType, Immediate(static_cast<int64_t>(FrameType::LEAVE_FRAME))); in PushLeaveFrame()
80 __ Add(Register(FP), sp, Immediate(DOUBLE_SLOT_SIZE)); in PushLeaveFrame()
102 __ Cmp(argc.W(), Immediate(0)); in PushArgsWithArgv()
112 __ Sub(argc.W(), argc.W(), Immediate(1)); in PushArgsWithArgv()
121 __ Cmp(argc.W(), Immediate(0)); in PushArgsWithArgvInPair()
131 __ Sub(argc.W(), argc.W(), Immediate(1)); // 1: push the top arg already in PushArgsWithArgvInPair()
141 __ Cmp(argc.W(), Immediate(1)); // 1: argc is odd number in copyArgs in PushArgsWithArgvInPair()
147 __ Sub(argc.W(), argc.W(), Immediate( in PushArgsWithArgvInPair()
[all...]
H A Dasm_interpreter_call.cpp87 __ Mov(tempRegister.W(), Immediate(static_cast<int64_t>(JSType::JS_FUNCTION_FIRST))); in AsmInterpEntryDispatch()
90 __ Mov(tempRegister.W(), Immediate(static_cast<int64_t>(JSType::JS_FUNCTION_LAST))); in AsmInterpEntryDispatch()
106 __ Add(argvRegister, argvRegister, Immediate(NUM_MANDATORY_JSFUNC_ARGS * JSTaggedValue::TaggedTypeSize())); in AsmInterpEntryDispatch()
113 __ Mov(runtimeId, Immediate(kungfu::RuntimeStubCSigns::ID_ThrowNotCallableException)); in AsmInterpEntryDispatch()
155 __ Cmp(declaredNumArgsRegister, Immediate(argc)); in JSCallCommonEntry()
177 __ Mov(acc, Immediate(JSTaggedValue::VALUE_EXCEPTION)); in JSCallCommonEntry()
273 __ Sub(diffRegister.W(), declaredNumArgsRegister.W(), Immediate(argc)); in JSCallCommonSlowPath()
293 __ Cmp(declaredNumArgsRegister, Immediate(0)); in JSCallCommonSlowPath()
306 __ Cmp(declaredNumArgsRegister, Immediate(1)); in JSCallCommonSlowPath()
526 __ Mov(temp, Immediate(JSTaggedValu in CallNativeWithArgv()
[all...]
H A Dcommon_call.h256 static void SaveFpAndJumpSize(ExtendedAssembler *assembler, Immediate jumpSize);
/arkcompiler/ets_runtime/ecmascript/compiler/assembler/x64/
H A Dassembler_x64.h48 class Immediate { class
50 Immediate(int32_t value) : value_(value) {} in Immediate() function in panda::ecmascript::x64::Immediate
51 ~Immediate() = default;
82 // | prefixs| opcode| modR/M| SIB| Displacement| Immediate|
90 void Pushq(Immediate x);
97 void Movq(Immediate src, Operand dst);
98 void Movq(Immediate src, Register dst);
101 void Addq(Immediate src, Register dst);
103 void Addl(Immediate src, Register dst);
104 void Subq(Immediate sr
[all...]
H A Dmacro_assembler_x64.cpp22 void MacroAssemblerX64::Move(const StackSlotOperand &dstStackSlot, Immediate value) in Move()
41 void MacroAssemblerX64::Cmp(const StackSlotOperand &stackSlot, Immediate value) in Cmp()
46 assembler.Cmp(x64::Immediate(value.GetValue()), LOCAL_SCOPE_REGISTER); in Cmp()
113 assembler.Movq(panda::ecmascript::x64::Immediate(static_cast<int32_t>(num)), paramReg); in MovParameterIntoParamReg()
118 assembler.Movq(panda::ecmascript::x64::Immediate(static_cast<int32_t>(num)), paramReg); in MovParameterIntoParamReg()
123 assembler.Movq(panda::ecmascript::x64::Immediate(num), paramReg); in MovParameterIntoParamReg()
H A Dassembler_x64.cpp26 void AssemblerX64::Pushq(Immediate x) in Pushq()
57 void AssemblerX64::Addq(Immediate src, Register dst) in Addq()
87 void AssemblerX64::Addl(Immediate src, Register dst) in Addl()
109 void AssemblerX64::Subq(Immediate src, Register dst) in Subq()
139 void AssemblerX64::Subl(Immediate src, Register dst) in Subl()
161 void AssemblerX64::Cmpq(Immediate src, Register dst) in Cmpq()
183 void AssemblerX64::Cmpb(Immediate src, Register dst) in Cmpb()
210 void AssemblerX64::Cmpl(Immediate src, Register dst) in Cmpl()
232 void AssemblerX64::Cmp(Immediate src, Register dst) in Cmp()
281 void AssemblerX64::Movq(Immediate sr
[all...]
H A Dmacro_assembler_x64.h37 void Move(const StackSlotOperand &dstStackSlot, Immediate value) override;
39 void Cmp(const StackSlotOperand &stackSlot, Immediate value) override;
/arkcompiler/ets_runtime/ecmascript/compiler/assembler/tests/
H A Dassembler_aarch64_test.cpp136 __ Mov(Register(X1), Immediate(0xffff000012345678)); in HWTEST_F_L0()
137 __ Mov(Register(X2), Immediate(0x12345678abcd00ef)); in HWTEST_F_L0()
138 __ Mov(Register(X3), Immediate(0x7fff001234)); in HWTEST_F_L0()
139 __ Mov(Register(X4).W(), Immediate(0xff0000ff)); in HWTEST_F_L0()
216 __ Add(Register(SP), Register(SP), Immediate(8)); in HWTEST_F_L0()
217 __ Add(Register(SP), Register(SP), Immediate(-8)); in HWTEST_F_L0()
234 __ Cmp(Register(X1), Immediate(8)); in HWTEST_F_L0()
255 __ Cmp(Register(X1), Immediate(8)); in HWTEST_F_L0()
260 __ Mov(Register(X0), Immediate(0xa)); in HWTEST_F_L0()
264 __ Mov(Register(X0), Immediate( in HWTEST_F_L0()
[all...]
/arkcompiler/ets_runtime/ecmascript/compiler/
H A Dbytecodes.cpp626 info.inputs.emplace_back(Immediate(READ_INST_32_0())); in InitBytecodeInfo()
630 info.inputs.emplace_back(Immediate(READ_INST_64_0())); in InitBytecodeInfo()
757 info.inputs.emplace_back(Immediate(imm)); in InitBytecodeInfo()
762 info.inputs.emplace_back(Immediate(imm)); in InitBytecodeInfo()
893 info.inputs.emplace_back(Immediate(length)); in InitBytecodeInfo()
903 info.inputs.emplace_back(Immediate(length)); in InitBytecodeInfo()
912 info.inputs.emplace_back(Immediate(length)); in InitBytecodeInfo()
922 info.inputs.emplace_back(Immediate(length)); in InitBytecodeInfo()
954 info.inputs.emplace_back(Immediate(level)); in InitBytecodeInfo()
955 info.inputs.emplace_back(Immediate(slo in InitBytecodeInfo()
[all...]
H A Dbytecodes.h518 class Immediate { class
520 explicit Immediate(ImmValueType value) : value_(value) in Immediate() function in panda::ecmascript::kungfu::Immediate
523 ~Immediate() = default;
645 std::vector<std::variant<ConstDataId, ICSlotId, Immediate, VirtualRegister>> inputs {};
H A Dbytecode_circuit_builder.cpp696 } else if (std::holds_alternative<Immediate>(input)) { in CreateGateInList()
698 std::get<Immediate>(input).GetValue(), in CreateGateInList()
760 std::get<Immediate>(info.inputs[0]).ToJSTaggedValueInt(), in NewConst()
765 std::get<Immediate>(info.inputs.at(0)).ToJSTaggedValueDouble(), in NewConst()
/arkcompiler/ets_runtime/ecmascript/compiler/assembler/aarch64/
H A Dassembler_aarch64.h117 class Immediate { class
119 Immediate(int64_t value) : value_(value) {} in Immediate() function in panda::ecmascript::aarch64::Immediate
120 ~Immediate() = default;
159 Operand(Immediate imm) in Operand()
214 inline Immediate GetImmediate() const in GetImmediate()
223 Immediate immediate_;
255 Immediate GetImmediate() const in GetImmediate()
287 Immediate offsetImm_;
310 void Mov(const Register &rd, const Immediate &imm);
353 void Brk(const Immediate
[all...]
H A Dmacro_assembler_aarch64.cpp36 void MacroAssemblerAArch64::Move(const StackSlotOperand &dstStackSlot, Immediate value) in Move()
41 assembler.Mov(LOCAL_SCOPE_REGISTER, aarch64::Immediate(value.GetValue())); in Move()
58 void MacroAssemblerAArch64::Cmp(const StackSlotOperand &stackSlot, Immediate value) in Cmp()
63 aarch64::Operand immOpnd = aarch64::Immediate(value.GetValue()); in Cmp()
100 assembler.Mov(LOCAL_SCOPE_REGISTER, aarch64::Immediate(funcAddress)); in CallBuiltin()
153 assembler.Mov(paramReg, aarch64::Immediate(static_cast<int64_t>(num))); in MovParameterIntoParamReg()
158 assembler.Mov(paramReg, aarch64::Immediate(static_cast<int64_t>(num))); in MovParameterIntoParamReg()
163 assembler.Mov(paramReg, aarch64::Immediate(static_cast<int64_t>(num))); in MovParameterIntoParamReg()
323 assembler.Mov(destReg, aarch64::Immediate(imm)); in CopyImm()
344 assembler.Mov(destReg, aarch64::Immediate(srcLowe in CopyImm()
[all...]
H A Dmacro_assembler_aarch64.h42 void Move(const StackSlotOperand &dstStackSlot, Immediate value) override;
44 void Cmp(const StackSlotOperand &stackSlot, Immediate value) override;
H A Dextend_assembler.cpp112 Mov(op, Immediate(JSTaggedValue(argc).GetRawData())); in PushArgc()
128 Sub(fp, fp, Immediate(8)); in Align16()
H A Dassembler_aarch64.cpp381 void AssemblerAarch64::Mov(const Register &rd, const Immediate &imm) in Mov()
416 ASSERT_PRINT(regSize == RegXSize, "all 32-bit Immediate will be transformed with a MOVZ/MOVK pair"); in Mov()
462 Add(rd, rm, Operand(Immediate(0))); in Mov()
633 firstshift = (tz / 16) * 16; // 16 : 16 means the operand of MOVK/N/Z is 16 bits Immediate in EmitMovInstruct()
635 lastshift = ((63 - lz) / 16) * 16; // 16 : 16 means the operand of MOVK/N/Z is 16 bits Immediate in EmitMovInstruct()
648 firstshift += 16; // 16 : 16 means the operand of MOVK is 16 bits Immediate in EmitMovInstruct()
1141 void AssemblerAarch64::Brk(const Immediate &imm) in Brk()
/arkcompiler/ets_runtime/ecmascript/compiler/baseline/
H A Dbaseline_assembler.h111 void Move(VirtualRegister interpreterDestReg, Immediate value);
112 void Move(SpecialRegister destReg, Immediate value);
117 void Cmp(SpecialRegister reg, Immediate value);
H A Dbaseline_assembler.cpp37 void BaselineAssembler::Move(VirtualRegister interpreterDestReg, Immediate value) in Move()
45 void BaselineAssembler::Move(SpecialRegister destReg, Immediate value) in Move()
96 void BaselineAssembler::Cmp(SpecialRegister reg, Immediate value) in Cmp()
H A Dbaseline_compiler.cpp280 LOG_INST() << " ldundefined " << std::hex << Immediate(JSTaggedValue::VALUE_UNDEFINED).GetValue(); in BYTECODE_BASELINE_HANDLER_IMPLEMENT()
282 GetBaselineAssembler().Move(SpecialRegister::ACC_REGISTER, Immediate(JSTaggedValue::VALUE_UNDEFINED)); in BYTECODE_BASELINE_HANDLER_IMPLEMENT()
290 GetBaselineAssembler().Move(SpecialRegister::ACC_REGISTER, Immediate(JSTaggedValue(base::NAN_VALUE).GetRawData())); in BYTECODE_BASELINE_HANDLER_IMPLEMENT()
298 GetBaselineAssembler().Move(SpecialRegister::ACC_REGISTER, Immediate(JSTaggedValue(base::POSITIVE_INFINITY).GetRawData())); in BYTECODE_BASELINE_HANDLER_IMPLEMENT()
305 LOG_INST() << " ldnull " << std::hex << Immediate(JSTaggedValue::VALUE_NULL).GetValue(); in BYTECODE_BASELINE_HANDLER_IMPLEMENT()
306 GetBaselineAssembler().Move(SpecialRegister::ACC_REGISTER, Immediate(JSTaggedValue::VALUE_NULL)); in BYTECODE_BASELINE_HANDLER_IMPLEMENT()
313 LOG_INST() << " ldtrue " << std::hex << Immediate(JSTaggedValue::VALUE_TRUE).GetValue(); in BYTECODE_BASELINE_HANDLER_IMPLEMENT()
314 GetBaselineAssembler().Move(SpecialRegister::ACC_REGISTER, Immediate(JSTaggedValue::VALUE_TRUE)); in BYTECODE_BASELINE_HANDLER_IMPLEMENT()
321 LOG_INST() << " ldfalse " << std::hex << Immediate(JSTaggedValue::VALUE_FALSE).GetValue(); in BYTECODE_BASELINE_HANDLER_IMPLEMENT()
322 GetBaselineAssembler().Move(SpecialRegister::ACC_REGISTER, Immediate(JSTaggedValu in BYTECODE_BASELINE_HANDLER_IMPLEMENT()
[all...]
/arkcompiler/ets_runtime/ecmascript/compiler/trampoline/x64/
H A Doptimized_fast_call.cpp127 __ Cmp(Immediate(3), actualNumArgsReg); // 3: func new this in OptimizedFastCallAndPushArgv()
139 __ Cmp(Immediate(4), actualNumArgsReg); // 4: func new this arg0 in OptimizedFastCallAndPushArgv()
151 __ Cmp(Immediate(5), actualNumArgsReg); // 5: 5 args in OptimizedFastCallAndPushArgv()
162 __ Cmp(Immediate(6), actualNumArgsReg); // 6: 6 args in OptimizedFastCallAndPushArgv()
207 __ Cmp(Immediate(3), expectedNumArgsReg); // 3: expectedNumArgsReg <= 3 jump in OptimizedFastCallAndPushArgv()
244 __ Addq(Immediate(FRAME_SLOT_SIZE), callsiteSp); // 8 : 8 means skip pc to get last callsitesp in JSFastCallWithArgV()
314 __ Addq(Immediate(FRAME_SLOT_SIZE), callsiteSp); // 8 : 8 means skip pc to get last callsitesp in JSFastCallWithArgVAndPushArgv()
398 __ Cmp(Immediate(3), expectedNumArgsReg); // 3:expectedNumArgsReg <= 3 jump in JSFastCallWithArgVAndPushArgv()
H A Doptimized_call.cpp289 __ Movq(Immediate(0), Operand(rsp, DOUBLE_SLOT_SIZE)); // argv -> argc in CallBuiltinTrampoline()
341 __ Movq(Immediate(0), Operand(rsp, DOUBLE_SLOT_SIZE)); // 0 -> argc in CallBuiltinConstructorStub()
471 __ Subq(Immediate(kungfu::ArgumentAccessor::GetFixArgsNum()), argc); in GenJSCall()
670 __ Subq(Immediate(kungfu::ArgumentAccessor::GetFixArgsNum()), argc); in AOTCallToAsmInterBridge()
748 __ Subq(Immediate(3), tempArgc); // 3: the first 3 args are not on stack in FastCallToAsmInterBridge()
749 __ Addq(Immediate(TRIPLE_SLOT_SIZE), startSp); // skip bridge frame and return addr in FastCallToAsmInterBridge()
751 __ Subq(Immediate(TRIPLE_SLOT_SIZE), startSp); in FastCallToAsmInterBridge()
804 __ Addq(Immediate(TRIPLE_SLOT_SIZE), argV); // skip func, newtarget and this in FastCallToAsmInterBridge()
1237 __ Addq(Immediate(2 * FRAME_SLOT_SIZE), sp); in PopOptimizedUnfoldArgVFrame()
1287 __ Addq(Immediate(FRAME_SLOT_SIZ in GenJSCallWithArgV()
[all...]
H A Dasm_interpreter_call.cpp988 __ Cmpq(Immediate(3), argc); // 3: number of args in CallFastBuiltin()
1003 __ Cmp(Immediate(0), r9); in CallFastBuiltin()
1011 __ Cmp(Immediate(1), r9); in CallFastBuiltin()
1021 __ Cmp(Immediate(2), r9); // 2: number of args in CallFastBuiltin()
1615 __ Cmpl(Immediate(RegionSpaceFlag::SHARED_SWEEPABLE_SPACE_BEGIN), r11); in ASMFastWriteBarrier()
1631 __ Cmpl(Immediate(RegionSpaceFlag::IN_YOUNG_SPACE), r11); in ASMFastWriteBarrier()
1638 __ Cmpl(Immediate(RegionSpaceFlag::IN_YOUNG_SPACE), r11); in ASMFastWriteBarrier()
1653 __ Testb(Immediate(JSThread::CONCURRENT_MARKING_BITFIELD_MASK), r11); in ASMFastWriteBarrier()
1666 __ Cmpl(Immediate(RegionSpaceFlag::IN_SHARED_READ_ONLY_SPACE), r11); in ASMFastWriteBarrier()
1722 __ Cmpl(Immediate(RegionSpaceFla in ASMFastSharedWriteBarrier()
[all...]
/arkcompiler/ets_runtime/ecmascript/compiler/assembler/
H A Dmacro_assembler.h75 virtual void Move(const StackSlotOperand &dstStackSlot, Immediate value) = 0;
78 virtual void Cmp(const StackSlotOperand &stackSlot, Immediate value) = 0;

Completed in 33 milliseconds