1 //===- subzero/src/IceInstX8664.h - x86-64 machine instructions -*- C++ -*-===// 2 // 3 // The Subzero Code Generator 4 // 5 // This file is distributed under the University of Illinois Open Source 6 // License. See LICENSE.TXT for details. 7 // 8 //===----------------------------------------------------------------------===// 9 /// 10 /// \file 11 /// \brief (Note: x86 instructions are templates, and they are defined in 12 /// src/IceInstX86Base.) 13 /// 14 /// When interacting with the X8664 target (which should only happen in the 15 /// X8664 TargetLowering) clients have should use the Ice::X8664::Traits::Insts 16 /// traits, which hides all the template verboseness behind a type alias. 17 /// 18 /// For example, to create an X8664 MOV Instruction, clients should do 19 /// 20 /// ::Ice::X8664::Traits::Insts::Mov::create 21 /// 22 //===----------------------------------------------------------------------===// 23 24 #ifndef SUBZERO_SRC_ICEINSTX8664_H 25 #define SUBZERO_SRC_ICEINSTX8664_H 26 27 #include "IceDefs.h" 28 #include "IceInst.h" 29 #define X86NAMESPACE X8664 30 #include "IceInstX86Base.h" 31 #undef X86NAMESPACE 32 #include "IceOperand.h" 33 #include "IceTargetLoweringX8664Traits.h" 34 35 #endif // SUBZERO_SRC_ICEINSTX8664_H 36