Commit Graph

42 Commits

Author SHA1 Message Date
Sameer Rahmani c42ad11bd0 Move over SereneContext and remove the old bits 2022-06-13 22:18:58 +01:00
Sameer Rahmani 8553b5f43f Move the old libserene aside and start a new one 2022-06-13 20:34:55 +01:00
Sameer Rahmani f436d6cee4 Moving to the a JIT first design
I realized that focusing on SLIR at this stage is wrong. I need
to finish up the JIT first and use the JIT to implement `read`,
`eval` and `print` functions by linking their C++ implementations
via a static library to the target code and then focus on SLIR
or any alternative that might come next.

This is the finish linke for the `0.x` version series.
2022-06-10 21:49:11 +01:00
Sameer Rahmani 3f025a1a85 Add Ptr type and constrain and break types/ops out of dialect file 2022-06-05 00:02:25 +01:00
Sameer Rahmani 57f71ec4f2 Fix the type names and add PtrType to type_converter 2022-06-05 00:01:52 +01:00
Sameer Rahmani 4015fd6b7e Add the `registerType` function to the dialect to break types into their own file 2022-06-04 23:59:27 +01:00
Sameer Rahmani ea403d444d Simplify string type to just contain a length 2022-06-02 17:32:59 +01:00
Sameer Rahmani 9348335959 Add a very basic string type to SLIR 2022-06-02 15:35:46 +01:00
Sameer Rahmani 5d3420a099 Add `convert` and `define_constant` operations to SLIR 2022-06-02 15:33:35 +01:00
Sameer Rahmani b6200a869b Add a type converter to convert serene types to LLVM dialect types 2022-06-02 15:31:01 +01:00
Sameer Rahmani bb49b7755d Add the depedancy list to the SereneDialect definition 2022-06-02 15:30:32 +01:00
Sameer Rahmani 1325185d4f Add proper depedencies to the LowerSLIR pass 2022-06-02 15:29:49 +01:00
Sameer Rahmani 31c98d2b3b Load llvm dialect in SereneContext 2022-06-02 15:19:31 +01:00
Sameer Rahmani 7b5ba7797d Add few constants to config.h to avoid magic numbers 2022-06-02 15:17:42 +01:00
Sameer Rahmani 97b31e8cb0 Add the NsOp to represent namespaces 2022-04-27 21:49:57 +01:00
Sameer Rahmani 0d7f51da8a Add the 'call' operation to slir 2022-04-20 21:24:01 +01:00
Sameer Rahmani fe181755e7 Add fn,def and value operations to slir 2022-04-08 11:02:46 +01:00
Sameer Rahmani aa7cd548cf Add fn,def and value operations to slir 2022-04-08 10:34:47 +01:00
Sameer Rahmani 3a3e3a4da4 Rename the old ops of slir to mark them for removal 2022-04-08 10:30:09 +01:00
Sameer Rahmani 12c2d1d455 Fix the slir-opt tool to use slir and few builtin IRs 2022-04-05 00:05:27 +01:00
Sameer Rahmani b7af46cdde Upgrade to LLVM15 dev 2022-04-04 23:03:48 +01:00
Sameer Rahmani d9c4322ad1 Fix standardops to funcops headers 2022-04-04 22:50:08 +01:00
Sameer Rahmani 628598ad8b Add devtools utility set 2022-04-04 22:42:56 +01:00
Sameer Rahmani 7ee22721f7 Try different approach alternative to llvm::Error 2022-03-29 19:56:13 +01:00
Sameer Rahmani 7050e7d53d Clean up the halley files 2022-03-29 19:55:42 +01:00
Sameer Rahmani a215eb6cd9 Rename to and remove cleanup the source tree for errors 2022-03-10 19:48:33 +00:00
Sameer Rahmani 4605e22e68 Refactor the error handling system to have only one llvm error with many variants 2022-03-10 19:31:48 +00:00
Sameer Rahmani 1cd5824608 Add a test case for errors::getMessage 2022-03-08 17:38:02 +00:00
Sameer Rahmani 1e8d23b8ef Add tests for symbol and numbers 2022-03-08 15:58:02 +00:00
Sameer Rahmani df2300498b Clean up the reader's test cases 2022-03-08 14:20:15 +00:00
Sameer Rahmani 2860e570da Refactor the error-backend and setup the test file for it 2022-03-08 13:19:34 +00:00
Sameer Rahmani 7d7293aa32 Change the storage type in Environment to StringMap 2022-03-05 16:03:19 +00:00
Sameer Rahmani 500f366bab Setup the Environment test cases 2022-03-05 14:28:37 +00:00
Sameer Rahmani 6f4c6b3398 Finish the review of SereneContext 2022-03-02 18:26:39 +00:00
Sameer Rahmani 644cf11c89 Finish ep17 and address trivial TODOs in the context 2022-02-27 19:10:30 +00:00
Sameer Rahmani 6eaba7dbe8 Panic if can't make a JIT while creating a context 2022-02-23 12:51:54 +00:00
Sameer Rahmani 840a7c565c [context] Replace the targetTriple string with a Triple object 2022-02-22 18:50:42 +00:00
Sameer Rahmani 578afc30a4 Remove the llvmContext member in SereneContext in favor of getLLVMContext 2022-02-20 20:59:57 +00:00
Sameer Rahmani e0c1aaa7a6 Add tests for getSharedPtrNS and withCurrentNS functions 2022-02-19 22:49:31 +00:00
Sameer Rahmani 2eb29e859f Add the setup step for libserene's tests 2022-02-19 22:02:57 +00:00
Sameer Rahmani 8dde04d6ce Fix the unchecked Expected<T> in the context class 2022-02-19 14:54:03 +00:00
Sameer Rahmani 58274835b1 Mov out libserene and serene-tblgen to the root 2022-02-17 15:02:08 +00:00