mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-09-04 09:30:13 +00:00
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@140855 91177308-0d34-0410-b5e6-96231b3b80d8
64 lines
1.8 KiB
C++
64 lines
1.8 KiB
C++
//===-- PTXBaseInfo.h - Top level definitions for PTX -------- --*- 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 PTX 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 PTXBASEINFO_H
|
|
#define PTXBASEINFO_H
|
|
|
|
#include "PTXMCTargetDesc.h"
|
|
|
|
namespace llvm {
|
|
namespace PTXStateSpace {
|
|
enum {
|
|
Global = 0, // default to global state space
|
|
Constant = 1,
|
|
Local = 2,
|
|
Parameter = 3,
|
|
Shared = 4
|
|
};
|
|
} // namespace PTXStateSpace
|
|
|
|
namespace PTXPredicate {
|
|
enum {
|
|
Normal = 0,
|
|
Negate = 1,
|
|
None = 2
|
|
};
|
|
} // namespace PTXPredicate
|
|
|
|
/// Namespace to hold all target-specific flags.
|
|
namespace PTXRoundingMode {
|
|
// Instruction Flags
|
|
enum {
|
|
// Rounding Mode Flags
|
|
RndMask = 15,
|
|
RndDefault = 0, // ---
|
|
RndNone = 1, // <NONE>
|
|
RndNearestEven = 2, // .rn
|
|
RndTowardsZero = 3, // .rz
|
|
RndNegInf = 4, // .rm
|
|
RndPosInf = 5, // .rp
|
|
RndApprox = 6, // .approx
|
|
RndNearestEvenInt = 7, // .rni
|
|
RndTowardsZeroInt = 8, // .rzi
|
|
RndNegInfInt = 9, // .rmi
|
|
RndPosInfInt = 10 // .rpi
|
|
};
|
|
} // namespace PTXII
|
|
} // namespace llvm
|
|
|
|
#endif
|
|
|