Sameer Rahmani
fd668bbb34
Fix the linking issue with llvm dev version
2022-01-05 16:18:32 +00:00
Sameer Rahmani
95e7e37071
Add the compiled notify callback to spit out debug info on Halley
2022-01-03 16:08:01 +00:00
Sameer Rahmani
afc6873c64
Add basic LLLazyJIT support to Halley
2022-01-03 14:08:47 +00:00
Sameer Rahmani
851595ca7d
Change the current namespace lookup behavior
...
* Change the way namespace creation works. We should create new
namespaces via the context so we can insert them in the contenxt
* Change the way setting the current namespace works. `withCurrentNS`
method gets a function as input param and a ns name and runs the
function with the ns set as the current NS and restore the state
after that
* Change the way Dylibs register with the context and namespaces
and lookup the dylibs will use the context to use the most recent
dylib of a namespace.
2022-01-02 18:57:36 +00:00
Sameer Rahmani
28baf8fb9a
Add the JITDylib registery on SereneContext and addNS in Halley
2022-01-01 22:15:30 +00:00
Sameer Rahmani
0863a2561f
Remove output logs from the JIT
2021-12-31 12:06:49 +00:00
Sameer Rahmani
3bacfe59aa
Setup the function packing on the JIT
2021-12-31 12:02:25 +00:00
Sameer Rahmani
c41c91b335
Add the Halley JIT and migrate to it
2021-12-30 13:52:33 +00:00
Sameer Rahmani
6d34e58665
Fix the wrong constant opretation
2021-12-24 16:52:43 +00:00
Sameer Rahmani
3e82b71903
Fix the compatiblity issues with llvm version aff028f7d8322c625422febd3d8b9794746cdc5b
2021-12-15 17:26:08 +00:00
Sameer Rahmani
b6ac7f3f5f
Add the ast layer to the jit
2021-11-19 00:41:28 +00:00
Sameer Rahmani
b1ce34db75
Fix the assert condition on getRootEnv
2021-11-17 17:50:09 +00:00
Sameer Rahmani
b3d1151a8b
Refactor the semantic analyzer to use the analysis state
...
* Refactor the semantic analyzer to use the new state struct
which is just bunch of refs to the current ns and current env
* Add the `environments` vector to ns to store the environments
and few helper functions to use it
* Add the `symbolList` (need a better name) to keep track of what
symbols might be added to the namespace after calling `addTree`.
2021-11-17 17:37:45 +00:00
Sameer Rahmani
800105dbea
Merge jit2 branch
2021-11-12 16:28:34 +00:00
Sameer Rahmani
86a6b985e4
Remove the namespace name from the symbol look up in JIT
2021-11-12 11:49:45 +00:00
Sameer Rahmani
981e5171b2
Setup the base none lazy jit
2021-11-10 19:40:51 +00:00
Mary
55780103f4
Merge reader.cpp and location.cpp
2021-11-09 22:30:47 +00:00
Sameer Rahmani
1dfc353fa4
Add the NSLayer to the jit
2021-11-06 21:23:37 +00:00
Sameer Rahmani
2911ead7a9
Add the compile on demand layer to the jit
2021-11-04 00:57:00 +00:00
Sameer Rahmani
0895a09db0
Revome the old clang driver approach for code generation
2021-11-03 18:27:20 +00:00
Sameer Rahmani
69e8782c67
finalize ep 12
2021-11-03 14:06:45 +00:00
Sameer Rahmani
5622b4de0c
Prepare for ep 12
2021-11-02 22:05:34 +00:00
Sameer Rahmani
34d3513426
Start the new jit
2021-11-01 15:09:11 +00:00
Sameer Rahmani
fc11896c28
Add the read and print functionality to the repl
2021-10-24 23:34:28 +01:00
Sameer Rahmani
3fb6fb3740
Change the reader interface to return errors instead of emiting them
...
* Change the `Result` interface to let the compiler use the concrete
type in place of a `Result`
2021-10-24 12:34:20 +01:00
Sameer Rahmani
cbb0b0428e
Hide the clang-tidy behind a build option
2021-10-17 22:22:49 +01:00
Sameer Rahmani
fd66e47cd7
Fix all the tidy issues
2021-10-17 20:12:17 +01:00
Sameer Rahmani
55e0788bae
Fix all the tidy issues on src
2021-10-17 16:06:52 +01:00
Sameer Rahmani
737226dbae
Fix the reader tidy issues
2021-10-17 14:57:17 +01:00
Sameer Rahmani
54aa50f020
Fix the exprs dir's tidy issues
2021-10-17 14:33:16 +01:00
Sameer Rahmani
bedaaba46f
Fix namespace and src mgr tidy issues
2021-10-17 12:14:04 +01:00
Sameer Rahmani
1bdc8aa9e9
Fix context's tidy issues
2021-10-17 11:19:12 +01:00
Sameer Rahmani
b79f7a62c1
Fix the clang tidy's issues in serenec
2021-10-17 02:12:19 +01:00
Sameer Rahmani
895ff27a51
Remove useless null checks from the passes
2021-10-16 20:48:14 +01:00
Sameer Rahmani
e5c5a68128
Clean up the slir lowering impl
2021-10-16 16:15:56 +01:00
Sameer Rahmani
5a9c256325
Add the panic function to diag and change getCurrentNS to return a ref
2021-10-13 11:27:54 +01:00
Sameer Rahmani
c6e5bddf10
Move the linenoise to a serene dir to mark it as a local header
2021-10-13 09:49:50 +01:00
Sameer Rahmani
c05d42107f
Setup the serene-repl target with a basic REPL loop
2021-10-12 22:50:08 +01:00
Sameer Rahmani
f473d1122b
Change the license to GPL2
2021-10-12 20:51:03 +01:00
Sameer Rahmani
43dd4ac48d
Add the RPATH posix fix support to libserene target
2021-10-12 14:45:46 +01:00
Sameer Rahmani
e3fde6dfc1
Add link_what_you_use support to the build setup
2021-10-10 22:28:50 +01:00
Sameer Rahmani
7a456e2d54
Add support for a shared libserene and make it the default behaviour
2021-10-10 21:34:14 +01:00
Sameer Rahmani
54d85eac94
Fix the memory leak on pass failure in the namespace generate function
2021-10-06 21:07:56 +01:00
Sameer Rahmani
10015683f5
Refactor the passes name for slir lowering
2021-10-06 18:48:48 +01:00
Sameer Rahmani
2634fdb5f4
Clean up the src/ cmakefiles
2021-09-28 17:45:59 +01:00
Sameer Rahmani
a174a3a342
Refactor the cmake script and move the binary into its own package
2021-09-28 17:11:50 +01:00
Sameer Rahmani
225ff6bba1
Refactor the main cmake list file and fix the unused warns
2021-09-27 13:05:15 +01:00
Sameer Rahmani
6ef69d329a
Move the semantic analysis process into the namespace
2021-09-25 16:18:33 +01:00
Sameer Rahmani
dc051797ee
Fix the fn slir generation proccess
2021-09-23 19:24:51 +01:00
Sameer Rahmani
00869e6c8d
Replace some of the Result types with llvm::Optional
2021-09-19 10:27:13 +01:00