Home
last modified time | relevance | path

Searched full:immediate (Results 1 – 25 of 78) sorted by relevance

1234

/arkcompiler/ets_runtime/ecmascript/compiler/assembler/x64/
Dassembler_x64.h48 class Immediate {
50 Immediate(int32_t value) : value_(value) {} in Immediate() function
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 src, Register dst);
[all …]
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()
209 void AssemblerX64::Cmpl(Immediate src, Register dst) in Cmpl()
231 void AssemblerX64::Cmp(Immediate src, Register dst) in Cmp()
280 void AssemblerX64::Movq(Immediate src, Operand dst) in Movq()
[all …]
/arkcompiler/ets_runtime/ecmascript/compiler/trampoline/aarch64/
Doptimized_call.cpp73 __ Mov(frameType, Immediate(static_cast<int64_t>(FrameType::LEAVE_FRAME))); in CallRuntime()
76 __ Add(fp, sp, Immediate(2 * FRAME_SLOT_SIZE)); // 16: skip frame type and tmp in CallRuntime()
86 __ Add(argV, fp, Immediate(GetStackArgOffSetToFp(2))); // 2: the third arg id in CallRuntime()
95 __ Add(sp, sp, Immediate(2 * FRAME_SLOT_SIZE)); in CallRuntime()
105 __ Add(argc, argc, Immediate(static_cast<int64_t>(CommonArgIdx::ACTUAL_ARGC))); in IncreaseStackForArguments()
110 __ Sub(currentSp, currentSp, Immediate(FRAME_SLOT_SIZE)); in IncreaseStackForArguments()
155 __ Add(tmpArgV, tmpArgV, Immediate(TRIPLE_SLOT_SIZE)); in JSFunctionEntry()
157 __ Cmp(Register(X6), Immediate(1)); in JSFunctionEntry()
312 __ Add(Register(X0), sp, Immediate(0)); in CallBuiltinTrampoline()
405 __ Add(argV, sp, Immediate(DOUBLE_SLOT_SIZE)); in JSCallInternal()
[all …]
Dcommon_call.cpp43 …__ Mov(frameTypeRegister, Immediate(static_cast<int64_t>(FrameType::ASM_INTERPRETER_BRIDGE_FRAME))… in PushAsmInterpBridgeFrame()
48 __ Add(fp, sp, Immediate(24)); // 24: skip frame type, prevSp, pc in PushAsmInterpBridgeFrame()
77 __ Mov(frameType, Immediate(static_cast<int64_t>(FrameType::LEAVE_FRAME))); in PushLeaveFrame()
81 __ Add(Register(FP), sp, Immediate(DOUBLE_SLOT_SIZE)); in PushLeaveFrame()
103 __ Cmp(argc.W(), Immediate(0)); in PushArgsWithArgv()
113 __ Sub(argc.W(), argc.W(), Immediate(1)); in PushArgsWithArgv()
121 __ Cmp(argc.W(), Immediate(0)); in PushUndefinedWithArgc()
128 __ Mov(temp, Immediate(JSTaggedValue::VALUE_UNDEFINED)); in PushUndefinedWithArgc()
131 __ Sub(argc.W(), argc.W(), Immediate(1)); in PushUndefinedWithArgc()
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::TaggedType… in AsmInterpEntryDispatch()
113 __ Mov(runtimeId, Immediate(kungfu::RuntimeStubCSigns::ID_ThrowNotCallableException)); in AsmInterpEntryDispatch()
153 __ Cmp(declaredNumArgsRegister, Immediate(argc)); in JSCallCommonEntry()
175 __ Mov(acc, Immediate(JSTaggedValue::VALUE_EXCEPTION)); in JSCallCommonEntry()
270 __ Sub(diffRegister.W(), declaredNumArgsRegister.W(), Immediate(argc)); in JSCallCommonSlowPath()
290 __ Cmp(declaredNumArgsRegister, Immediate(0)); in JSCallCommonSlowPath()
303 __ Cmp(declaredNumArgsRegister, Immediate(1)); in JSCallCommonSlowPath()
496 __ Mov(temp, Immediate(JSTaggedValue::VALUE_UNDEFINED)); in CallNativeWithArgv()
[all …]
/arkcompiler/ets_runtime/ecmascript/compiler/
Dbytecodes.cpp295 info.inputs.emplace_back(Immediate(READ_INST_32_0())); in InitBytecodeInfo()
299 info.inputs.emplace_back(Immediate(READ_INST_64_0())); in InitBytecodeInfo()
421 info.inputs.emplace_back(Immediate(imm)); in InitBytecodeInfo()
426 info.inputs.emplace_back(Immediate(imm)); in InitBytecodeInfo()
553 info.inputs.emplace_back(Immediate(length)); in InitBytecodeInfo()
561 info.inputs.emplace_back(Immediate(length)); in InitBytecodeInfo()
569 info.inputs.emplace_back(Immediate(length)); in InitBytecodeInfo()
577 info.inputs.emplace_back(Immediate(length)); in InitBytecodeInfo()
608 info.inputs.emplace_back(Immediate(level)); in InitBytecodeInfo()
609 info.inputs.emplace_back(Immediate(slot)); in InitBytecodeInfo()
[all …]
Dbytecodes.h313 class Immediate {
315 explicit Immediate(ImmValueType value) : value_(value) in Immediate() function
318 ~Immediate() = default;
439 // set of id, immediate and read register
440 std::vector<std::variant<ConstDataId, ICSlotId, Immediate, VirtualRegister>> inputs {};
/arkcompiler/ets_runtime/ecmascript/compiler/assembler/tests/
Dassembler_aarch64_test.cpp142 __ Mov(Register(X1), Immediate(0xffff000012345678)); in HWTEST_F_L0()
143 __ Mov(Register(X2), Immediate(0x12345678abcd00ef)); in HWTEST_F_L0()
144 __ Mov(Register(X3), Immediate(0x7fff001234)); in HWTEST_F_L0()
145 __ Mov(Register(X4).W(), Immediate(0xff0000ff)); in HWTEST_F_L0()
222 __ Add(Register(SP), Register(SP), Immediate(8)); in HWTEST_F_L0()
223 __ Add(Register(SP), Register(SP), Immediate(-8)); in HWTEST_F_L0()
240 __ Cmp(Register(X1), Immediate(8)); in HWTEST_F_L0()
261 __ Cmp(Register(X1), Immediate(8)); in HWTEST_F_L0()
266 __ Mov(Register(X0), Immediate(0xa)); in HWTEST_F_L0()
270 __ Mov(Register(X0), Immediate(0x2)); in HWTEST_F_L0()
[all …]
/arkcompiler/ets_runtime/ecmascript/compiler/assembler/aarch64/
Dassembler_aarch64.h116 class Immediate {
118 Immediate(int64_t value) : value_(value) {} in Immediate() function
119 ~Immediate() = default;
158 Operand(Immediate imm) in Operand()
213 inline Immediate GetImmediate() const in GetImmediate()
222 Immediate immediate_;
254 Immediate GetImmediate() const in GetImmediate()
286 Immediate offsetImm_;
309 void Mov(const Register &rd, const Immediate &imm);
352 void Brk(const Immediate &imm);
/arkcompiler/runtime_core/tests/cts-generator/cts-template/
Dldai.yaml18 title: Load accumulator from immediate
20 … Load immediate into accumulator. For short formats immediate is sign extended to operand size.
Dldai.64.yaml18 title: Load accumulator from immediate
20 … Load immediate into accumulator. For short formats immediate is sign extended to operand size.
Dmovi.yaml18 title: Move immediate-to-register
20 …Move integer immediate into a register. For short formats immediate is sign extended to operand si…
Dfldai.64.yaml18 title: Load accumulator from immediate
20 … Load immediate into accumulator. For short formats immediate is sign extended to operand size.
Dfldai.yaml18 title: Load accumulator from immediate
20 … Load immediate into accumulator. For short formats immediate is sign extended to operand size.
Dmovi.64.yaml18 title: Move immediate-to-register
20 …Move integer immediate into a register. For short formats immediate is sign extended to operand si…
Dfmovi.64.yaml18 title: Move immediate-to-register
20 …Move integer immediate into a register. For short formats immediate is sign extended to operand si…
Dfmovi.yaml18 title: Move immediate-to-register
20 …Move integer immediate into a register. For short formats immediate is sign extended to operand si…
Dxori.yaml19 title: Two address binary operation with immediate on accumulator
21 … Perform specified binary operation on accumulator and immediate and store result into accumulator.
22 Immediate is sign extended to operand size.
Dshli.yaml19 title: Two address binary operation with immediate on accumulator
21 … Perform specified binary operation on accumulator and immediate and store result into accumulator.
22 Immediate is sign extended to operand size.
Dori.yaml19 title: Two address binary operation with immediate on accumulator
21 … Perform specified binary operation on accumulator and immediate and store result into accumulator.
22 Immediate is sign extended to operand size.
Dmuli.yaml19 title: Two address binary operation with immediate on accumulator
21 … Perform specified binary operation on accumulator and immediate and store result into accumulator.
22 Immediate is sign extended to operand size.
Dashri.yaml19 title: Two address binary operation with immediate on accumulator
21 … Perform specified binary operation on accumulator and immediate and store result into accumulator.
22 Immediate is sign extended to operand size.
/arkcompiler/runtime_core/docs/
D2022-08-18-isa-changelog.md17 5. We add prefix "wide" to support opcodes which need larger immediate number.
18 6. We adjust the format of some opcodes (about immediate number and accumulator), so that the bytec…
/arkcompiler/runtime_core/compiler/tests/
Dspill_fill_encoder_test.cpp37 {LocationType::IMMEDIATE, LocationType::REGISTER, 0, 0, DataType::Type::INT64}, in TEST_F()
38 {LocationType::IMMEDIATE, LocationType::REGISTER, 0, 1, DataType::Type::INT64}, in TEST_F()
56 {LocationType::IMMEDIATE, LocationType::REGISTER, 0, 0, DataType::Type::INT64}, in TEST_F()
57 {LocationType::IMMEDIATE, LocationType::REGISTER, 0, 1, DataType::Type::INT64}, in TEST_F()
/arkcompiler/runtime_core/compiler/optimizer/ir/
Dlocations.h37 DEF(IMMEDIATE, "i") \
92 return GetKind() == Kind::IMMEDIATE; in IsConstant()
201 return Location(Kind::IMMEDIATE, value); in MakeConstant()

1234