Home
last modified time | relevance | path

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

1234567

/arkcompiler/ets_runtime/ecmascript/compiler/
H A Dnumber_gate_info.h141 RangeInfo Union(const RangeInfo &rhs) const in Union()
143 return RangeInfo(std::min(min_, rhs.min_), std::max(max_, rhs.max_)); in Union()
146 RangeInfo intersection(const RangeInfo &rhs) const in intersection()
148 return RangeInfo(std::max(min_, rhs.min_), std::min(max_, rhs.max_)); in intersection()
151 bool MaybeAddOverflow(const RangeInfo &rhs) const in MaybeAddOverflow()
153 return (rhs.max_ > 0) && (max_ > INT32_MAX - rhs.max_); in MaybeAddOverflow()
156 bool MaybeAddUnderflow(const RangeInfo &rhs) cons
[all...]
H A Dvariable_type.h104 bool operator==(const VariableType &rhs) const in operator ==()
106 return (machineType_ == rhs.machineType_) && (gateType_ == rhs.gateType_); in operator ==()
109 bool operator!=(const VariableType &rhs) const in operator !=()
111 return (machineType_ != rhs.machineType_) || (gateType_ != rhs.gateType_); in operator !=()
114 bool operator<(const VariableType &rhs) const in operator <()
116 return (machineType_ < rhs.machineType_) || (machineType_ == rhs.machineType_ && gateType_ < rhs in operator <()
[all...]
H A Dearly_elimination.cpp258 bool EarlyElimination::MayAccessOneMemory(GateRef lhs, GateRef rhs) in MayAccessOneMemory() argument
260 auto rop = acc_.GetOpCode(rhs); in MayAccessOneMemory()
264 ASSERT(acc_.GetMemoryType(rhs) == MemoryType::ELEMENT_TYPE); in MayAccessOneMemory()
269 GateRef ropValueIn = acc_.GetValueIn(rhs, 0); // migrate receiver in MayAccessOneMemory()
277 bool ropIsTypedArray = acc_.TypedOpIsTypedArray(rhs, TypedOpKind::TYPED_STORE_OP); in MayAccessOneMemory()
286 auto roff = acc_.GetValueIn(rhs, 1); in MayAccessOneMemory()
292 auto rindex = acc_.GetHClassIndex(rhs); in MayAccessOneMemory()
300 auto roff = acc_.GetOffset(rhs); in MayAccessOneMemory()
307 if (acc_.GetGateType(lhs).Value() != acc_.GetGateType(rhs).Value()) { in MayAccessOneMemory()
317 bool EarlyElimination::CompareOrder(GateRef lhs, GateRef rhs) in CompareOrder() argument
322 CheckReplacement(GateRef lhs, GateRef rhs) CheckReplacement() argument
427 CheckRenameReplacement(GateRef lhs, GateRef rhs) CheckRenameReplacement() argument
481 auto rhs = that->head_; Merge() local
523 auto rhs = that->head_; Equals() local
[all...]
/arkcompiler/runtime_core/static_core/runtime/tooling/sampler/
H A Dsample_info.h64 bool operator==(const SampleInfo &lhs, const SampleInfo &rhs);
65 bool operator!=(const SampleInfo &lhs, const SampleInfo &rhs);
66 bool operator==(const FileInfo &lhs, const FileInfo &rhs);
67 bool operator!=(const FileInfo &lhs, const FileInfo &rhs);
68 bool operator==(const SampleInfo::ManagedStackFrameId &lhs, const SampleInfo::ManagedStackFrameId &rhs);
69 bool operator!=(const SampleInfo::ManagedStackFrameId &lhs, const SampleInfo::ManagedStackFrameId &rhs);
70 bool operator==(const SampleInfo::StackInfo &lhs, const SampleInfo::StackInfo &rhs);
71 bool operator!=(const SampleInfo::StackInfo &lhs, const SampleInfo::StackInfo &rhs);
72 bool operator==(const SampleInfo::ThreadInfo &lhs, const SampleInfo::ThreadInfo &rhs);
73 bool operator!=(const SampleInfo::ThreadInfo &lhs, const SampleInfo::ThreadInfo &rhs);
95 operator ==(const SampleInfo::ManagedStackFrameId &lhs, const SampleInfo::ManagedStackFrameId &rhs) operator ==() argument
100 operator !=(const SampleInfo::ManagedStackFrameId &lhs, const SampleInfo::ManagedStackFrameId &rhs) operator !=() argument
105 operator ==(const FileInfo &lhs, const FileInfo &rhs) operator ==() argument
110 operator !=(const FileInfo &lhs, const FileInfo &rhs) operator !=() argument
115 operator ==(const SampleInfo::StackInfo &lhs, const SampleInfo::StackInfo &rhs) operator ==() argument
128 operator !=(const SampleInfo::StackInfo &lhs, const SampleInfo::StackInfo &rhs) operator !=() argument
133 operator ==(const SampleInfo::ThreadInfo &lhs, const SampleInfo::ThreadInfo &rhs) operator ==() argument
138 operator !=(const SampleInfo::ThreadInfo &lhs, const SampleInfo::ThreadInfo &rhs) operator !=() argument
143 operator ==(const SampleInfo &lhs, const SampleInfo &rhs) operator ==() argument
154 operator !=(const SampleInfo &lhs, const SampleInfo &rhs) operator !=() argument
[all...]
/arkcompiler/ets_runtime/ecmascript/compiler/codegen/maple/maple_ir/src/
H A Dmir_const.cpp32 bool MIRIntConst::operator==(const MIRConst &rhs) const in operator ==()
34 if (&rhs == this) { in operator ==()
37 if (GetKind() != rhs.GetKind()) { in operator ==()
40 const auto &intConst = static_cast<const MIRIntConst &>(rhs); in operator ==()
81 bool MIRAddrofConst::operator==(const MIRConst &rhs) const in operator ==()
83 if (&rhs == this) { in operator ==()
86 if (GetKind() != rhs.GetKind()) { in operator ==()
89 const auto &rhsA = static_cast<const MIRAddrofConst &>(rhs); in operator ==()
90 if (&GetType() != &rhs.GetType()) { in operator ==()
108 bool MIRAddroffuncConst::operator==(const MIRConst &rhs) cons
[all...]
/arkcompiler/ets_runtime/ecmascript/compiler/codegen/maple/maple_util/include/
H A Dmpl_number.h163 inline bool operator==(const Number<T, Tag> &lhs, const Number<T, Tag> &rhs) in operator ==() argument
165 return lhs.get() == rhs.get(); in operator ==()
169 inline bool operator!=(const Number<T, Tag> &lhs, const Number<T, Tag> &rhs) in operator !=() argument
171 return !(lhs == rhs); in operator !=()
175 inline bool operator<(const Number<T, Tag> &lhs, const Number<T, Tag> &rhs) in operator <() argument
177 return lhs.get() < rhs.get(); in operator <()
181 inline bool operator<=(const Number<T, Tag> &lhs, const Number<T, Tag> &rhs) in operator <=() argument
183 return lhs.get() <= rhs.get(); in operator <=()
187 inline bool operator>(const Number<T, Tag> &lhs, const Number<T, Tag> &rhs) in operator >() argument
189 return !(lhs <= rhs); in operator >()
193 operator >=(const Number<T, Tag> &lhs, const Number<T, Tag> &rhs) operator >=() argument
199 operator +(const Number<T, Tag> &lhs, const Number<T, Tag> &rhs) operator +() argument
205 operator -(const Number<T, Tag> &lhs, const Number<T, Tag> &rhs) operator -() argument
212 operator ==(const Number<T, Tag> &lhs, const U &rhs) operator ==() argument
219 operator ==(const U &lhs, const Number<T, Tag> &rhs) operator ==() argument
226 operator !=(const Number<T, Tag> &lhs, const U &rhs) operator !=() argument
233 operator !=(const U &lhs, const Number<T, Tag> &rhs) operator !=() argument
240 operator <(const Number<T, Tag> &lhs, const U &rhs) operator <() argument
247 operator <(const U &lhs, const Number<T, Tag> &rhs) operator <() argument
254 operator <=(const Number<T, Tag> &lhs, const U &rhs) operator <=() argument
261 operator <=(const U &lhs, const Number<T, Tag> &rhs) operator <=() argument
268 operator >(const Number<T, Tag> &lhs, const U &rhs) operator >() argument
275 operator >(const U &lhs, const Number<T, Tag> &rhs) operator >() argument
282 operator >=(const Number<T, Tag> &lhs, const U &rhs) operator >=() argument
289 operator >=(const U &lhs, const Number<T, Tag> &rhs) operator >=() argument
295 operator +(const Number<T, Tag> &lhs, const U &rhs) operator +() argument
301 operator +(const U &lhs, const Number<T, Tag> &rhs) operator +() argument
307 operator -(const Number<T, Tag> &lhs, const U &rhs) operator -() argument
313 operator -(const U &lhs, const Number<T, Tag> &rhs) operator -() argument
[all...]
H A Dmem_reference_table.h62 void MergeOthers(MemDefUse &rhs) in MergeOthers() argument
64 if (this == &rhs) { in MergeOthers()
67 defSet.insert(rhs.defSet.begin(), rhs.defSet.end()); in MergeOthers()
68 useSet.insert(rhs.useSet.begin(), rhs.useSet.end()); in MergeOthers()
69 isIndependent = rhs.isIndependent || isIndependent; in MergeOthers()
H A Dptr.h221 inline bool operator==(const Ptr<T, CheckT> &lhs, const Ptr<U, CheckU> &rhs) in operator ==() argument
223 return lhs.get() == rhs.get(); in operator ==()
227 inline bool operator!=(const Ptr<T, CheckT> &lhs, const Ptr<U, CheckU> &rhs) in operator !=() argument
229 return !(lhs == rhs); in operator !=()
233 inline bool operator<(const Ptr<T, CheckT> &lhs, const Ptr<U, CheckU> &rhs) in operator <() argument
235 return lhs.get() < rhs.get(); in operator <()
239 inline bool operator<=(const Ptr<T, CheckT> &lhs, const Ptr<U, CheckU> &rhs) in operator <=() argument
241 return lhs.get() <= rhs.get(); in operator <=()
245 inline bool operator>(const Ptr<T, CheckT> &lhs, const Ptr<U, CheckU> &rhs) in operator >() argument
247 return !(lhs <= rhs); in operator >()
251 operator >=(const Ptr<T, CheckT> &lhs, const Ptr<U, CheckU> &rhs) operator >=() argument
263 operator ==(std::nullptr_t, const Ptr<T, CheckT> &rhs) operator ==() argument
275 operator !=(std::nullptr_t, const Ptr<T, CheckT> &rhs) operator !=() argument
287 operator <(std::nullptr_t, const Ptr<T, CheckT> &rhs) operator <() argument
299 operator <=(std::nullptr_t, const Ptr<T, CheckT> &rhs) operator <=() argument
311 operator >(std::nullptr_t, const Ptr<T, CheckT> &rhs) operator >() argument
323 operator >=(std::nullptr_t, const Ptr<T, CheckT> &rhs) operator >=() argument
[all...]
H A Dmpl_int_val.h136 bool operator==(const IntVal &rhs) const in operator ==()
138 DEBUG_ASSERT(width == rhs.width && sign == rhs.sign, "bit-width and sign must be the same"); in operator ==()
139 return value == rhs.value; in operator ==()
142 bool operator!=(const IntVal &rhs) const in operator !=()
144 return !(*this == rhs); in operator !=()
147 bool operator<(const IntVal &rhs) const in operator <()
149 DEBUG_ASSERT(width == rhs.width && sign == rhs.sign, "bit-width and sign must be the same"); in operator <()
150 return sign ? GetSXTValue() < rhs in operator <()
270 Equal(const IntVal &rhs, PrimType pType) const Equal() argument
275 Less(const IntVal &rhs, PrimType pType) const Less() argument
280 Greater(const IntVal &rhs, PrimType pType) const Greater() argument
[all...]
/arkcompiler/ets_runtime/ecmascript/compiler/base/
H A Ddepend_chain_helper.cpp29 auto rhs = that->head_; in Merge() local
32 rhs = rhs->next; in Merge()
35 while (lhs != rhs) { in Merge()
38 rhs = rhs->next; in Merge()
53 auto rhs = that->head_; in Equals() local
54 while (lhs != rhs) { in Equals()
55 if (lhs->gate != rhs->gate) { in Equals()
59 rhs in Equals()
[all...]
/arkcompiler/runtime_core/static_core/libpandabase/
H A Dmacros.h146 #define ASSERT_OP(lhs, op, rhs) \
149 auto __rhs = rhs; \
151 std::cerr << "CHECK FAILED: " << #lhs << " " #op " " #rhs << std::endl; \
160 #define CHECK_LE(lhs, rhs) ASSERT_OP(lhs, <=, rhs)
162 #define CHECK_LT(lhs, rhs) ASSERT_OP(lhs, <, rhs)
164 #define CHECK_GE(lhs, rhs) ASSERT_OP(lhs, >=, rhs)
166 #define CHECK_GT(lhs, rhs) ASSERT_O
[all...]
/arkcompiler/ets_runtime/ecmascript/compiler/codegen/maple/maple_util/include/utils/
H A Diterator.h126 inline bool operator==(const mpl_iterator<T, Container> &lhs, const mpl_iterator<T, Container> &rhs) noexcept
128 return lhs.base() == rhs.base();
132 inline bool operator==(const mpl_iterator<T, Container> &lhs, const mpl_iterator<U, Container> &rhs) noexcept
134 return lhs.base() == rhs.base();
138 inline bool operator!=(const mpl_iterator<T, Container> &lhs, const mpl_iterator<T, Container> &rhs) noexcept
140 return !(lhs == rhs);
144 inline bool operator!=(const mpl_iterator<T, Container> &lhs, const mpl_iterator<U, Container> &rhs) noexcept
146 return !(lhs == rhs);
150 inline bool operator<(const mpl_iterator<T, Container> &lhs, const mpl_iterator<T, Container> &rhs) noexcept
152 return lhs.base() < rhs
227 decltype(lhs.base() - rhs.base()) decltype() argument
[all...]
/arkcompiler/ets_runtime/ecmascript/compiler/codegen/maple/mempool/include/
H A Dmaple_sparse_bitvector.h100 bool And(const MapleSparseBitVectorElement &rhs, bool &becameZero) in And()
107 bitVector[i] &= rhs.bitVector[i]; in And()
117 bool Or(const MapleSparseBitVectorElement &rhs) in Or()
122 bitVector[i] |= rhs.bitVector[i]; in Or()
128 bool Diff(const MapleSparseBitVectorElement &rhs, bool &becameZero) in Diff()
135 bitVector[i] &= ~rhs.bitVector[i]; in Diff()
145 bool operator==(const MapleSparseBitVectorElement &rhs) const in operator ==()
147 if (index != rhs.GetIndex()) { in operator ==()
151 if (bitVector[i] != rhs.bitVector[i]) { in operator ==()
158 bool operator!=(const MapleSparseBitVectorElement &rhs) cons
181 MapleSparseBitVector(const MapleSparseBitVector &rhs, const MapleAllocator &alloc) MapleSparseBitVector() argument
186 MapleSparseBitVector(const MapleSparseBitVector &rhs) MapleSparseBitVector() argument
240 operator =(const MapleSparseBitVector &rhs) operator =() argument
251 operator &=(const MapleSparseBitVector &rhs) operator &=() argument
299 operator |=(const MapleSparseBitVector &rhs) operator |=() argument
367 Diff(const MapleSparseBitVector &rhs) Diff() argument
[all...]
/arkcompiler/ets_runtime/ecmascript/base/
H A Dmath_helper.h73 inline int32_t SignedDiv32(int32_t lhs, int32_t rhs) in SignedDiv32() argument
75 if (rhs == 0) { in SignedDiv32()
78 if (rhs == -1) { in SignedDiv32()
81 return lhs / rhs; in SignedDiv32()
84 inline int64_t SignedDiv64(int64_t lhs, int64_t rhs) in SignedDiv64() argument
86 if (rhs == 0) { in SignedDiv64()
89 if (rhs == -1) { in SignedDiv64()
92 return lhs / rhs; in SignedDiv64()
95 inline int32_t SignedMod32(int32_t lhs, int32_t rhs) in SignedMod32() argument
97 if (rhs in SignedMod32()
104 SignedAddOverflow32(int32_t lhs, int32_t rhs, int32_t *val) SignedAddOverflow32() argument
113 SignedSubOverflow32(int32_t lhs, int32_t rhs, int32_t *val) SignedSubOverflow32() argument
121 SignedMulOverflow32(int32_t lhs, int32_t rhs, int32_t *val) SignedMulOverflow32() argument
[all...]
/arkcompiler/runtime_core/static_core/verification/type/
H A Dtype_type.cpp113 for (size_t rhs = 1; rhs < lhs; rhs++) { in BuildBuiltinLeastUpperBoundsNestedFunction()
115 uint32_t supertype_bits = supertypes[lhs] & supertypes[rhs]; in BuildBuiltinLeastUpperBoundsNestedFunction()
121 result[lhs][rhs] = candidate; in BuildBuiltinLeastUpperBoundsNestedFunction()
122 result[rhs][lhs] = candidate; in BuildBuiltinLeastUpperBoundsNestedFunction()
443 static bool IsClassSubtypeOfType(Class const *lhsClass, Type rhs, TypeSystem *tsys) in IsClassSubtypeOfType() argument
449 if (!rhs.IsClass() || rhs.GetClass()->GetComponentType() == nullptr) { in IsClassSubtypeOfType()
451 return supertypeOfArray.IsConsistent() && IsSubtype(supertypeOfArray, rhs, tsy in IsClassSubtypeOfType()
463 IsSubtypeImpl(Type lhs, Type rhs, TypeSystem *tsys) IsSubtypeImpl() argument
612 IntersectSpans(Span<Type const> lhs, Span<Type const> rhs, TypeSystem *tsys) IntersectSpans() argument
647 TpIntersection(Type lhs, Type rhs, TypeSystem *tsys) TpIntersection() argument
705 TpUnion(Type lhs, Type rhs, TypeSystem *tsys) TpUnion() argument
[all...]
H A Dtype_type.h183 static Type IntersectSpans(Span<Type const> lhs, Span<Type const> rhs, TypeSystem *tsys);
185 friend bool IsSubtypeImpl(Type lhs, Type rhs, TypeSystem *tsys);
186 friend Type TpIntersection(Type lhs, Type rhs, TypeSystem *tsys);
187 friend Type TpUnion(Type lhs, Type rhs, TypeSystem *tsys);
189 friend bool operator==(Type lhs, Type rhs);
192 ALWAYS_INLINE inline bool operator==(Type lhs, Type rhs) in operator ==() argument
194 return lhs.content_ == rhs.content_; in operator ==()
197 ALWAYS_INLINE inline bool operator!=(Type lhs, Type rhs) in operator !=() argument
199 return !(lhs == rhs); in operator !=()
202 ALWAYS_INLINE inline bool IsSubtype(Type lhs, Type rhs, TypeSyste argument
[all...]
/arkcompiler/runtime_core/static_core/verification/util/
H A Dbit_vector.h60 bool operator==(const Rhs &rhs) const in operator ==()
62 return getF_() == rhs.getF_(); in operator ==()
79 Bits &operator=(const Bits &rhs) in operator =() argument
81 setF_(rhs); in operator =()
185 BitVector &operator=(const BitVector &rhs) in operator =() argument
187 if (&rhs == this) { in operator =()
191 CopyFrom(rhs); in operator =()
195 BitVector &operator=(BitVector &&rhs) noexcept
198 MoveFrom(std::move(rhs));
310 bool operator==(const BitVector &rhs) cons
[all...]
/arkcompiler/runtime_core/libpandabase/
H A Dmacros.h169 #define ASSERT_OP(lhs, op, rhs) do { \
171 auto __rhs = rhs; \
173 std::cerr << "CHECK FAILED: " << #lhs << " " #op " " #rhs << std::endl; \
182 #define CHECK_LE(lhs, rhs) ASSERT_OP(lhs, <=, rhs)
184 #define CHECK_LT(lhs, rhs) ASSERT_OP(lhs, <, rhs)
186 #define CHECK_GE(lhs, rhs) ASSERT_OP(lhs, >=, rhs)
188 #define CHECK_GT(lhs, rhs) ASSERT_O
[all...]
/arkcompiler/runtime_core/libpandabase/tests/
H A Dserializer_test.cpp77 bool operator==(const PodStruct &lhs, const PodStruct &rhs) in operator ==() argument
79 return lhs.a == rhs.a && lhs.b == rhs.b && lhs.c == rhs.c && lhs.d == rhs.d && lhs.e == rhs.e && lhs.f == rhs.f; in operator ==()
165 bool operator==(const TestStruct &lhs, const TestStruct &rhs) in operator ==() argument
167 return lhs.a == rhs.a && lhs.b == rhs in operator ==()
[all...]
/arkcompiler/runtime_core/libpandabase/utils/
H A Dtype_converter.cpp63 bool operator==(const ValueUnit &lhs, const ValueUnit &rhs) in operator ==() argument
66 if (lhs.GetLiteral() != rhs.GetLiteral()) { in operator ==()
69 if (lhs.GetValue().index() != rhs.GetValue().index()) { in operator ==()
73 return std::fabs(lhs.GetDoubleValue() - rhs.GetDoubleValue()) < in operator ==()
74 std::pow(NUMERAL_SYSTEM, -std::max(lhs.GetPrecision(), rhs.GetPrecision())); in operator ==()
77 return lhs.GetUint64Value() == rhs.GetUint64Value(); in operator ==()
82 bool operator!=(const ValueUnit &lhs, const ValueUnit &rhs) in operator !=() argument
84 return !(lhs == rhs); in operator !=()
/arkcompiler/runtime_core/static_core/libpandabase/utils/
H A Dtype_converter.cpp60 bool operator==(const ValueUnit &lhs, const ValueUnit &rhs) in operator ==() argument
63 if (lhs.GetLiteral() != rhs.GetLiteral()) { in operator ==()
66 if (lhs.GetValue().index() != rhs.GetValue().index()) { in operator ==()
70 return std::fabs(lhs.GetDoubleValue() - rhs.GetDoubleValue()) < in operator ==()
71 std::pow(NUMERAL_SYSTEM, -std::max(lhs.GetPrecision(), rhs.GetPrecision())); in operator ==()
74 return lhs.GetUint64Value() == rhs.GetUint64Value(); in operator ==()
79 bool operator!=(const ValueUnit &lhs, const ValueUnit &rhs) in operator !=() argument
81 return !(lhs == rhs); in operator !=()
/arkcompiler/runtime_core/static_core/compiler/optimizer/optimizations/
H A Dbranch_elimination.h27 Inst *rhs; member
33 return std::tie(obj1.lhs, obj1.rhs) == std::tie(obj2.lhs, obj2.rhs) || in operator ()()
34 std::tie(obj1.lhs, obj1.rhs) == std::tie(obj2.rhs, obj2.lhs); in operator ()()
42 hash += std::hash<Inst *> {}(obj.rhs); in operator ()()
/arkcompiler/runtime_core/compiler/tests/x86/
H A Dasmjit_test.cpp63 x86::Gp rhs = a.zcx(); in TEST_F() local
70 frame.addDirtyRegs(lhs, rhs); in TEST_F()
73 args.assignAll(lhs, rhs); in TEST_F()
79 a.add(lhs, rhs); in TEST_F()
105 x86::Gp rhs = a.zcx(); in TEST_F() local
112 frame.addDirtyRegs(lhs, rhs); in TEST_F()
115 args.assignAll(lhs, rhs); in TEST_F()
121 a.add(lhs, rhs); in TEST_F()
141 typedef size_t (*Func)(size_t lhs, size_t rhs); in TEST_F()
/arkcompiler/runtime_core/static_core/compiler/tests/x86/
H A Dasmjit_test.cpp62 x86::Gp rhs = a.zcx(); in TEST_F() local
69 frame.addDirtyRegs(lhs, rhs); in TEST_F()
72 args.assignAll(lhs, rhs); in TEST_F()
78 a.add(lhs, rhs); in TEST_F()
104 x86::Gp rhs = a.zcx(); in TEST_F() local
111 frame.addDirtyRegs(lhs, rhs); in TEST_F()
114 args.assignAll(lhs, rhs); in TEST_F()
120 a.add(lhs, rhs); in TEST_F()
140 typedef size_t (*Func)(size_t lhs, size_t rhs); in TEST_F()
/arkcompiler/runtime_core/static_core/plugins/ets/runtime/intrinsics/
H A Dstd_core_StringBuilder.cpp47 EtsString *StdCoreStringBuilderConcatStrings(EtsString *lhs, EtsString *rhs) in StdCoreStringBuilderConcatStrings() argument
49 if (lhs == nullptr || rhs == nullptr) { in StdCoreStringBuilderConcatStrings()
50 // GetNullString()-call below may trigger GC and move lhs/rhs args, need to hold them in StdCoreStringBuilderConcatStrings()
54 VMHandle<EtsString> rhsHandle(thread, rhs == nullptr ? nullptr : rhs->GetCoreType()); in StdCoreStringBuilderConcatStrings()
60 rhs = rhsHandle.GetPtr(); in StdCoreStringBuilderConcatStrings()
63 rhs = rhs == nullptr ? nullString : rhs; in StdCoreStringBuilderConcatStrings()
65 return EtsString::Concat(lhs, rhs); in StdCoreStringBuilderConcatStrings()
[all...]

Completed in 18 milliseconds

1234567