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

Side by Side Diff: src/IceCfg.h

Issue 1211863004: Enables llvm dyn_cast for Assemblers. (Closed) Base URL: https://chromium.googlesource.com/native_client/pnacl-subzero.git@master
Patch Set: Addresses comments. Created 5 years, 5 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
« no previous file with comments | « src/IceAssemblerX8664.h ('k') | src/IceTargetLowering.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 //===- subzero/src/IceCfg.h - Control flow graph ----------------*- C++ -*-===// 1 //===- subzero/src/IceCfg.h - Control flow graph ----------------*- 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 Cfg class, which represents the control flow 10 // This file declares the Cfg class, which represents the control flow
(...skipping 109 matching lines...) Expand 10 before | Expand all | Expand 10 after
120 const VarList &getArgs() const { return Args; } 120 const VarList &getArgs() const { return Args; }
121 VarList &getArgs() { return Args; } 121 VarList &getArgs() { return Args; }
122 void addImplicitArg(Variable *Arg); 122 void addImplicitArg(Variable *Arg);
123 const VarList &getImplicitArgs() const { return ImplicitArgs; } 123 const VarList &getImplicitArgs() const { return ImplicitArgs; }
124 124
125 // Miscellaneous accessors. 125 // Miscellaneous accessors.
126 TargetLowering *getTarget() const { return Target.get(); } 126 TargetLowering *getTarget() const { return Target.get(); }
127 VariablesMetadata *getVMetadata() const { return VMetadata.get(); } 127 VariablesMetadata *getVMetadata() const { return VMetadata.get(); }
128 Liveness *getLiveness() const { return Live.get(); } 128 Liveness *getLiveness() const { return Live.get(); }
129 template <typename T = Assembler> T *getAssembler() const { 129 template <typename T = Assembler> T *getAssembler() const {
130 return static_cast<T *>(TargetAssembler.get()); 130 return llvm::dyn_cast<T>(TargetAssembler.get());
131 } 131 }
132 Assembler *releaseAssembler() { return TargetAssembler.release(); } 132 Assembler *releaseAssembler() { return TargetAssembler.release(); }
133 std::unique_ptr<VariableDeclarationList> getGlobalInits() { 133 std::unique_ptr<VariableDeclarationList> getGlobalInits() {
134 return std::move(GlobalInits); 134 return std::move(GlobalInits);
135 } 135 }
136 bool hasComputedFrame() const; 136 bool hasComputedFrame() const;
137 bool getFocusedTiming() const { return FocusedTiming; } 137 bool getFocusedTiming() const { return FocusedTiming; }
138 void setFocusedTiming() { FocusedTiming = true; } 138 void setFocusedTiming() { FocusedTiming = true; }
139 139
140 // Returns true if Var is a global variable that is used by the profiling 140 // Returns true if Var is a global variable that is used by the profiling
(...skipping 101 matching lines...) Expand 10 before | Expand all | Expand 10 after
242 // other uses are possible. 242 // other uses are possible.
243 ICE_TLS_DECLARE_FIELD(const Cfg *, CurrentCfg); 243 ICE_TLS_DECLARE_FIELD(const Cfg *, CurrentCfg);
244 244
245 public: 245 public:
246 static void TlsInit() { ICE_TLS_INIT_FIELD(CurrentCfg); } 246 static void TlsInit() { ICE_TLS_INIT_FIELD(CurrentCfg); }
247 }; 247 };
248 248
249 } // end of namespace Ice 249 } // end of namespace Ice
250 250
251 #endif // SUBZERO_SRC_ICECFG_H 251 #endif // SUBZERO_SRC_ICECFG_H
OLDNEW
« no previous file with comments | « src/IceAssemblerX8664.h ('k') | src/IceTargetLowering.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698