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
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
2dca8e812e
Fixed the pre-commit hook name
2021-09-28 17:16:15 +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
5802e87121
Add CCache support to cmake list
2021-09-27 15:25:06 +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
Sameer Rahmani
3c19cace5f
Add more logs to the pre commit hook
2021-09-17 13:51:30 +01:00
Sameer Rahmani
ba77f9bc99
Fix the readNamespace in the serenec
2021-09-17 13:49:55 +01:00