| OLD | NEW |
| 1 //===- subzero/src/IceInstX8632.h - Low-level x86 instructions --*- C++ -*-===// | 1 //===- subzero/src/IceInstX8632.h - Low-level x86 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 InstX8632 and OperandX8632 classes and | 10 // This file declares the InstX8632 and OperandX8632 classes and |
| (...skipping 369 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 380 uint32_t getEmitInstCount() const override { | 380 uint32_t getEmitInstCount() const override { |
| 381 uint32_t Sum = 0; | 381 uint32_t Sum = 0; |
| 382 if (Label) | 382 if (Label) |
| 383 ++Sum; | 383 ++Sum; |
| 384 if (getTargetTrue()) | 384 if (getTargetTrue()) |
| 385 ++Sum; | 385 ++Sum; |
| 386 if (getTargetFalse()) | 386 if (getTargetFalse()) |
| 387 ++Sum; | 387 ++Sum; |
| 388 return Sum; | 388 return Sum; |
| 389 } | 389 } |
| 390 bool isUnconditionalBranch() const override { |
| 391 return !Label && Condition == CondX86::Br_None; |
| 392 } |
| 393 bool repointEdge(CfgNode *OldNode, CfgNode *NewNode) override; |
| 390 void emit(const Cfg *Func) const override; | 394 void emit(const Cfg *Func) const override; |
| 391 void emitIAS(const Cfg *Func) const override; | 395 void emitIAS(const Cfg *Func) const override; |
| 392 void dump(const Cfg *Func) const override; | 396 void dump(const Cfg *Func) const override; |
| 393 static bool classof(const Inst *Inst) { return isClassof(Inst, Br); } | 397 static bool classof(const Inst *Inst) { return isClassof(Inst, Br); } |
| 394 | 398 |
| 395 private: | 399 private: |
| 396 InstX8632Br(Cfg *Func, const CfgNode *TargetTrue, const CfgNode *TargetFalse, | 400 InstX8632Br(Cfg *Func, const CfgNode *TargetTrue, const CfgNode *TargetFalse, |
| 397 const InstX8632Label *Label, CondX86::BrCond Condition); | 401 const InstX8632Label *Label, CondX86::BrCond Condition); |
| 398 ~InstX8632Br() override {} | 402 ~InstX8632Br() override {} |
| 399 CondX86::BrCond Condition; | 403 CondX86::BrCond Condition; |
| (...skipping 1146 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1546 template <> void InstX8632Pinsr::emitIAS(const Cfg *Func) const; | 1550 template <> void InstX8632Pinsr::emitIAS(const Cfg *Func) const; |
| 1547 template <> void InstX8632Movsx::emitIAS(const Cfg *Func) const; | 1551 template <> void InstX8632Movsx::emitIAS(const Cfg *Func) const; |
| 1548 template <> void InstX8632Movzx::emitIAS(const Cfg *Func) const; | 1552 template <> void InstX8632Movzx::emitIAS(const Cfg *Func) const; |
| 1549 template <> void InstX8632Pmull::emitIAS(const Cfg *Func) const; | 1553 template <> void InstX8632Pmull::emitIAS(const Cfg *Func) const; |
| 1550 template <> void InstX8632Pshufd::emitIAS(const Cfg *Func) const; | 1554 template <> void InstX8632Pshufd::emitIAS(const Cfg *Func) const; |
| 1551 template <> void InstX8632Shufps::emitIAS(const Cfg *Func) const; | 1555 template <> void InstX8632Shufps::emitIAS(const Cfg *Func) const; |
| 1552 | 1556 |
| 1553 } // end of namespace Ice | 1557 } // end of namespace Ice |
| 1554 | 1558 |
| 1555 #endif // SUBZERO_SRC_ICEINSTX8632_H | 1559 #endif // SUBZERO_SRC_ICEINSTX8632_H |
| OLD | NEW |