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
1ad61adb5a
Fix the issue with the notImplemented helper function
2022-07-02 22:43:25 +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
783f4e65b2
Add a debugger entry to the builder script
2022-07-01 22:36:42 +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
fb7097565d
Try to conditional link the pref lib
2022-06-18 10:47:32 +01:00
Sameer Rahmani
b1858524e1
Set LLVM_USE_PERF to 0 on hally.cpp as a hacky fix for llvm's apt bug on ARM
2022-06-18 10:42:07 +01:00
Sameer Rahmani
114d60999d
Temporary debug statements for 'LLVM_USE_PERF' on arm
2022-06-18 10:35:02 +01:00
Sameer Rahmani
d0dc85e8f9
Use LLVM_USE_PERF to detect presence of createPerfJITEventListener
2022-06-17 08:44:03 +01:00
Sameer Rahmani
6daab9a3e6
replace llvm's way of components resolution with a custom approach
2022-06-16 14:33:24 +01:00
Sameer Rahmani
64f0b31b81
Remove direct dependencies from libserene
2022-06-15 22:42:31 +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
3cc5da9789
Apply clang format
2022-06-13 22:19:58 +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
098b3ebdc4
Try to fix the cmake 2.23 bug
2022-06-12 18:43:06 +01:00
Sameer Rahmani
70995c2908
Fix the builder script to go with the CI
2022-06-12 18:07:06 +01:00
Sameer Rahmani
05fdd9f1b2
Add the 'core' static lib that will contain the std libs
2022-06-11 18:11:00 +01:00
Sameer Rahmani
b922284a39
Fix the broken include in types.cpp
2022-06-11 18:07:09 +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
d64910e9cc
Lower serene.symbol to llvm struct type
2022-06-02 17:20:53 +01:00
Sameer Rahmani
bbebc449dd
Lower the `symbol` op to create static symbols
2022-06-02 15:36:05 +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
7c868325b3
Add the fold functoin for value op
2022-06-02 15:24:27 +01:00
Sameer Rahmani
47a5def820
Migrate to LLVM 15-dev
2022-06-02 15:23:42 +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