Che-Liang Chiou
c4a22b7cd5
ptx: support setp's 4-operand format
...
llvm-svn: 128767
2011-04-02 08:51:39 +00:00
Che-Liang Chiou
7c5fc3a68f
ptx: add analyze/insert/remove branch
...
llvm-svn: 128084
2011-03-22 14:12:00 +00:00
Justin Holewinski
d9c382441b
PTX: Fix various codegen issues
...
- Emit mad instead of mad.rn for shader model 1.0
- Emit explicit mov.u32 instructions for reading global variables
- (most PTX instructions cannot take global variable immediates)
llvm-svn: 127895
2011-03-18 19:24:28 +00:00
Che-Liang Chiou
2b173c0443
ptx: fix parameter order that is reversed
...
llvm-svn: 127874
2011-03-18 11:23:56 +00:00
Che-Liang Chiou
f4a2c17cf5
ptx: add unconditional and conditional branch
...
llvm-svn: 127873
2011-03-18 11:08:52 +00:00
Justin Holewinski
8948485aa7
PTX: Set PTX 2.0 as the minimum supported version
...
- Remove PTX 1.4 code generation
- Change type of intrinsics to .v4.i32 instead of .v4.i16
- Add and/or/xor integer instructions
llvm-svn: 127677
2011-03-15 13:24:15 +00:00
Justin Holewinski
a2f7c8557c
PTX: Emit global arrays with proper sizes
...
- Emit all arrays as type .b8 and proper sizes in bytes to conform
to the output of nvcc
llvm-svn: 127584
2011-03-14 15:40:11 +00:00
Justin Holewinski
995d10cfea
PTX: Add support for sqrt/sin/cos intrinsics
...
llvm-svn: 127578
2011-03-14 14:09:33 +00:00
Che-Liang Chiou
6ff0aa8ab3
ptx: add set.p instruction and related changes to predicate execution
...
llvm-svn: 127577
2011-03-14 11:26:01 +00:00
Justin Holewinski
a26d2f782e
PTX: Add preliminary support for floating-point divide and multiply-and-add
...
llvm-svn: 127410
2011-03-10 16:57:18 +00:00
Che-Liang Chiou
fc6c7ba9d5
ptx: add the rest of special registers of ISA version 2.0
...
llvm-svn: 127397
2011-03-10 04:05:57 +00:00
Justin Holewinski
d7426856e9
PTX: Add intrinsic support for ntid, ctaid, and nctaid registers
...
llvm-svn: 127246
2011-03-08 14:10:18 +00:00
Che-Liang Chiou
15aba09539
ptx: add basic intrinsic support
...
llvm-svn: 127084
2011-03-05 14:17:37 +00:00
Che-Liang Chiou
2e7bb6da4c
Extend initial support for primitive types in PTX backend
...
- Allow i16, i32, i64, float, and double types, using the native .u16,
.u32, .u64, .f32, and .f64 PTX types.
- Allow loading/storing of all primitive types.
- Allow primitive types to be passed as parameters.
- Allow selection of PTX Version and Shader Model as sub-target attributes.
- Merge integer/floating-point test cases for load/store.
- Use .u32 instead of .s32 to conform to output from NVidia nvcc compiler.
Patch by Justin Holewinski
llvm-svn: 126824
2011-03-02 03:20:28 +00:00
Che-Liang Chiou
4026d01040
Add preliminary support for .f32 in the PTX backend.
...
- Add appropriate TableGen patterns for fadd, fsub, fmul.
- Add .f32 as the PTX type for the LLVM float type.
- Allow parameters, return values, and global variable declarations
to accept the float type.
- Add appropriate test cases.
Patch by Justin Holewinski
llvm-svn: 126636
2011-02-28 06:34:09 +00:00
Che-Liang Chiou
762ff2a943
ptx: add passing parameter to kernel functions
...
llvm-svn: 125279
2011-02-10 12:01:24 +00:00
Che-Liang Chiou
a188cfb574
ptx: remove reg-reg addressing mode and st.const
...
llvm-svn: 122653
2011-01-01 11:58:58 +00:00
Che-Liang Chiou
995a853724
ptx: add store instruction
...
llvm-svn: 122652
2011-01-01 10:50:37 +00:00
Che-Liang Chiou
f4aaa1b2e1
ptx: add state spaces
...
llvm-svn: 122638
2010-12-30 10:41:27 +00:00
Che-Liang Chiou
e73ad4387e
ptx: add ld instruction and test
...
llvm-svn: 122398
2010-12-22 10:38:51 +00:00
Che-Liang Chiou
cd2878d421
ptx: add shift instructions
...
llvm-svn: 120982
2010-12-06 04:00:03 +00:00
Che-Liang Chiou
f594fe5fc5
ptx: add command-line options for gpu target and ptx version
...
llvm-svn: 120423
2010-11-30 10:14:14 +00:00
Che-Liang Chiou
f8ffd59ccb
Add simple arithmetics and %type directive for PTX
...
llvm-svn: 119485
2010-11-17 08:08:49 +00:00
Che-Liang Chiou
1733b45be9
Add test case mov.ll for PTX device function
...
llvm-svn: 116806
2010-10-19 13:21:51 +00:00
Che-Liang Chiou
aeccb0793b
Add test case for PTX ret instruction
...
llvm-svn: 114789
2010-09-25 07:49:54 +00:00
Che-Liang Chiou
0eaf890a31
Add ret instruction to PTX backend
...
llvm-svn: 114788
2010-09-25 07:46:17 +00:00
Eric Christopher
2901b19344
Add the exit instruction to the PTX target.
...
Patch by Che-Liang Chiou <clchiou@gmail.com>!
llvm-svn: 114294
2010-09-18 18:52:28 +00:00