Commit Graph

59 Commits

Author SHA1 Message Date
Sameer Rahmani 0ae52e36d5 Extract the packer related functions out of the JIT 2022-07-24 20:56:40 +01:00
Sameer Rahmani 1d2eebe680 Create a PoC to setup the stdlib calls via serene.core 2022-07-23 11:09:15 +01:00
Sameer Rahmani 4d3624505e Fix all the linter warnings 2022-07-10 07:52:15 +01:00
Sameer Rahmani 394f7827c1 Make a PoC of loading the core ns as an object 2022-07-10 02:35:32 +01:00
Sameer Rahmani 42cd4e259e Create different namespace loaders for different sources 2022-07-06 21:37:31 +01:00
Sameer Rahmani 05d39d367d Add the static library loader to the engine 2022-07-04 22:42:44 +01:00
Sameer Rahmani b66e92fb1f Add basic namespace loader template funections to the jit 2022-07-02 22:17:12 +01:00
Sameer Rahmani 1e8c820fb6 Add a fs namespace with bunch of utility functions to work with filesystems 2022-07-02 22:14:33 +01:00
Sameer Rahmani c2a06ee961 create a basic setup to develop the jit and the linker 2022-07-02 00:25:43 +01:00
Sameer Rahmani 3d1353dee4 Add a devonly function to the engine to load ir from files 2022-07-01 22:30:49 +01:00
Sameer Rahmani 5bec18b327 Add BDW gc and change the JIT interface to use raw pointers 2022-07-01 18:17:50 +01:00
Sameer Rahmani 482a410b11 Moving the jitdylib storage to the jit engine 2022-06-28 22:28:42 +01:00
Sameer Rahmani ebec2562bf Add basic types and the storage for them on the jit engine 2022-06-19 13:17:58 +01:00
Sameer Rahmani 4a23fe4e39 Add support for AArch64 in a dumb way 2022-06-15 12:21:20 +01:00
Sameer Rahmani b71701a640 Setup the CLI options around the JIT and make it the context owner 2022-06-14 18:03:11 +01:00
Sameer Rahmani c2fb6bf8cb Move and strip the jit engine to the v1 2022-06-14 15:56:57 +01:00
Sameer Rahmani 592d7c4fb0 Remove unnecessary code from context 2022-06-13 22:24:19 +01:00
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