Home | History | Annotate | Download | only in src
      1 //===- subzero/src/IceInstX8632.h - x86-32 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 Used to house all the X8632 instructions.
     12 ///
     13 /// Subzero has been modified to use templates for X86 instructions, so all
     14 /// those definitions are are in IceInstX86Base.h
     15 ///
     16 /// When interacting with the X8632 target (which should only happen in the
     17 /// X8632 TargetLowering) clients have should use the Ice::X8632::Traits::Insts
     18 /// traits, which hides all the template verboseness behind a type alias.
     19 ///
     20 /// For example, to create an X8632 MOV Instruction, clients should do
     21 ///
     22 /// ::Ice::X8632::Traits::Insts::Mov::create
     23 ///
     24 //===----------------------------------------------------------------------===//
     25 
     26 #ifndef SUBZERO_SRC_ICEINSTX8632_H
     27 #define SUBZERO_SRC_ICEINSTX8632_H
     28 
     29 #include "IceDefs.h"
     30 #include "IceInst.h"
     31 #define X86NAMESPACE X8632
     32 #include "IceInstX86Base.h"
     33 #undef X86NAMESPACE
     34 #include "IceOperand.h"
     35 #include "IceTargetLoweringX8632Traits.h"
     36 
     37 #endif // SUBZERO_SRC_ICEINSTX8632_H
     38