summaryrefslogtreecommitdiff
path: root/include/llvm/IntrinsicsPTX.td
diff options
context:
space:
mode:
Diffstat (limited to 'include/llvm/IntrinsicsPTX.td')
-rw-r--r--include/llvm/IntrinsicsPTX.td27
1 files changed, 15 insertions, 12 deletions
diff --git a/include/llvm/IntrinsicsPTX.td b/include/llvm/IntrinsicsPTX.td
index cbcd56e5f2..01241fe4d4 100644
--- a/include/llvm/IntrinsicsPTX.td
+++ b/include/llvm/IntrinsicsPTX.td
@@ -12,14 +12,17 @@
//===----------------------------------------------------------------------===//
let TargetPrefix = "ptx" in {
- // FIXME Since PTX 2.0, special registers are redefined as v4i32 type
- multiclass PTXReadSpecialRegisterIntrinsic_v4i16 {
- def _r64 : Intrinsic<[llvm_i64_ty], [], [IntrNoMem]>;
- def _v4i16 : Intrinsic<[llvm_v4i16_ty], [], [IntrNoMem]>;
- def _x : Intrinsic<[llvm_i16_ty], [], [IntrNoMem]>;
- def _y : Intrinsic<[llvm_i16_ty], [], [IntrNoMem]>;
- def _z : Intrinsic<[llvm_i16_ty], [], [IntrNoMem]>;
- def _w : Intrinsic<[llvm_i16_ty], [], [IntrNoMem]>;
+ multiclass PTXReadSpecialRegisterIntrinsic_v4i32 {
+// FIXME: Do we need the 128-bit integer type version?
+// def _r64 : Intrinsic<[llvm_i128_ty], [], [IntrNoMem]>;
+
+// FIXME: Enable this once v4i32 support is enabled in back-end.
+// def _v4i16 : Intrinsic<[llvm_v4i32_ty], [], [IntrNoMem]>;
+
+ def _x : Intrinsic<[llvm_i32_ty], [], [IntrNoMem]>;
+ def _y : Intrinsic<[llvm_i32_ty], [], [IntrNoMem]>;
+ def _z : Intrinsic<[llvm_i32_ty], [], [IntrNoMem]>;
+ def _w : Intrinsic<[llvm_i32_ty], [], [IntrNoMem]>;
}
class PTXReadSpecialRegisterIntrinsic_r32
@@ -29,15 +32,15 @@ let TargetPrefix = "ptx" in {
: Intrinsic<[llvm_i64_ty], [], [IntrNoMem]>;
}
-defm int_ptx_read_tid : PTXReadSpecialRegisterIntrinsic_v4i16;
-defm int_ptx_read_ntid : PTXReadSpecialRegisterIntrinsic_v4i16;
+defm int_ptx_read_tid : PTXReadSpecialRegisterIntrinsic_v4i32;
+defm int_ptx_read_ntid : PTXReadSpecialRegisterIntrinsic_v4i32;
def int_ptx_read_laneid : PTXReadSpecialRegisterIntrinsic_r32;
def int_ptx_read_warpid : PTXReadSpecialRegisterIntrinsic_r32;
def int_ptx_read_nwarpid : PTXReadSpecialRegisterIntrinsic_r32;
-defm int_ptx_read_ctaid : PTXReadSpecialRegisterIntrinsic_v4i16;
-defm int_ptx_read_nctaid : PTXReadSpecialRegisterIntrinsic_v4i16;
+defm int_ptx_read_ctaid : PTXReadSpecialRegisterIntrinsic_v4i32;
+defm int_ptx_read_nctaid : PTXReadSpecialRegisterIntrinsic_v4i32;
def int_ptx_read_smid : PTXReadSpecialRegisterIntrinsic_r32;
def int_ptx_read_nsmid : PTXReadSpecialRegisterIntrinsic_r32;