Lines Matching refs:Stk
107 S.Stk.push<T>(Result); in AddSubMulHelper()
112 S.Stk.push<T>(Result); in AddSubMulHelper()
133 const T &RHS = S.Stk.pop<T>(); in Add()
134 const T &LHS = S.Stk.pop<T>(); in Add()
141 const T &RHS = S.Stk.pop<T>(); in Sub()
142 const T &LHS = S.Stk.pop<T>(); in Sub()
149 const T &RHS = S.Stk.pop<T>(); in Mul()
150 const T &LHS = S.Stk.pop<T>(); in Mul()
164 const T &RHS = S.Stk.pop<T>(); in CmpHelper()
165 const T &LHS = S.Stk.pop<T>(); in CmpHelper()
166 S.Stk.push<BoolT>(BoolT::from(Fn(LHS.compare(RHS)))); in CmpHelper()
178 const Pointer &RHS = S.Stk.pop<Pointer>();
179 const Pointer &LHS = S.Stk.pop<Pointer>();
188 S.Stk.push<BoolT>(BoolT::from(Fn(Compare(VL, VR))));
196 const Pointer &RHS = S.Stk.pop<Pointer>();
197 const Pointer &LHS = S.Stk.pop<Pointer>();
200 S.Stk.push<BoolT>(BoolT::from(Fn(ComparisonCategoryResult::Equal)));
205 S.Stk.push<BoolT>(BoolT::from(Fn(ComparisonCategoryResult::Unordered)));
210 S.Stk.push<BoolT>(BoolT::from(Fn(Compare(VL, VR))));
265 const T RHS = S.Stk.pop<T>(); in InRange()
266 const T LHS = S.Stk.pop<T>(); in InRange()
267 const T Value = S.Stk.pop<T>(); in InRange()
269 S.Stk.push<bool>(LHS <= Value && Value <= RHS); in InRange()
279 S.Stk.push<T>(S.Stk.peek<T>()); in Dup()
285 S.Stk.pop<T>(); in Pop()
295 S.Stk.push<T>(Arg); in Const()
305 S.Stk.push<T>(S.Current->getLocal<T>(I)); in GetLocal()
311 S.Current->setLocal<T>(I, S.Stk.pop<T>()); in SetLocal()
320 S.Stk.push<T>(S.Current->getParam<T>(I)); in GetParam()
326 S.Current->setParam<T>(I, S.Stk.pop<T>()); in SetParam()
332 const Pointer &Obj = S.Stk.peek<Pointer>(); in GetField()
340 S.Stk.push<T>(Field.deref<T>()); in GetField()
346 const T &Value = S.Stk.pop<T>(); in SetField()
347 const Pointer &Obj = S.Stk.peek<Pointer>(); in SetField()
361 const Pointer &Obj = S.Stk.pop<Pointer>(); in GetFieldPop()
369 S.Stk.push<T>(Field.deref<T>()); in GetFieldPop()
383 S.Stk.push<T>(Field.deref<T>()); in GetThisField()
391 const T &Value = S.Stk.pop<T>(); in SetThisField()
407 S.Stk.push<T>(B->deref<T>()); in GetGlobal()
419 S.P.getGlobal(I)->deref<T>() = S.Stk.pop<T>(); in InitGlobal()
431 Field.deref<T>() = S.Stk.pop<T>(); in InitThisField()
444 const auto &Value = S.Stk.pop<T>(); in InitThisBitField()
458 Field.deref<T>() = S.Stk.pop<T>(); in InitThisFieldActive()
466 const T &Value = S.Stk.pop<T>(); in InitField()
467 const Pointer &Field = S.Stk.pop<Pointer>().atField(I); in InitField()
476 const T &Value = S.Stk.pop<T>(); in InitBitField()
477 const Pointer &Field = S.Stk.pop<Pointer>().atField(F->Offset); in InitBitField()
486 const T &Value = S.Stk.pop<T>(); in InitFieldActive()
487 const Pointer &Ptr = S.Stk.pop<Pointer>(); in InitFieldActive()
500 S.Stk.push<Pointer>(S.Current->getLocalPointer(I)); in GetPtrLocal()
508 S.Stk.push<Pointer>(S.Current->getParamPointer(I)); in GetPtrParam()
513 S.Stk.push<Pointer>(S.P.getPtrGlobal(I)); in GetPtrGlobal()
518 const Pointer &Ptr = S.Stk.pop<Pointer>(); in GetPtrField()
525 S.Stk.push<Pointer>(Ptr.atField(Off)); in GetPtrField()
535 S.Stk.push<Pointer>(This.atField(Off)); in GetPtrThisField()
540 const Pointer &Ptr = S.Stk.pop<Pointer>(); in GetPtrActiveField()
548 S.Stk.push<Pointer>(std::move(Field)); in GetPtrActiveField()
561 S.Stk.push<Pointer>(std::move(Field)); in GetPtrActiveThisField()
566 const Pointer &Ptr = S.Stk.pop<Pointer>(); in GetPtrBase()
569 S.Stk.push<Pointer>(Ptr.atField(Off)); in GetPtrBase()
579 S.Stk.push<Pointer>(This.atField(Off)); in GetPtrThisBase()
590 S.Stk.push<Pointer>(Base.atField(Field->Offset)); in VirtBaseHelper()
595 const Pointer &Ptr = S.Stk.pop<Pointer>(); in GetPtrVirtBase()
617 const Pointer &Ptr = S.Stk.peek<Pointer>(); in Load()
620 S.Stk.push<T>(Ptr.deref<T>()); in Load()
626 const Pointer &Ptr = S.Stk.pop<Pointer>(); in LoadPop()
629 S.Stk.push<T>(Ptr.deref<T>()); in LoadPop()
635 const T &Value = S.Stk.pop<T>(); in Store()
636 const Pointer &Ptr = S.Stk.peek<Pointer>(); in Store()
645 const T &Value = S.Stk.pop<T>(); in StorePop()
646 const Pointer &Ptr = S.Stk.pop<Pointer>(); in StorePop()
655 const T &Value = S.Stk.pop<T>(); in StoreBitField()
656 const Pointer &Ptr = S.Stk.peek<Pointer>(); in StoreBitField()
669 const T &Value = S.Stk.pop<T>(); in StoreBitFieldPop()
670 const Pointer &Ptr = S.Stk.pop<Pointer>(); in StoreBitFieldPop()
683 const T &Value = S.Stk.pop<T>(); in InitPop()
684 const Pointer &Ptr = S.Stk.pop<Pointer>(); in InitPop()
694 const T &Value = S.Stk.pop<T>(); in InitElem()
695 const Pointer &Ptr = S.Stk.peek<Pointer>().atIndex(Idx); in InitElem()
705 const T &Value = S.Stk.pop<T>(); in InitElemPop()
706 const Pointer &Ptr = S.Stk.pop<Pointer>().atIndex(Idx); in InitElemPop()
720 const T &Offset = S.Stk.pop<T>(); in OffsetHelper()
721 const Pointer &Ptr = S.Stk.pop<Pointer>(); in OffsetHelper()
732 S.Stk.push<Pointer>(Index.isZero() ? Ptr.atIndex(0) : Ptr); in OffsetHelper()
772 S.Stk.push<Pointer>(Ptr.atIndex(static_cast<unsigned>(Result))); in OffsetHelper()
803 S.Stk.push<U>(U::from(S.Stk.pop<T>())); in Cast()
813 S.Stk.push<T>(T::zero()); in Zero()
819 S.Stk.push<T>(); in Null()
837 S.Stk.push<Pointer>(This); in This()
863 S.Stk.push<T>(T::from(0, V.bitWidth())); in ShiftRight()
865 S.Stk.push<T>(T::from(V >> RHS, V.bitWidth())); in ShiftRight()
886 S.Stk.push<T>(V); in ShiftLeft()
888 S.Stk.push<T>(T::from(0, V.bitWidth())); in ShiftLeft()
890 S.Stk.push<T>(T::from(V.toUnsigned() << RHS, V.bitWidth())); in ShiftLeft()
897 const auto &RHS = S.Stk.pop<typename PrimConv<TR>::T>(); in Shr()
898 const auto &LHS = S.Stk.pop<typename PrimConv<TL>::T>(); in Shr()
912 const auto &RHS = S.Stk.pop<typename PrimConv<TR>::T>(); in Shl()
913 const auto &LHS = S.Stk.pop<typename PrimConv<TL>::T>(); in Shl()
940 const Pointer &Ptr = S.Stk.pop<Pointer>(); in NarrowPtr()
941 S.Stk.push<Pointer>(Ptr.narrow()); in NarrowPtr()
946 const Pointer &Ptr = S.Stk.pop<Pointer>(); in ExpandPtr()
947 S.Stk.push<Pointer>(Ptr.expand()); in ExpandPtr()