40 lines · c
1//===-- NVPTXBaseInfo.h - Top-level definitions for NVPTX -------*- C++ -*-===//2//3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.4// See https://llvm.org/LICENSE.txt for license information.5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception6//7//===----------------------------------------------------------------------===//8//9// This file contains small standalone helper functions and enum definitions for10// the NVPTX target useful for the compiler back-end and the MC libraries.11// As such, it deliberately does not include references to LLVM core12// code gen types, passes, etc..13//14//===----------------------------------------------------------------------===//15 16#ifndef LLVM_LIB_TARGET_NVPTX_MCTARGETDESC_NVPTXBASEINFO_H17#define LLVM_LIB_TARGET_NVPTX_MCTARGETDESC_NVPTXBASEINFO_H18 19#include "llvm/Support/NVPTXAddrSpace.h"20namespace llvm {21 22using namespace NVPTXAS;23 24namespace NVPTXII {25enum {26 // These must be kept in sync with TSFlags in NVPTXInstrFormats.td27 // clang-format off28 IsTexFlag = 0x40,29 IsSuldMask = 0x180,30 IsSuldShift = 0x7,31 IsSustFlag = 0x200,32 IsSurfTexQueryFlag = 0x400,33 IsTexModeUnifiedFlag = 0x800,34 // clang-format on35};36} // namespace NVPTXII37 38} // namespace llvm39#endif40