Home | History | Annotate | Download | only in jit

Lines Matching refs:regT2

59     load32(Address(regT0, OBJECT_OFFSETOF(JSString, m_length)), regT2);
61 Jump string_failureCases3 = branch32(Above, regT2, TrustedImm32(INT_MAX));
62 move(regT2, regT0);
72 // regT0 holds callee, regT1 holds argCount. regT2 will hold the FunctionExecutable.
85 // regT0 holds callee, regT1 holds argCount. regT2 will hold the FunctionExecutable.
100 // regT0 holds callee, regT1 holds argCount. regT2 will hold the FunctionExecutable.
104 loadPtr(Address(regT0, OBJECT_OFFSETOF(JSFunction, m_executable)), regT2);
106 Jump hasCodeBlock3 = branch32(GreaterThanOrEqual, Address(regT2, OBJECT_OFFSETOF(FunctionExecutable, m_numParametersForCall)), TrustedImm32(0));
113 loadPtr(Address(regT0, OBJECT_OFFSETOF(JSFunction, m_executable)), regT2);
116 loadPtr(Address(regT2, OBJECT_OFFSETOF(FunctionExecutable, m_jitCodeForCallWithArityCheck)), regT0);
120 // regT0 holds callee, regT1 holds argCount. regT2 will hold the FunctionExecutable.
124 loadPtr(Address(regT0, OBJECT_OFFSETOF(JSFunction, m_executable)), regT2);
126 Jump hasCodeBlock4 = branch32(GreaterThanOrEqual, Address(regT2, OBJECT_OFFSETOF(FunctionExecutable, m_numParametersForConstruct)), TrustedImm32(0));
133 loadPtr(Address(regT0, OBJECT_OFFSETOF(JSFunction, m_executable)), regT2);
136 loadPtr(Address(regT2, OBJECT_OFFSETOF(FunctionExecutable, m_jitCodeForConstructWithArityCheck)), regT0);
145 move(TrustedImmPtr(&globalData->exceptionLocation), regT2);
146 storePtr(regT1, regT2);
230 emitGetFromCallFrameHeaderPtr(RegisterFile::CallerFrame, regT2);
231 emitGetFromCallFrameHeaderPtr(RegisterFile::ScopeChain, regT1, regT2);
243 move(regT2, callFrameRegister); // Eagerly restore caller frame register to avoid loading from stack.
244 loadPtr(Address(ARMRegisters::r1, OBJECT_OFFSETOF(JSFunction, m_executable)), regT2);
245 call(Address(regT2, executableOffsetToFunction));
251 emitGetFromCallFrameHeaderPtr(RegisterFile::CallerFrame, regT2);
252 emitGetFromCallFrameHeaderPtr(RegisterFile::ScopeChain, regT1, regT2);
263 move(regT2, callFrameRegister); // Eagerly restore caller frame register to avoid loading from stack.
264 loadPtr(Address(regT5, OBJECT_OFFSETOF(JSFunction, m_executable)), regT2);
266 call(Address(regT2, executableOffsetToFunction), regT0);
290 loadPtr(Address(MIPSRegisters::a2, OBJECT_OFFSETOF(JSFunction, m_executable)), regT2);
292 call(Address(regT2, executableOffsetToFunction));
318 move(TrustedImmPtr(&globalData->exceptionLocation), regT2);
319 storePtr(regT1, regT2);
364 emitGetFromCallFrameHeaderPtr(RegisterFile::CallerFrame, regT2);
365 emitGetFromCallFrameHeaderPtr(RegisterFile::ScopeChain, regT1, regT2);
376 move(regT2, callFrameRegister); // Eagerly restore caller frame register to avoid loading from stack.
377 regT2);
406 loadPtr(Address(MIPSRegisters::a2, OBJECT_OFFSETOF(JSFunction, m_executable)), regT2);
419 emitGetFromCallFrameHeaderPtr(RegisterFile::CallerFrame, regT2);
420 emitGetFromCallFrameHeaderPtr(RegisterFile::ScopeChain, regT1, regT2);
431 move(regT2, callFrameRegister); // Eagerly restore caller frame register to avoid loading from stack.
432 loadPtr(Address(regT5, OBJECT_OFFSETOF(JSFunction, m_executable)), regT2);
456 move(TrustedImmPtr(&globalData->exceptionLocation), regT2);
457 storePtr(regT1, regT2);
525 emitLoad2(op1, regT1, regT0, op2, regT3, regT2);
528 addJump(branch32(LessThanOrEqual, regT0, regT2), target);
576 emitLoadPayload(value, regT2);
594 // Initially, regT1 still contains proto and regT2 still contains value.
595 // As we loop regT2 will be updated with its prototype, recursively walking the prototype chain.
599 // Load the prototype of the cell in regT2. If this is equal to regT1 - WIN!
601 loadPtr(Address(regT2, JSCell::structureOffset()), regT2);
602 load32(Address(regT2, Structure::prototypeOffset() + OBJECT_OFFSETOF(JSValue, u.asBits.payload)), regT2);
603 Jump isInstance = branchPtr(Equal, regT2, regT1);
604 branchTest32(NonZero, regT2).linkTo(loop, this);
652 loadPtr(&globalObject->m_registers, regT2);
654 emitLoad(index, regT1, regT0, regT2);
668 loadPtr(&globalObject->m_registers, regT2);
669 emitStore(index, regT1, regT0, regT2);
679 emitGetFromCallFrameHeaderPtr(RegisterFile::ScopeChain, regT2);
686 loadPtr(Address(regT2, OBJECT_OFFSETOF(ScopeChainNode, next)), regT2);
690 loadPtr(Address(regT2, OBJECT_OFFSETOF(ScopeChainNode, next)), regT2);
692 loadPtr(Address(regT2, OBJECT_OFFSETOF(ScopeChainNode, object)), regT2);
693 loadPtr(Address(regT2, OBJECT_OFFSETOF(JSVariableObject, m_registers)), regT2);
695 emitLoad(index, regT1, regT0, regT2);
708 emitGetFromCallFrameHeaderPtr(RegisterFile::ScopeChain, regT2);
715 loadPtr(Address(regT2, OBJECT_OFFSETOF(ScopeChainNode, next)), regT2);
719 loadPtr(Address(regT2, OBJECT_OFFSETOF(ScopeChainNode, next)), regT2);
721 loadPtr(Address(regT2, OBJECT_OFFSETOF(ScopeChainNode, object)), regT2);
722 loadPtr(Address(regT2, OBJECT_OFFSETOF(JSVariableObject, m_registers)), regT2);
724 emitStore(index, regT1, regT0, regT2);
843 loadPtr(Address(regT0, OBJECT_OFFSETOF(JSGlobalObject, m_propertyStorage)), regT2);
845 load32(BaseIndex(regT2, regT3, TimesEight, OBJECT_OFFSETOF(JSValue, u.asBits.payload)), regT0); // payload
846 load32(BaseIndex(regT2, regT3, TimesEight, OBJECT_OFFSETOF(JSValue, u.asBits.tag)), regT1); // tag
973 loadPtr(Address(regT0, JSCell::structureOffset()), regT2);
974 addJump(branchTest8(NonZero, Address(regT2, Structure::typeInfoFlagsOffset()), TrustedImm32(MasqueradesAsUndefined)), target);
998 loadPtr(Address(regT0, JSCell::structureOffset()), regT2);
999 addJump(branchTest8(Zero, Address(regT2, Structure::typeInfoFlagsOffset()), TrustedImm32(MasqueradesAsUndefined)), target);
1044 emitLoad2(src1, regT1, regT0, src2, regT3, regT2);
1049 set32Compare32(Equal, regT0, regT2, regT0);
1067 genericCase.append(branchPtr(NotEqual, Address(regT2), TrustedImmPtr(m_globalData->jsStringVPtr)));
1072 stubCallEqStrings.addArgument(regT2);
1094 emitLoad2(src1, regT1, regT0, src2, regT3, regT2);
1099 set32Compare32(NotEqual, regT0, regT2, regT0);
1115 genericCase.append(branchPtr(NotEqual, Address(regT2), TrustedImmPtr(m_globalData->jsStringVPtr)));
1120 stubCallEqStrings.addArgument(regT2);
1129 stubCallEq.addArgument(regT3, regT2);
1148 move(regT0, regT2);
1149 and32(regT1, regT2);
1150 addSlowCase(branch32(Below, regT2, TrustedImm32(JSValue::LowestTag)));
1151 addSlowCase(branch32(AboveOrEqual, regT2, TrustedImm32(JSValue::CellTag)));
1216 set32Compare32(Equal, regT1, TrustedImm32(JSValue::NullTag), regT2);
1218 or32(regT2, regT1);
1240 set32Compare32(NotEqual, regT1, TrustedImm32(JSValue::NullTag), regT2);
1242 and32(regT2, regT1);
1292 loadPtr(Address(regT0, JSCell::structureOffset()), regT2);
1293 isNotObject.append(branch8(NotEqual, Address(regT2, Structure::typeInfoTypeOffset()), TrustedImm32(ObjectType)));
1337 loadPtr(Address(regT1, OBJECT_OFFSETOF(JSPropertyNameIterator, m_jsStrings)), regT2);
1338 load32(BaseIndex(regT2, regT0, TimesEight), regT2);
1340 store32(regT2, payloadFor(dst));
1350 loadPtr(Address(regT0, JSCell::structureOffset()), regT2);
1351 callHasProperty.append(branchPtr(NotEqual, regT2, Address(Address(regT1, OBJECT_OFFSETOF(JSPropertyNameIterator, m_cachedStructure)))));
1359 callHasProperty.append(branch32(Equal, Address(regT2, Structure::prototypeOffset() + OBJECT_OFFSETOF(JSValue, u.asBits.tag)), TrustedImm32(JSValue::NullTag)));
1360 loadPtr(Address(regT2, Structure::prototypeOffset() + OBJECT_OFFSETOF(JSValue, u.asBits.payload)), regT2);
1361 loadPtr(Address(regT2, JSCell::structureOffset()), regT2);
1362 callHasProperty.append(branchPtr(NotEqual, regT2, Address(regT3)));
1600 loadPtr(Address(regT0, JSCell::structureOffset()), regT2);
1601 addSlowCase(branchTest8(NonZero, Address(regT2, Structure::typeInfoFlagsOffset()), TrustedImm32(NeedsThisConversion)));
1617 loadPtr(Address(regT0, JSCell::structureOffset()), regT2);
1618 Jump notAnObject = branch8(NotEqual, Address(regT2, Structure::typeInfoTypeOffset()), TrustedImm32(ObjectType));
1619 addSlowCase(branchTest8(NonZero, Address(regT2, Structure::typeInfoFlagsOffset()), TrustedImm32(NeedsThisConversion)));
1651 peek(regT2, OBJECT_OFFSETOF(JITStackFrame, enabledProfilerReference) / sizeof(void*));
1652 Jump noProfiler = branchTestPtr(Zero, Address(regT2));
1662 peek(regT2, OBJECT_OFFSETOF(JITStackFrame, enabledProfilerReference) / sizeof(void*));
1663 Jump noProfiler = branchTestPtr(Zero, Address(regT2));
1700 emitLoad(property, regT1, regT2);
1702 add32(TrustedImm32(1), regT2);
1703 // regT2
1705 addSlowCase(branch32(AboveOrEqual, regT2, regT3));
1710 Jump notInInPlaceArgs = branch32(AboveOrEqual, regT2, Imm32(numArgs));
1712 loadPtr(BaseIndex(regT1, regT2, TimesEight, OBJECT_OFFSETOF(JSValue, u.asBits.payload)), regT0);
1713 loadPtr(BaseIndex(regT1, regT2, TimesEight, OBJECT_OFFSETOF(JSValue, u.asBits.tag)), regT1);
1721 loadPtr(BaseIndex(regT1, regT2, TimesEight, OBJECT_OFFSETOF(JSValue, u.asBits.payload)), regT0);
1722 loadPtr(BaseIndex(regT1, regT2, TimesEight, OBJECT_OFFSETOF(JSValue, u.asBits.tag)), regT1);
1759 move(regT2, regT3);
1760 move(regT0, regT2);
1769 Jump positiveRegT2 = branch32(GreaterThanOrEqual, regT2, TrustedImm32(0));
1770 neg32(regT2);
1777 Jump exitBranch = branch32(LessThan, regT2, regT3);
1783 and32(regT0, regT2);
1790 countLeadingZeros32(regT2, regT0);
1811 m_assembler.cmp_r(regT2, m_assembler.lsl(regT3, i));
1812 m_assembler.sub_r(regT2, regT2, m_assembler.lsl(regT3, i), ARMAssembler::CS);
1815 m_assembler.sub_S(regT1, regT2, regT3, shift);
1817 m_assembler.mov(regT2, regT1);
1823 Jump lower = branch32(Below, regT2, regT3);
1824 sub32(regT3, regT2);
1833 neg32(regT2);
1836 move(regT2, regT0);