Commit graph

195 commits

Author SHA1 Message Date
Andrzej Janik 1e0b35be4b Implement vector-destructuring mov/ld/st 2020-09-30 19:27:29 +02:00
Andrzej Janik 7c26568cbf Add test for vector extract 2020-09-27 13:51:52 +02:00
Andrzej Janik e0190fcbe1 Add missing support for Milestone 1 2020-09-27 13:14:19 +02:00
Andrzej Janik 42bcd999eb Fix minor problems with a private CUDA function 2020-09-24 02:20:54 +02:00
Andrzej Janik 3f41f21acb Implement more host code, moving execution further 2020-09-24 01:54:16 +02:00
Andrzej Janik 03005140dd Add a workaround for IGC bug 2020-09-23 00:40:26 +02:00
Andrzej Janik 5a7860d9f1 Fix more bugs in implicit conversions 2020-09-20 20:43:09 +02:00
Andrzej Janik b11ce92d2c Better propagate information about address-mov and emit conversion for it 2020-09-20 17:29:38 +02:00
Andrzej Janik dcaea507ba Add more tests 2020-09-20 15:44:52 +02:00
Andrzej Janik 17f2d09cc7 Fix basic test failures 2020-09-18 20:19:35 +02:00
Andrzej Janik bcb749cdd9 Continue working on a better addressable support 2020-09-18 18:08:40 +02:00
Andrzej Janik 952ed5d504 [BROKEN] Start implementing better support for addressable arguments 2020-09-18 02:25:20 +02:00
Andrzej Janik 42bad8fcc2 Fix st/ld offsets implement abs and fix remaining bugs from vectorAdd generation 2020-09-16 00:20:49 +02:00
Andrzej Janik fcf3aaeb16 Implement missing pieces in vector support 2020-09-15 02:34:08 +02:00
Andrzej Janik bb5025c9b1 Refactor implicit conversions and start implementing vector extract/insert 2020-09-14 21:45:56 +02:00
Andrzej Janik 48dac43540 Parse vector movs (mov.type a.x b.y;) 2020-09-12 02:33:20 +02:00
Andrzej Janik 1238796dfd Be more precise about types admitted in register definitions and method arguments 2020-09-11 00:40:13 +02:00
Andrzej Janik 76afbeba63 Implement support for PTX call instruction 2020-09-08 21:29:18 +02:00
Andrzej Janik bbb3a6c5cb Finish up cleanup for PTX function support 2020-09-03 20:58:35 +02:00
Andrzej Janik de734305cf Start refactoring SPIRV module generation in preparation for support of functions 2020-09-03 01:45:08 +02:00
Andrzej Janik 0f4a4c634b Add support for declaring __local variables and their alignment 2020-09-02 22:47:27 +02:00
Andrzej Janik efd83981b8 Add support for blocks 2020-09-02 20:58:54 +02:00
Andrzej Janik 87cc72494e Parse Linux vectorAdd debug PTX kernel 2020-09-02 02:03:13 +02:00
Andrzej Janik 2e4cadc2ab Refactor main library, implement some more functionality 2020-09-01 01:43:09 +02:00
Andrzej Janik 34dc149be1 Update level0 to 1.0 and unpack fatbins 2020-08-28 22:37:16 +02:00
Andrzej Janik d47cd1e133 Add support for cvta and global ld/st 2020-08-05 23:50:20 +02:00
Andrzej Janik 7b407d1c44 Implement initial support for cvt instruction (only integer-to-integer) 2020-08-05 01:58:01 +02:00
Andrzej Janik a10ee48e91 Add support for parsing instruction cvt 2020-08-03 01:42:13 +02:00
Andrzej Janik ff449289eb Implement shift left 2020-08-01 01:09:57 +02:00
Andrzej Janik 8ee46c8fe1 Implement negation 2020-08-01 00:51:18 +02:00
Andrzej Janik 534ca41d3f Add missing setp tests and fix bugs in bra support 2020-08-01 00:19:46 +02:00
Andrzej Janik ed295c4083 Add support for some most common setp variants and fix a bug with branch conditions 2020-07-31 02:03:59 +02:00
Andrzej Janik 9ed3dc54f2 Refactor unused code, add residency control 2020-07-31 01:48:03 +02:00
Andrzej Janik 66fa0706a4 Refactor various functions for visiting/mapping statements and instructions into one 2020-07-30 03:01:37 +02:00
Andrzej Janik 52faaab547 Remove the need for custom Arg types in middle-end 2020-07-28 02:44:24 +02:00
Andrzej Janik d514a5610a Parametrize Statement by Instruction and not by Arguments 2020-07-28 00:59:41 +02:00
Andrzej Janik 72f5ffe2f9 Refactor code to support per-variable type definition in callbacks 2020-07-28 00:37:16 +02:00
Andrzej Janik 04820fba2f Minor cleanup 2020-07-27 00:33:57 +02:00
Andrzej Janik ec7ab8e5c4 Add support for integer addition 2020-07-26 03:09:05 +02:00
Andrzej Janik b068a89c38 Implement integer multiplication 2020-07-25 00:57:54 +02:00
Andrzej Janik 18e5147fdc Fix bugs in the new middle-end 2020-07-24 02:09:50 +02:00
Andrzej Janik 09be47a919 Start refactoring code to not use homemade strict-SSA translator 2020-07-23 01:26:40 +02:00
Andrzej Janik 4e9a71ed38 Update type lookup map when emitting new instructions during translation 2020-07-20 20:15:23 +02:00
Andrzej Janik 872d69c714 Implement constants in translation middle-end 2020-07-20 00:01:03 +02:00
Andrzej Janik 3d6991e0ca Emit movs 2020-07-15 23:56:00 +02:00
Andrzej Janik f2f3eeb303 Validate PTX build tests against SPIR-V sources 2020-07-12 14:58:54 +02:00
Andrzej Janik 279e6246ba Finish implementing implicit conversions 2020-06-17 02:53:46 +02:00
Andrzej Janik 4a0edf0e14 Start implementing implicit conversions 2020-05-26 00:33:32 +02:00
Andrzej Janik 9f60990765 Start introducing support for bitcast coercions in instructions 2020-05-17 18:45:22 +02:00
Andrzej Janik 4e8c871ad7 Document weird implicit PTX coercions 2020-05-17 12:19:51 +02:00