| //===-- NVPTXBaseInfo.h - Top-level definitions for NVPTX -------*- C++ -*-===// |
| // |
| // The LLVM Compiler Infrastructure |
| // |
| // This file is distributed under the University of Illinois Open Source |
| // License. See LICENSE.TXT for details. |
| // |
| //===----------------------------------------------------------------------===// |
| // |
| // This file contains small standalone helper functions and enum definitions for |
| // the NVPTX target useful for the compiler back-end and the MC libraries. |
| // As such, it deliberately does not include references to LLVM core |
| // code gen types, passes, etc.. |
| // |
| //===----------------------------------------------------------------------===// |
| |
| #ifndef LLVM_LIB_TARGET_NVPTX_MCTARGETDESC_NVPTXBASEINFO_H |
| #define LLVM_LIB_TARGET_NVPTX_MCTARGETDESC_NVPTXBASEINFO_H |
| |
| namespace llvm { |
| |
| enum AddressSpace { |
| ADDRESS_SPACE_GENERIC = 0, |
| ADDRESS_SPACE_GLOBAL = 1, |
| ADDRESS_SPACE_SHARED = 3, |
| ADDRESS_SPACE_CONST = 4, |
| ADDRESS_SPACE_LOCAL = 5, |
| |
| // NVVM Internal |
| ADDRESS_SPACE_PARAM = 101 |
| }; |
| |
| namespace NVPTXII { |
| enum { |
| // These must be kept in sync with TSFlags in NVPTXInstrFormats.td |
| IsTexFlag = 0x80, |
| IsSuldMask = 0x300, |
| IsSuldShift = 8, |
| IsSustFlag = 0x400, |
| IsSurfTexQueryFlag = 0x800, |
| IsTexModeUnifiedFlag = 0x1000 |
| }; |
| } // namespace NVPTXII |
| |
| } // namespace llvm |
| #endif |