mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-10-24 05:23:45 +02:00
a43c9dc50c
llvm-svn: 140310
38 lines
1.5 KiB
TableGen
38 lines
1.5 KiB
TableGen
|
|
//===- PTXRegisterInfo.td - PTX Register defs ----------------*- tblgen -*-===//
|
|
//
|
|
// The LLVM Compiler Infrastructure
|
|
//
|
|
// This file is distributed under the University of Illinois Open Source
|
|
// License. See LICENSE.TXT for details.
|
|
//
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
//===----------------------------------------------------------------------===//
|
|
// Declarations that describe the PTX register file
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
class PTXReg<string n> : Register<n> {
|
|
let Namespace = "PTX";
|
|
}
|
|
|
|
//===----------------------------------------------------------------------===//
|
|
// Registers
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
// The generated register info code throws warnings for empty register classes
|
|
// (e.g. zero-length arrays), so we use a dummy register here just to prevent
|
|
// these warnings.
|
|
def DUMMY_REG : PTXReg<"R0">;
|
|
|
|
//===----------------------------------------------------------------------===//
|
|
// Register classes
|
|
//===----------------------------------------------------------------------===//
|
|
def RegPred : RegisterClass<"PTX", [i1], 8, (add DUMMY_REG)>;
|
|
def RegI16 : RegisterClass<"PTX", [i16], 16, (add DUMMY_REG)>;
|
|
def RegI32 : RegisterClass<"PTX", [i32], 32, (add DUMMY_REG)>;
|
|
def RegI64 : RegisterClass<"PTX", [i64], 64, (add DUMMY_REG)>;
|
|
def RegF32 : RegisterClass<"PTX", [f32], 32, (add DUMMY_REG)>;
|
|
def RegF64 : RegisterClass<"PTX", [f64], 64, (add DUMMY_REG)>;
|
|
|