R600Defines.h revision 90bd1d52bbf95947955a66ec67f5f6c7dc87119a
16f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org//===-- R600Defines.h - R600 Helper Macros ----------------------*- C++ -*-===// 26f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org// 36f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org// The LLVM Compiler Infrastructure 46f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org// 56f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org// This file is distributed under the University of Illinois Open Source 66f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org// License. See LICENSE.TXT for details. 76f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org// 86f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org//===----------------------------------------------------------------------===// 96f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 106f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 116f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org// Operand Flags 126f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define MO_FLAG_CLAMP (1 << 0) 136f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define MO_FLAG_NEG (1 << 1) 146f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define MO_FLAG_ABS (1 << 2) 156f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define MO_FLAG_MASK (1 << 3) 166f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define MO_FLAG_PUSH (1 << 4) 176f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define MO_FLAG_NOT_LAST (1 << 5) 186f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define NUM_MO_FLAGS 6 196f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 206f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org// Helper for finding getting the operand index for the instruction flags 216f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org// operand. 226f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define GET_FLAG_OPERAND_IDX(Flags) (((Flags) >> 7) & 0x3) 236f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 246f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org