| /arkcompiler/ets_runtime/ecmascript/compiler/trampoline/aarch64/ |
| D | optimized_fast_call.cpp | 59 __ 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(4)); // 4: 4 args in OptimizedFastCallAndPushArgv() [all …]
|
| D | optimized_call.cpp | 72 __ 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(funcSlotOffSet * FRAME_SLOT_SIZE)); // skip numArgs and argv in OptimizedCallAndPushArgv() [all …]
|
| D | common_call.cpp | 42 …__ 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(2)); // 2: pair in PushArgsWithArgvInPair() [all …]
|
| D | asm_interpreter_call.cpp | 87 __ 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() 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(JSTaggedValue::VALUE_UNDEFINED)); in CallNativeWithArgv() [all …]
|
| /arkcompiler/ets_runtime/ecmascript/compiler/codegen/maple/maple_be/include/cg/ |
| D | cfi.def | 22 CFI_DEFINE( personality, _default, 1, Immediate, Undef, Undef ) 23 CFI_DEFINE( personality, _symbol, 2, Immediate, String, Undef ) 24 CFI_DEFINE( personality, _constant, 2, Immediate, Immediate, Undef ) 27 CFI_DEFINE( lsda, _default, 1, Immediate, Undef, Undef ) 28 CFI_DEFINE( lsda, _label, 2, Immediate, BBAddress, Undef ) 29 CFI_DEFINE( lsda, _constant, 2, Immediate, Immediate, Undef ) 31 CFI_DEFINE( inline_lsda, _align, 1, Immediate, Undef, Undef ) /* power of 2 */ 32 CFI_DEFINE( def_cfa, , 2, Register, Immediate, Undef ) 34 CFI_DEFINE( def_cfa_offset, , 1, Immediate, Undef, Undef ) 35 CFI_DEFINE( adjust_cfa_offset, , 1, Immediate, Undef, Undef ) [all …]
|
| D | dbg.def | 17 DBG_DEFINE(loc, , 2, Immediate, Immediate, Undef)
|
| /arkcompiler/ets_runtime/ecmascript/compiler/assembler/x64/ |
| D | assembler_x64.h | 48 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 …]
|
| D | macro_assembler_x64.cpp | 22 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()
|
| D | assembler_x64.cpp | 26 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 src, Operand dst) in Movq() [all …]
|
| /arkcompiler/ets_runtime/ecmascript/compiler/ |
| D | bytecodes.cpp | 625 info.inputs.emplace_back(Immediate(READ_INST_32_0())); in InitBytecodeInfo() 629 info.inputs.emplace_back(Immediate(READ_INST_64_0())); in InitBytecodeInfo() 756 info.inputs.emplace_back(Immediate(imm)); in InitBytecodeInfo() 761 info.inputs.emplace_back(Immediate(imm)); in InitBytecodeInfo() 892 info.inputs.emplace_back(Immediate(length)); in InitBytecodeInfo() 902 info.inputs.emplace_back(Immediate(length)); in InitBytecodeInfo() 911 info.inputs.emplace_back(Immediate(length)); in InitBytecodeInfo() 921 info.inputs.emplace_back(Immediate(length)); in InitBytecodeInfo() 953 info.inputs.emplace_back(Immediate(level)); in InitBytecodeInfo() 954 info.inputs.emplace_back(Immediate(slot)); in InitBytecodeInfo() [all …]
|
| /arkcompiler/ets_runtime/ecmascript/compiler/assembler/tests/ |
| D | assembler_aarch64_test.cpp | 136 __ 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(0x2)); in HWTEST_F_L0() [all …]
|
| /arkcompiler/ets_runtime/ecmascript/compiler/assembler/aarch64/ |
| D | macro_assembler_aarch64.cpp | 36 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() 342 /* create an imm opereand which represents lower 16 bits of the immediate */ in CopyImm() [all …]
|
| D | assembler_aarch64.h | 117 class Immediate { 119 Immediate(int64_t value) : value_(value) {} in Immediate() function 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 &imm);
|
| /arkcompiler/runtime_core/static_core/tests/cts-generator/cts-template/ |
| D | ldai.64.yaml | 18 title: Load accumulator from immediate 20 … Load immediate into accumulator. For short formats immediate is sign extended to operand size.
|
| D | ldai.yaml | 18 title: Load accumulator from immediate 20 … Load immediate into accumulator. For short formats immediate is sign extended to operand size.
|
| D | movi.yaml | 18 title: Move immediate-to-register 20 …Move integer immediate into a register. For short formats immediate is sign extended to operand si…
|
| D | fldai.yaml | 18 title: Load accumulator from immediate 20 … Load immediate into accumulator. For short formats immediate is sign extended to operand size.
|
| D | fldai.64.yaml | 18 title: Load accumulator from immediate 20 … Load immediate into accumulator. For short formats immediate is sign extended to operand size.
|
| /arkcompiler/runtime_core/tests/cts-generator/cts-template/ |
| D | ldai.yaml | 18 title: Load accumulator from immediate 20 … Load immediate into accumulator. For short formats immediate is sign extended to operand size.
|
| D | ldai.64.yaml | 18 title: Load accumulator from immediate 20 … Load immediate into accumulator. For short formats immediate is sign extended to operand size.
|
| D | movi.yaml | 18 title: Move immediate-to-register 20 …Move integer immediate into a register. For short formats immediate is sign extended to operand si…
|
| D | fldai.yaml | 18 title: Load accumulator from immediate 20 … Load immediate into accumulator. For short formats immediate is sign extended to operand size.
|
| D | fldai.64.yaml | 18 title: Load accumulator from immediate 20 … Load immediate into accumulator. For short formats immediate is sign extended to operand size.
|
| /arkcompiler/ets_runtime/ecmascript/compiler/codegen/maple/maple_be/include/cg/aarch64/ |
| D | aarch64_imm_valid.h | 94 // For the 32-bit variant: is the bitmask immediate 111 // For the 64-bit variant: is the bitmask immediate 124 // aarch64 assembly takes up to 24-bits immediate, generating in Imm16BitValid() 158 // Is a 16-bit unsigned immediate, in the range 0 to 65535, used by BRK 165 // Is the flag bit specifier, an immediate in the range 0 to 15, used by CCMP 220 // Is the optional left shift to apply to the immediate, it can have the values: 0, 12 226 // For the 32-bit variant: is the amount by which to shift the immediate left, either 0 or 16 232 // For the 64-bit variant: is the amount by which to shift the immediate left, either 0, 16, 32 or …
|
| /arkcompiler/ets_runtime/ecmascript/compiler/baseline/ |
| D | baseline_assembler.h | 111 void Move(VirtualRegister interpreterDestReg, Immediate value); 112 void Move(SpecialRegister destReg, Immediate value); 117 void Cmp(SpecialRegister reg, Immediate value);
|