//===- subzero/src/IceTargetLoweringX8632.def - x86-32 X-macros -*- C++ -*-===//
//
//                        The Subzero Code Generator
//
// This file is distributed under the University of Illinois Open Source
// License. See LICENSE.TXT for details.
//
//===----------------------------------------------------------------------===//
//
// This file defines certain patterns for lowering to x86-32 target
// instructions, in the form of x-macros.
//
//===----------------------------------------------------------------------===//

#ifndef SUBZERO_SRC_ICETARGETLOWERINGX8632_DEF
#define SUBZERO_SRC_ICETARGETLOWERINGX8632_DEF

#define FCMPX8632_TABLE                  \
  /* val,  dflt, swap, C1,      C2 */    \
  X(False, 0,    0,    Br_None, Br_None) \
  X(Oeq,   0,    0,    Br_ne,   Br_p)    \
  X(Ogt,   1,    0,    Br_a,    Br_None) \
  X(Oge,   1,    0,    Br_ae,   Br_None) \
  X(Olt,   1,    1,    Br_a,    Br_None) \
  X(Ole,   1,    1,    Br_ae,   Br_None) \
  X(One,   1,    0,    Br_ne,   Br_None) \
  X(Ord,   1,    0,    Br_np,   Br_None) \
  X(Ueq,   1,    0,    Br_e,    Br_None) \
  X(Ugt,   1,    1,    Br_b,    Br_None) \
  X(Uge,   1,    1,    Br_be,   Br_None) \
  X(Ult,   1,    0,    Br_b,    Br_None) \
  X(Ule,   1,    0,    Br_be,   Br_None) \
  X(Une,   1,    0,    Br_ne,   Br_p)    \
  X(Uno,   1,    0,    Br_p,    Br_None) \
  X(True,  1,    0,    Br_None, Br_None) \
//#define X(val, dflt, swap, C1, C2)

#define ICMPX8632_TABLE                     \
  /* val, C_32,  C1_64,   C2_64,   C3_64 */ \
  X(Eq,   Br_e,  Br_None, Br_None, Br_None) \
  X(Ne,   Br_ne, Br_None, Br_None, Br_None) \
  X(Ugt,  Br_a,  Br_a,    Br_b,    Br_a)    \
  X(Uge,  Br_ae, Br_a,    Br_b,    Br_ae)   \
  X(Ult,  Br_b,  Br_b,    Br_a,    Br_b)    \
  X(Ule,  Br_be, Br_b,    Br_a,    Br_be)   \
  X(Sgt,  Br_g,  Br_g,    Br_l,    Br_a)    \
  X(Sge,  Br_ge, Br_g,    Br_l,    Br_ae)   \
  X(Slt,  Br_l,  Br_l,    Br_g,    Br_b)    \
  X(Sle,  Br_le, Br_l,    Br_g,    Br_be)   \
//#define X(val, C_32, C1_64, C2_64, C3_64)

#endif // SUBZERO_SRC_ICETARGETLOWERINGX8632_DEF
