Commit Graph

45 Commits

Author SHA1 Message Date
Sameer Rahmani 7410ca3d59 Upgrade to llvm 13rc2 2021-08-28 18:01:48 +01:00
Sameer Rahmani a1d3ae8c9c Finish up the wiring of the very basic JIT implementation. 2021-08-17 09:57:26 +01:00
Sameer Rahmani aba81bfcae Move over a modified version of MLIR jit. Add the pch 2021-08-17 09:57:26 +01:00
Sameer Rahmani 8af6452457 Fix the serenec to use the new ns api 2021-08-17 09:57:26 +01:00
Sameer Rahmani 3ace6ec260 Chaneg the namespace to generate modules instead of owning them 2021-08-17 09:57:26 +01:00
Sameer Rahmani 32b406fdad Prepare tho source tree for episode number 6 2021-08-07 17:41:19 +01:00
Sameer Rahmani e00156b9e7 Add the 'target' emit action as a temporary action to generate target code 2021-07-27 19:13:19 +01:00
Sameer Rahmani ab54e7f5be [PoC] Use clang driver to link the object files 2021-07-12 23:39:29 +01:00
Sameer Rahmani 9102085d83 Add the overview section to the videos doc 2021-07-10 17:52:53 +01:00
Sameer Rahmani 8c19a56203 Add support for compil to object file 2021-06-28 01:12:51 +01:00
Sameer Rahmani 7f7f49d3ac Add Basic setup for lowering the llvm dialect to the LLVMIR 2021-06-21 11:03:18 +01:00
Sameer Rahmani bd4dc2301c Add the LIR phase to lower everything to the llvm dialect 2021-06-17 13:19:19 +01:00
Sameer Rahmani ecedb14a12 Refactor the IR generation/dump process 2021-06-16 20:19:42 +01:00
Sameer Rahmani 782c786baf Reformat files with the new clang-format config 2021-06-13 22:58:46 +01:00
Sameer Rahmani 65b6aa4020 Add the IR generation facilities to Namespace and Expression 2021-06-13 22:40:58 +01:00
Sameer Rahmani 7e319ece13 Add the bare min pass to convert slir to std dialect 2021-06-11 22:06:44 +01:00
Sameer Rahmani 36eef7222f Setup a very basic IR generation process 2021-06-09 13:29:14 +01:00
Sameer Rahmani 616dca53fb Add SLIR skeleton to start the generator 2021-06-08 22:01:08 +01:00
Sameer Rahmani ff82772cd6 Implement a basic environment setup/lookup via 'def' and 'list' 2021-05-08 19:00:24 +01:00
Sameer Rahmani 4084135851 Extract SereneContext to the top level namespace 2021-04-25 09:56:28 +01:00
Sameer Rahmani 499852c48f Rename Semantic Context to Serene Context to be used in other phases too 2021-04-25 09:17:58 +01:00
Sameer Rahmani c12c6b1281 Change the semantic analysis entrypoint to the 'analyze' fn 2021-04-24 20:18:33 +01:00
Sameer Rahmani f614d35b7f Change toString format and finalize Def::isValid signature 2021-04-22 00:49:11 +01:00
Sameer Rahmani 4fde47311e Remove the old implementations to keep the source tree as clean as possible 2021-04-20 00:17:28 +01:00
Sameer Rahmani 7c9ee97895 Finish up the analyze setup before moving back to vector/shared_ptr setup 2021-04-17 19:36:25 +01:00
Sameer Rahmani 3b6d165baa Replace the shared_ptr in the node with a unique ptr 2021-04-17 00:18:13 +01:00
Sameer Rahmani f4c28ae722 Upgrade to C++17 for now 2021-04-11 18:36:00 +01:00
Sameer Rahmani 11df9a6d1d Add some test cases for the reader 2021-04-11 15:13:10 +01:00
Sameer Rahmani 555e770c01 Finalize migration to new expression interface 2021-04-11 00:02:56 +01:00
Sameer Rahmani a42259d684 Add c++20 support flag to cmake 2021-04-07 19:56:54 +01:00
Sameer Rahmani 08e661c508 Rename the reader header files 2021-04-06 18:28:50 +01:00
Sameer Rahmani f73cfe7aaf Introduce the new polymorphic approach to expressions 2021-04-05 19:02:30 +01:00
Sameer Rahmani f50e20567a Move reader related files to the reader namespace 2021-03-28 23:14:32 +01:00
Sameer Rahmani e9daeb9d13 Add support for a dummy value operation to demonstrate a value 2021-03-28 10:53:32 +01:00
Sameer Rahmani 50c2054f0a Add a barebone MLIR dialect with the necessary cmake changes" 2021-03-25 00:53:44 +00:00
Sameer Rahmani 737b6e1a41 Remove unused code to simplify the project to the bare min 2021-03-23 22:31:20 +00:00
Sameer Rahmani 04a50eb65b Update the serene executable to use llvm::cl and spit out the AST 2021-03-22 19:53:10 +00:00
Sameer Rahmani cd0989d060 Update the builder and CMakefile to get ready for LLVM 13 2021-03-21 16:25:12 +00:00
Sameer Rahmani dfa64e8f26 Fix some of the hints from the 1on1 session on the refactoring the code 2020-08-03 12:39:20 +01:00
Sameer Rahmani b27611d5ba Create a very basic compiler setup to wire everything in the most basic way 2020-07-25 18:59:00 +01:00
Sameer Rahmani 2eda5f8d5f Setup clang-format as a githook and apply it to the source 2020-07-23 21:47:13 +01:00
Sameer Rahmani 8e90ea9813 Finish the first implementation of the compiler level list 2020-07-23 17:13:16 +01:00
Sameer Rahmani 576eba6451 Add a very basic List implementation 2020-07-21 22:23:11 +01:00
Sameer Rahmani cbea0c8e28 Add the first draft of a very basic reader, list and symbol impl 2020-07-16 15:48:06 +01:00
Sameer Rahmani 51b9f4a307 Add the build setup for the C++ implementation 2020-07-10 18:06:26 +01:00