//===- subzero/src/IceDefs.h - Common Subzero declarations ------*- C++ -*-===// // // The Subzero Code Generator // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// /// /// \file /// \brief Declares various useful types and classes that have widespread use /// across Subzero. /// //===----------------------------------------------------------------------===// #ifndef SUBZERO_SRC_ICEDEFS_H #define SUBZERO_SRC_ICEDEFS_H #include "IceBuildDefs.h" // TODO(stichnot): move into individual files #include "IceMemory.h" #include "IceTLS.h" #include "llvm/ADT/ArrayRef.h" #include "llvm/ADT/ilist.h" #include "llvm/ADT/ilist_node.h" #include "llvm/ADT/iterator_range.h" #include "llvm/ADT/SmallVector.h" #include "llvm/ADT/STLExtras.h" #include "llvm/Support/Casting.h" #include "llvm/Support/ELF.h" #include "llvm/Support/raw_ostream.h" #include #include #include // snprintf #include // std::less #include #include #include #include #include #include #include #include #include #include #include #include #define XSTRINGIFY(x) STRINGIFY(x) #define STRINGIFY(x) #x namespace Ice { class Assembler; template