Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(246)

Side by Side Diff: src/IceInst.h

Issue 610813002: Subzero: Rewrite the pass timing infrastructure. (Closed) Base URL: https://chromium.googlesource.com/native_client/pnacl-subzero.git@master
Patch Set: Make the optimized overlaps() implementation actually correct Created 6 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 //===- subzero/src/IceInst.h - High-level instructions ----------*- C++ -*-===// 1 //===- subzero/src/IceInst.h - High-level instructions ----------*- C++ -*-===//
2 // 2 //
3 // The Subzero Code Generator 3 // The Subzero Code Generator
4 // 4 //
5 // This file is distributed under the University of Illinois Open Source 5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details. 6 // License. See LICENSE.TXT for details.
7 // 7 //
8 //===----------------------------------------------------------------------===// 8 //===----------------------------------------------------------------------===//
9 // 9 //
10 // This file declares the Inst class and its target-independent 10 // This file declares the Inst class and its target-independent
(...skipping 491 matching lines...) Expand 10 before | Expand all | Expand 10 after
502 InstIntrinsicCall(const InstIntrinsicCall &) LLVM_DELETED_FUNCTION; 502 InstIntrinsicCall(const InstIntrinsicCall &) LLVM_DELETED_FUNCTION;
503 InstIntrinsicCall &operator=(const InstIntrinsicCall &) LLVM_DELETED_FUNCTION; 503 InstIntrinsicCall &operator=(const InstIntrinsicCall &) LLVM_DELETED_FUNCTION;
504 ~InstIntrinsicCall() override {} 504 ~InstIntrinsicCall() override {}
505 const Intrinsics::IntrinsicInfo Info; 505 const Intrinsics::IntrinsicInfo Info;
506 }; 506 };
507 507
508 // Load instruction. The source address is captured in getSrc(0). 508 // Load instruction. The source address is captured in getSrc(0).
509 class InstLoad : public InstHighLevel { 509 class InstLoad : public InstHighLevel {
510 public: 510 public:
511 static InstLoad *create(Cfg *Func, Variable *Dest, Operand *SourceAddr, 511 static InstLoad *create(Cfg *Func, Variable *Dest, Operand *SourceAddr,
512 uint32_t align = 1) { 512 uint32_t Align = 1) {
513 // TODO(kschimpf) Stop ignoring alignment specification. 513 // TODO(kschimpf) Stop ignoring alignment specification.
514 (void)align; 514 (void)Align;
515 return new (Func->allocateInst<InstLoad>()) 515 return new (Func->allocateInst<InstLoad>())
516 InstLoad(Func, Dest, SourceAddr); 516 InstLoad(Func, Dest, SourceAddr);
517 } 517 }
518 Operand *getSourceAddress() const { return getSrc(0); } 518 Operand *getSourceAddress() const { return getSrc(0); }
519 void dump(const Cfg *Func) const override; 519 void dump(const Cfg *Func) const override;
520 static bool classof(const Inst *Inst) { return Inst->getKind() == Load; } 520 static bool classof(const Inst *Inst) { return Inst->getKind() == Load; }
521 521
522 private: 522 private:
523 InstLoad(Cfg *Func, Variable *Dest, Operand *SourceAddr); 523 InstLoad(Cfg *Func, Variable *Dest, Operand *SourceAddr);
524 InstLoad(const InstLoad &) LLVM_DELETED_FUNCTION; 524 InstLoad(const InstLoad &) LLVM_DELETED_FUNCTION;
(...skipping 261 matching lines...) Expand 10 before | Expand all | Expand 10 after
786 : Inst(Func, Kind, MaxSrcs, Dest) { 786 : Inst(Func, Kind, MaxSrcs, Dest) {
787 assert(Kind >= Target); 787 assert(Kind >= Target);
788 } 788 }
789 void emitIAS(const Cfg *Func) const override { emit(Func); } 789 void emitIAS(const Cfg *Func) const override { emit(Func); }
790 ~InstTarget() override {} 790 ~InstTarget() override {}
791 }; 791 };
792 792
793 } // end of namespace Ice 793 } // end of namespace Ice
794 794
795 #endif // SUBZERO_SRC_ICEINST_H 795 #endif // SUBZERO_SRC_ICEINST_H
OLDNEW
« no previous file with comments | « src/IceGlobalContext.cpp ('k') | src/IceOperand.cpp » ('j') | src/IceOperand.cpp » ('J')

Powered by Google App Engine
This is Rietveld 408576698