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
123a3e8d4f
Add the more resouces about JIT to dev.org
2021-12-29 13:12:36 +00:00
Sameer Rahmani
6d34e58665
Fix the wrong constant opretation
2021-12-24 16:52:43 +00:00
Sameer Rahmani
aca81f8d61
Finalize EP14
2021-12-19 21:45:49 +00:00
Sameer Rahmani
4c07544141
Add the supporters file
2021-12-17 15:23:05 +00:00
Sameer Rahmani
8558b2e57b
Change the freenode name to libera
2021-12-17 15:11:32 +00:00
Sameer Rahmani
3e82b71903
Fix the compatiblity issues with llvm version aff028f7d8322c625422febd3d8b9794746cdc5b
2021-12-15 17:26:08 +00:00
Sameer Rahmani
76a9106559
update the slides for ep13
2021-11-27 17:49:24 +00:00
Sameer Rahmani
e825367f95
Add the notes for episode 13
2021-11-26 15:43:47 +00:00
Sameer Rahmani
b6ac7f3f5f
Add the ast layer to the jit
2021-11-19 00:41:28 +00:00
Sameer Rahmani
5a57f7c98b
Add the idea of destructure types
2021-11-18 10:03:41 +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
3da6d2d1fc
Fix the lookup process on the new jit
2021-11-12 16:20:22 +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
b4f31984c4
Update the dev.org to add a new todo
2021-11-11 15:37:23 +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
556db28a99
Add a note to show case code generation on ep13
2021-11-04 00:59:38 +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
3725d15521
Add the clang-tidy configurations
2021-10-17 22:23:15 +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
9850b99607
Add the serene-dev.el to ease the development on the mighty Emacs
2021-10-17 00:24:22 +01:00
Sameer Rahmani
895ff27a51
Remove useless null checks from the passes
2021-10-16 20:48:14 +01:00
Sameer Rahmani
4b03316d81
Add include_what_you_use to the cmake files
2021-10-16 16:16:18 +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