OLD | NEW |
1 //===- subzero/src/IceOperand.h - High-level operands -----------*- C++ -*-===// | 1 //===- subzero/src/IceOperand.h - High-level operands -----------*- 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 Operand class and its target-independent | 10 // This file declares the Operand class and its target-independent |
(...skipping 321 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
332 | 332 |
333 Inst *getDefinition() const { return DefInst; } | 333 Inst *getDefinition() const { return DefInst; } |
334 void setDefinition(Inst *Inst, const CfgNode *Node); | 334 void setDefinition(Inst *Inst, const CfgNode *Node); |
335 void replaceDefinition(Inst *Inst, const CfgNode *Node); | 335 void replaceDefinition(Inst *Inst, const CfgNode *Node); |
336 | 336 |
337 const CfgNode *getLocalUseNode() const { return DefNode; } | 337 const CfgNode *getLocalUseNode() const { return DefNode; } |
338 bool isMultiblockLife() const { return (DefNode == NULL); } | 338 bool isMultiblockLife() const { return (DefNode == NULL); } |
339 void setUse(const Inst *Inst, const CfgNode *Node); | 339 void setUse(const Inst *Inst, const CfgNode *Node); |
340 | 340 |
341 bool getIsArg() const { return IsArgument; } | 341 bool getIsArg() const { return IsArgument; } |
342 void setIsArg(Cfg *Func); | 342 void setIsArg(Cfg *Func, bool IsArg = true); |
343 | 343 |
344 int32_t getStackOffset() const { return StackOffset; } | 344 int32_t getStackOffset() const { return StackOffset; } |
345 void setStackOffset(int32_t Offset) { StackOffset = Offset; } | 345 void setStackOffset(int32_t Offset) { StackOffset = Offset; } |
346 | 346 |
347 static const int32_t NoRegister = -1; | 347 static const int32_t NoRegister = -1; |
348 bool hasReg() const { return getRegNum() != NoRegister; } | 348 bool hasReg() const { return getRegNum() != NoRegister; } |
349 int32_t getRegNum() const { return RegNum; } | 349 int32_t getRegNum() const { return RegNum; } |
350 void setRegNum(int32_t NewRegNum) { | 350 void setRegNum(int32_t NewRegNum) { |
351 // Regnum shouldn't be set more than once. | 351 // Regnum shouldn't be set more than once. |
352 assert(!hasReg() || RegNum == NewRegNum); | 352 assert(!hasReg() || RegNum == NewRegNum); |
(...skipping 110 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
463 Variable *LoVar; | 463 Variable *LoVar; |
464 Variable *HiVar; | 464 Variable *HiVar; |
465 // VarsReal (and Operand::Vars) are set up such that Vars[0] == | 465 // VarsReal (and Operand::Vars) are set up such that Vars[0] == |
466 // this. | 466 // this. |
467 Variable *VarsReal[1]; | 467 Variable *VarsReal[1]; |
468 }; | 468 }; |
469 | 469 |
470 } // end of namespace Ice | 470 } // end of namespace Ice |
471 | 471 |
472 #endif // SUBZERO_SRC_ICEOPERAND_H | 472 #endif // SUBZERO_SRC_ICEOPERAND_H |
OLD | NEW |