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