• Home
  • Raw
  • Download

Lines Matching refs:Func

86   void renumber(Cfg *Func);
161 void livenessLightweight(Cfg *Func, LivenessBV &Live);
184 virtual void emitIAS(const Cfg *Func) const { emit(Func); } in emitIAS() argument
185 virtual void dump(const Cfg *Func) const;
186 virtual void dumpExtras(const Cfg *Func) const;
187 void dumpDecorated(const Cfg *Func) const;
188 void emitSources(const Cfg *Func) const;
189 void dumpSources(const Cfg *Func) const;
190 void dumpDest(const Cfg *Func) const;
206 Inst(Cfg *Func, InstKind Kind, SizeT MaxSrcs, Variable *Dest);
270 InstHighLevel(Cfg *Func, InstKind Kind, SizeT MaxSrcs, Variable *Dest) in InstHighLevel() argument
271 : Inst(Func, Kind, MaxSrcs, Dest) {} in InstHighLevel()
289 static InstAlloca *create(Cfg *Func, Variable *Dest, Operand *ByteCount, in create() argument
291 return new (Func->allocate<InstAlloca>()) in create()
292 InstAlloca(Func, Dest, ByteCount, AlignInBytes); in create()
299 void dump(const Cfg *Func) const override;
303 InstAlloca(Cfg *Func, Variable *Dest, Operand *ByteCount,
325 static InstArithmetic *create(Cfg *Func, OpKind Op, Variable *Dest, in create() argument
327 return new (Func->allocate<InstArithmetic>()) in create()
328 InstArithmetic(Func, Op, Dest, Source1, Source2); in create()
337 void dump(const Cfg *Func) const override;
343 InstArithmetic(Cfg *Func, OpKind Op, Variable *Dest, Operand *Source1,
360 static InstAssign *create(Cfg *Func, Variable *Dest, Operand *Source) { in create() argument
361 return new (Func->allocate<InstAssign>()) InstAssign(Func, Dest, Source); in create()
365 void dump(const Cfg *Func) const override;
369 InstAssign(Cfg *Func, Variable *Dest, Operand *Source);
382 static InstBr *create(Cfg *Func, Operand *Source, CfgNode *TargetTrue, in create() argument
384 return new (Func->allocate<InstBr>()) in create()
385 InstBr(Func, Source, TargetTrue, TargetFalse); in create()
388 static InstBr *create(Cfg *Func, CfgNode *Target) { in create() argument
389 return new (Func->allocate<InstBr>()) InstBr(Func, Target); in create()
406 void dump(const Cfg *Func) const override;
411 InstBr(Cfg *Func, Operand *Source, CfgNode *TargetTrue, CfgNode *TargetFalse);
413 InstBr(Cfg *Func, CfgNode *Target);
427 static InstCall *create(Cfg *Func, SizeT NumArgs, Variable *Dest,
436 return new (Func->allocate<InstCall>())
437 InstCall(Func, NumArgs, Dest, CallTarget, HasTailCall,
448 void dump(const Cfg *Func) const override;
453 InstCall(Cfg *Func, SizeT NumArgs, Variable *Dest, Operand *CallTarget, in InstCall() argument
456 : InstHighLevel(Func, Kind, NumArgs + 1, Dest), HasTailCall(HasTailCall), in InstCall()
484 static InstCast *create(Cfg *Func, OpKind CastKind, Variable *Dest, in create() argument
486 return new (Func->allocate<InstCast>()) in create()
487 InstCast(Func, CastKind, Dest, Source); in create()
491 void dump(const Cfg *Func) const override;
495 InstCast(Cfg *Func, OpKind CastKind, Variable *Dest, Operand *Source);
507 static InstExtractElement *create(Cfg *Func, Variable *Dest, Operand *Source1, in create() argument
509 return new (Func->allocate<InstExtractElement>()) in create()
510 InstExtractElement(Func, Dest, Source1, Source2); in create()
514 void dump(const Cfg *Func) const override;
520 InstExtractElement(Cfg *Func, Variable *Dest, Operand *Source1,
539 static InstFcmp *create(Cfg *Func, FCond Condition, Variable *Dest, in create() argument
541 return new (Func->allocate<InstFcmp>()) in create()
542 InstFcmp(Func, Condition, Dest, Source1, Source2); in create()
546 void dump(const Cfg *Func) const override;
550 InstFcmp(Cfg *Func, FCond Condition, Variable *Dest, Operand *Source1,
571 static InstIcmp *create(Cfg *Func, ICond Condition, Variable *Dest, in create() argument
573 return new (Func->allocate<InstIcmp>()) in create()
574 InstIcmp(Func, Condition, Dest, Source1, Source2); in create()
579 void dump(const Cfg *Func) const override;
583 InstIcmp(Cfg *Func, ICond Condition, Variable *Dest, Operand *Source1,
596 static InstInsertElement *create(Cfg *Func, Variable *Dest, Operand *Source1, in create() argument
598 return new (Func->allocate<InstInsertElement>()) in create()
599 InstInsertElement(Func, Dest, Source1, Source2, Source3); in create()
603 void dump(const Cfg *Func) const override;
609 InstInsertElement(Cfg *Func, Variable *Dest, Operand *Source1,
621 static InstIntrinsicCall *create(Cfg *Func, SizeT NumArgs, Variable *Dest, in create() argument
624 return new (Func->allocate<InstIntrinsicCall>()) in create()
625 InstIntrinsicCall(Func, NumArgs, Dest, CallTarget, Info); in create()
637 InstIntrinsicCall(Cfg *Func, SizeT NumArgs, Variable *Dest, in InstIntrinsicCall() argument
639 : InstCall(Func, NumArgs, Dest, CallTarget, false, false, false, in InstIntrinsicCall()
653 static InstLoad *create(Cfg *Func, Variable *Dest, Operand *SourceAddr,
657 return new (Func->allocate<InstLoad>()) InstLoad(Func, Dest, SourceAddr);
661 void dump(const Cfg *Func) const override;
665 InstLoad(Cfg *Func, Variable *Dest, Operand *SourceAddr);
676 static InstPhi *create(Cfg *Func, SizeT MaxSrcs, Variable *Dest) { in create() argument
677 return new (Func->allocate<InstPhi>()) InstPhi(Func, MaxSrcs, Dest); in create()
686 Inst *lower(Cfg *Func);
688 void dump(const Cfg *Func) const override;
692 InstPhi(Cfg *Func, SizeT MaxSrcs, Variable *Dest);
693 void destroy(Cfg *Func) override { Inst::destroy(Func); } in destroy() argument
710 static InstRet *create(Cfg *Func, Operand *RetValue = nullptr) {
711 return new (Func->allocate<InstRet>()) InstRet(Func, RetValue);
720 void dump(const Cfg *Func) const override;
724 InstRet(Cfg *Func, Operand *RetValue);
734 static InstSelect *create(Cfg *Func, Variable *Dest, Operand *Condition, in create() argument
736 return new (Func->allocate<InstSelect>()) in create()
737 InstSelect(Func, Dest, Condition, SourceTrue, SourceFalse); in create()
743 void dump(const Cfg *Func) const override;
747 InstSelect(Cfg *Func, Variable *Dest, Operand *Condition, Operand *Source1,
759 static InstStore *create(Cfg *Func, Operand *Data, Operand *Addr,
763 return new (Func->allocate<InstStore>()) InstStore(Func, Data, Addr);
770 void dump(const Cfg *Func) const override;
774 InstStore(Cfg *Func, Operand *Data, Operand *Addr);
784 static InstSwitch *create(Cfg *Func, SizeT NumCases, Operand *Source, in create() argument
786 return new (Func->allocate<InstSwitch>()) in create()
787 InstSwitch(Func, NumCases, Source, LabelDefault); in create()
804 void dump(const Cfg *Func) const override;
808 InstSwitch(Cfg *Func, SizeT NumCases, Operand *Source, CfgNode *LabelDefault);
809 void destroy(Cfg *Func) override { in destroy() argument
810 Func->deallocateArrayOf<uint64_t>(Values); in destroy()
811 Func->deallocateArrayOf<CfgNode *>(Labels); in destroy()
812 Inst::destroy(Func); in destroy()
828 static InstUnreachable *create(Cfg *Func) { in create() argument
829 return new (Func->allocate<InstUnreachable>()) InstUnreachable(Func); in create()
833 void dump(const Cfg *Func) const override;
839 explicit InstUnreachable(Cfg *Func);
851 static InstBundleLock *create(Cfg *Func, Option BundleOption) { in create() argument
852 return new (Func->allocate<InstBundleLock>()) in create()
853 InstBundleLock(Func, BundleOption); in create()
855 void emit(const Cfg *Func) const override;
858 void dump(const Cfg *Func) const override;
866 InstBundleLock(Cfg *Func, Option BundleOption);
876 static InstBundleUnlock *create(Cfg *Func) { in create() argument
877 return new (Func->allocate<InstBundleUnlock>()) InstBundleUnlock(Func); in create()
879 void emit(const Cfg *Func) const override;
882 void dump(const Cfg *Func) const override;
888 explicit InstBundleUnlock(Cfg *Func);
908 static InstFakeDef *create(Cfg *Func, Variable *Dest,
910 return new (Func->allocate<InstFakeDef>()) InstFakeDef(Func, Dest, Src);
912 void emit(const Cfg *Func) const override;
915 void dump(const Cfg *Func) const override;
919 InstFakeDef(Cfg *Func, Variable *Dest, Variable *Src);
935 static InstFakeUse *create(Cfg *Func, Variable *Src, uint32_t Weight = 1) {
936 return new (Func->allocate<InstFakeUse>()) InstFakeUse(Func, Src, Weight);
938 void emit(const Cfg *Func) const override;
941 void dump(const Cfg *Func) const override;
945 InstFakeUse(Cfg *Func, Variable *Src, uint32_t Weight);
963 static InstFakeKill *create(Cfg *Func, const Inst *Linked) { in create() argument
964 return new (Func->allocate<InstFakeKill>()) InstFakeKill(Func, Linked); in create()
967 void emit(const Cfg *Func) const override;
970 void dump(const Cfg *Func) const override;
976 InstFakeKill(Cfg *Func, const Inst *Linked);
992 static InstShuffleVector *create(Cfg *Func, Variable *Dest, Operand *Src0, in create() argument
994 return new (Func->allocate<InstShuffleVector>()) in create()
995 InstShuffleVector(Func, Dest, Src0, Src1); in create()
1052 void dump(const Cfg *Func) const override;
1058 InstShuffleVector(Cfg *Func, Variable *Dest, Operand *Src0, Operand *Src1);
1060 void destroy(Cfg *Func) override { in destroy() argument
1061 Func->deallocateArrayOf<ConstantInteger32 *>(Indexes); in destroy()
1062 Inst::destroy(Func); in destroy()
1079 static InstJumpTable *create(Cfg *Func, SizeT NumTargets, CfgNode *Default) { in create() argument
1080 return new (Func->allocate<InstJumpTable>()) in create()
1081 InstJumpTable(Func, NumTargets, Default); in create()
1095 void dump(const Cfg *Func) const override;
1118 InstJumpTable(Cfg *Func, SizeT NumTargets, CfgNode *Default);
1119 void destroy(Cfg *Func) override { in destroy() argument
1120 Func->deallocateArrayOf<CfgNode *>(Targets); in destroy()
1121 Inst::destroy(Func); in destroy()
1142 explicit InstBreakpoint(Cfg *Func);
1146 static InstBreakpoint *create(Cfg *Func) { in create() argument
1147 return new (Func->allocate<InstBreakpoint>()) InstBreakpoint(Func); in create()
1167 void dump(const Cfg *Func) const override;
1171 InstTarget(Cfg *Func, InstKind Kind, SizeT MaxSrcs, Variable *Dest) in InstTarget() argument
1172 : Inst(Func, Kind, MaxSrcs, Dest) { in InstTarget()