Commit graph

266 commits

Author SHA1 Message Date
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
Andrzej Janik f4239f64ac Clean up warnings and dead code 2020-05-15 23:23:03 +02:00
Andrzej Janik 76afdc1081 Remove hacks in the ops emission 2020-05-15 23:05:59 +02:00
Andrzej Janik 531cefce36 Remove all OCL use and clean up a little spirv_run tests 2020-05-14 02:18:25 +02:00
Andrzej Janik 4b894abd96 Clean up L0 use 2020-05-14 02:03:39 +02:00
Andrzej Janik 88756f569b Start writing better level zero wrapper 2020-05-13 00:02:50 +02:00
Andrzej Janik 5e25a222f4 Use L0 USM to run a kernel with input bitcast to global pointer 2020-05-12 01:20:31 +02:00
Andrzej Janik d0aa5ba564 Add a simple (and failing) PTX end-to-end test 2020-05-10 22:30:34 +02:00
Andrzej Janik 0c0f0e5a6b Update L0 bindings 2020-05-10 19:19:53 +02:00
Andrzej Janik fa075abc22 Translate instruction ld 2020-05-07 00:37:10 +02:00
Andrzej Janik 3b433456a1 Convert PTX predicates to a distinct conditional jump statement 2020-05-06 22:10:31 +02:00
Andrzej Janik a69c12a387 Fix remaining bugs in SSA renaming 2020-05-02 01:08:44 +02:00
Andrzej Janik 6700f8bcc2 Fix bugs in SSA renaming and improve phi insertion 2020-04-30 00:20:12 +02:00
Andrzej Janik 7d38992e08 Fix bug in the calculation of immediate dominators 2020-04-29 00:43:55 +02:00
Andrzej Janik 85e0269db0 Add a test for building dominance frontiers 2020-04-28 22:50:25 +02:00
Andrzej Janik 92b5dbd6a8 Fix bugs in basic block resolution 2020-04-28 00:02:34 +02:00
Andrzej Janik bce5f27843 Add phi-insertion 2020-04-26 23:16:49 +02:00
Andrzej Janik 5af7723985 Continue implementing SSA renaming 2020-04-26 22:12:02 +02:00
Andrzej Janik 7b2bc69330 Start doing SSA conversion 2020-04-22 00:55:49 +02:00
Andrzej Janik 0c71826bc7 Fix buggy comparison in immediate dominators calculation 2020-04-19 21:54:53 +02:00
Andrzej Janik 426b9c5cb8 Calculate domination frontiers 2020-04-19 18:09:44 +02:00
Andrzej Janik 4a0e91949c Simply id type handling 2020-04-18 18:10:32 +02:00
Andrzej Janik 47b06ebcb6 Remap string identifies to numeric identifiers 2020-04-15 00:45:05 +02:00
Andrzej Janik 12e0509b09 Refactor how instructions are parsed 2020-04-13 23:29:15 +02:00
Andrzej Janik 6f4530fe83 Simplify error handling during ast construction 2020-04-13 01:13:45 +02:00
Andrzej Janik bbe993392b Add better error handling during ast construction 2020-04-12 20:50:34 +02:00
Andrzej Janik b8129aab20 Start emitting ptx module from compilation 2020-04-03 01:23:11 +02:00
Andrzej Janik e981e20aae Parse whole vector add example 2020-03-22 23:20:37 +01:00
Andrzej Janik c0acb8747c Completely parse instructions in vector add example 2020-03-22 19:50:52 +01:00
Andrzej Janik 0e7338885b Parse more source stuff 2020-03-11 00:44:46 +01:00