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

Side by Side Diff: src/IceTargetLowering.h

Issue 1127963004: Subzero ARM: lowerArguments (GPR), basic legalize(), and lowerRet(i32, i64). (Closed) Base URL: https://chromium.googlesource.com/native_client/pnacl-subzero.git@master
Patch Set: fix warnings, etc Created 5 years, 7 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/IceOperand.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/IceTargetLowering.h - Lowering interface -----*- C++ -*-===// 1 //===- subzero/src/IceTargetLowering.h - Lowering interface -----*- 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 TargetLowering, LoweringContext, and 10 // This file declares the TargetLowering, LoweringContext, and
(...skipping 236 matching lines...) Expand 10 before | Expand all | Expand 10 after
247 virtual void lowerSwitch(const InstSwitch *Inst) = 0; 247 virtual void lowerSwitch(const InstSwitch *Inst) = 0;
248 virtual void lowerUnreachable(const InstUnreachable *Inst) = 0; 248 virtual void lowerUnreachable(const InstUnreachable *Inst) = 0;
249 249
250 virtual void doAddressOptLoad() {} 250 virtual void doAddressOptLoad() {}
251 virtual void doAddressOptStore() {} 251 virtual void doAddressOptStore() {}
252 virtual void randomlyInsertNop(float Probability) = 0; 252 virtual void randomlyInsertNop(float Probability) = 0;
253 // This gives the target an opportunity to post-process the lowered 253 // This gives the target an opportunity to post-process the lowered
254 // expansion before returning. 254 // expansion before returning.
255 virtual void postLower() {} 255 virtual void postLower() {}
256 256
257 // Find two-address non-SSA instructions and set the DestNonKillable flag
258 // to keep liveness analysis consistent.
259 void inferTwoAddress();
260
257 // Make a call to an external helper function. 261 // Make a call to an external helper function.
258 InstCall *makeHelperCall(const IceString &Name, Variable *Dest, 262 InstCall *makeHelperCall(const IceString &Name, Variable *Dest,
259 SizeT MaxSrcs); 263 SizeT MaxSrcs);
260 264
261 Cfg *Func; 265 Cfg *Func;
262 GlobalContext *Ctx; 266 GlobalContext *Ctx;
263 bool HasComputedFrame; 267 bool HasComputedFrame;
264 bool CallsReturnsTwice; 268 bool CallsReturnsTwice;
265 // StackAdjustment keeps track of the current stack offset from its 269 // StackAdjustment keeps track of the current stack offset from its
266 // natural location, as arguments are pushed for a function call. 270 // natural location, as arguments are pushed for a function call.
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after
323 virtual void lowerConstants() const = 0; 327 virtual void lowerConstants() const = 0;
324 328
325 protected: 329 protected:
326 explicit TargetDataLowering(GlobalContext *Ctx) : Ctx(Ctx) {} 330 explicit TargetDataLowering(GlobalContext *Ctx) : Ctx(Ctx) {}
327 GlobalContext *Ctx; 331 GlobalContext *Ctx;
328 }; 332 };
329 333
330 } // end of namespace Ice 334 } // end of namespace Ice
331 335
332 #endif // SUBZERO_SRC_ICETARGETLOWERING_H 336 #endif // SUBZERO_SRC_ICETARGETLOWERING_H
OLDNEW
« no previous file with comments | « src/IceOperand.h ('k') | src/IceTargetLowering.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698