Chromium Code Reviews| OLD | NEW |
|---|---|
| 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 /// \file | 10 /// \file |
| 11 /// This file declares the Inst class and its target-independent | 11 /// This file declares the Inst class and its target-independent |
| 12 /// subclasses, which represent the high-level Vanilla ICE instructions | 12 /// subclasses, which represent the high-level Vanilla ICE instructions |
| 13 /// and map roughly 1:1 to LLVM instructions. | 13 /// and map roughly 1:1 to LLVM instructions. |
| 14 /// | 14 /// |
| 15 //===----------------------------------------------------------------------===// | 15 //===----------------------------------------------------------------------===// |
| 16 | 16 |
| 17 #ifndef SUBZERO_SRC_ICEINST_H | 17 #ifndef SUBZERO_SRC_ICEINST_H |
| 18 #define SUBZERO_SRC_ICEINST_H | 18 #define SUBZERO_SRC_ICEINST_H |
| 19 | 19 |
| 20 #include "IceCfg.h" | 20 #include "IceCfg.h" |
| 21 #include "IceDefs.h" | 21 #include "IceDefs.h" |
| 22 #include "IceInst.def" | 22 #include "IceInst.def" |
| 23 #include "IceIntrinsics.h" | 23 #include "IceIntrinsics.h" |
| 24 #include "IceOperand.h" | |
|
Jim Stichnoth
2015/09/03 21:35:09
Why is this needed?
ascull
2015/09/03 22:47:12
Line 696 has a dyn_cast to Variable which requires
Jim Stichnoth
2015/09/03 23:23:30
Ah, thanks. In that case, could you move the defi
ascull
2015/09/04 00:23:51
Done.
| |
| 24 #include "IceTypes.h" | 25 #include "IceTypes.h" |
| 25 | 26 |
| 26 // TODO: The Cfg structure, and instructions in particular, need to be | 27 // TODO: The Cfg structure, and instructions in particular, need to be |
| 27 // validated for things like valid operand types, valid branch | 28 // validated for things like valid operand types, valid branch |
| 28 // targets, proper ordering of Phi and non-Phi instructions, etc. | 29 // targets, proper ordering of Phi and non-Phi instructions, etc. |
| 29 // Most of the validity checking will be done in the bitcode reader. | 30 // Most of the validity checking will be done in the bitcode reader. |
| 30 // We need a list of everything that should be validated, and tests | 31 // We need a list of everything that should be validated, and tests |
| 31 // for each. | 32 // for each. |
| 32 | 33 |
| 33 namespace Ice { | 34 namespace Ice { |
| (...skipping 948 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 982 static void noteHead(Ice::Inst *, Ice::Inst *) {} | 983 static void noteHead(Ice::Inst *, Ice::Inst *) {} |
| 983 void deleteNode(Ice::Inst *) {} | 984 void deleteNode(Ice::Inst *) {} |
| 984 | 985 |
| 985 private: | 986 private: |
| 986 mutable ilist_half_node<Ice::Inst> Sentinel; | 987 mutable ilist_half_node<Ice::Inst> Sentinel; |
| 987 }; | 988 }; |
| 988 | 989 |
| 989 } // end of namespace llvm | 990 } // end of namespace llvm |
| 990 | 991 |
| 991 #endif // SUBZERO_SRC_ICEINST_H | 992 #endif // SUBZERO_SRC_ICEINST_H |
| OLD | NEW |