blob: a004cb66fd4ebfe2555837b77bed5e049b8c6112 [file] [log] [blame]
Jan Voungb36ad9b2015-04-21 17:01:49 -07001//===- subzero/src/IceTargetLoweringARM32.def - ARM32 X-macros --*- 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// This file defines certain patterns for lowering to ARM32 target
11// instructions, in the form of x-macros.
12//
13//===----------------------------------------------------------------------===//
14
15#ifndef SUBZERO_SRC_ICETARGETLOWERINGARM32_DEF
16#define SUBZERO_SRC_ICETARGETLOWERINGARM32_DEF
17
Jan Voung3bfd99a2015-05-22 16:35:25 -070018// Patterns for lowering icmp.
19#define ICMPARM32_TABLE \
20 /* val, is_signed, swapped64, C_32, C1_64, C2_64 */ \
21 X(Eq, false, false, EQ, EQ, NE) \
22 X(Ne, false, false, NE, NE, EQ) \
23 X(Ugt, false, false, HI, HI, LS) \
24 X(Uge, false, false, CS, CS, CC) \
25 X(Ult, false, false, CC, CC, CS) \
26 X(Ule, false, false, LS, LS, HI) \
27 X(Sgt, true, true, GT, LT, GE) \
28 X(Sge, true, false, GE, GE, LT) \
29 X(Slt, true, false, LT, LT, GE) \
30 X(Sle, true, true, LE, GE, LT) \
31//#define X(val, is_signed, swapped64, C_32, C1_64, C2_64)
Jan Voungb36ad9b2015-04-21 17:01:49 -070032
33#endif // SUBZERO_SRC_ICETARGETLOWERINGARM32_DEF