Lines Matching refs:left

39 JSTaggedValue FastRuntimeStub::FastMul(JSTaggedValue left, JSTaggedValue right)
41 if (left.IsNumber() && right.IsNumber()) {
42 return JSTaggedValue(left.GetNumber() * right.GetNumber());
48 JSTaggedValue FastRuntimeStub::FastDiv(JSTaggedValue left, JSTaggedValue right)
50 if (left.IsNumber() && right.IsNumber()) {
51 double dLeft = left.IsInt() ? left.GetInt() : left.GetDouble();
67 JSTaggedValue FastRuntimeStub::FastMod(JSTaggedValue left, JSTaggedValue right)
69 if (right.IsInt() && left.IsInt()) {
71 int iLeft = left.GetInt();
76 if (left.IsNumber() && right.IsNumber()) {
77 double dLeft = left.IsInt() ? left.GetInt() : left.GetDouble();
90 JSTaggedValue FastRuntimeStub::FastEqual(JSTaggedValue left, JSTaggedValue right)
92 if (left == right) {
93 if (UNLIKELY(left.IsDouble())) {
94 return JSTaggedValue(!std::isnan(left.GetDouble()));
98 if (left.IsNumber()) {
99 if (left.IsInt() && right.IsInt()) {
104 if (left.IsUndefinedOrNull()) {
109 if (left.IsUndefinedOrNull()) {
112 if (left.IsBoolean()) {
117 if (left.IsBigInt() && right.IsBigInt()) {
118 return JSTaggedValue(BigInt::Equal(left, right));
123 JSTaggedValue FastRuntimeStub::FastStrictEqual(JSTaggedValue left, JSTaggedValue right)
125 if (left.IsNumber()) {
127 double dLeft = left.IsInt() ? left.GetInt() : left.GetDouble();
136 if (left == right) {
139 if (left.IsString() && right.IsString()) {
140 auto leftStr = static_cast<EcmaString *>(left.GetTaggedObject());
143 return EcmaStringAccessor::StringsAreEqual(static_cast<EcmaString *>(left.GetTaggedObject()),
149 if (left.IsBigInt()) {
151 return BigInt::Equal(left, right) ? JSTaggedValue::True() : JSTaggedValue::False();